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

     1  // Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
     2  
     3  package codepipeline
     4  
     5  import (
     6  	"fmt"
     7  	"time"
     8  
     9  	"github.com/aavshr/aws-sdk-go/aws"
    10  	"github.com/aavshr/aws-sdk-go/aws/awsutil"
    11  	"github.com/aavshr/aws-sdk-go/aws/request"
    12  	"github.com/aavshr/aws-sdk-go/private/protocol"
    13  	"github.com/aavshr/aws-sdk-go/private/protocol/jsonrpc"
    14  )
    15  
    16  const opAcknowledgeJob = "AcknowledgeJob"
    17  
    18  // AcknowledgeJobRequest generates a "aws/request.Request" representing the
    19  // client's request for the AcknowledgeJob 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 AcknowledgeJob for more information on using the AcknowledgeJob
    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 AcknowledgeJobRequest method.
    34  //    req, resp := client.AcknowledgeJobRequest(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/codepipeline-2015-07-09/AcknowledgeJob
    42  func (c *CodePipeline) AcknowledgeJobRequest(input *AcknowledgeJobInput) (req *request.Request, output *AcknowledgeJobOutput) {
    43  	op := &request.Operation{
    44  		Name:       opAcknowledgeJob,
    45  		HTTPMethod: "POST",
    46  		HTTPPath:   "/",
    47  	}
    48  
    49  	if input == nil {
    50  		input = &AcknowledgeJobInput{}
    51  	}
    52  
    53  	output = &AcknowledgeJobOutput{}
    54  	req = c.newRequest(op, input, output)
    55  	return
    56  }
    57  
    58  // AcknowledgeJob API operation for AWS CodePipeline.
    59  //
    60  // Returns information about a specified job and whether that job has been received
    61  // by the job worker. Used for custom actions only.
    62  //
    63  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
    64  // with awserr.Error's Code and Message methods to get detailed information about
    65  // the error.
    66  //
    67  // See the AWS API reference guide for AWS CodePipeline's
    68  // API operation AcknowledgeJob for usage and error information.
    69  //
    70  // Returned Error Types:
    71  //   * ValidationException
    72  //   The validation was specified in an invalid format.
    73  //
    74  //   * InvalidNonceException
    75  //   The nonce was specified in an invalid format.
    76  //
    77  //   * JobNotFoundException
    78  //   The job was specified in an invalid format or cannot be found.
    79  //
    80  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/AcknowledgeJob
    81  func (c *CodePipeline) AcknowledgeJob(input *AcknowledgeJobInput) (*AcknowledgeJobOutput, error) {
    82  	req, out := c.AcknowledgeJobRequest(input)
    83  	return out, req.Send()
    84  }
    85  
    86  // AcknowledgeJobWithContext is the same as AcknowledgeJob with the addition of
    87  // the ability to pass a context and additional request options.
    88  //
    89  // See AcknowledgeJob for details on how to use this API operation.
    90  //
    91  // The context must be non-nil and will be used for request cancellation. If
    92  // the context is nil a panic will occur. In the future the SDK may create
    93  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
    94  // for more information on using Contexts.
    95  func (c *CodePipeline) AcknowledgeJobWithContext(ctx aws.Context, input *AcknowledgeJobInput, opts ...request.Option) (*AcknowledgeJobOutput, error) {
    96  	req, out := c.AcknowledgeJobRequest(input)
    97  	req.SetContext(ctx)
    98  	req.ApplyOptions(opts...)
    99  	return out, req.Send()
   100  }
   101  
   102  const opAcknowledgeThirdPartyJob = "AcknowledgeThirdPartyJob"
   103  
   104  // AcknowledgeThirdPartyJobRequest generates a "aws/request.Request" representing the
   105  // client's request for the AcknowledgeThirdPartyJob operation. The "output" return
   106  // value will be populated with the request's response once the request completes
   107  // successfully.
   108  //
   109  // Use "Send" method on the returned Request to send the API call to the service.
   110  // the "output" return value is not valid until after Send returns without error.
   111  //
   112  // See AcknowledgeThirdPartyJob for more information on using the AcknowledgeThirdPartyJob
   113  // API call, and error handling.
   114  //
   115  // This method is useful when you want to inject custom logic or configuration
   116  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   117  //
   118  //
   119  //    // Example sending a request using the AcknowledgeThirdPartyJobRequest method.
   120  //    req, resp := client.AcknowledgeThirdPartyJobRequest(params)
   121  //
   122  //    err := req.Send()
   123  //    if err == nil { // resp is now filled
   124  //        fmt.Println(resp)
   125  //    }
   126  //
   127  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/AcknowledgeThirdPartyJob
   128  func (c *CodePipeline) AcknowledgeThirdPartyJobRequest(input *AcknowledgeThirdPartyJobInput) (req *request.Request, output *AcknowledgeThirdPartyJobOutput) {
   129  	op := &request.Operation{
   130  		Name:       opAcknowledgeThirdPartyJob,
   131  		HTTPMethod: "POST",
   132  		HTTPPath:   "/",
   133  	}
   134  
   135  	if input == nil {
   136  		input = &AcknowledgeThirdPartyJobInput{}
   137  	}
   138  
   139  	output = &AcknowledgeThirdPartyJobOutput{}
   140  	req = c.newRequest(op, input, output)
   141  	return
   142  }
   143  
   144  // AcknowledgeThirdPartyJob API operation for AWS CodePipeline.
   145  //
   146  // Confirms a job worker has received the specified job. Used for partner actions
   147  // only.
   148  //
   149  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   150  // with awserr.Error's Code and Message methods to get detailed information about
   151  // the error.
   152  //
   153  // See the AWS API reference guide for AWS CodePipeline's
   154  // API operation AcknowledgeThirdPartyJob for usage and error information.
   155  //
   156  // Returned Error Types:
   157  //   * ValidationException
   158  //   The validation was specified in an invalid format.
   159  //
   160  //   * InvalidNonceException
   161  //   The nonce was specified in an invalid format.
   162  //
   163  //   * JobNotFoundException
   164  //   The job was specified in an invalid format or cannot be found.
   165  //
   166  //   * InvalidClientTokenException
   167  //   The client token was specified in an invalid format
   168  //
   169  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/AcknowledgeThirdPartyJob
   170  func (c *CodePipeline) AcknowledgeThirdPartyJob(input *AcknowledgeThirdPartyJobInput) (*AcknowledgeThirdPartyJobOutput, error) {
   171  	req, out := c.AcknowledgeThirdPartyJobRequest(input)
   172  	return out, req.Send()
   173  }
   174  
   175  // AcknowledgeThirdPartyJobWithContext is the same as AcknowledgeThirdPartyJob with the addition of
   176  // the ability to pass a context and additional request options.
   177  //
   178  // See AcknowledgeThirdPartyJob for details on how to use this API operation.
   179  //
   180  // The context must be non-nil and will be used for request cancellation. If
   181  // the context is nil a panic will occur. In the future the SDK may create
   182  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   183  // for more information on using Contexts.
   184  func (c *CodePipeline) AcknowledgeThirdPartyJobWithContext(ctx aws.Context, input *AcknowledgeThirdPartyJobInput, opts ...request.Option) (*AcknowledgeThirdPartyJobOutput, error) {
   185  	req, out := c.AcknowledgeThirdPartyJobRequest(input)
   186  	req.SetContext(ctx)
   187  	req.ApplyOptions(opts...)
   188  	return out, req.Send()
   189  }
   190  
   191  const opCreateCustomActionType = "CreateCustomActionType"
   192  
   193  // CreateCustomActionTypeRequest generates a "aws/request.Request" representing the
   194  // client's request for the CreateCustomActionType operation. The "output" return
   195  // value will be populated with the request's response once the request completes
   196  // successfully.
   197  //
   198  // Use "Send" method on the returned Request to send the API call to the service.
   199  // the "output" return value is not valid until after Send returns without error.
   200  //
   201  // See CreateCustomActionType for more information on using the CreateCustomActionType
   202  // API call, and error handling.
   203  //
   204  // This method is useful when you want to inject custom logic or configuration
   205  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   206  //
   207  //
   208  //    // Example sending a request using the CreateCustomActionTypeRequest method.
   209  //    req, resp := client.CreateCustomActionTypeRequest(params)
   210  //
   211  //    err := req.Send()
   212  //    if err == nil { // resp is now filled
   213  //        fmt.Println(resp)
   214  //    }
   215  //
   216  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/CreateCustomActionType
   217  func (c *CodePipeline) CreateCustomActionTypeRequest(input *CreateCustomActionTypeInput) (req *request.Request, output *CreateCustomActionTypeOutput) {
   218  	op := &request.Operation{
   219  		Name:       opCreateCustomActionType,
   220  		HTTPMethod: "POST",
   221  		HTTPPath:   "/",
   222  	}
   223  
   224  	if input == nil {
   225  		input = &CreateCustomActionTypeInput{}
   226  	}
   227  
   228  	output = &CreateCustomActionTypeOutput{}
   229  	req = c.newRequest(op, input, output)
   230  	return
   231  }
   232  
   233  // CreateCustomActionType API operation for AWS CodePipeline.
   234  //
   235  // Creates a new custom action that can be used in all pipelines associated
   236  // with the AWS account. Only used for custom actions.
   237  //
   238  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   239  // with awserr.Error's Code and Message methods to get detailed information about
   240  // the error.
   241  //
   242  // See the AWS API reference guide for AWS CodePipeline's
   243  // API operation CreateCustomActionType for usage and error information.
   244  //
   245  // Returned Error Types:
   246  //   * ValidationException
   247  //   The validation was specified in an invalid format.
   248  //
   249  //   * LimitExceededException
   250  //   The number of pipelines associated with the AWS account has exceeded the
   251  //   limit allowed for the account.
   252  //
   253  //   * TooManyTagsException
   254  //   The tags limit for a resource has been exceeded.
   255  //
   256  //   * InvalidTagsException
   257  //   The specified resource tags are invalid.
   258  //
   259  //   * ConcurrentModificationException
   260  //   Unable to modify the tag due to a simultaneous update request.
   261  //
   262  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/CreateCustomActionType
   263  func (c *CodePipeline) CreateCustomActionType(input *CreateCustomActionTypeInput) (*CreateCustomActionTypeOutput, error) {
   264  	req, out := c.CreateCustomActionTypeRequest(input)
   265  	return out, req.Send()
   266  }
   267  
   268  // CreateCustomActionTypeWithContext is the same as CreateCustomActionType with the addition of
   269  // the ability to pass a context and additional request options.
   270  //
   271  // See CreateCustomActionType for details on how to use this API operation.
   272  //
   273  // The context must be non-nil and will be used for request cancellation. If
   274  // the context is nil a panic will occur. In the future the SDK may create
   275  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   276  // for more information on using Contexts.
   277  func (c *CodePipeline) CreateCustomActionTypeWithContext(ctx aws.Context, input *CreateCustomActionTypeInput, opts ...request.Option) (*CreateCustomActionTypeOutput, error) {
   278  	req, out := c.CreateCustomActionTypeRequest(input)
   279  	req.SetContext(ctx)
   280  	req.ApplyOptions(opts...)
   281  	return out, req.Send()
   282  }
   283  
   284  const opCreatePipeline = "CreatePipeline"
   285  
   286  // CreatePipelineRequest generates a "aws/request.Request" representing the
   287  // client's request for the CreatePipeline operation. The "output" return
   288  // value will be populated with the request's response once the request completes
   289  // successfully.
   290  //
   291  // Use "Send" method on the returned Request to send the API call to the service.
   292  // the "output" return value is not valid until after Send returns without error.
   293  //
   294  // See CreatePipeline for more information on using the CreatePipeline
   295  // API call, and error handling.
   296  //
   297  // This method is useful when you want to inject custom logic or configuration
   298  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   299  //
   300  //
   301  //    // Example sending a request using the CreatePipelineRequest method.
   302  //    req, resp := client.CreatePipelineRequest(params)
   303  //
   304  //    err := req.Send()
   305  //    if err == nil { // resp is now filled
   306  //        fmt.Println(resp)
   307  //    }
   308  //
   309  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/CreatePipeline
   310  func (c *CodePipeline) CreatePipelineRequest(input *CreatePipelineInput) (req *request.Request, output *CreatePipelineOutput) {
   311  	op := &request.Operation{
   312  		Name:       opCreatePipeline,
   313  		HTTPMethod: "POST",
   314  		HTTPPath:   "/",
   315  	}
   316  
   317  	if input == nil {
   318  		input = &CreatePipelineInput{}
   319  	}
   320  
   321  	output = &CreatePipelineOutput{}
   322  	req = c.newRequest(op, input, output)
   323  	return
   324  }
   325  
   326  // CreatePipeline API operation for AWS CodePipeline.
   327  //
   328  // Creates a pipeline.
   329  //
   330  // In the pipeline structure, you must include either artifactStore or artifactStores
   331  // in your pipeline, but you cannot use both. If you create a cross-region action
   332  // in your pipeline, you must use artifactStores.
   333  //
   334  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   335  // with awserr.Error's Code and Message methods to get detailed information about
   336  // the error.
   337  //
   338  // See the AWS API reference guide for AWS CodePipeline's
   339  // API operation CreatePipeline for usage and error information.
   340  //
   341  // Returned Error Types:
   342  //   * ValidationException
   343  //   The validation was specified in an invalid format.
   344  //
   345  //   * PipelineNameInUseException
   346  //   The specified pipeline name is already in use.
   347  //
   348  //   * InvalidStageDeclarationException
   349  //   The stage declaration was specified in an invalid format.
   350  //
   351  //   * InvalidActionDeclarationException
   352  //   The action declaration was specified in an invalid format.
   353  //
   354  //   * InvalidBlockerDeclarationException
   355  //   Reserved for future use.
   356  //
   357  //   * InvalidStructureException
   358  //   The structure was specified in an invalid format.
   359  //
   360  //   * LimitExceededException
   361  //   The number of pipelines associated with the AWS account has exceeded the
   362  //   limit allowed for the account.
   363  //
   364  //   * TooManyTagsException
   365  //   The tags limit for a resource has been exceeded.
   366  //
   367  //   * InvalidTagsException
   368  //   The specified resource tags are invalid.
   369  //
   370  //   * ConcurrentModificationException
   371  //   Unable to modify the tag due to a simultaneous update request.
   372  //
   373  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/CreatePipeline
   374  func (c *CodePipeline) CreatePipeline(input *CreatePipelineInput) (*CreatePipelineOutput, error) {
   375  	req, out := c.CreatePipelineRequest(input)
   376  	return out, req.Send()
   377  }
   378  
   379  // CreatePipelineWithContext is the same as CreatePipeline with the addition of
   380  // the ability to pass a context and additional request options.
   381  //
   382  // See CreatePipeline for details on how to use this API operation.
   383  //
   384  // The context must be non-nil and will be used for request cancellation. If
   385  // the context is nil a panic will occur. In the future the SDK may create
   386  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   387  // for more information on using Contexts.
   388  func (c *CodePipeline) CreatePipelineWithContext(ctx aws.Context, input *CreatePipelineInput, opts ...request.Option) (*CreatePipelineOutput, error) {
   389  	req, out := c.CreatePipelineRequest(input)
   390  	req.SetContext(ctx)
   391  	req.ApplyOptions(opts...)
   392  	return out, req.Send()
   393  }
   394  
   395  const opDeleteCustomActionType = "DeleteCustomActionType"
   396  
   397  // DeleteCustomActionTypeRequest generates a "aws/request.Request" representing the
   398  // client's request for the DeleteCustomActionType operation. The "output" return
   399  // value will be populated with the request's response once the request completes
   400  // successfully.
   401  //
   402  // Use "Send" method on the returned Request to send the API call to the service.
   403  // the "output" return value is not valid until after Send returns without error.
   404  //
   405  // See DeleteCustomActionType for more information on using the DeleteCustomActionType
   406  // API call, and error handling.
   407  //
   408  // This method is useful when you want to inject custom logic or configuration
   409  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   410  //
   411  //
   412  //    // Example sending a request using the DeleteCustomActionTypeRequest method.
   413  //    req, resp := client.DeleteCustomActionTypeRequest(params)
   414  //
   415  //    err := req.Send()
   416  //    if err == nil { // resp is now filled
   417  //        fmt.Println(resp)
   418  //    }
   419  //
   420  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/DeleteCustomActionType
   421  func (c *CodePipeline) DeleteCustomActionTypeRequest(input *DeleteCustomActionTypeInput) (req *request.Request, output *DeleteCustomActionTypeOutput) {
   422  	op := &request.Operation{
   423  		Name:       opDeleteCustomActionType,
   424  		HTTPMethod: "POST",
   425  		HTTPPath:   "/",
   426  	}
   427  
   428  	if input == nil {
   429  		input = &DeleteCustomActionTypeInput{}
   430  	}
   431  
   432  	output = &DeleteCustomActionTypeOutput{}
   433  	req = c.newRequest(op, input, output)
   434  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
   435  	return
   436  }
   437  
   438  // DeleteCustomActionType API operation for AWS CodePipeline.
   439  //
   440  // Marks a custom action as deleted. PollForJobs for the custom action fails
   441  // after the action is marked for deletion. Used for custom actions only.
   442  //
   443  // To re-create a custom action after it has been deleted you must use a string
   444  // in the version field that has never been used before. This string can be
   445  // an incremented version number, for example. To restore a deleted custom action,
   446  // use a JSON file that is identical to the deleted action, including the original
   447  // string in the version field.
   448  //
   449  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   450  // with awserr.Error's Code and Message methods to get detailed information about
   451  // the error.
   452  //
   453  // See the AWS API reference guide for AWS CodePipeline's
   454  // API operation DeleteCustomActionType for usage and error information.
   455  //
   456  // Returned Error Types:
   457  //   * ValidationException
   458  //   The validation was specified in an invalid format.
   459  //
   460  //   * ConcurrentModificationException
   461  //   Unable to modify the tag due to a simultaneous update request.
   462  //
   463  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/DeleteCustomActionType
   464  func (c *CodePipeline) DeleteCustomActionType(input *DeleteCustomActionTypeInput) (*DeleteCustomActionTypeOutput, error) {
   465  	req, out := c.DeleteCustomActionTypeRequest(input)
   466  	return out, req.Send()
   467  }
   468  
   469  // DeleteCustomActionTypeWithContext is the same as DeleteCustomActionType with the addition of
   470  // the ability to pass a context and additional request options.
   471  //
   472  // See DeleteCustomActionType for details on how to use this API operation.
   473  //
   474  // The context must be non-nil and will be used for request cancellation. If
   475  // the context is nil a panic will occur. In the future the SDK may create
   476  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   477  // for more information on using Contexts.
   478  func (c *CodePipeline) DeleteCustomActionTypeWithContext(ctx aws.Context, input *DeleteCustomActionTypeInput, opts ...request.Option) (*DeleteCustomActionTypeOutput, error) {
   479  	req, out := c.DeleteCustomActionTypeRequest(input)
   480  	req.SetContext(ctx)
   481  	req.ApplyOptions(opts...)
   482  	return out, req.Send()
   483  }
   484  
   485  const opDeletePipeline = "DeletePipeline"
   486  
   487  // DeletePipelineRequest generates a "aws/request.Request" representing the
   488  // client's request for the DeletePipeline operation. The "output" return
   489  // value will be populated with the request's response once the request completes
   490  // successfully.
   491  //
   492  // Use "Send" method on the returned Request to send the API call to the service.
   493  // the "output" return value is not valid until after Send returns without error.
   494  //
   495  // See DeletePipeline for more information on using the DeletePipeline
   496  // API call, and error handling.
   497  //
   498  // This method is useful when you want to inject custom logic or configuration
   499  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   500  //
   501  //
   502  //    // Example sending a request using the DeletePipelineRequest method.
   503  //    req, resp := client.DeletePipelineRequest(params)
   504  //
   505  //    err := req.Send()
   506  //    if err == nil { // resp is now filled
   507  //        fmt.Println(resp)
   508  //    }
   509  //
   510  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/DeletePipeline
   511  func (c *CodePipeline) DeletePipelineRequest(input *DeletePipelineInput) (req *request.Request, output *DeletePipelineOutput) {
   512  	op := &request.Operation{
   513  		Name:       opDeletePipeline,
   514  		HTTPMethod: "POST",
   515  		HTTPPath:   "/",
   516  	}
   517  
   518  	if input == nil {
   519  		input = &DeletePipelineInput{}
   520  	}
   521  
   522  	output = &DeletePipelineOutput{}
   523  	req = c.newRequest(op, input, output)
   524  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
   525  	return
   526  }
   527  
   528  // DeletePipeline API operation for AWS CodePipeline.
   529  //
   530  // Deletes the specified pipeline.
   531  //
   532  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   533  // with awserr.Error's Code and Message methods to get detailed information about
   534  // the error.
   535  //
   536  // See the AWS API reference guide for AWS CodePipeline's
   537  // API operation DeletePipeline for usage and error information.
   538  //
   539  // Returned Error Types:
   540  //   * ValidationException
   541  //   The validation was specified in an invalid format.
   542  //
   543  //   * ConcurrentModificationException
   544  //   Unable to modify the tag due to a simultaneous update request.
   545  //
   546  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/DeletePipeline
   547  func (c *CodePipeline) DeletePipeline(input *DeletePipelineInput) (*DeletePipelineOutput, error) {
   548  	req, out := c.DeletePipelineRequest(input)
   549  	return out, req.Send()
   550  }
   551  
   552  // DeletePipelineWithContext is the same as DeletePipeline with the addition of
   553  // the ability to pass a context and additional request options.
   554  //
   555  // See DeletePipeline for details on how to use this API operation.
   556  //
   557  // The context must be non-nil and will be used for request cancellation. If
   558  // the context is nil a panic will occur. In the future the SDK may create
   559  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   560  // for more information on using Contexts.
   561  func (c *CodePipeline) DeletePipelineWithContext(ctx aws.Context, input *DeletePipelineInput, opts ...request.Option) (*DeletePipelineOutput, error) {
   562  	req, out := c.DeletePipelineRequest(input)
   563  	req.SetContext(ctx)
   564  	req.ApplyOptions(opts...)
   565  	return out, req.Send()
   566  }
   567  
   568  const opDeleteWebhook = "DeleteWebhook"
   569  
   570  // DeleteWebhookRequest generates a "aws/request.Request" representing the
   571  // client's request for the DeleteWebhook operation. The "output" return
   572  // value will be populated with the request's response once the request completes
   573  // successfully.
   574  //
   575  // Use "Send" method on the returned Request to send the API call to the service.
   576  // the "output" return value is not valid until after Send returns without error.
   577  //
   578  // See DeleteWebhook for more information on using the DeleteWebhook
   579  // API call, and error handling.
   580  //
   581  // This method is useful when you want to inject custom logic or configuration
   582  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   583  //
   584  //
   585  //    // Example sending a request using the DeleteWebhookRequest method.
   586  //    req, resp := client.DeleteWebhookRequest(params)
   587  //
   588  //    err := req.Send()
   589  //    if err == nil { // resp is now filled
   590  //        fmt.Println(resp)
   591  //    }
   592  //
   593  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/DeleteWebhook
   594  func (c *CodePipeline) DeleteWebhookRequest(input *DeleteWebhookInput) (req *request.Request, output *DeleteWebhookOutput) {
   595  	op := &request.Operation{
   596  		Name:       opDeleteWebhook,
   597  		HTTPMethod: "POST",
   598  		HTTPPath:   "/",
   599  	}
   600  
   601  	if input == nil {
   602  		input = &DeleteWebhookInput{}
   603  	}
   604  
   605  	output = &DeleteWebhookOutput{}
   606  	req = c.newRequest(op, input, output)
   607  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
   608  	return
   609  }
   610  
   611  // DeleteWebhook API operation for AWS CodePipeline.
   612  //
   613  // Deletes a previously created webhook by name. Deleting the webhook stops
   614  // AWS CodePipeline from starting a pipeline every time an external event occurs.
   615  // The API returns successfully when trying to delete a webhook that is already
   616  // deleted. If a deleted webhook is re-created by calling PutWebhook with the
   617  // same name, it will have a different URL.
   618  //
   619  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   620  // with awserr.Error's Code and Message methods to get detailed information about
   621  // the error.
   622  //
   623  // See the AWS API reference guide for AWS CodePipeline's
   624  // API operation DeleteWebhook for usage and error information.
   625  //
   626  // Returned Error Types:
   627  //   * ValidationException
   628  //   The validation was specified in an invalid format.
   629  //
   630  //   * ConcurrentModificationException
   631  //   Unable to modify the tag due to a simultaneous update request.
   632  //
   633  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/DeleteWebhook
   634  func (c *CodePipeline) DeleteWebhook(input *DeleteWebhookInput) (*DeleteWebhookOutput, error) {
   635  	req, out := c.DeleteWebhookRequest(input)
   636  	return out, req.Send()
   637  }
   638  
   639  // DeleteWebhookWithContext is the same as DeleteWebhook with the addition of
   640  // the ability to pass a context and additional request options.
   641  //
   642  // See DeleteWebhook for details on how to use this API operation.
   643  //
   644  // The context must be non-nil and will be used for request cancellation. If
   645  // the context is nil a panic will occur. In the future the SDK may create
   646  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   647  // for more information on using Contexts.
   648  func (c *CodePipeline) DeleteWebhookWithContext(ctx aws.Context, input *DeleteWebhookInput, opts ...request.Option) (*DeleteWebhookOutput, error) {
   649  	req, out := c.DeleteWebhookRequest(input)
   650  	req.SetContext(ctx)
   651  	req.ApplyOptions(opts...)
   652  	return out, req.Send()
   653  }
   654  
   655  const opDeregisterWebhookWithThirdParty = "DeregisterWebhookWithThirdParty"
   656  
   657  // DeregisterWebhookWithThirdPartyRequest generates a "aws/request.Request" representing the
   658  // client's request for the DeregisterWebhookWithThirdParty operation. The "output" return
   659  // value will be populated with the request's response once the request completes
   660  // successfully.
   661  //
   662  // Use "Send" method on the returned Request to send the API call to the service.
   663  // the "output" return value is not valid until after Send returns without error.
   664  //
   665  // See DeregisterWebhookWithThirdParty for more information on using the DeregisterWebhookWithThirdParty
   666  // API call, and error handling.
   667  //
   668  // This method is useful when you want to inject custom logic or configuration
   669  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   670  //
   671  //
   672  //    // Example sending a request using the DeregisterWebhookWithThirdPartyRequest method.
   673  //    req, resp := client.DeregisterWebhookWithThirdPartyRequest(params)
   674  //
   675  //    err := req.Send()
   676  //    if err == nil { // resp is now filled
   677  //        fmt.Println(resp)
   678  //    }
   679  //
   680  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/DeregisterWebhookWithThirdParty
   681  func (c *CodePipeline) DeregisterWebhookWithThirdPartyRequest(input *DeregisterWebhookWithThirdPartyInput) (req *request.Request, output *DeregisterWebhookWithThirdPartyOutput) {
   682  	op := &request.Operation{
   683  		Name:       opDeregisterWebhookWithThirdParty,
   684  		HTTPMethod: "POST",
   685  		HTTPPath:   "/",
   686  	}
   687  
   688  	if input == nil {
   689  		input = &DeregisterWebhookWithThirdPartyInput{}
   690  	}
   691  
   692  	output = &DeregisterWebhookWithThirdPartyOutput{}
   693  	req = c.newRequest(op, input, output)
   694  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
   695  	return
   696  }
   697  
   698  // DeregisterWebhookWithThirdParty API operation for AWS CodePipeline.
   699  //
   700  // Removes the connection between the webhook that was created by CodePipeline
   701  // and the external tool with events to be detected. Currently supported only
   702  // for webhooks that target an action type of GitHub.
   703  //
   704  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   705  // with awserr.Error's Code and Message methods to get detailed information about
   706  // the error.
   707  //
   708  // See the AWS API reference guide for AWS CodePipeline's
   709  // API operation DeregisterWebhookWithThirdParty for usage and error information.
   710  //
   711  // Returned Error Types:
   712  //   * ValidationException
   713  //   The validation was specified in an invalid format.
   714  //
   715  //   * WebhookNotFoundException
   716  //   The specified webhook was entered in an invalid format or cannot be found.
   717  //
   718  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/DeregisterWebhookWithThirdParty
   719  func (c *CodePipeline) DeregisterWebhookWithThirdParty(input *DeregisterWebhookWithThirdPartyInput) (*DeregisterWebhookWithThirdPartyOutput, error) {
   720  	req, out := c.DeregisterWebhookWithThirdPartyRequest(input)
   721  	return out, req.Send()
   722  }
   723  
   724  // DeregisterWebhookWithThirdPartyWithContext is the same as DeregisterWebhookWithThirdParty with the addition of
   725  // the ability to pass a context and additional request options.
   726  //
   727  // See DeregisterWebhookWithThirdParty for details on how to use this API operation.
   728  //
   729  // The context must be non-nil and will be used for request cancellation. If
   730  // the context is nil a panic will occur. In the future the SDK may create
   731  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   732  // for more information on using Contexts.
   733  func (c *CodePipeline) DeregisterWebhookWithThirdPartyWithContext(ctx aws.Context, input *DeregisterWebhookWithThirdPartyInput, opts ...request.Option) (*DeregisterWebhookWithThirdPartyOutput, error) {
   734  	req, out := c.DeregisterWebhookWithThirdPartyRequest(input)
   735  	req.SetContext(ctx)
   736  	req.ApplyOptions(opts...)
   737  	return out, req.Send()
   738  }
   739  
   740  const opDisableStageTransition = "DisableStageTransition"
   741  
   742  // DisableStageTransitionRequest generates a "aws/request.Request" representing the
   743  // client's request for the DisableStageTransition operation. The "output" return
   744  // value will be populated with the request's response once the request completes
   745  // successfully.
   746  //
   747  // Use "Send" method on the returned Request to send the API call to the service.
   748  // the "output" return value is not valid until after Send returns without error.
   749  //
   750  // See DisableStageTransition for more information on using the DisableStageTransition
   751  // API call, and error handling.
   752  //
   753  // This method is useful when you want to inject custom logic or configuration
   754  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   755  //
   756  //
   757  //    // Example sending a request using the DisableStageTransitionRequest method.
   758  //    req, resp := client.DisableStageTransitionRequest(params)
   759  //
   760  //    err := req.Send()
   761  //    if err == nil { // resp is now filled
   762  //        fmt.Println(resp)
   763  //    }
   764  //
   765  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/DisableStageTransition
   766  func (c *CodePipeline) DisableStageTransitionRequest(input *DisableStageTransitionInput) (req *request.Request, output *DisableStageTransitionOutput) {
   767  	op := &request.Operation{
   768  		Name:       opDisableStageTransition,
   769  		HTTPMethod: "POST",
   770  		HTTPPath:   "/",
   771  	}
   772  
   773  	if input == nil {
   774  		input = &DisableStageTransitionInput{}
   775  	}
   776  
   777  	output = &DisableStageTransitionOutput{}
   778  	req = c.newRequest(op, input, output)
   779  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
   780  	return
   781  }
   782  
   783  // DisableStageTransition API operation for AWS CodePipeline.
   784  //
   785  // Prevents artifacts in a pipeline from transitioning to the next stage in
   786  // the pipeline.
   787  //
   788  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   789  // with awserr.Error's Code and Message methods to get detailed information about
   790  // the error.
   791  //
   792  // See the AWS API reference guide for AWS CodePipeline's
   793  // API operation DisableStageTransition for usage and error information.
   794  //
   795  // Returned Error Types:
   796  //   * ValidationException
   797  //   The validation was specified in an invalid format.
   798  //
   799  //   * PipelineNotFoundException
   800  //   The pipeline was specified in an invalid format or cannot be found.
   801  //
   802  //   * StageNotFoundException
   803  //   The stage was specified in an invalid format or cannot be found.
   804  //
   805  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/DisableStageTransition
   806  func (c *CodePipeline) DisableStageTransition(input *DisableStageTransitionInput) (*DisableStageTransitionOutput, error) {
   807  	req, out := c.DisableStageTransitionRequest(input)
   808  	return out, req.Send()
   809  }
   810  
   811  // DisableStageTransitionWithContext is the same as DisableStageTransition with the addition of
   812  // the ability to pass a context and additional request options.
   813  //
   814  // See DisableStageTransition for details on how to use this API operation.
   815  //
   816  // The context must be non-nil and will be used for request cancellation. If
   817  // the context is nil a panic will occur. In the future the SDK may create
   818  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   819  // for more information on using Contexts.
   820  func (c *CodePipeline) DisableStageTransitionWithContext(ctx aws.Context, input *DisableStageTransitionInput, opts ...request.Option) (*DisableStageTransitionOutput, error) {
   821  	req, out := c.DisableStageTransitionRequest(input)
   822  	req.SetContext(ctx)
   823  	req.ApplyOptions(opts...)
   824  	return out, req.Send()
   825  }
   826  
   827  const opEnableStageTransition = "EnableStageTransition"
   828  
   829  // EnableStageTransitionRequest generates a "aws/request.Request" representing the
   830  // client's request for the EnableStageTransition operation. The "output" return
   831  // value will be populated with the request's response once the request completes
   832  // successfully.
   833  //
   834  // Use "Send" method on the returned Request to send the API call to the service.
   835  // the "output" return value is not valid until after Send returns without error.
   836  //
   837  // See EnableStageTransition for more information on using the EnableStageTransition
   838  // API call, and error handling.
   839  //
   840  // This method is useful when you want to inject custom logic or configuration
   841  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   842  //
   843  //
   844  //    // Example sending a request using the EnableStageTransitionRequest method.
   845  //    req, resp := client.EnableStageTransitionRequest(params)
   846  //
   847  //    err := req.Send()
   848  //    if err == nil { // resp is now filled
   849  //        fmt.Println(resp)
   850  //    }
   851  //
   852  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/EnableStageTransition
   853  func (c *CodePipeline) EnableStageTransitionRequest(input *EnableStageTransitionInput) (req *request.Request, output *EnableStageTransitionOutput) {
   854  	op := &request.Operation{
   855  		Name:       opEnableStageTransition,
   856  		HTTPMethod: "POST",
   857  		HTTPPath:   "/",
   858  	}
   859  
   860  	if input == nil {
   861  		input = &EnableStageTransitionInput{}
   862  	}
   863  
   864  	output = &EnableStageTransitionOutput{}
   865  	req = c.newRequest(op, input, output)
   866  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
   867  	return
   868  }
   869  
   870  // EnableStageTransition API operation for AWS CodePipeline.
   871  //
   872  // Enables artifacts in a pipeline to transition to a stage in a pipeline.
   873  //
   874  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   875  // with awserr.Error's Code and Message methods to get detailed information about
   876  // the error.
   877  //
   878  // See the AWS API reference guide for AWS CodePipeline's
   879  // API operation EnableStageTransition for usage and error information.
   880  //
   881  // Returned Error Types:
   882  //   * ValidationException
   883  //   The validation was specified in an invalid format.
   884  //
   885  //   * PipelineNotFoundException
   886  //   The pipeline was specified in an invalid format or cannot be found.
   887  //
   888  //   * StageNotFoundException
   889  //   The stage was specified in an invalid format or cannot be found.
   890  //
   891  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/EnableStageTransition
   892  func (c *CodePipeline) EnableStageTransition(input *EnableStageTransitionInput) (*EnableStageTransitionOutput, error) {
   893  	req, out := c.EnableStageTransitionRequest(input)
   894  	return out, req.Send()
   895  }
   896  
   897  // EnableStageTransitionWithContext is the same as EnableStageTransition with the addition of
   898  // the ability to pass a context and additional request options.
   899  //
   900  // See EnableStageTransition for details on how to use this API operation.
   901  //
   902  // The context must be non-nil and will be used for request cancellation. If
   903  // the context is nil a panic will occur. In the future the SDK may create
   904  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   905  // for more information on using Contexts.
   906  func (c *CodePipeline) EnableStageTransitionWithContext(ctx aws.Context, input *EnableStageTransitionInput, opts ...request.Option) (*EnableStageTransitionOutput, error) {
   907  	req, out := c.EnableStageTransitionRequest(input)
   908  	req.SetContext(ctx)
   909  	req.ApplyOptions(opts...)
   910  	return out, req.Send()
   911  }
   912  
   913  const opGetActionType = "GetActionType"
   914  
   915  // GetActionTypeRequest generates a "aws/request.Request" representing the
   916  // client's request for the GetActionType operation. The "output" return
   917  // value will be populated with the request's response once the request completes
   918  // successfully.
   919  //
   920  // Use "Send" method on the returned Request to send the API call to the service.
   921  // the "output" return value is not valid until after Send returns without error.
   922  //
   923  // See GetActionType for more information on using the GetActionType
   924  // API call, and error handling.
   925  //
   926  // This method is useful when you want to inject custom logic or configuration
   927  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   928  //
   929  //
   930  //    // Example sending a request using the GetActionTypeRequest method.
   931  //    req, resp := client.GetActionTypeRequest(params)
   932  //
   933  //    err := req.Send()
   934  //    if err == nil { // resp is now filled
   935  //        fmt.Println(resp)
   936  //    }
   937  //
   938  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/GetActionType
   939  func (c *CodePipeline) GetActionTypeRequest(input *GetActionTypeInput) (req *request.Request, output *GetActionTypeOutput) {
   940  	op := &request.Operation{
   941  		Name:       opGetActionType,
   942  		HTTPMethod: "POST",
   943  		HTTPPath:   "/",
   944  	}
   945  
   946  	if input == nil {
   947  		input = &GetActionTypeInput{}
   948  	}
   949  
   950  	output = &GetActionTypeOutput{}
   951  	req = c.newRequest(op, input, output)
   952  	return
   953  }
   954  
   955  // GetActionType API operation for AWS CodePipeline.
   956  //
   957  // Returns information about an action type created for an external provider,
   958  // where the action is to be used by customers of the external provider. The
   959  // action can be created with any supported integration model.
   960  //
   961  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   962  // with awserr.Error's Code and Message methods to get detailed information about
   963  // the error.
   964  //
   965  // See the AWS API reference guide for AWS CodePipeline's
   966  // API operation GetActionType for usage and error information.
   967  //
   968  // Returned Error Types:
   969  //   * ActionTypeNotFoundException
   970  //   The specified action type cannot be found.
   971  //
   972  //   * ValidationException
   973  //   The validation was specified in an invalid format.
   974  //
   975  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/GetActionType
   976  func (c *CodePipeline) GetActionType(input *GetActionTypeInput) (*GetActionTypeOutput, error) {
   977  	req, out := c.GetActionTypeRequest(input)
   978  	return out, req.Send()
   979  }
   980  
   981  // GetActionTypeWithContext is the same as GetActionType with the addition of
   982  // the ability to pass a context and additional request options.
   983  //
   984  // See GetActionType for details on how to use this API operation.
   985  //
   986  // The context must be non-nil and will be used for request cancellation. If
   987  // the context is nil a panic will occur. In the future the SDK may create
   988  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   989  // for more information on using Contexts.
   990  func (c *CodePipeline) GetActionTypeWithContext(ctx aws.Context, input *GetActionTypeInput, opts ...request.Option) (*GetActionTypeOutput, error) {
   991  	req, out := c.GetActionTypeRequest(input)
   992  	req.SetContext(ctx)
   993  	req.ApplyOptions(opts...)
   994  	return out, req.Send()
   995  }
   996  
   997  const opGetJobDetails = "GetJobDetails"
   998  
   999  // GetJobDetailsRequest generates a "aws/request.Request" representing the
  1000  // client's request for the GetJobDetails operation. The "output" return
  1001  // value will be populated with the request's response once the request completes
  1002  // successfully.
  1003  //
  1004  // Use "Send" method on the returned Request to send the API call to the service.
  1005  // the "output" return value is not valid until after Send returns without error.
  1006  //
  1007  // See GetJobDetails for more information on using the GetJobDetails
  1008  // API call, and error handling.
  1009  //
  1010  // This method is useful when you want to inject custom logic or configuration
  1011  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1012  //
  1013  //
  1014  //    // Example sending a request using the GetJobDetailsRequest method.
  1015  //    req, resp := client.GetJobDetailsRequest(params)
  1016  //
  1017  //    err := req.Send()
  1018  //    if err == nil { // resp is now filled
  1019  //        fmt.Println(resp)
  1020  //    }
  1021  //
  1022  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/GetJobDetails
  1023  func (c *CodePipeline) GetJobDetailsRequest(input *GetJobDetailsInput) (req *request.Request, output *GetJobDetailsOutput) {
  1024  	op := &request.Operation{
  1025  		Name:       opGetJobDetails,
  1026  		HTTPMethod: "POST",
  1027  		HTTPPath:   "/",
  1028  	}
  1029  
  1030  	if input == nil {
  1031  		input = &GetJobDetailsInput{}
  1032  	}
  1033  
  1034  	output = &GetJobDetailsOutput{}
  1035  	req = c.newRequest(op, input, output)
  1036  	return
  1037  }
  1038  
  1039  // GetJobDetails API operation for AWS CodePipeline.
  1040  //
  1041  // Returns information about a job. Used for custom actions only.
  1042  //
  1043  // When this API is called, AWS CodePipeline returns temporary credentials for
  1044  // the S3 bucket used to store artifacts for the pipeline, if the action requires
  1045  // access to that S3 bucket for input or output artifacts. This API also returns
  1046  // any secret values defined for the action.
  1047  //
  1048  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1049  // with awserr.Error's Code and Message methods to get detailed information about
  1050  // the error.
  1051  //
  1052  // See the AWS API reference guide for AWS CodePipeline's
  1053  // API operation GetJobDetails for usage and error information.
  1054  //
  1055  // Returned Error Types:
  1056  //   * ValidationException
  1057  //   The validation was specified in an invalid format.
  1058  //
  1059  //   * JobNotFoundException
  1060  //   The job was specified in an invalid format or cannot be found.
  1061  //
  1062  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/GetJobDetails
  1063  func (c *CodePipeline) GetJobDetails(input *GetJobDetailsInput) (*GetJobDetailsOutput, error) {
  1064  	req, out := c.GetJobDetailsRequest(input)
  1065  	return out, req.Send()
  1066  }
  1067  
  1068  // GetJobDetailsWithContext is the same as GetJobDetails with the addition of
  1069  // the ability to pass a context and additional request options.
  1070  //
  1071  // See GetJobDetails for details on how to use this API operation.
  1072  //
  1073  // The context must be non-nil and will be used for request cancellation. If
  1074  // the context is nil a panic will occur. In the future the SDK may create
  1075  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1076  // for more information on using Contexts.
  1077  func (c *CodePipeline) GetJobDetailsWithContext(ctx aws.Context, input *GetJobDetailsInput, opts ...request.Option) (*GetJobDetailsOutput, error) {
  1078  	req, out := c.GetJobDetailsRequest(input)
  1079  	req.SetContext(ctx)
  1080  	req.ApplyOptions(opts...)
  1081  	return out, req.Send()
  1082  }
  1083  
  1084  const opGetPipeline = "GetPipeline"
  1085  
  1086  // GetPipelineRequest generates a "aws/request.Request" representing the
  1087  // client's request for the GetPipeline operation. The "output" return
  1088  // value will be populated with the request's response once the request completes
  1089  // successfully.
  1090  //
  1091  // Use "Send" method on the returned Request to send the API call to the service.
  1092  // the "output" return value is not valid until after Send returns without error.
  1093  //
  1094  // See GetPipeline for more information on using the GetPipeline
  1095  // API call, and error handling.
  1096  //
  1097  // This method is useful when you want to inject custom logic or configuration
  1098  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1099  //
  1100  //
  1101  //    // Example sending a request using the GetPipelineRequest method.
  1102  //    req, resp := client.GetPipelineRequest(params)
  1103  //
  1104  //    err := req.Send()
  1105  //    if err == nil { // resp is now filled
  1106  //        fmt.Println(resp)
  1107  //    }
  1108  //
  1109  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/GetPipeline
  1110  func (c *CodePipeline) GetPipelineRequest(input *GetPipelineInput) (req *request.Request, output *GetPipelineOutput) {
  1111  	op := &request.Operation{
  1112  		Name:       opGetPipeline,
  1113  		HTTPMethod: "POST",
  1114  		HTTPPath:   "/",
  1115  	}
  1116  
  1117  	if input == nil {
  1118  		input = &GetPipelineInput{}
  1119  	}
  1120  
  1121  	output = &GetPipelineOutput{}
  1122  	req = c.newRequest(op, input, output)
  1123  	return
  1124  }
  1125  
  1126  // GetPipeline API operation for AWS CodePipeline.
  1127  //
  1128  // Returns the metadata, structure, stages, and actions of a pipeline. Can be
  1129  // used to return the entire structure of a pipeline in JSON format, which can
  1130  // then be modified and used to update the pipeline structure with UpdatePipeline.
  1131  //
  1132  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1133  // with awserr.Error's Code and Message methods to get detailed information about
  1134  // the error.
  1135  //
  1136  // See the AWS API reference guide for AWS CodePipeline's
  1137  // API operation GetPipeline for usage and error information.
  1138  //
  1139  // Returned Error Types:
  1140  //   * ValidationException
  1141  //   The validation was specified in an invalid format.
  1142  //
  1143  //   * PipelineNotFoundException
  1144  //   The pipeline was specified in an invalid format or cannot be found.
  1145  //
  1146  //   * PipelineVersionNotFoundException
  1147  //   The pipeline version was specified in an invalid format or cannot be found.
  1148  //
  1149  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/GetPipeline
  1150  func (c *CodePipeline) GetPipeline(input *GetPipelineInput) (*GetPipelineOutput, error) {
  1151  	req, out := c.GetPipelineRequest(input)
  1152  	return out, req.Send()
  1153  }
  1154  
  1155  // GetPipelineWithContext is the same as GetPipeline with the addition of
  1156  // the ability to pass a context and additional request options.
  1157  //
  1158  // See GetPipeline for details on how to use this API operation.
  1159  //
  1160  // The context must be non-nil and will be used for request cancellation. If
  1161  // the context is nil a panic will occur. In the future the SDK may create
  1162  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1163  // for more information on using Contexts.
  1164  func (c *CodePipeline) GetPipelineWithContext(ctx aws.Context, input *GetPipelineInput, opts ...request.Option) (*GetPipelineOutput, error) {
  1165  	req, out := c.GetPipelineRequest(input)
  1166  	req.SetContext(ctx)
  1167  	req.ApplyOptions(opts...)
  1168  	return out, req.Send()
  1169  }
  1170  
  1171  const opGetPipelineExecution = "GetPipelineExecution"
  1172  
  1173  // GetPipelineExecutionRequest generates a "aws/request.Request" representing the
  1174  // client's request for the GetPipelineExecution operation. The "output" return
  1175  // value will be populated with the request's response once the request completes
  1176  // successfully.
  1177  //
  1178  // Use "Send" method on the returned Request to send the API call to the service.
  1179  // the "output" return value is not valid until after Send returns without error.
  1180  //
  1181  // See GetPipelineExecution for more information on using the GetPipelineExecution
  1182  // API call, and error handling.
  1183  //
  1184  // This method is useful when you want to inject custom logic or configuration
  1185  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1186  //
  1187  //
  1188  //    // Example sending a request using the GetPipelineExecutionRequest method.
  1189  //    req, resp := client.GetPipelineExecutionRequest(params)
  1190  //
  1191  //    err := req.Send()
  1192  //    if err == nil { // resp is now filled
  1193  //        fmt.Println(resp)
  1194  //    }
  1195  //
  1196  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/GetPipelineExecution
  1197  func (c *CodePipeline) GetPipelineExecutionRequest(input *GetPipelineExecutionInput) (req *request.Request, output *GetPipelineExecutionOutput) {
  1198  	op := &request.Operation{
  1199  		Name:       opGetPipelineExecution,
  1200  		HTTPMethod: "POST",
  1201  		HTTPPath:   "/",
  1202  	}
  1203  
  1204  	if input == nil {
  1205  		input = &GetPipelineExecutionInput{}
  1206  	}
  1207  
  1208  	output = &GetPipelineExecutionOutput{}
  1209  	req = c.newRequest(op, input, output)
  1210  	return
  1211  }
  1212  
  1213  // GetPipelineExecution API operation for AWS CodePipeline.
  1214  //
  1215  // Returns information about an execution of a pipeline, including details about
  1216  // artifacts, the pipeline execution ID, and the name, version, and status of
  1217  // the pipeline.
  1218  //
  1219  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1220  // with awserr.Error's Code and Message methods to get detailed information about
  1221  // the error.
  1222  //
  1223  // See the AWS API reference guide for AWS CodePipeline's
  1224  // API operation GetPipelineExecution for usage and error information.
  1225  //
  1226  // Returned Error Types:
  1227  //   * ValidationException
  1228  //   The validation was specified in an invalid format.
  1229  //
  1230  //   * PipelineNotFoundException
  1231  //   The pipeline was specified in an invalid format or cannot be found.
  1232  //
  1233  //   * PipelineExecutionNotFoundException
  1234  //   The pipeline execution was specified in an invalid format or cannot be found,
  1235  //   or an execution ID does not belong to the specified pipeline.
  1236  //
  1237  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/GetPipelineExecution
  1238  func (c *CodePipeline) GetPipelineExecution(input *GetPipelineExecutionInput) (*GetPipelineExecutionOutput, error) {
  1239  	req, out := c.GetPipelineExecutionRequest(input)
  1240  	return out, req.Send()
  1241  }
  1242  
  1243  // GetPipelineExecutionWithContext is the same as GetPipelineExecution with the addition of
  1244  // the ability to pass a context and additional request options.
  1245  //
  1246  // See GetPipelineExecution for details on how to use this API operation.
  1247  //
  1248  // The context must be non-nil and will be used for request cancellation. If
  1249  // the context is nil a panic will occur. In the future the SDK may create
  1250  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1251  // for more information on using Contexts.
  1252  func (c *CodePipeline) GetPipelineExecutionWithContext(ctx aws.Context, input *GetPipelineExecutionInput, opts ...request.Option) (*GetPipelineExecutionOutput, error) {
  1253  	req, out := c.GetPipelineExecutionRequest(input)
  1254  	req.SetContext(ctx)
  1255  	req.ApplyOptions(opts...)
  1256  	return out, req.Send()
  1257  }
  1258  
  1259  const opGetPipelineState = "GetPipelineState"
  1260  
  1261  // GetPipelineStateRequest generates a "aws/request.Request" representing the
  1262  // client's request for the GetPipelineState operation. The "output" return
  1263  // value will be populated with the request's response once the request completes
  1264  // successfully.
  1265  //
  1266  // Use "Send" method on the returned Request to send the API call to the service.
  1267  // the "output" return value is not valid until after Send returns without error.
  1268  //
  1269  // See GetPipelineState for more information on using the GetPipelineState
  1270  // API call, and error handling.
  1271  //
  1272  // This method is useful when you want to inject custom logic or configuration
  1273  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1274  //
  1275  //
  1276  //    // Example sending a request using the GetPipelineStateRequest method.
  1277  //    req, resp := client.GetPipelineStateRequest(params)
  1278  //
  1279  //    err := req.Send()
  1280  //    if err == nil { // resp is now filled
  1281  //        fmt.Println(resp)
  1282  //    }
  1283  //
  1284  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/GetPipelineState
  1285  func (c *CodePipeline) GetPipelineStateRequest(input *GetPipelineStateInput) (req *request.Request, output *GetPipelineStateOutput) {
  1286  	op := &request.Operation{
  1287  		Name:       opGetPipelineState,
  1288  		HTTPMethod: "POST",
  1289  		HTTPPath:   "/",
  1290  	}
  1291  
  1292  	if input == nil {
  1293  		input = &GetPipelineStateInput{}
  1294  	}
  1295  
  1296  	output = &GetPipelineStateOutput{}
  1297  	req = c.newRequest(op, input, output)
  1298  	return
  1299  }
  1300  
  1301  // GetPipelineState API operation for AWS CodePipeline.
  1302  //
  1303  // Returns information about the state of a pipeline, including the stages and
  1304  // actions.
  1305  //
  1306  // Values returned in the revisionId and revisionUrl fields indicate the source
  1307  // revision information, such as the commit ID, for the current state.
  1308  //
  1309  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1310  // with awserr.Error's Code and Message methods to get detailed information about
  1311  // the error.
  1312  //
  1313  // See the AWS API reference guide for AWS CodePipeline's
  1314  // API operation GetPipelineState for usage and error information.
  1315  //
  1316  // Returned Error Types:
  1317  //   * ValidationException
  1318  //   The validation was specified in an invalid format.
  1319  //
  1320  //   * PipelineNotFoundException
  1321  //   The pipeline was specified in an invalid format or cannot be found.
  1322  //
  1323  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/GetPipelineState
  1324  func (c *CodePipeline) GetPipelineState(input *GetPipelineStateInput) (*GetPipelineStateOutput, error) {
  1325  	req, out := c.GetPipelineStateRequest(input)
  1326  	return out, req.Send()
  1327  }
  1328  
  1329  // GetPipelineStateWithContext is the same as GetPipelineState with the addition of
  1330  // the ability to pass a context and additional request options.
  1331  //
  1332  // See GetPipelineState for details on how to use this API operation.
  1333  //
  1334  // The context must be non-nil and will be used for request cancellation. If
  1335  // the context is nil a panic will occur. In the future the SDK may create
  1336  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1337  // for more information on using Contexts.
  1338  func (c *CodePipeline) GetPipelineStateWithContext(ctx aws.Context, input *GetPipelineStateInput, opts ...request.Option) (*GetPipelineStateOutput, error) {
  1339  	req, out := c.GetPipelineStateRequest(input)
  1340  	req.SetContext(ctx)
  1341  	req.ApplyOptions(opts...)
  1342  	return out, req.Send()
  1343  }
  1344  
  1345  const opGetThirdPartyJobDetails = "GetThirdPartyJobDetails"
  1346  
  1347  // GetThirdPartyJobDetailsRequest generates a "aws/request.Request" representing the
  1348  // client's request for the GetThirdPartyJobDetails operation. The "output" return
  1349  // value will be populated with the request's response once the request completes
  1350  // successfully.
  1351  //
  1352  // Use "Send" method on the returned Request to send the API call to the service.
  1353  // the "output" return value is not valid until after Send returns without error.
  1354  //
  1355  // See GetThirdPartyJobDetails for more information on using the GetThirdPartyJobDetails
  1356  // API call, and error handling.
  1357  //
  1358  // This method is useful when you want to inject custom logic or configuration
  1359  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1360  //
  1361  //
  1362  //    // Example sending a request using the GetThirdPartyJobDetailsRequest method.
  1363  //    req, resp := client.GetThirdPartyJobDetailsRequest(params)
  1364  //
  1365  //    err := req.Send()
  1366  //    if err == nil { // resp is now filled
  1367  //        fmt.Println(resp)
  1368  //    }
  1369  //
  1370  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/GetThirdPartyJobDetails
  1371  func (c *CodePipeline) GetThirdPartyJobDetailsRequest(input *GetThirdPartyJobDetailsInput) (req *request.Request, output *GetThirdPartyJobDetailsOutput) {
  1372  	op := &request.Operation{
  1373  		Name:       opGetThirdPartyJobDetails,
  1374  		HTTPMethod: "POST",
  1375  		HTTPPath:   "/",
  1376  	}
  1377  
  1378  	if input == nil {
  1379  		input = &GetThirdPartyJobDetailsInput{}
  1380  	}
  1381  
  1382  	output = &GetThirdPartyJobDetailsOutput{}
  1383  	req = c.newRequest(op, input, output)
  1384  	return
  1385  }
  1386  
  1387  // GetThirdPartyJobDetails API operation for AWS CodePipeline.
  1388  //
  1389  // Requests the details of a job for a third party action. Used for partner
  1390  // actions only.
  1391  //
  1392  // When this API is called, AWS CodePipeline returns temporary credentials for
  1393  // the S3 bucket used to store artifacts for the pipeline, if the action requires
  1394  // access to that S3 bucket for input or output artifacts. This API also returns
  1395  // any secret values defined for the action.
  1396  //
  1397  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1398  // with awserr.Error's Code and Message methods to get detailed information about
  1399  // the error.
  1400  //
  1401  // See the AWS API reference guide for AWS CodePipeline's
  1402  // API operation GetThirdPartyJobDetails for usage and error information.
  1403  //
  1404  // Returned Error Types:
  1405  //   * JobNotFoundException
  1406  //   The job was specified in an invalid format or cannot be found.
  1407  //
  1408  //   * ValidationException
  1409  //   The validation was specified in an invalid format.
  1410  //
  1411  //   * InvalidClientTokenException
  1412  //   The client token was specified in an invalid format
  1413  //
  1414  //   * InvalidJobException
  1415  //   The job was specified in an invalid format or cannot be found.
  1416  //
  1417  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/GetThirdPartyJobDetails
  1418  func (c *CodePipeline) GetThirdPartyJobDetails(input *GetThirdPartyJobDetailsInput) (*GetThirdPartyJobDetailsOutput, error) {
  1419  	req, out := c.GetThirdPartyJobDetailsRequest(input)
  1420  	return out, req.Send()
  1421  }
  1422  
  1423  // GetThirdPartyJobDetailsWithContext is the same as GetThirdPartyJobDetails with the addition of
  1424  // the ability to pass a context and additional request options.
  1425  //
  1426  // See GetThirdPartyJobDetails for details on how to use this API operation.
  1427  //
  1428  // The context must be non-nil and will be used for request cancellation. If
  1429  // the context is nil a panic will occur. In the future the SDK may create
  1430  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1431  // for more information on using Contexts.
  1432  func (c *CodePipeline) GetThirdPartyJobDetailsWithContext(ctx aws.Context, input *GetThirdPartyJobDetailsInput, opts ...request.Option) (*GetThirdPartyJobDetailsOutput, error) {
  1433  	req, out := c.GetThirdPartyJobDetailsRequest(input)
  1434  	req.SetContext(ctx)
  1435  	req.ApplyOptions(opts...)
  1436  	return out, req.Send()
  1437  }
  1438  
  1439  const opListActionExecutions = "ListActionExecutions"
  1440  
  1441  // ListActionExecutionsRequest generates a "aws/request.Request" representing the
  1442  // client's request for the ListActionExecutions operation. The "output" return
  1443  // value will be populated with the request's response once the request completes
  1444  // successfully.
  1445  //
  1446  // Use "Send" method on the returned Request to send the API call to the service.
  1447  // the "output" return value is not valid until after Send returns without error.
  1448  //
  1449  // See ListActionExecutions for more information on using the ListActionExecutions
  1450  // API call, and error handling.
  1451  //
  1452  // This method is useful when you want to inject custom logic or configuration
  1453  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1454  //
  1455  //
  1456  //    // Example sending a request using the ListActionExecutionsRequest method.
  1457  //    req, resp := client.ListActionExecutionsRequest(params)
  1458  //
  1459  //    err := req.Send()
  1460  //    if err == nil { // resp is now filled
  1461  //        fmt.Println(resp)
  1462  //    }
  1463  //
  1464  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/ListActionExecutions
  1465  func (c *CodePipeline) ListActionExecutionsRequest(input *ListActionExecutionsInput) (req *request.Request, output *ListActionExecutionsOutput) {
  1466  	op := &request.Operation{
  1467  		Name:       opListActionExecutions,
  1468  		HTTPMethod: "POST",
  1469  		HTTPPath:   "/",
  1470  		Paginator: &request.Paginator{
  1471  			InputTokens:     []string{"nextToken"},
  1472  			OutputTokens:    []string{"nextToken"},
  1473  			LimitToken:      "maxResults",
  1474  			TruncationToken: "",
  1475  		},
  1476  	}
  1477  
  1478  	if input == nil {
  1479  		input = &ListActionExecutionsInput{}
  1480  	}
  1481  
  1482  	output = &ListActionExecutionsOutput{}
  1483  	req = c.newRequest(op, input, output)
  1484  	return
  1485  }
  1486  
  1487  // ListActionExecutions API operation for AWS CodePipeline.
  1488  //
  1489  // Lists the action executions that have occurred in a pipeline.
  1490  //
  1491  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1492  // with awserr.Error's Code and Message methods to get detailed information about
  1493  // the error.
  1494  //
  1495  // See the AWS API reference guide for AWS CodePipeline's
  1496  // API operation ListActionExecutions for usage and error information.
  1497  //
  1498  // Returned Error Types:
  1499  //   * ValidationException
  1500  //   The validation was specified in an invalid format.
  1501  //
  1502  //   * PipelineNotFoundException
  1503  //   The pipeline was specified in an invalid format or cannot be found.
  1504  //
  1505  //   * InvalidNextTokenException
  1506  //   The next token was specified in an invalid format. Make sure that the next
  1507  //   token you provide is the token returned by a previous call.
  1508  //
  1509  //   * PipelineExecutionNotFoundException
  1510  //   The pipeline execution was specified in an invalid format or cannot be found,
  1511  //   or an execution ID does not belong to the specified pipeline.
  1512  //
  1513  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/ListActionExecutions
  1514  func (c *CodePipeline) ListActionExecutions(input *ListActionExecutionsInput) (*ListActionExecutionsOutput, error) {
  1515  	req, out := c.ListActionExecutionsRequest(input)
  1516  	return out, req.Send()
  1517  }
  1518  
  1519  // ListActionExecutionsWithContext is the same as ListActionExecutions with the addition of
  1520  // the ability to pass a context and additional request options.
  1521  //
  1522  // See ListActionExecutions for details on how to use this API operation.
  1523  //
  1524  // The context must be non-nil and will be used for request cancellation. If
  1525  // the context is nil a panic will occur. In the future the SDK may create
  1526  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1527  // for more information on using Contexts.
  1528  func (c *CodePipeline) ListActionExecutionsWithContext(ctx aws.Context, input *ListActionExecutionsInput, opts ...request.Option) (*ListActionExecutionsOutput, error) {
  1529  	req, out := c.ListActionExecutionsRequest(input)
  1530  	req.SetContext(ctx)
  1531  	req.ApplyOptions(opts...)
  1532  	return out, req.Send()
  1533  }
  1534  
  1535  // ListActionExecutionsPages iterates over the pages of a ListActionExecutions operation,
  1536  // calling the "fn" function with the response data for each page. To stop
  1537  // iterating, return false from the fn function.
  1538  //
  1539  // See ListActionExecutions method for more information on how to use this operation.
  1540  //
  1541  // Note: This operation can generate multiple requests to a service.
  1542  //
  1543  //    // Example iterating over at most 3 pages of a ListActionExecutions operation.
  1544  //    pageNum := 0
  1545  //    err := client.ListActionExecutionsPages(params,
  1546  //        func(page *codepipeline.ListActionExecutionsOutput, lastPage bool) bool {
  1547  //            pageNum++
  1548  //            fmt.Println(page)
  1549  //            return pageNum <= 3
  1550  //        })
  1551  //
  1552  func (c *CodePipeline) ListActionExecutionsPages(input *ListActionExecutionsInput, fn func(*ListActionExecutionsOutput, bool) bool) error {
  1553  	return c.ListActionExecutionsPagesWithContext(aws.BackgroundContext(), input, fn)
  1554  }
  1555  
  1556  // ListActionExecutionsPagesWithContext same as ListActionExecutionsPages except
  1557  // it takes a Context and allows setting request options on the pages.
  1558  //
  1559  // The context must be non-nil and will be used for request cancellation. If
  1560  // the context is nil a panic will occur. In the future the SDK may create
  1561  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1562  // for more information on using Contexts.
  1563  func (c *CodePipeline) ListActionExecutionsPagesWithContext(ctx aws.Context, input *ListActionExecutionsInput, fn func(*ListActionExecutionsOutput, bool) bool, opts ...request.Option) error {
  1564  	p := request.Pagination{
  1565  		NewRequest: func() (*request.Request, error) {
  1566  			var inCpy *ListActionExecutionsInput
  1567  			if input != nil {
  1568  				tmp := *input
  1569  				inCpy = &tmp
  1570  			}
  1571  			req, _ := c.ListActionExecutionsRequest(inCpy)
  1572  			req.SetContext(ctx)
  1573  			req.ApplyOptions(opts...)
  1574  			return req, nil
  1575  		},
  1576  	}
  1577  
  1578  	for p.Next() {
  1579  		if !fn(p.Page().(*ListActionExecutionsOutput), !p.HasNextPage()) {
  1580  			break
  1581  		}
  1582  	}
  1583  
  1584  	return p.Err()
  1585  }
  1586  
  1587  const opListActionTypes = "ListActionTypes"
  1588  
  1589  // ListActionTypesRequest generates a "aws/request.Request" representing the
  1590  // client's request for the ListActionTypes operation. The "output" return
  1591  // value will be populated with the request's response once the request completes
  1592  // successfully.
  1593  //
  1594  // Use "Send" method on the returned Request to send the API call to the service.
  1595  // the "output" return value is not valid until after Send returns without error.
  1596  //
  1597  // See ListActionTypes for more information on using the ListActionTypes
  1598  // API call, and error handling.
  1599  //
  1600  // This method is useful when you want to inject custom logic or configuration
  1601  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1602  //
  1603  //
  1604  //    // Example sending a request using the ListActionTypesRequest method.
  1605  //    req, resp := client.ListActionTypesRequest(params)
  1606  //
  1607  //    err := req.Send()
  1608  //    if err == nil { // resp is now filled
  1609  //        fmt.Println(resp)
  1610  //    }
  1611  //
  1612  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/ListActionTypes
  1613  func (c *CodePipeline) ListActionTypesRequest(input *ListActionTypesInput) (req *request.Request, output *ListActionTypesOutput) {
  1614  	op := &request.Operation{
  1615  		Name:       opListActionTypes,
  1616  		HTTPMethod: "POST",
  1617  		HTTPPath:   "/",
  1618  		Paginator: &request.Paginator{
  1619  			InputTokens:     []string{"nextToken"},
  1620  			OutputTokens:    []string{"nextToken"},
  1621  			LimitToken:      "",
  1622  			TruncationToken: "",
  1623  		},
  1624  	}
  1625  
  1626  	if input == nil {
  1627  		input = &ListActionTypesInput{}
  1628  	}
  1629  
  1630  	output = &ListActionTypesOutput{}
  1631  	req = c.newRequest(op, input, output)
  1632  	return
  1633  }
  1634  
  1635  // ListActionTypes API operation for AWS CodePipeline.
  1636  //
  1637  // Gets a summary of all AWS CodePipeline action types associated with your
  1638  // account.
  1639  //
  1640  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1641  // with awserr.Error's Code and Message methods to get detailed information about
  1642  // the error.
  1643  //
  1644  // See the AWS API reference guide for AWS CodePipeline's
  1645  // API operation ListActionTypes for usage and error information.
  1646  //
  1647  // Returned Error Types:
  1648  //   * ValidationException
  1649  //   The validation was specified in an invalid format.
  1650  //
  1651  //   * InvalidNextTokenException
  1652  //   The next token was specified in an invalid format. Make sure that the next
  1653  //   token you provide is the token returned by a previous call.
  1654  //
  1655  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/ListActionTypes
  1656  func (c *CodePipeline) ListActionTypes(input *ListActionTypesInput) (*ListActionTypesOutput, error) {
  1657  	req, out := c.ListActionTypesRequest(input)
  1658  	return out, req.Send()
  1659  }
  1660  
  1661  // ListActionTypesWithContext is the same as ListActionTypes with the addition of
  1662  // the ability to pass a context and additional request options.
  1663  //
  1664  // See ListActionTypes for details on how to use this API operation.
  1665  //
  1666  // The context must be non-nil and will be used for request cancellation. If
  1667  // the context is nil a panic will occur. In the future the SDK may create
  1668  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1669  // for more information on using Contexts.
  1670  func (c *CodePipeline) ListActionTypesWithContext(ctx aws.Context, input *ListActionTypesInput, opts ...request.Option) (*ListActionTypesOutput, error) {
  1671  	req, out := c.ListActionTypesRequest(input)
  1672  	req.SetContext(ctx)
  1673  	req.ApplyOptions(opts...)
  1674  	return out, req.Send()
  1675  }
  1676  
  1677  // ListActionTypesPages iterates over the pages of a ListActionTypes operation,
  1678  // calling the "fn" function with the response data for each page. To stop
  1679  // iterating, return false from the fn function.
  1680  //
  1681  // See ListActionTypes method for more information on how to use this operation.
  1682  //
  1683  // Note: This operation can generate multiple requests to a service.
  1684  //
  1685  //    // Example iterating over at most 3 pages of a ListActionTypes operation.
  1686  //    pageNum := 0
  1687  //    err := client.ListActionTypesPages(params,
  1688  //        func(page *codepipeline.ListActionTypesOutput, lastPage bool) bool {
  1689  //            pageNum++
  1690  //            fmt.Println(page)
  1691  //            return pageNum <= 3
  1692  //        })
  1693  //
  1694  func (c *CodePipeline) ListActionTypesPages(input *ListActionTypesInput, fn func(*ListActionTypesOutput, bool) bool) error {
  1695  	return c.ListActionTypesPagesWithContext(aws.BackgroundContext(), input, fn)
  1696  }
  1697  
  1698  // ListActionTypesPagesWithContext same as ListActionTypesPages except
  1699  // it takes a Context and allows setting request options on the pages.
  1700  //
  1701  // The context must be non-nil and will be used for request cancellation. If
  1702  // the context is nil a panic will occur. In the future the SDK may create
  1703  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1704  // for more information on using Contexts.
  1705  func (c *CodePipeline) ListActionTypesPagesWithContext(ctx aws.Context, input *ListActionTypesInput, fn func(*ListActionTypesOutput, bool) bool, opts ...request.Option) error {
  1706  	p := request.Pagination{
  1707  		NewRequest: func() (*request.Request, error) {
  1708  			var inCpy *ListActionTypesInput
  1709  			if input != nil {
  1710  				tmp := *input
  1711  				inCpy = &tmp
  1712  			}
  1713  			req, _ := c.ListActionTypesRequest(inCpy)
  1714  			req.SetContext(ctx)
  1715  			req.ApplyOptions(opts...)
  1716  			return req, nil
  1717  		},
  1718  	}
  1719  
  1720  	for p.Next() {
  1721  		if !fn(p.Page().(*ListActionTypesOutput), !p.HasNextPage()) {
  1722  			break
  1723  		}
  1724  	}
  1725  
  1726  	return p.Err()
  1727  }
  1728  
  1729  const opListPipelineExecutions = "ListPipelineExecutions"
  1730  
  1731  // ListPipelineExecutionsRequest generates a "aws/request.Request" representing the
  1732  // client's request for the ListPipelineExecutions operation. The "output" return
  1733  // value will be populated with the request's response once the request completes
  1734  // successfully.
  1735  //
  1736  // Use "Send" method on the returned Request to send the API call to the service.
  1737  // the "output" return value is not valid until after Send returns without error.
  1738  //
  1739  // See ListPipelineExecutions for more information on using the ListPipelineExecutions
  1740  // API call, and error handling.
  1741  //
  1742  // This method is useful when you want to inject custom logic or configuration
  1743  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1744  //
  1745  //
  1746  //    // Example sending a request using the ListPipelineExecutionsRequest method.
  1747  //    req, resp := client.ListPipelineExecutionsRequest(params)
  1748  //
  1749  //    err := req.Send()
  1750  //    if err == nil { // resp is now filled
  1751  //        fmt.Println(resp)
  1752  //    }
  1753  //
  1754  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/ListPipelineExecutions
  1755  func (c *CodePipeline) ListPipelineExecutionsRequest(input *ListPipelineExecutionsInput) (req *request.Request, output *ListPipelineExecutionsOutput) {
  1756  	op := &request.Operation{
  1757  		Name:       opListPipelineExecutions,
  1758  		HTTPMethod: "POST",
  1759  		HTTPPath:   "/",
  1760  		Paginator: &request.Paginator{
  1761  			InputTokens:     []string{"nextToken"},
  1762  			OutputTokens:    []string{"nextToken"},
  1763  			LimitToken:      "maxResults",
  1764  			TruncationToken: "",
  1765  		},
  1766  	}
  1767  
  1768  	if input == nil {
  1769  		input = &ListPipelineExecutionsInput{}
  1770  	}
  1771  
  1772  	output = &ListPipelineExecutionsOutput{}
  1773  	req = c.newRequest(op, input, output)
  1774  	return
  1775  }
  1776  
  1777  // ListPipelineExecutions API operation for AWS CodePipeline.
  1778  //
  1779  // Gets a summary of the most recent executions for a pipeline.
  1780  //
  1781  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1782  // with awserr.Error's Code and Message methods to get detailed information about
  1783  // the error.
  1784  //
  1785  // See the AWS API reference guide for AWS CodePipeline's
  1786  // API operation ListPipelineExecutions for usage and error information.
  1787  //
  1788  // Returned Error Types:
  1789  //   * ValidationException
  1790  //   The validation was specified in an invalid format.
  1791  //
  1792  //   * PipelineNotFoundException
  1793  //   The pipeline was specified in an invalid format or cannot be found.
  1794  //
  1795  //   * InvalidNextTokenException
  1796  //   The next token was specified in an invalid format. Make sure that the next
  1797  //   token you provide is the token returned by a previous call.
  1798  //
  1799  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/ListPipelineExecutions
  1800  func (c *CodePipeline) ListPipelineExecutions(input *ListPipelineExecutionsInput) (*ListPipelineExecutionsOutput, error) {
  1801  	req, out := c.ListPipelineExecutionsRequest(input)
  1802  	return out, req.Send()
  1803  }
  1804  
  1805  // ListPipelineExecutionsWithContext is the same as ListPipelineExecutions with the addition of
  1806  // the ability to pass a context and additional request options.
  1807  //
  1808  // See ListPipelineExecutions for details on how to use this API operation.
  1809  //
  1810  // The context must be non-nil and will be used for request cancellation. If
  1811  // the context is nil a panic will occur. In the future the SDK may create
  1812  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1813  // for more information on using Contexts.
  1814  func (c *CodePipeline) ListPipelineExecutionsWithContext(ctx aws.Context, input *ListPipelineExecutionsInput, opts ...request.Option) (*ListPipelineExecutionsOutput, error) {
  1815  	req, out := c.ListPipelineExecutionsRequest(input)
  1816  	req.SetContext(ctx)
  1817  	req.ApplyOptions(opts...)
  1818  	return out, req.Send()
  1819  }
  1820  
  1821  // ListPipelineExecutionsPages iterates over the pages of a ListPipelineExecutions operation,
  1822  // calling the "fn" function with the response data for each page. To stop
  1823  // iterating, return false from the fn function.
  1824  //
  1825  // See ListPipelineExecutions method for more information on how to use this operation.
  1826  //
  1827  // Note: This operation can generate multiple requests to a service.
  1828  //
  1829  //    // Example iterating over at most 3 pages of a ListPipelineExecutions operation.
  1830  //    pageNum := 0
  1831  //    err := client.ListPipelineExecutionsPages(params,
  1832  //        func(page *codepipeline.ListPipelineExecutionsOutput, lastPage bool) bool {
  1833  //            pageNum++
  1834  //            fmt.Println(page)
  1835  //            return pageNum <= 3
  1836  //        })
  1837  //
  1838  func (c *CodePipeline) ListPipelineExecutionsPages(input *ListPipelineExecutionsInput, fn func(*ListPipelineExecutionsOutput, bool) bool) error {
  1839  	return c.ListPipelineExecutionsPagesWithContext(aws.BackgroundContext(), input, fn)
  1840  }
  1841  
  1842  // ListPipelineExecutionsPagesWithContext same as ListPipelineExecutionsPages except
  1843  // it takes a Context and allows setting request options on the pages.
  1844  //
  1845  // The context must be non-nil and will be used for request cancellation. If
  1846  // the context is nil a panic will occur. In the future the SDK may create
  1847  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1848  // for more information on using Contexts.
  1849  func (c *CodePipeline) ListPipelineExecutionsPagesWithContext(ctx aws.Context, input *ListPipelineExecutionsInput, fn func(*ListPipelineExecutionsOutput, bool) bool, opts ...request.Option) error {
  1850  	p := request.Pagination{
  1851  		NewRequest: func() (*request.Request, error) {
  1852  			var inCpy *ListPipelineExecutionsInput
  1853  			if input != nil {
  1854  				tmp := *input
  1855  				inCpy = &tmp
  1856  			}
  1857  			req, _ := c.ListPipelineExecutionsRequest(inCpy)
  1858  			req.SetContext(ctx)
  1859  			req.ApplyOptions(opts...)
  1860  			return req, nil
  1861  		},
  1862  	}
  1863  
  1864  	for p.Next() {
  1865  		if !fn(p.Page().(*ListPipelineExecutionsOutput), !p.HasNextPage()) {
  1866  			break
  1867  		}
  1868  	}
  1869  
  1870  	return p.Err()
  1871  }
  1872  
  1873  const opListPipelines = "ListPipelines"
  1874  
  1875  // ListPipelinesRequest generates a "aws/request.Request" representing the
  1876  // client's request for the ListPipelines operation. The "output" return
  1877  // value will be populated with the request's response once the request completes
  1878  // successfully.
  1879  //
  1880  // Use "Send" method on the returned Request to send the API call to the service.
  1881  // the "output" return value is not valid until after Send returns without error.
  1882  //
  1883  // See ListPipelines for more information on using the ListPipelines
  1884  // API call, and error handling.
  1885  //
  1886  // This method is useful when you want to inject custom logic or configuration
  1887  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1888  //
  1889  //
  1890  //    // Example sending a request using the ListPipelinesRequest method.
  1891  //    req, resp := client.ListPipelinesRequest(params)
  1892  //
  1893  //    err := req.Send()
  1894  //    if err == nil { // resp is now filled
  1895  //        fmt.Println(resp)
  1896  //    }
  1897  //
  1898  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/ListPipelines
  1899  func (c *CodePipeline) ListPipelinesRequest(input *ListPipelinesInput) (req *request.Request, output *ListPipelinesOutput) {
  1900  	op := &request.Operation{
  1901  		Name:       opListPipelines,
  1902  		HTTPMethod: "POST",
  1903  		HTTPPath:   "/",
  1904  		Paginator: &request.Paginator{
  1905  			InputTokens:     []string{"nextToken"},
  1906  			OutputTokens:    []string{"nextToken"},
  1907  			LimitToken:      "maxResults",
  1908  			TruncationToken: "",
  1909  		},
  1910  	}
  1911  
  1912  	if input == nil {
  1913  		input = &ListPipelinesInput{}
  1914  	}
  1915  
  1916  	output = &ListPipelinesOutput{}
  1917  	req = c.newRequest(op, input, output)
  1918  	return
  1919  }
  1920  
  1921  // ListPipelines API operation for AWS CodePipeline.
  1922  //
  1923  // Gets a summary of all of the pipelines associated with your account.
  1924  //
  1925  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1926  // with awserr.Error's Code and Message methods to get detailed information about
  1927  // the error.
  1928  //
  1929  // See the AWS API reference guide for AWS CodePipeline's
  1930  // API operation ListPipelines for usage and error information.
  1931  //
  1932  // Returned Error Types:
  1933  //   * ValidationException
  1934  //   The validation was specified in an invalid format.
  1935  //
  1936  //   * InvalidNextTokenException
  1937  //   The next token was specified in an invalid format. Make sure that the next
  1938  //   token you provide is the token returned by a previous call.
  1939  //
  1940  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/ListPipelines
  1941  func (c *CodePipeline) ListPipelines(input *ListPipelinesInput) (*ListPipelinesOutput, error) {
  1942  	req, out := c.ListPipelinesRequest(input)
  1943  	return out, req.Send()
  1944  }
  1945  
  1946  // ListPipelinesWithContext is the same as ListPipelines with the addition of
  1947  // the ability to pass a context and additional request options.
  1948  //
  1949  // See ListPipelines for details on how to use this API operation.
  1950  //
  1951  // The context must be non-nil and will be used for request cancellation. If
  1952  // the context is nil a panic will occur. In the future the SDK may create
  1953  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1954  // for more information on using Contexts.
  1955  func (c *CodePipeline) ListPipelinesWithContext(ctx aws.Context, input *ListPipelinesInput, opts ...request.Option) (*ListPipelinesOutput, error) {
  1956  	req, out := c.ListPipelinesRequest(input)
  1957  	req.SetContext(ctx)
  1958  	req.ApplyOptions(opts...)
  1959  	return out, req.Send()
  1960  }
  1961  
  1962  // ListPipelinesPages iterates over the pages of a ListPipelines operation,
  1963  // calling the "fn" function with the response data for each page. To stop
  1964  // iterating, return false from the fn function.
  1965  //
  1966  // See ListPipelines method for more information on how to use this operation.
  1967  //
  1968  // Note: This operation can generate multiple requests to a service.
  1969  //
  1970  //    // Example iterating over at most 3 pages of a ListPipelines operation.
  1971  //    pageNum := 0
  1972  //    err := client.ListPipelinesPages(params,
  1973  //        func(page *codepipeline.ListPipelinesOutput, lastPage bool) bool {
  1974  //            pageNum++
  1975  //            fmt.Println(page)
  1976  //            return pageNum <= 3
  1977  //        })
  1978  //
  1979  func (c *CodePipeline) ListPipelinesPages(input *ListPipelinesInput, fn func(*ListPipelinesOutput, bool) bool) error {
  1980  	return c.ListPipelinesPagesWithContext(aws.BackgroundContext(), input, fn)
  1981  }
  1982  
  1983  // ListPipelinesPagesWithContext same as ListPipelinesPages except
  1984  // it takes a Context and allows setting request options on the pages.
  1985  //
  1986  // The context must be non-nil and will be used for request cancellation. If
  1987  // the context is nil a panic will occur. In the future the SDK may create
  1988  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1989  // for more information on using Contexts.
  1990  func (c *CodePipeline) ListPipelinesPagesWithContext(ctx aws.Context, input *ListPipelinesInput, fn func(*ListPipelinesOutput, bool) bool, opts ...request.Option) error {
  1991  	p := request.Pagination{
  1992  		NewRequest: func() (*request.Request, error) {
  1993  			var inCpy *ListPipelinesInput
  1994  			if input != nil {
  1995  				tmp := *input
  1996  				inCpy = &tmp
  1997  			}
  1998  			req, _ := c.ListPipelinesRequest(inCpy)
  1999  			req.SetContext(ctx)
  2000  			req.ApplyOptions(opts...)
  2001  			return req, nil
  2002  		},
  2003  	}
  2004  
  2005  	for p.Next() {
  2006  		if !fn(p.Page().(*ListPipelinesOutput), !p.HasNextPage()) {
  2007  			break
  2008  		}
  2009  	}
  2010  
  2011  	return p.Err()
  2012  }
  2013  
  2014  const opListTagsForResource = "ListTagsForResource"
  2015  
  2016  // ListTagsForResourceRequest generates a "aws/request.Request" representing the
  2017  // client's request for the ListTagsForResource operation. The "output" return
  2018  // value will be populated with the request's response once the request completes
  2019  // successfully.
  2020  //
  2021  // Use "Send" method on the returned Request to send the API call to the service.
  2022  // the "output" return value is not valid until after Send returns without error.
  2023  //
  2024  // See ListTagsForResource for more information on using the ListTagsForResource
  2025  // API call, and error handling.
  2026  //
  2027  // This method is useful when you want to inject custom logic or configuration
  2028  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2029  //
  2030  //
  2031  //    // Example sending a request using the ListTagsForResourceRequest method.
  2032  //    req, resp := client.ListTagsForResourceRequest(params)
  2033  //
  2034  //    err := req.Send()
  2035  //    if err == nil { // resp is now filled
  2036  //        fmt.Println(resp)
  2037  //    }
  2038  //
  2039  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/ListTagsForResource
  2040  func (c *CodePipeline) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) {
  2041  	op := &request.Operation{
  2042  		Name:       opListTagsForResource,
  2043  		HTTPMethod: "POST",
  2044  		HTTPPath:   "/",
  2045  		Paginator: &request.Paginator{
  2046  			InputTokens:     []string{"nextToken"},
  2047  			OutputTokens:    []string{"nextToken"},
  2048  			LimitToken:      "maxResults",
  2049  			TruncationToken: "",
  2050  		},
  2051  	}
  2052  
  2053  	if input == nil {
  2054  		input = &ListTagsForResourceInput{}
  2055  	}
  2056  
  2057  	output = &ListTagsForResourceOutput{}
  2058  	req = c.newRequest(op, input, output)
  2059  	return
  2060  }
  2061  
  2062  // ListTagsForResource API operation for AWS CodePipeline.
  2063  //
  2064  // Gets the set of key-value pairs (metadata) that are used to manage the resource.
  2065  //
  2066  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2067  // with awserr.Error's Code and Message methods to get detailed information about
  2068  // the error.
  2069  //
  2070  // See the AWS API reference guide for AWS CodePipeline's
  2071  // API operation ListTagsForResource for usage and error information.
  2072  //
  2073  // Returned Error Types:
  2074  //   * ValidationException
  2075  //   The validation was specified in an invalid format.
  2076  //
  2077  //   * ResourceNotFoundException
  2078  //   The resource was specified in an invalid format.
  2079  //
  2080  //   * InvalidNextTokenException
  2081  //   The next token was specified in an invalid format. Make sure that the next
  2082  //   token you provide is the token returned by a previous call.
  2083  //
  2084  //   * InvalidArnException
  2085  //   The specified resource ARN is invalid.
  2086  //
  2087  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/ListTagsForResource
  2088  func (c *CodePipeline) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) {
  2089  	req, out := c.ListTagsForResourceRequest(input)
  2090  	return out, req.Send()
  2091  }
  2092  
  2093  // ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of
  2094  // the ability to pass a context and additional request options.
  2095  //
  2096  // See ListTagsForResource for details on how to use this API operation.
  2097  //
  2098  // The context must be non-nil and will be used for request cancellation. If
  2099  // the context is nil a panic will occur. In the future the SDK may create
  2100  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2101  // for more information on using Contexts.
  2102  func (c *CodePipeline) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) {
  2103  	req, out := c.ListTagsForResourceRequest(input)
  2104  	req.SetContext(ctx)
  2105  	req.ApplyOptions(opts...)
  2106  	return out, req.Send()
  2107  }
  2108  
  2109  // ListTagsForResourcePages iterates over the pages of a ListTagsForResource operation,
  2110  // calling the "fn" function with the response data for each page. To stop
  2111  // iterating, return false from the fn function.
  2112  //
  2113  // See ListTagsForResource method for more information on how to use this operation.
  2114  //
  2115  // Note: This operation can generate multiple requests to a service.
  2116  //
  2117  //    // Example iterating over at most 3 pages of a ListTagsForResource operation.
  2118  //    pageNum := 0
  2119  //    err := client.ListTagsForResourcePages(params,
  2120  //        func(page *codepipeline.ListTagsForResourceOutput, lastPage bool) bool {
  2121  //            pageNum++
  2122  //            fmt.Println(page)
  2123  //            return pageNum <= 3
  2124  //        })
  2125  //
  2126  func (c *CodePipeline) ListTagsForResourcePages(input *ListTagsForResourceInput, fn func(*ListTagsForResourceOutput, bool) bool) error {
  2127  	return c.ListTagsForResourcePagesWithContext(aws.BackgroundContext(), input, fn)
  2128  }
  2129  
  2130  // ListTagsForResourcePagesWithContext same as ListTagsForResourcePages except
  2131  // it takes a Context and allows setting request options on the pages.
  2132  //
  2133  // The context must be non-nil and will be used for request cancellation. If
  2134  // the context is nil a panic will occur. In the future the SDK may create
  2135  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2136  // for more information on using Contexts.
  2137  func (c *CodePipeline) ListTagsForResourcePagesWithContext(ctx aws.Context, input *ListTagsForResourceInput, fn func(*ListTagsForResourceOutput, bool) bool, opts ...request.Option) error {
  2138  	p := request.Pagination{
  2139  		NewRequest: func() (*request.Request, error) {
  2140  			var inCpy *ListTagsForResourceInput
  2141  			if input != nil {
  2142  				tmp := *input
  2143  				inCpy = &tmp
  2144  			}
  2145  			req, _ := c.ListTagsForResourceRequest(inCpy)
  2146  			req.SetContext(ctx)
  2147  			req.ApplyOptions(opts...)
  2148  			return req, nil
  2149  		},
  2150  	}
  2151  
  2152  	for p.Next() {
  2153  		if !fn(p.Page().(*ListTagsForResourceOutput), !p.HasNextPage()) {
  2154  			break
  2155  		}
  2156  	}
  2157  
  2158  	return p.Err()
  2159  }
  2160  
  2161  const opListWebhooks = "ListWebhooks"
  2162  
  2163  // ListWebhooksRequest generates a "aws/request.Request" representing the
  2164  // client's request for the ListWebhooks operation. The "output" return
  2165  // value will be populated with the request's response once the request completes
  2166  // successfully.
  2167  //
  2168  // Use "Send" method on the returned Request to send the API call to the service.
  2169  // the "output" return value is not valid until after Send returns without error.
  2170  //
  2171  // See ListWebhooks for more information on using the ListWebhooks
  2172  // API call, and error handling.
  2173  //
  2174  // This method is useful when you want to inject custom logic or configuration
  2175  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2176  //
  2177  //
  2178  //    // Example sending a request using the ListWebhooksRequest method.
  2179  //    req, resp := client.ListWebhooksRequest(params)
  2180  //
  2181  //    err := req.Send()
  2182  //    if err == nil { // resp is now filled
  2183  //        fmt.Println(resp)
  2184  //    }
  2185  //
  2186  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/ListWebhooks
  2187  func (c *CodePipeline) ListWebhooksRequest(input *ListWebhooksInput) (req *request.Request, output *ListWebhooksOutput) {
  2188  	op := &request.Operation{
  2189  		Name:       opListWebhooks,
  2190  		HTTPMethod: "POST",
  2191  		HTTPPath:   "/",
  2192  		Paginator: &request.Paginator{
  2193  			InputTokens:     []string{"NextToken"},
  2194  			OutputTokens:    []string{"NextToken"},
  2195  			LimitToken:      "MaxResults",
  2196  			TruncationToken: "",
  2197  		},
  2198  	}
  2199  
  2200  	if input == nil {
  2201  		input = &ListWebhooksInput{}
  2202  	}
  2203  
  2204  	output = &ListWebhooksOutput{}
  2205  	req = c.newRequest(op, input, output)
  2206  	return
  2207  }
  2208  
  2209  // ListWebhooks API operation for AWS CodePipeline.
  2210  //
  2211  // Gets a listing of all the webhooks in this AWS Region for this account. The
  2212  // output lists all webhooks and includes the webhook URL and ARN and the configuration
  2213  // for each webhook.
  2214  //
  2215  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2216  // with awserr.Error's Code and Message methods to get detailed information about
  2217  // the error.
  2218  //
  2219  // See the AWS API reference guide for AWS CodePipeline's
  2220  // API operation ListWebhooks for usage and error information.
  2221  //
  2222  // Returned Error Types:
  2223  //   * ValidationException
  2224  //   The validation was specified in an invalid format.
  2225  //
  2226  //   * InvalidNextTokenException
  2227  //   The next token was specified in an invalid format. Make sure that the next
  2228  //   token you provide is the token returned by a previous call.
  2229  //
  2230  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/ListWebhooks
  2231  func (c *CodePipeline) ListWebhooks(input *ListWebhooksInput) (*ListWebhooksOutput, error) {
  2232  	req, out := c.ListWebhooksRequest(input)
  2233  	return out, req.Send()
  2234  }
  2235  
  2236  // ListWebhooksWithContext is the same as ListWebhooks with the addition of
  2237  // the ability to pass a context and additional request options.
  2238  //
  2239  // See ListWebhooks for details on how to use this API operation.
  2240  //
  2241  // The context must be non-nil and will be used for request cancellation. If
  2242  // the context is nil a panic will occur. In the future the SDK may create
  2243  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2244  // for more information on using Contexts.
  2245  func (c *CodePipeline) ListWebhooksWithContext(ctx aws.Context, input *ListWebhooksInput, opts ...request.Option) (*ListWebhooksOutput, error) {
  2246  	req, out := c.ListWebhooksRequest(input)
  2247  	req.SetContext(ctx)
  2248  	req.ApplyOptions(opts...)
  2249  	return out, req.Send()
  2250  }
  2251  
  2252  // ListWebhooksPages iterates over the pages of a ListWebhooks operation,
  2253  // calling the "fn" function with the response data for each page. To stop
  2254  // iterating, return false from the fn function.
  2255  //
  2256  // See ListWebhooks method for more information on how to use this operation.
  2257  //
  2258  // Note: This operation can generate multiple requests to a service.
  2259  //
  2260  //    // Example iterating over at most 3 pages of a ListWebhooks operation.
  2261  //    pageNum := 0
  2262  //    err := client.ListWebhooksPages(params,
  2263  //        func(page *codepipeline.ListWebhooksOutput, lastPage bool) bool {
  2264  //            pageNum++
  2265  //            fmt.Println(page)
  2266  //            return pageNum <= 3
  2267  //        })
  2268  //
  2269  func (c *CodePipeline) ListWebhooksPages(input *ListWebhooksInput, fn func(*ListWebhooksOutput, bool) bool) error {
  2270  	return c.ListWebhooksPagesWithContext(aws.BackgroundContext(), input, fn)
  2271  }
  2272  
  2273  // ListWebhooksPagesWithContext same as ListWebhooksPages except
  2274  // it takes a Context and allows setting request options on the pages.
  2275  //
  2276  // The context must be non-nil and will be used for request cancellation. If
  2277  // the context is nil a panic will occur. In the future the SDK may create
  2278  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2279  // for more information on using Contexts.
  2280  func (c *CodePipeline) ListWebhooksPagesWithContext(ctx aws.Context, input *ListWebhooksInput, fn func(*ListWebhooksOutput, bool) bool, opts ...request.Option) error {
  2281  	p := request.Pagination{
  2282  		NewRequest: func() (*request.Request, error) {
  2283  			var inCpy *ListWebhooksInput
  2284  			if input != nil {
  2285  				tmp := *input
  2286  				inCpy = &tmp
  2287  			}
  2288  			req, _ := c.ListWebhooksRequest(inCpy)
  2289  			req.SetContext(ctx)
  2290  			req.ApplyOptions(opts...)
  2291  			return req, nil
  2292  		},
  2293  	}
  2294  
  2295  	for p.Next() {
  2296  		if !fn(p.Page().(*ListWebhooksOutput), !p.HasNextPage()) {
  2297  			break
  2298  		}
  2299  	}
  2300  
  2301  	return p.Err()
  2302  }
  2303  
  2304  const opPollForJobs = "PollForJobs"
  2305  
  2306  // PollForJobsRequest generates a "aws/request.Request" representing the
  2307  // client's request for the PollForJobs operation. The "output" return
  2308  // value will be populated with the request's response once the request completes
  2309  // successfully.
  2310  //
  2311  // Use "Send" method on the returned Request to send the API call to the service.
  2312  // the "output" return value is not valid until after Send returns without error.
  2313  //
  2314  // See PollForJobs for more information on using the PollForJobs
  2315  // API call, and error handling.
  2316  //
  2317  // This method is useful when you want to inject custom logic or configuration
  2318  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2319  //
  2320  //
  2321  //    // Example sending a request using the PollForJobsRequest method.
  2322  //    req, resp := client.PollForJobsRequest(params)
  2323  //
  2324  //    err := req.Send()
  2325  //    if err == nil { // resp is now filled
  2326  //        fmt.Println(resp)
  2327  //    }
  2328  //
  2329  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PollForJobs
  2330  func (c *CodePipeline) PollForJobsRequest(input *PollForJobsInput) (req *request.Request, output *PollForJobsOutput) {
  2331  	op := &request.Operation{
  2332  		Name:       opPollForJobs,
  2333  		HTTPMethod: "POST",
  2334  		HTTPPath:   "/",
  2335  	}
  2336  
  2337  	if input == nil {
  2338  		input = &PollForJobsInput{}
  2339  	}
  2340  
  2341  	output = &PollForJobsOutput{}
  2342  	req = c.newRequest(op, input, output)
  2343  	return
  2344  }
  2345  
  2346  // PollForJobs API operation for AWS CodePipeline.
  2347  //
  2348  // Returns information about any jobs for AWS CodePipeline to act on. PollForJobs
  2349  // is valid only for action types with "Custom" in the owner field. If the action
  2350  // type contains "AWS" or "ThirdParty" in the owner field, the PollForJobs action
  2351  // returns an error.
  2352  //
  2353  // When this API is called, AWS CodePipeline returns temporary credentials for
  2354  // the S3 bucket used to store artifacts for the pipeline, if the action requires
  2355  // access to that S3 bucket for input or output artifacts. This API also returns
  2356  // any secret values defined for the action.
  2357  //
  2358  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2359  // with awserr.Error's Code and Message methods to get detailed information about
  2360  // the error.
  2361  //
  2362  // See the AWS API reference guide for AWS CodePipeline's
  2363  // API operation PollForJobs for usage and error information.
  2364  //
  2365  // Returned Error Types:
  2366  //   * ValidationException
  2367  //   The validation was specified in an invalid format.
  2368  //
  2369  //   * ActionTypeNotFoundException
  2370  //   The specified action type cannot be found.
  2371  //
  2372  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PollForJobs
  2373  func (c *CodePipeline) PollForJobs(input *PollForJobsInput) (*PollForJobsOutput, error) {
  2374  	req, out := c.PollForJobsRequest(input)
  2375  	return out, req.Send()
  2376  }
  2377  
  2378  // PollForJobsWithContext is the same as PollForJobs with the addition of
  2379  // the ability to pass a context and additional request options.
  2380  //
  2381  // See PollForJobs for details on how to use this API operation.
  2382  //
  2383  // The context must be non-nil and will be used for request cancellation. If
  2384  // the context is nil a panic will occur. In the future the SDK may create
  2385  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2386  // for more information on using Contexts.
  2387  func (c *CodePipeline) PollForJobsWithContext(ctx aws.Context, input *PollForJobsInput, opts ...request.Option) (*PollForJobsOutput, error) {
  2388  	req, out := c.PollForJobsRequest(input)
  2389  	req.SetContext(ctx)
  2390  	req.ApplyOptions(opts...)
  2391  	return out, req.Send()
  2392  }
  2393  
  2394  const opPollForThirdPartyJobs = "PollForThirdPartyJobs"
  2395  
  2396  // PollForThirdPartyJobsRequest generates a "aws/request.Request" representing the
  2397  // client's request for the PollForThirdPartyJobs operation. The "output" return
  2398  // value will be populated with the request's response once the request completes
  2399  // successfully.
  2400  //
  2401  // Use "Send" method on the returned Request to send the API call to the service.
  2402  // the "output" return value is not valid until after Send returns without error.
  2403  //
  2404  // See PollForThirdPartyJobs for more information on using the PollForThirdPartyJobs
  2405  // API call, and error handling.
  2406  //
  2407  // This method is useful when you want to inject custom logic or configuration
  2408  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2409  //
  2410  //
  2411  //    // Example sending a request using the PollForThirdPartyJobsRequest method.
  2412  //    req, resp := client.PollForThirdPartyJobsRequest(params)
  2413  //
  2414  //    err := req.Send()
  2415  //    if err == nil { // resp is now filled
  2416  //        fmt.Println(resp)
  2417  //    }
  2418  //
  2419  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PollForThirdPartyJobs
  2420  func (c *CodePipeline) PollForThirdPartyJobsRequest(input *PollForThirdPartyJobsInput) (req *request.Request, output *PollForThirdPartyJobsOutput) {
  2421  	op := &request.Operation{
  2422  		Name:       opPollForThirdPartyJobs,
  2423  		HTTPMethod: "POST",
  2424  		HTTPPath:   "/",
  2425  	}
  2426  
  2427  	if input == nil {
  2428  		input = &PollForThirdPartyJobsInput{}
  2429  	}
  2430  
  2431  	output = &PollForThirdPartyJobsOutput{}
  2432  	req = c.newRequest(op, input, output)
  2433  	return
  2434  }
  2435  
  2436  // PollForThirdPartyJobs API operation for AWS CodePipeline.
  2437  //
  2438  // Determines whether there are any third party jobs for a job worker to act
  2439  // on. Used for partner actions only.
  2440  //
  2441  // When this API is called, AWS CodePipeline returns temporary credentials for
  2442  // the S3 bucket used to store artifacts for the pipeline, if the action requires
  2443  // access to that S3 bucket for input or output artifacts.
  2444  //
  2445  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2446  // with awserr.Error's Code and Message methods to get detailed information about
  2447  // the error.
  2448  //
  2449  // See the AWS API reference guide for AWS CodePipeline's
  2450  // API operation PollForThirdPartyJobs for usage and error information.
  2451  //
  2452  // Returned Error Types:
  2453  //   * ActionTypeNotFoundException
  2454  //   The specified action type cannot be found.
  2455  //
  2456  //   * ValidationException
  2457  //   The validation was specified in an invalid format.
  2458  //
  2459  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PollForThirdPartyJobs
  2460  func (c *CodePipeline) PollForThirdPartyJobs(input *PollForThirdPartyJobsInput) (*PollForThirdPartyJobsOutput, error) {
  2461  	req, out := c.PollForThirdPartyJobsRequest(input)
  2462  	return out, req.Send()
  2463  }
  2464  
  2465  // PollForThirdPartyJobsWithContext is the same as PollForThirdPartyJobs with the addition of
  2466  // the ability to pass a context and additional request options.
  2467  //
  2468  // See PollForThirdPartyJobs for details on how to use this API operation.
  2469  //
  2470  // The context must be non-nil and will be used for request cancellation. If
  2471  // the context is nil a panic will occur. In the future the SDK may create
  2472  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2473  // for more information on using Contexts.
  2474  func (c *CodePipeline) PollForThirdPartyJobsWithContext(ctx aws.Context, input *PollForThirdPartyJobsInput, opts ...request.Option) (*PollForThirdPartyJobsOutput, error) {
  2475  	req, out := c.PollForThirdPartyJobsRequest(input)
  2476  	req.SetContext(ctx)
  2477  	req.ApplyOptions(opts...)
  2478  	return out, req.Send()
  2479  }
  2480  
  2481  const opPutActionRevision = "PutActionRevision"
  2482  
  2483  // PutActionRevisionRequest generates a "aws/request.Request" representing the
  2484  // client's request for the PutActionRevision operation. The "output" return
  2485  // value will be populated with the request's response once the request completes
  2486  // successfully.
  2487  //
  2488  // Use "Send" method on the returned Request to send the API call to the service.
  2489  // the "output" return value is not valid until after Send returns without error.
  2490  //
  2491  // See PutActionRevision for more information on using the PutActionRevision
  2492  // API call, and error handling.
  2493  //
  2494  // This method is useful when you want to inject custom logic or configuration
  2495  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2496  //
  2497  //
  2498  //    // Example sending a request using the PutActionRevisionRequest method.
  2499  //    req, resp := client.PutActionRevisionRequest(params)
  2500  //
  2501  //    err := req.Send()
  2502  //    if err == nil { // resp is now filled
  2503  //        fmt.Println(resp)
  2504  //    }
  2505  //
  2506  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PutActionRevision
  2507  func (c *CodePipeline) PutActionRevisionRequest(input *PutActionRevisionInput) (req *request.Request, output *PutActionRevisionOutput) {
  2508  	op := &request.Operation{
  2509  		Name:       opPutActionRevision,
  2510  		HTTPMethod: "POST",
  2511  		HTTPPath:   "/",
  2512  	}
  2513  
  2514  	if input == nil {
  2515  		input = &PutActionRevisionInput{}
  2516  	}
  2517  
  2518  	output = &PutActionRevisionOutput{}
  2519  	req = c.newRequest(op, input, output)
  2520  	return
  2521  }
  2522  
  2523  // PutActionRevision API operation for AWS CodePipeline.
  2524  //
  2525  // Provides information to AWS CodePipeline about new revisions to a source.
  2526  //
  2527  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2528  // with awserr.Error's Code and Message methods to get detailed information about
  2529  // the error.
  2530  //
  2531  // See the AWS API reference guide for AWS CodePipeline's
  2532  // API operation PutActionRevision for usage and error information.
  2533  //
  2534  // Returned Error Types:
  2535  //   * PipelineNotFoundException
  2536  //   The pipeline was specified in an invalid format or cannot be found.
  2537  //
  2538  //   * StageNotFoundException
  2539  //   The stage was specified in an invalid format or cannot be found.
  2540  //
  2541  //   * ActionNotFoundException
  2542  //   The specified action cannot be found.
  2543  //
  2544  //   * ValidationException
  2545  //   The validation was specified in an invalid format.
  2546  //
  2547  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PutActionRevision
  2548  func (c *CodePipeline) PutActionRevision(input *PutActionRevisionInput) (*PutActionRevisionOutput, error) {
  2549  	req, out := c.PutActionRevisionRequest(input)
  2550  	return out, req.Send()
  2551  }
  2552  
  2553  // PutActionRevisionWithContext is the same as PutActionRevision with the addition of
  2554  // the ability to pass a context and additional request options.
  2555  //
  2556  // See PutActionRevision for details on how to use this API operation.
  2557  //
  2558  // The context must be non-nil and will be used for request cancellation. If
  2559  // the context is nil a panic will occur. In the future the SDK may create
  2560  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2561  // for more information on using Contexts.
  2562  func (c *CodePipeline) PutActionRevisionWithContext(ctx aws.Context, input *PutActionRevisionInput, opts ...request.Option) (*PutActionRevisionOutput, error) {
  2563  	req, out := c.PutActionRevisionRequest(input)
  2564  	req.SetContext(ctx)
  2565  	req.ApplyOptions(opts...)
  2566  	return out, req.Send()
  2567  }
  2568  
  2569  const opPutApprovalResult = "PutApprovalResult"
  2570  
  2571  // PutApprovalResultRequest generates a "aws/request.Request" representing the
  2572  // client's request for the PutApprovalResult operation. The "output" return
  2573  // value will be populated with the request's response once the request completes
  2574  // successfully.
  2575  //
  2576  // Use "Send" method on the returned Request to send the API call to the service.
  2577  // the "output" return value is not valid until after Send returns without error.
  2578  //
  2579  // See PutApprovalResult for more information on using the PutApprovalResult
  2580  // API call, and error handling.
  2581  //
  2582  // This method is useful when you want to inject custom logic or configuration
  2583  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2584  //
  2585  //
  2586  //    // Example sending a request using the PutApprovalResultRequest method.
  2587  //    req, resp := client.PutApprovalResultRequest(params)
  2588  //
  2589  //    err := req.Send()
  2590  //    if err == nil { // resp is now filled
  2591  //        fmt.Println(resp)
  2592  //    }
  2593  //
  2594  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PutApprovalResult
  2595  func (c *CodePipeline) PutApprovalResultRequest(input *PutApprovalResultInput) (req *request.Request, output *PutApprovalResultOutput) {
  2596  	op := &request.Operation{
  2597  		Name:       opPutApprovalResult,
  2598  		HTTPMethod: "POST",
  2599  		HTTPPath:   "/",
  2600  	}
  2601  
  2602  	if input == nil {
  2603  		input = &PutApprovalResultInput{}
  2604  	}
  2605  
  2606  	output = &PutApprovalResultOutput{}
  2607  	req = c.newRequest(op, input, output)
  2608  	return
  2609  }
  2610  
  2611  // PutApprovalResult API operation for AWS CodePipeline.
  2612  //
  2613  // Provides the response to a manual approval request to AWS CodePipeline. Valid
  2614  // responses include Approved and Rejected.
  2615  //
  2616  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2617  // with awserr.Error's Code and Message methods to get detailed information about
  2618  // the error.
  2619  //
  2620  // See the AWS API reference guide for AWS CodePipeline's
  2621  // API operation PutApprovalResult for usage and error information.
  2622  //
  2623  // Returned Error Types:
  2624  //   * InvalidApprovalTokenException
  2625  //   The approval request already received a response or has expired.
  2626  //
  2627  //   * ApprovalAlreadyCompletedException
  2628  //   The approval action has already been approved or rejected.
  2629  //
  2630  //   * PipelineNotFoundException
  2631  //   The pipeline was specified in an invalid format or cannot be found.
  2632  //
  2633  //   * StageNotFoundException
  2634  //   The stage was specified in an invalid format or cannot be found.
  2635  //
  2636  //   * ActionNotFoundException
  2637  //   The specified action cannot be found.
  2638  //
  2639  //   * ValidationException
  2640  //   The validation was specified in an invalid format.
  2641  //
  2642  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PutApprovalResult
  2643  func (c *CodePipeline) PutApprovalResult(input *PutApprovalResultInput) (*PutApprovalResultOutput, error) {
  2644  	req, out := c.PutApprovalResultRequest(input)
  2645  	return out, req.Send()
  2646  }
  2647  
  2648  // PutApprovalResultWithContext is the same as PutApprovalResult with the addition of
  2649  // the ability to pass a context and additional request options.
  2650  //
  2651  // See PutApprovalResult for details on how to use this API operation.
  2652  //
  2653  // The context must be non-nil and will be used for request cancellation. If
  2654  // the context is nil a panic will occur. In the future the SDK may create
  2655  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2656  // for more information on using Contexts.
  2657  func (c *CodePipeline) PutApprovalResultWithContext(ctx aws.Context, input *PutApprovalResultInput, opts ...request.Option) (*PutApprovalResultOutput, error) {
  2658  	req, out := c.PutApprovalResultRequest(input)
  2659  	req.SetContext(ctx)
  2660  	req.ApplyOptions(opts...)
  2661  	return out, req.Send()
  2662  }
  2663  
  2664  const opPutJobFailureResult = "PutJobFailureResult"
  2665  
  2666  // PutJobFailureResultRequest generates a "aws/request.Request" representing the
  2667  // client's request for the PutJobFailureResult operation. The "output" return
  2668  // value will be populated with the request's response once the request completes
  2669  // successfully.
  2670  //
  2671  // Use "Send" method on the returned Request to send the API call to the service.
  2672  // the "output" return value is not valid until after Send returns without error.
  2673  //
  2674  // See PutJobFailureResult for more information on using the PutJobFailureResult
  2675  // API call, and error handling.
  2676  //
  2677  // This method is useful when you want to inject custom logic or configuration
  2678  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2679  //
  2680  //
  2681  //    // Example sending a request using the PutJobFailureResultRequest method.
  2682  //    req, resp := client.PutJobFailureResultRequest(params)
  2683  //
  2684  //    err := req.Send()
  2685  //    if err == nil { // resp is now filled
  2686  //        fmt.Println(resp)
  2687  //    }
  2688  //
  2689  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PutJobFailureResult
  2690  func (c *CodePipeline) PutJobFailureResultRequest(input *PutJobFailureResultInput) (req *request.Request, output *PutJobFailureResultOutput) {
  2691  	op := &request.Operation{
  2692  		Name:       opPutJobFailureResult,
  2693  		HTTPMethod: "POST",
  2694  		HTTPPath:   "/",
  2695  	}
  2696  
  2697  	if input == nil {
  2698  		input = &PutJobFailureResultInput{}
  2699  	}
  2700  
  2701  	output = &PutJobFailureResultOutput{}
  2702  	req = c.newRequest(op, input, output)
  2703  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2704  	return
  2705  }
  2706  
  2707  // PutJobFailureResult API operation for AWS CodePipeline.
  2708  //
  2709  // Represents the failure of a job as returned to the pipeline by a job worker.
  2710  // Used for custom actions only.
  2711  //
  2712  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2713  // with awserr.Error's Code and Message methods to get detailed information about
  2714  // the error.
  2715  //
  2716  // See the AWS API reference guide for AWS CodePipeline's
  2717  // API operation PutJobFailureResult for usage and error information.
  2718  //
  2719  // Returned Error Types:
  2720  //   * ValidationException
  2721  //   The validation was specified in an invalid format.
  2722  //
  2723  //   * JobNotFoundException
  2724  //   The job was specified in an invalid format or cannot be found.
  2725  //
  2726  //   * InvalidJobStateException
  2727  //   The job state was specified in an invalid format.
  2728  //
  2729  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PutJobFailureResult
  2730  func (c *CodePipeline) PutJobFailureResult(input *PutJobFailureResultInput) (*PutJobFailureResultOutput, error) {
  2731  	req, out := c.PutJobFailureResultRequest(input)
  2732  	return out, req.Send()
  2733  }
  2734  
  2735  // PutJobFailureResultWithContext is the same as PutJobFailureResult with the addition of
  2736  // the ability to pass a context and additional request options.
  2737  //
  2738  // See PutJobFailureResult for details on how to use this API operation.
  2739  //
  2740  // The context must be non-nil and will be used for request cancellation. If
  2741  // the context is nil a panic will occur. In the future the SDK may create
  2742  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2743  // for more information on using Contexts.
  2744  func (c *CodePipeline) PutJobFailureResultWithContext(ctx aws.Context, input *PutJobFailureResultInput, opts ...request.Option) (*PutJobFailureResultOutput, error) {
  2745  	req, out := c.PutJobFailureResultRequest(input)
  2746  	req.SetContext(ctx)
  2747  	req.ApplyOptions(opts...)
  2748  	return out, req.Send()
  2749  }
  2750  
  2751  const opPutJobSuccessResult = "PutJobSuccessResult"
  2752  
  2753  // PutJobSuccessResultRequest generates a "aws/request.Request" representing the
  2754  // client's request for the PutJobSuccessResult operation. The "output" return
  2755  // value will be populated with the request's response once the request completes
  2756  // successfully.
  2757  //
  2758  // Use "Send" method on the returned Request to send the API call to the service.
  2759  // the "output" return value is not valid until after Send returns without error.
  2760  //
  2761  // See PutJobSuccessResult for more information on using the PutJobSuccessResult
  2762  // API call, and error handling.
  2763  //
  2764  // This method is useful when you want to inject custom logic or configuration
  2765  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2766  //
  2767  //
  2768  //    // Example sending a request using the PutJobSuccessResultRequest method.
  2769  //    req, resp := client.PutJobSuccessResultRequest(params)
  2770  //
  2771  //    err := req.Send()
  2772  //    if err == nil { // resp is now filled
  2773  //        fmt.Println(resp)
  2774  //    }
  2775  //
  2776  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PutJobSuccessResult
  2777  func (c *CodePipeline) PutJobSuccessResultRequest(input *PutJobSuccessResultInput) (req *request.Request, output *PutJobSuccessResultOutput) {
  2778  	op := &request.Operation{
  2779  		Name:       opPutJobSuccessResult,
  2780  		HTTPMethod: "POST",
  2781  		HTTPPath:   "/",
  2782  	}
  2783  
  2784  	if input == nil {
  2785  		input = &PutJobSuccessResultInput{}
  2786  	}
  2787  
  2788  	output = &PutJobSuccessResultOutput{}
  2789  	req = c.newRequest(op, input, output)
  2790  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2791  	return
  2792  }
  2793  
  2794  // PutJobSuccessResult API operation for AWS CodePipeline.
  2795  //
  2796  // Represents the success of a job as returned to the pipeline by a job worker.
  2797  // Used for custom actions only.
  2798  //
  2799  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2800  // with awserr.Error's Code and Message methods to get detailed information about
  2801  // the error.
  2802  //
  2803  // See the AWS API reference guide for AWS CodePipeline's
  2804  // API operation PutJobSuccessResult for usage and error information.
  2805  //
  2806  // Returned Error Types:
  2807  //   * ValidationException
  2808  //   The validation was specified in an invalid format.
  2809  //
  2810  //   * JobNotFoundException
  2811  //   The job was specified in an invalid format or cannot be found.
  2812  //
  2813  //   * InvalidJobStateException
  2814  //   The job state was specified in an invalid format.
  2815  //
  2816  //   * OutputVariablesSizeExceededException
  2817  //   Exceeded the total size limit for all variables in the pipeline.
  2818  //
  2819  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PutJobSuccessResult
  2820  func (c *CodePipeline) PutJobSuccessResult(input *PutJobSuccessResultInput) (*PutJobSuccessResultOutput, error) {
  2821  	req, out := c.PutJobSuccessResultRequest(input)
  2822  	return out, req.Send()
  2823  }
  2824  
  2825  // PutJobSuccessResultWithContext is the same as PutJobSuccessResult with the addition of
  2826  // the ability to pass a context and additional request options.
  2827  //
  2828  // See PutJobSuccessResult for details on how to use this API operation.
  2829  //
  2830  // The context must be non-nil and will be used for request cancellation. If
  2831  // the context is nil a panic will occur. In the future the SDK may create
  2832  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2833  // for more information on using Contexts.
  2834  func (c *CodePipeline) PutJobSuccessResultWithContext(ctx aws.Context, input *PutJobSuccessResultInput, opts ...request.Option) (*PutJobSuccessResultOutput, error) {
  2835  	req, out := c.PutJobSuccessResultRequest(input)
  2836  	req.SetContext(ctx)
  2837  	req.ApplyOptions(opts...)
  2838  	return out, req.Send()
  2839  }
  2840  
  2841  const opPutThirdPartyJobFailureResult = "PutThirdPartyJobFailureResult"
  2842  
  2843  // PutThirdPartyJobFailureResultRequest generates a "aws/request.Request" representing the
  2844  // client's request for the PutThirdPartyJobFailureResult operation. The "output" return
  2845  // value will be populated with the request's response once the request completes
  2846  // successfully.
  2847  //
  2848  // Use "Send" method on the returned Request to send the API call to the service.
  2849  // the "output" return value is not valid until after Send returns without error.
  2850  //
  2851  // See PutThirdPartyJobFailureResult for more information on using the PutThirdPartyJobFailureResult
  2852  // API call, and error handling.
  2853  //
  2854  // This method is useful when you want to inject custom logic or configuration
  2855  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2856  //
  2857  //
  2858  //    // Example sending a request using the PutThirdPartyJobFailureResultRequest method.
  2859  //    req, resp := client.PutThirdPartyJobFailureResultRequest(params)
  2860  //
  2861  //    err := req.Send()
  2862  //    if err == nil { // resp is now filled
  2863  //        fmt.Println(resp)
  2864  //    }
  2865  //
  2866  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PutThirdPartyJobFailureResult
  2867  func (c *CodePipeline) PutThirdPartyJobFailureResultRequest(input *PutThirdPartyJobFailureResultInput) (req *request.Request, output *PutThirdPartyJobFailureResultOutput) {
  2868  	op := &request.Operation{
  2869  		Name:       opPutThirdPartyJobFailureResult,
  2870  		HTTPMethod: "POST",
  2871  		HTTPPath:   "/",
  2872  	}
  2873  
  2874  	if input == nil {
  2875  		input = &PutThirdPartyJobFailureResultInput{}
  2876  	}
  2877  
  2878  	output = &PutThirdPartyJobFailureResultOutput{}
  2879  	req = c.newRequest(op, input, output)
  2880  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2881  	return
  2882  }
  2883  
  2884  // PutThirdPartyJobFailureResult API operation for AWS CodePipeline.
  2885  //
  2886  // Represents the failure of a third party job as returned to the pipeline by
  2887  // a job worker. Used for partner actions only.
  2888  //
  2889  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2890  // with awserr.Error's Code and Message methods to get detailed information about
  2891  // the error.
  2892  //
  2893  // See the AWS API reference guide for AWS CodePipeline's
  2894  // API operation PutThirdPartyJobFailureResult for usage and error information.
  2895  //
  2896  // Returned Error Types:
  2897  //   * ValidationException
  2898  //   The validation was specified in an invalid format.
  2899  //
  2900  //   * JobNotFoundException
  2901  //   The job was specified in an invalid format or cannot be found.
  2902  //
  2903  //   * InvalidJobStateException
  2904  //   The job state was specified in an invalid format.
  2905  //
  2906  //   * InvalidClientTokenException
  2907  //   The client token was specified in an invalid format
  2908  //
  2909  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PutThirdPartyJobFailureResult
  2910  func (c *CodePipeline) PutThirdPartyJobFailureResult(input *PutThirdPartyJobFailureResultInput) (*PutThirdPartyJobFailureResultOutput, error) {
  2911  	req, out := c.PutThirdPartyJobFailureResultRequest(input)
  2912  	return out, req.Send()
  2913  }
  2914  
  2915  // PutThirdPartyJobFailureResultWithContext is the same as PutThirdPartyJobFailureResult with the addition of
  2916  // the ability to pass a context and additional request options.
  2917  //
  2918  // See PutThirdPartyJobFailureResult for details on how to use this API operation.
  2919  //
  2920  // The context must be non-nil and will be used for request cancellation. If
  2921  // the context is nil a panic will occur. In the future the SDK may create
  2922  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2923  // for more information on using Contexts.
  2924  func (c *CodePipeline) PutThirdPartyJobFailureResultWithContext(ctx aws.Context, input *PutThirdPartyJobFailureResultInput, opts ...request.Option) (*PutThirdPartyJobFailureResultOutput, error) {
  2925  	req, out := c.PutThirdPartyJobFailureResultRequest(input)
  2926  	req.SetContext(ctx)
  2927  	req.ApplyOptions(opts...)
  2928  	return out, req.Send()
  2929  }
  2930  
  2931  const opPutThirdPartyJobSuccessResult = "PutThirdPartyJobSuccessResult"
  2932  
  2933  // PutThirdPartyJobSuccessResultRequest generates a "aws/request.Request" representing the
  2934  // client's request for the PutThirdPartyJobSuccessResult operation. The "output" return
  2935  // value will be populated with the request's response once the request completes
  2936  // successfully.
  2937  //
  2938  // Use "Send" method on the returned Request to send the API call to the service.
  2939  // the "output" return value is not valid until after Send returns without error.
  2940  //
  2941  // See PutThirdPartyJobSuccessResult for more information on using the PutThirdPartyJobSuccessResult
  2942  // API call, and error handling.
  2943  //
  2944  // This method is useful when you want to inject custom logic or configuration
  2945  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2946  //
  2947  //
  2948  //    // Example sending a request using the PutThirdPartyJobSuccessResultRequest method.
  2949  //    req, resp := client.PutThirdPartyJobSuccessResultRequest(params)
  2950  //
  2951  //    err := req.Send()
  2952  //    if err == nil { // resp is now filled
  2953  //        fmt.Println(resp)
  2954  //    }
  2955  //
  2956  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PutThirdPartyJobSuccessResult
  2957  func (c *CodePipeline) PutThirdPartyJobSuccessResultRequest(input *PutThirdPartyJobSuccessResultInput) (req *request.Request, output *PutThirdPartyJobSuccessResultOutput) {
  2958  	op := &request.Operation{
  2959  		Name:       opPutThirdPartyJobSuccessResult,
  2960  		HTTPMethod: "POST",
  2961  		HTTPPath:   "/",
  2962  	}
  2963  
  2964  	if input == nil {
  2965  		input = &PutThirdPartyJobSuccessResultInput{}
  2966  	}
  2967  
  2968  	output = &PutThirdPartyJobSuccessResultOutput{}
  2969  	req = c.newRequest(op, input, output)
  2970  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2971  	return
  2972  }
  2973  
  2974  // PutThirdPartyJobSuccessResult API operation for AWS CodePipeline.
  2975  //
  2976  // Represents the success of a third party job as returned to the pipeline by
  2977  // a job worker. Used for partner actions only.
  2978  //
  2979  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2980  // with awserr.Error's Code and Message methods to get detailed information about
  2981  // the error.
  2982  //
  2983  // See the AWS API reference guide for AWS CodePipeline's
  2984  // API operation PutThirdPartyJobSuccessResult for usage and error information.
  2985  //
  2986  // Returned Error Types:
  2987  //   * ValidationException
  2988  //   The validation was specified in an invalid format.
  2989  //
  2990  //   * JobNotFoundException
  2991  //   The job was specified in an invalid format or cannot be found.
  2992  //
  2993  //   * InvalidJobStateException
  2994  //   The job state was specified in an invalid format.
  2995  //
  2996  //   * InvalidClientTokenException
  2997  //   The client token was specified in an invalid format
  2998  //
  2999  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PutThirdPartyJobSuccessResult
  3000  func (c *CodePipeline) PutThirdPartyJobSuccessResult(input *PutThirdPartyJobSuccessResultInput) (*PutThirdPartyJobSuccessResultOutput, error) {
  3001  	req, out := c.PutThirdPartyJobSuccessResultRequest(input)
  3002  	return out, req.Send()
  3003  }
  3004  
  3005  // PutThirdPartyJobSuccessResultWithContext is the same as PutThirdPartyJobSuccessResult with the addition of
  3006  // the ability to pass a context and additional request options.
  3007  //
  3008  // See PutThirdPartyJobSuccessResult for details on how to use this API operation.
  3009  //
  3010  // The context must be non-nil and will be used for request cancellation. If
  3011  // the context is nil a panic will occur. In the future the SDK may create
  3012  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3013  // for more information on using Contexts.
  3014  func (c *CodePipeline) PutThirdPartyJobSuccessResultWithContext(ctx aws.Context, input *PutThirdPartyJobSuccessResultInput, opts ...request.Option) (*PutThirdPartyJobSuccessResultOutput, error) {
  3015  	req, out := c.PutThirdPartyJobSuccessResultRequest(input)
  3016  	req.SetContext(ctx)
  3017  	req.ApplyOptions(opts...)
  3018  	return out, req.Send()
  3019  }
  3020  
  3021  const opPutWebhook = "PutWebhook"
  3022  
  3023  // PutWebhookRequest generates a "aws/request.Request" representing the
  3024  // client's request for the PutWebhook operation. The "output" return
  3025  // value will be populated with the request's response once the request completes
  3026  // successfully.
  3027  //
  3028  // Use "Send" method on the returned Request to send the API call to the service.
  3029  // the "output" return value is not valid until after Send returns without error.
  3030  //
  3031  // See PutWebhook for more information on using the PutWebhook
  3032  // API call, and error handling.
  3033  //
  3034  // This method is useful when you want to inject custom logic or configuration
  3035  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3036  //
  3037  //
  3038  //    // Example sending a request using the PutWebhookRequest method.
  3039  //    req, resp := client.PutWebhookRequest(params)
  3040  //
  3041  //    err := req.Send()
  3042  //    if err == nil { // resp is now filled
  3043  //        fmt.Println(resp)
  3044  //    }
  3045  //
  3046  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PutWebhook
  3047  func (c *CodePipeline) PutWebhookRequest(input *PutWebhookInput) (req *request.Request, output *PutWebhookOutput) {
  3048  	op := &request.Operation{
  3049  		Name:       opPutWebhook,
  3050  		HTTPMethod: "POST",
  3051  		HTTPPath:   "/",
  3052  	}
  3053  
  3054  	if input == nil {
  3055  		input = &PutWebhookInput{}
  3056  	}
  3057  
  3058  	output = &PutWebhookOutput{}
  3059  	req = c.newRequest(op, input, output)
  3060  	return
  3061  }
  3062  
  3063  // PutWebhook API operation for AWS CodePipeline.
  3064  //
  3065  // Defines a webhook and returns a unique webhook URL generated by CodePipeline.
  3066  // This URL can be supplied to third party source hosting providers to call
  3067  // every time there's a code change. When CodePipeline receives a POST request
  3068  // on this URL, the pipeline defined in the webhook is started as long as the
  3069  // POST request satisfied the authentication and filtering requirements supplied
  3070  // when defining the webhook. RegisterWebhookWithThirdParty and DeregisterWebhookWithThirdParty
  3071  // APIs can be used to automatically configure supported third parties to call
  3072  // the generated webhook URL.
  3073  //
  3074  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3075  // with awserr.Error's Code and Message methods to get detailed information about
  3076  // the error.
  3077  //
  3078  // See the AWS API reference guide for AWS CodePipeline's
  3079  // API operation PutWebhook for usage and error information.
  3080  //
  3081  // Returned Error Types:
  3082  //   * ValidationException
  3083  //   The validation was specified in an invalid format.
  3084  //
  3085  //   * LimitExceededException
  3086  //   The number of pipelines associated with the AWS account has exceeded the
  3087  //   limit allowed for the account.
  3088  //
  3089  //   * InvalidWebhookFilterPatternException
  3090  //   The specified event filter rule is in an invalid format.
  3091  //
  3092  //   * InvalidWebhookAuthenticationParametersException
  3093  //   The specified authentication type is in an invalid format.
  3094  //
  3095  //   * PipelineNotFoundException
  3096  //   The pipeline was specified in an invalid format or cannot be found.
  3097  //
  3098  //   * TooManyTagsException
  3099  //   The tags limit for a resource has been exceeded.
  3100  //
  3101  //   * InvalidTagsException
  3102  //   The specified resource tags are invalid.
  3103  //
  3104  //   * ConcurrentModificationException
  3105  //   Unable to modify the tag due to a simultaneous update request.
  3106  //
  3107  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PutWebhook
  3108  func (c *CodePipeline) PutWebhook(input *PutWebhookInput) (*PutWebhookOutput, error) {
  3109  	req, out := c.PutWebhookRequest(input)
  3110  	return out, req.Send()
  3111  }
  3112  
  3113  // PutWebhookWithContext is the same as PutWebhook with the addition of
  3114  // the ability to pass a context and additional request options.
  3115  //
  3116  // See PutWebhook for details on how to use this API operation.
  3117  //
  3118  // The context must be non-nil and will be used for request cancellation. If
  3119  // the context is nil a panic will occur. In the future the SDK may create
  3120  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3121  // for more information on using Contexts.
  3122  func (c *CodePipeline) PutWebhookWithContext(ctx aws.Context, input *PutWebhookInput, opts ...request.Option) (*PutWebhookOutput, error) {
  3123  	req, out := c.PutWebhookRequest(input)
  3124  	req.SetContext(ctx)
  3125  	req.ApplyOptions(opts...)
  3126  	return out, req.Send()
  3127  }
  3128  
  3129  const opRegisterWebhookWithThirdParty = "RegisterWebhookWithThirdParty"
  3130  
  3131  // RegisterWebhookWithThirdPartyRequest generates a "aws/request.Request" representing the
  3132  // client's request for the RegisterWebhookWithThirdParty operation. The "output" return
  3133  // value will be populated with the request's response once the request completes
  3134  // successfully.
  3135  //
  3136  // Use "Send" method on the returned Request to send the API call to the service.
  3137  // the "output" return value is not valid until after Send returns without error.
  3138  //
  3139  // See RegisterWebhookWithThirdParty for more information on using the RegisterWebhookWithThirdParty
  3140  // API call, and error handling.
  3141  //
  3142  // This method is useful when you want to inject custom logic or configuration
  3143  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3144  //
  3145  //
  3146  //    // Example sending a request using the RegisterWebhookWithThirdPartyRequest method.
  3147  //    req, resp := client.RegisterWebhookWithThirdPartyRequest(params)
  3148  //
  3149  //    err := req.Send()
  3150  //    if err == nil { // resp is now filled
  3151  //        fmt.Println(resp)
  3152  //    }
  3153  //
  3154  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/RegisterWebhookWithThirdParty
  3155  func (c *CodePipeline) RegisterWebhookWithThirdPartyRequest(input *RegisterWebhookWithThirdPartyInput) (req *request.Request, output *RegisterWebhookWithThirdPartyOutput) {
  3156  	op := &request.Operation{
  3157  		Name:       opRegisterWebhookWithThirdParty,
  3158  		HTTPMethod: "POST",
  3159  		HTTPPath:   "/",
  3160  	}
  3161  
  3162  	if input == nil {
  3163  		input = &RegisterWebhookWithThirdPartyInput{}
  3164  	}
  3165  
  3166  	output = &RegisterWebhookWithThirdPartyOutput{}
  3167  	req = c.newRequest(op, input, output)
  3168  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  3169  	return
  3170  }
  3171  
  3172  // RegisterWebhookWithThirdParty API operation for AWS CodePipeline.
  3173  //
  3174  // Configures a connection between the webhook that was created and the external
  3175  // tool with events to be detected.
  3176  //
  3177  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3178  // with awserr.Error's Code and Message methods to get detailed information about
  3179  // the error.
  3180  //
  3181  // See the AWS API reference guide for AWS CodePipeline's
  3182  // API operation RegisterWebhookWithThirdParty for usage and error information.
  3183  //
  3184  // Returned Error Types:
  3185  //   * ValidationException
  3186  //   The validation was specified in an invalid format.
  3187  //
  3188  //   * WebhookNotFoundException
  3189  //   The specified webhook was entered in an invalid format or cannot be found.
  3190  //
  3191  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/RegisterWebhookWithThirdParty
  3192  func (c *CodePipeline) RegisterWebhookWithThirdParty(input *RegisterWebhookWithThirdPartyInput) (*RegisterWebhookWithThirdPartyOutput, error) {
  3193  	req, out := c.RegisterWebhookWithThirdPartyRequest(input)
  3194  	return out, req.Send()
  3195  }
  3196  
  3197  // RegisterWebhookWithThirdPartyWithContext is the same as RegisterWebhookWithThirdParty with the addition of
  3198  // the ability to pass a context and additional request options.
  3199  //
  3200  // See RegisterWebhookWithThirdParty for details on how to use this API operation.
  3201  //
  3202  // The context must be non-nil and will be used for request cancellation. If
  3203  // the context is nil a panic will occur. In the future the SDK may create
  3204  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3205  // for more information on using Contexts.
  3206  func (c *CodePipeline) RegisterWebhookWithThirdPartyWithContext(ctx aws.Context, input *RegisterWebhookWithThirdPartyInput, opts ...request.Option) (*RegisterWebhookWithThirdPartyOutput, error) {
  3207  	req, out := c.RegisterWebhookWithThirdPartyRequest(input)
  3208  	req.SetContext(ctx)
  3209  	req.ApplyOptions(opts...)
  3210  	return out, req.Send()
  3211  }
  3212  
  3213  const opRetryStageExecution = "RetryStageExecution"
  3214  
  3215  // RetryStageExecutionRequest generates a "aws/request.Request" representing the
  3216  // client's request for the RetryStageExecution operation. The "output" return
  3217  // value will be populated with the request's response once the request completes
  3218  // successfully.
  3219  //
  3220  // Use "Send" method on the returned Request to send the API call to the service.
  3221  // the "output" return value is not valid until after Send returns without error.
  3222  //
  3223  // See RetryStageExecution for more information on using the RetryStageExecution
  3224  // API call, and error handling.
  3225  //
  3226  // This method is useful when you want to inject custom logic or configuration
  3227  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3228  //
  3229  //
  3230  //    // Example sending a request using the RetryStageExecutionRequest method.
  3231  //    req, resp := client.RetryStageExecutionRequest(params)
  3232  //
  3233  //    err := req.Send()
  3234  //    if err == nil { // resp is now filled
  3235  //        fmt.Println(resp)
  3236  //    }
  3237  //
  3238  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/RetryStageExecution
  3239  func (c *CodePipeline) RetryStageExecutionRequest(input *RetryStageExecutionInput) (req *request.Request, output *RetryStageExecutionOutput) {
  3240  	op := &request.Operation{
  3241  		Name:       opRetryStageExecution,
  3242  		HTTPMethod: "POST",
  3243  		HTTPPath:   "/",
  3244  	}
  3245  
  3246  	if input == nil {
  3247  		input = &RetryStageExecutionInput{}
  3248  	}
  3249  
  3250  	output = &RetryStageExecutionOutput{}
  3251  	req = c.newRequest(op, input, output)
  3252  	return
  3253  }
  3254  
  3255  // RetryStageExecution API operation for AWS CodePipeline.
  3256  //
  3257  // Resumes the pipeline execution by retrying the last failed actions in a stage.
  3258  // You can retry a stage immediately if any of the actions in the stage fail.
  3259  // When you retry, all actions that are still in progress continue working,
  3260  // and failed actions are triggered again.
  3261  //
  3262  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3263  // with awserr.Error's Code and Message methods to get detailed information about
  3264  // the error.
  3265  //
  3266  // See the AWS API reference guide for AWS CodePipeline's
  3267  // API operation RetryStageExecution for usage and error information.
  3268  //
  3269  // Returned Error Types:
  3270  //   * ValidationException
  3271  //   The validation was specified in an invalid format.
  3272  //
  3273  //   * ConflictException
  3274  //   Your request cannot be handled because the pipeline is busy handling ongoing
  3275  //   activities. Try again later.
  3276  //
  3277  //   * PipelineNotFoundException
  3278  //   The pipeline was specified in an invalid format or cannot be found.
  3279  //
  3280  //   * StageNotFoundException
  3281  //   The stage was specified in an invalid format or cannot be found.
  3282  //
  3283  //   * StageNotRetryableException
  3284  //   Unable to retry. The pipeline structure or stage state might have changed
  3285  //   while actions awaited retry, or the stage contains no failed actions.
  3286  //
  3287  //   * NotLatestPipelineExecutionException
  3288  //   The stage has failed in a later run of the pipeline and the pipelineExecutionId
  3289  //   associated with the request is out of date.
  3290  //
  3291  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/RetryStageExecution
  3292  func (c *CodePipeline) RetryStageExecution(input *RetryStageExecutionInput) (*RetryStageExecutionOutput, error) {
  3293  	req, out := c.RetryStageExecutionRequest(input)
  3294  	return out, req.Send()
  3295  }
  3296  
  3297  // RetryStageExecutionWithContext is the same as RetryStageExecution with the addition of
  3298  // the ability to pass a context and additional request options.
  3299  //
  3300  // See RetryStageExecution for details on how to use this API operation.
  3301  //
  3302  // The context must be non-nil and will be used for request cancellation. If
  3303  // the context is nil a panic will occur. In the future the SDK may create
  3304  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3305  // for more information on using Contexts.
  3306  func (c *CodePipeline) RetryStageExecutionWithContext(ctx aws.Context, input *RetryStageExecutionInput, opts ...request.Option) (*RetryStageExecutionOutput, error) {
  3307  	req, out := c.RetryStageExecutionRequest(input)
  3308  	req.SetContext(ctx)
  3309  	req.ApplyOptions(opts...)
  3310  	return out, req.Send()
  3311  }
  3312  
  3313  const opStartPipelineExecution = "StartPipelineExecution"
  3314  
  3315  // StartPipelineExecutionRequest generates a "aws/request.Request" representing the
  3316  // client's request for the StartPipelineExecution operation. The "output" return
  3317  // value will be populated with the request's response once the request completes
  3318  // successfully.
  3319  //
  3320  // Use "Send" method on the returned Request to send the API call to the service.
  3321  // the "output" return value is not valid until after Send returns without error.
  3322  //
  3323  // See StartPipelineExecution for more information on using the StartPipelineExecution
  3324  // API call, and error handling.
  3325  //
  3326  // This method is useful when you want to inject custom logic or configuration
  3327  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3328  //
  3329  //
  3330  //    // Example sending a request using the StartPipelineExecutionRequest method.
  3331  //    req, resp := client.StartPipelineExecutionRequest(params)
  3332  //
  3333  //    err := req.Send()
  3334  //    if err == nil { // resp is now filled
  3335  //        fmt.Println(resp)
  3336  //    }
  3337  //
  3338  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/StartPipelineExecution
  3339  func (c *CodePipeline) StartPipelineExecutionRequest(input *StartPipelineExecutionInput) (req *request.Request, output *StartPipelineExecutionOutput) {
  3340  	op := &request.Operation{
  3341  		Name:       opStartPipelineExecution,
  3342  		HTTPMethod: "POST",
  3343  		HTTPPath:   "/",
  3344  	}
  3345  
  3346  	if input == nil {
  3347  		input = &StartPipelineExecutionInput{}
  3348  	}
  3349  
  3350  	output = &StartPipelineExecutionOutput{}
  3351  	req = c.newRequest(op, input, output)
  3352  	return
  3353  }
  3354  
  3355  // StartPipelineExecution API operation for AWS CodePipeline.
  3356  //
  3357  // Starts the specified pipeline. Specifically, it begins processing the latest
  3358  // commit to the source location specified as part of the pipeline.
  3359  //
  3360  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3361  // with awserr.Error's Code and Message methods to get detailed information about
  3362  // the error.
  3363  //
  3364  // See the AWS API reference guide for AWS CodePipeline's
  3365  // API operation StartPipelineExecution for usage and error information.
  3366  //
  3367  // Returned Error Types:
  3368  //   * ValidationException
  3369  //   The validation was specified in an invalid format.
  3370  //
  3371  //   * ConflictException
  3372  //   Your request cannot be handled because the pipeline is busy handling ongoing
  3373  //   activities. Try again later.
  3374  //
  3375  //   * PipelineNotFoundException
  3376  //   The pipeline was specified in an invalid format or cannot be found.
  3377  //
  3378  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/StartPipelineExecution
  3379  func (c *CodePipeline) StartPipelineExecution(input *StartPipelineExecutionInput) (*StartPipelineExecutionOutput, error) {
  3380  	req, out := c.StartPipelineExecutionRequest(input)
  3381  	return out, req.Send()
  3382  }
  3383  
  3384  // StartPipelineExecutionWithContext is the same as StartPipelineExecution with the addition of
  3385  // the ability to pass a context and additional request options.
  3386  //
  3387  // See StartPipelineExecution for details on how to use this API operation.
  3388  //
  3389  // The context must be non-nil and will be used for request cancellation. If
  3390  // the context is nil a panic will occur. In the future the SDK may create
  3391  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3392  // for more information on using Contexts.
  3393  func (c *CodePipeline) StartPipelineExecutionWithContext(ctx aws.Context, input *StartPipelineExecutionInput, opts ...request.Option) (*StartPipelineExecutionOutput, error) {
  3394  	req, out := c.StartPipelineExecutionRequest(input)
  3395  	req.SetContext(ctx)
  3396  	req.ApplyOptions(opts...)
  3397  	return out, req.Send()
  3398  }
  3399  
  3400  const opStopPipelineExecution = "StopPipelineExecution"
  3401  
  3402  // StopPipelineExecutionRequest generates a "aws/request.Request" representing the
  3403  // client's request for the StopPipelineExecution operation. The "output" return
  3404  // value will be populated with the request's response once the request completes
  3405  // successfully.
  3406  //
  3407  // Use "Send" method on the returned Request to send the API call to the service.
  3408  // the "output" return value is not valid until after Send returns without error.
  3409  //
  3410  // See StopPipelineExecution for more information on using the StopPipelineExecution
  3411  // API call, and error handling.
  3412  //
  3413  // This method is useful when you want to inject custom logic or configuration
  3414  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3415  //
  3416  //
  3417  //    // Example sending a request using the StopPipelineExecutionRequest method.
  3418  //    req, resp := client.StopPipelineExecutionRequest(params)
  3419  //
  3420  //    err := req.Send()
  3421  //    if err == nil { // resp is now filled
  3422  //        fmt.Println(resp)
  3423  //    }
  3424  //
  3425  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/StopPipelineExecution
  3426  func (c *CodePipeline) StopPipelineExecutionRequest(input *StopPipelineExecutionInput) (req *request.Request, output *StopPipelineExecutionOutput) {
  3427  	op := &request.Operation{
  3428  		Name:       opStopPipelineExecution,
  3429  		HTTPMethod: "POST",
  3430  		HTTPPath:   "/",
  3431  	}
  3432  
  3433  	if input == nil {
  3434  		input = &StopPipelineExecutionInput{}
  3435  	}
  3436  
  3437  	output = &StopPipelineExecutionOutput{}
  3438  	req = c.newRequest(op, input, output)
  3439  	return
  3440  }
  3441  
  3442  // StopPipelineExecution API operation for AWS CodePipeline.
  3443  //
  3444  // Stops the specified pipeline execution. You choose to either stop the pipeline
  3445  // execution by completing in-progress actions without starting subsequent actions,
  3446  // or by abandoning in-progress actions. While completing or abandoning in-progress
  3447  // actions, the pipeline execution is in a Stopping state. After all in-progress
  3448  // actions are completed or abandoned, the pipeline execution is in a Stopped
  3449  // state.
  3450  //
  3451  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3452  // with awserr.Error's Code and Message methods to get detailed information about
  3453  // the error.
  3454  //
  3455  // See the AWS API reference guide for AWS CodePipeline's
  3456  // API operation StopPipelineExecution for usage and error information.
  3457  //
  3458  // Returned Error Types:
  3459  //   * ValidationException
  3460  //   The validation was specified in an invalid format.
  3461  //
  3462  //   * ConflictException
  3463  //   Your request cannot be handled because the pipeline is busy handling ongoing
  3464  //   activities. Try again later.
  3465  //
  3466  //   * PipelineNotFoundException
  3467  //   The pipeline was specified in an invalid format or cannot be found.
  3468  //
  3469  //   * PipelineExecutionNotStoppableException
  3470  //   Unable to stop the pipeline execution. The execution might already be in
  3471  //   a Stopped state, or it might no longer be in progress.
  3472  //
  3473  //   * DuplicatedStopRequestException
  3474  //   The pipeline execution is already in a Stopping state. If you already chose
  3475  //   to stop and wait, you cannot make that request again. You can choose to stop
  3476  //   and abandon now, but be aware that this option can lead to failed tasks or
  3477  //   out of sequence tasks. If you already chose to stop and abandon, you cannot
  3478  //   make that request again.
  3479  //
  3480  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/StopPipelineExecution
  3481  func (c *CodePipeline) StopPipelineExecution(input *StopPipelineExecutionInput) (*StopPipelineExecutionOutput, error) {
  3482  	req, out := c.StopPipelineExecutionRequest(input)
  3483  	return out, req.Send()
  3484  }
  3485  
  3486  // StopPipelineExecutionWithContext is the same as StopPipelineExecution with the addition of
  3487  // the ability to pass a context and additional request options.
  3488  //
  3489  // See StopPipelineExecution for details on how to use this API operation.
  3490  //
  3491  // The context must be non-nil and will be used for request cancellation. If
  3492  // the context is nil a panic will occur. In the future the SDK may create
  3493  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3494  // for more information on using Contexts.
  3495  func (c *CodePipeline) StopPipelineExecutionWithContext(ctx aws.Context, input *StopPipelineExecutionInput, opts ...request.Option) (*StopPipelineExecutionOutput, error) {
  3496  	req, out := c.StopPipelineExecutionRequest(input)
  3497  	req.SetContext(ctx)
  3498  	req.ApplyOptions(opts...)
  3499  	return out, req.Send()
  3500  }
  3501  
  3502  const opTagResource = "TagResource"
  3503  
  3504  // TagResourceRequest generates a "aws/request.Request" representing the
  3505  // client's request for the TagResource operation. The "output" return
  3506  // value will be populated with the request's response once the request completes
  3507  // successfully.
  3508  //
  3509  // Use "Send" method on the returned Request to send the API call to the service.
  3510  // the "output" return value is not valid until after Send returns without error.
  3511  //
  3512  // See TagResource for more information on using the TagResource
  3513  // API call, and error handling.
  3514  //
  3515  // This method is useful when you want to inject custom logic or configuration
  3516  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3517  //
  3518  //
  3519  //    // Example sending a request using the TagResourceRequest method.
  3520  //    req, resp := client.TagResourceRequest(params)
  3521  //
  3522  //    err := req.Send()
  3523  //    if err == nil { // resp is now filled
  3524  //        fmt.Println(resp)
  3525  //    }
  3526  //
  3527  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/TagResource
  3528  func (c *CodePipeline) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) {
  3529  	op := &request.Operation{
  3530  		Name:       opTagResource,
  3531  		HTTPMethod: "POST",
  3532  		HTTPPath:   "/",
  3533  	}
  3534  
  3535  	if input == nil {
  3536  		input = &TagResourceInput{}
  3537  	}
  3538  
  3539  	output = &TagResourceOutput{}
  3540  	req = c.newRequest(op, input, output)
  3541  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  3542  	return
  3543  }
  3544  
  3545  // TagResource API operation for AWS CodePipeline.
  3546  //
  3547  // Adds to or modifies the tags of the given resource. Tags are metadata that
  3548  // can be used to manage a resource.
  3549  //
  3550  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3551  // with awserr.Error's Code and Message methods to get detailed information about
  3552  // the error.
  3553  //
  3554  // See the AWS API reference guide for AWS CodePipeline's
  3555  // API operation TagResource for usage and error information.
  3556  //
  3557  // Returned Error Types:
  3558  //   * ValidationException
  3559  //   The validation was specified in an invalid format.
  3560  //
  3561  //   * ResourceNotFoundException
  3562  //   The resource was specified in an invalid format.
  3563  //
  3564  //   * InvalidArnException
  3565  //   The specified resource ARN is invalid.
  3566  //
  3567  //   * TooManyTagsException
  3568  //   The tags limit for a resource has been exceeded.
  3569  //
  3570  //   * InvalidTagsException
  3571  //   The specified resource tags are invalid.
  3572  //
  3573  //   * ConcurrentModificationException
  3574  //   Unable to modify the tag due to a simultaneous update request.
  3575  //
  3576  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/TagResource
  3577  func (c *CodePipeline) TagResource(input *TagResourceInput) (*TagResourceOutput, error) {
  3578  	req, out := c.TagResourceRequest(input)
  3579  	return out, req.Send()
  3580  }
  3581  
  3582  // TagResourceWithContext is the same as TagResource with the addition of
  3583  // the ability to pass a context and additional request options.
  3584  //
  3585  // See TagResource for details on how to use this API operation.
  3586  //
  3587  // The context must be non-nil and will be used for request cancellation. If
  3588  // the context is nil a panic will occur. In the future the SDK may create
  3589  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3590  // for more information on using Contexts.
  3591  func (c *CodePipeline) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) {
  3592  	req, out := c.TagResourceRequest(input)
  3593  	req.SetContext(ctx)
  3594  	req.ApplyOptions(opts...)
  3595  	return out, req.Send()
  3596  }
  3597  
  3598  const opUntagResource = "UntagResource"
  3599  
  3600  // UntagResourceRequest generates a "aws/request.Request" representing the
  3601  // client's request for the UntagResource operation. The "output" return
  3602  // value will be populated with the request's response once the request completes
  3603  // successfully.
  3604  //
  3605  // Use "Send" method on the returned Request to send the API call to the service.
  3606  // the "output" return value is not valid until after Send returns without error.
  3607  //
  3608  // See UntagResource for more information on using the UntagResource
  3609  // API call, and error handling.
  3610  //
  3611  // This method is useful when you want to inject custom logic or configuration
  3612  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3613  //
  3614  //
  3615  //    // Example sending a request using the UntagResourceRequest method.
  3616  //    req, resp := client.UntagResourceRequest(params)
  3617  //
  3618  //    err := req.Send()
  3619  //    if err == nil { // resp is now filled
  3620  //        fmt.Println(resp)
  3621  //    }
  3622  //
  3623  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/UntagResource
  3624  func (c *CodePipeline) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) {
  3625  	op := &request.Operation{
  3626  		Name:       opUntagResource,
  3627  		HTTPMethod: "POST",
  3628  		HTTPPath:   "/",
  3629  	}
  3630  
  3631  	if input == nil {
  3632  		input = &UntagResourceInput{}
  3633  	}
  3634  
  3635  	output = &UntagResourceOutput{}
  3636  	req = c.newRequest(op, input, output)
  3637  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  3638  	return
  3639  }
  3640  
  3641  // UntagResource API operation for AWS CodePipeline.
  3642  //
  3643  // Removes tags from an AWS resource.
  3644  //
  3645  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3646  // with awserr.Error's Code and Message methods to get detailed information about
  3647  // the error.
  3648  //
  3649  // See the AWS API reference guide for AWS CodePipeline's
  3650  // API operation UntagResource for usage and error information.
  3651  //
  3652  // Returned Error Types:
  3653  //   * ValidationException
  3654  //   The validation was specified in an invalid format.
  3655  //
  3656  //   * ResourceNotFoundException
  3657  //   The resource was specified in an invalid format.
  3658  //
  3659  //   * InvalidArnException
  3660  //   The specified resource ARN is invalid.
  3661  //
  3662  //   * InvalidTagsException
  3663  //   The specified resource tags are invalid.
  3664  //
  3665  //   * ConcurrentModificationException
  3666  //   Unable to modify the tag due to a simultaneous update request.
  3667  //
  3668  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/UntagResource
  3669  func (c *CodePipeline) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) {
  3670  	req, out := c.UntagResourceRequest(input)
  3671  	return out, req.Send()
  3672  }
  3673  
  3674  // UntagResourceWithContext is the same as UntagResource with the addition of
  3675  // the ability to pass a context and additional request options.
  3676  //
  3677  // See UntagResource for details on how to use this API operation.
  3678  //
  3679  // The context must be non-nil and will be used for request cancellation. If
  3680  // the context is nil a panic will occur. In the future the SDK may create
  3681  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3682  // for more information on using Contexts.
  3683  func (c *CodePipeline) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) {
  3684  	req, out := c.UntagResourceRequest(input)
  3685  	req.SetContext(ctx)
  3686  	req.ApplyOptions(opts...)
  3687  	return out, req.Send()
  3688  }
  3689  
  3690  const opUpdateActionType = "UpdateActionType"
  3691  
  3692  // UpdateActionTypeRequest generates a "aws/request.Request" representing the
  3693  // client's request for the UpdateActionType operation. The "output" return
  3694  // value will be populated with the request's response once the request completes
  3695  // successfully.
  3696  //
  3697  // Use "Send" method on the returned Request to send the API call to the service.
  3698  // the "output" return value is not valid until after Send returns without error.
  3699  //
  3700  // See UpdateActionType for more information on using the UpdateActionType
  3701  // API call, and error handling.
  3702  //
  3703  // This method is useful when you want to inject custom logic or configuration
  3704  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3705  //
  3706  //
  3707  //    // Example sending a request using the UpdateActionTypeRequest method.
  3708  //    req, resp := client.UpdateActionTypeRequest(params)
  3709  //
  3710  //    err := req.Send()
  3711  //    if err == nil { // resp is now filled
  3712  //        fmt.Println(resp)
  3713  //    }
  3714  //
  3715  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/UpdateActionType
  3716  func (c *CodePipeline) UpdateActionTypeRequest(input *UpdateActionTypeInput) (req *request.Request, output *UpdateActionTypeOutput) {
  3717  	op := &request.Operation{
  3718  		Name:       opUpdateActionType,
  3719  		HTTPMethod: "POST",
  3720  		HTTPPath:   "/",
  3721  	}
  3722  
  3723  	if input == nil {
  3724  		input = &UpdateActionTypeInput{}
  3725  	}
  3726  
  3727  	output = &UpdateActionTypeOutput{}
  3728  	req = c.newRequest(op, input, output)
  3729  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  3730  	return
  3731  }
  3732  
  3733  // UpdateActionType API operation for AWS CodePipeline.
  3734  //
  3735  // Updates an action type that was created with any supported integration model,
  3736  // where the action type is to be used by customers of the action type provider.
  3737  // Use a JSON file with the action definition and UpdateActionType to provide
  3738  // the full structure.
  3739  //
  3740  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3741  // with awserr.Error's Code and Message methods to get detailed information about
  3742  // the error.
  3743  //
  3744  // See the AWS API reference guide for AWS CodePipeline's
  3745  // API operation UpdateActionType for usage and error information.
  3746  //
  3747  // Returned Error Types:
  3748  //   * RequestFailedException
  3749  //   The request failed because of an unknown error, exception, or failure.
  3750  //
  3751  //   * ValidationException
  3752  //   The validation was specified in an invalid format.
  3753  //
  3754  //   * ActionTypeNotFoundException
  3755  //   The specified action type cannot be found.
  3756  //
  3757  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/UpdateActionType
  3758  func (c *CodePipeline) UpdateActionType(input *UpdateActionTypeInput) (*UpdateActionTypeOutput, error) {
  3759  	req, out := c.UpdateActionTypeRequest(input)
  3760  	return out, req.Send()
  3761  }
  3762  
  3763  // UpdateActionTypeWithContext is the same as UpdateActionType with the addition of
  3764  // the ability to pass a context and additional request options.
  3765  //
  3766  // See UpdateActionType for details on how to use this API operation.
  3767  //
  3768  // The context must be non-nil and will be used for request cancellation. If
  3769  // the context is nil a panic will occur. In the future the SDK may create
  3770  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3771  // for more information on using Contexts.
  3772  func (c *CodePipeline) UpdateActionTypeWithContext(ctx aws.Context, input *UpdateActionTypeInput, opts ...request.Option) (*UpdateActionTypeOutput, error) {
  3773  	req, out := c.UpdateActionTypeRequest(input)
  3774  	req.SetContext(ctx)
  3775  	req.ApplyOptions(opts...)
  3776  	return out, req.Send()
  3777  }
  3778  
  3779  const opUpdatePipeline = "UpdatePipeline"
  3780  
  3781  // UpdatePipelineRequest generates a "aws/request.Request" representing the
  3782  // client's request for the UpdatePipeline operation. The "output" return
  3783  // value will be populated with the request's response once the request completes
  3784  // successfully.
  3785  //
  3786  // Use "Send" method on the returned Request to send the API call to the service.
  3787  // the "output" return value is not valid until after Send returns without error.
  3788  //
  3789  // See UpdatePipeline for more information on using the UpdatePipeline
  3790  // API call, and error handling.
  3791  //
  3792  // This method is useful when you want to inject custom logic or configuration
  3793  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3794  //
  3795  //
  3796  //    // Example sending a request using the UpdatePipelineRequest method.
  3797  //    req, resp := client.UpdatePipelineRequest(params)
  3798  //
  3799  //    err := req.Send()
  3800  //    if err == nil { // resp is now filled
  3801  //        fmt.Println(resp)
  3802  //    }
  3803  //
  3804  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/UpdatePipeline
  3805  func (c *CodePipeline) UpdatePipelineRequest(input *UpdatePipelineInput) (req *request.Request, output *UpdatePipelineOutput) {
  3806  	op := &request.Operation{
  3807  		Name:       opUpdatePipeline,
  3808  		HTTPMethod: "POST",
  3809  		HTTPPath:   "/",
  3810  	}
  3811  
  3812  	if input == nil {
  3813  		input = &UpdatePipelineInput{}
  3814  	}
  3815  
  3816  	output = &UpdatePipelineOutput{}
  3817  	req = c.newRequest(op, input, output)
  3818  	return
  3819  }
  3820  
  3821  // UpdatePipeline API operation for AWS CodePipeline.
  3822  //
  3823  // Updates a specified pipeline with edits or changes to its structure. Use
  3824  // a JSON file with the pipeline structure and UpdatePipeline to provide the
  3825  // full structure of the pipeline. Updating the pipeline increases the version
  3826  // number of the pipeline by 1.
  3827  //
  3828  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3829  // with awserr.Error's Code and Message methods to get detailed information about
  3830  // the error.
  3831  //
  3832  // See the AWS API reference guide for AWS CodePipeline's
  3833  // API operation UpdatePipeline for usage and error information.
  3834  //
  3835  // Returned Error Types:
  3836  //   * ValidationException
  3837  //   The validation was specified in an invalid format.
  3838  //
  3839  //   * InvalidStageDeclarationException
  3840  //   The stage declaration was specified in an invalid format.
  3841  //
  3842  //   * InvalidActionDeclarationException
  3843  //   The action declaration was specified in an invalid format.
  3844  //
  3845  //   * InvalidBlockerDeclarationException
  3846  //   Reserved for future use.
  3847  //
  3848  //   * InvalidStructureException
  3849  //   The structure was specified in an invalid format.
  3850  //
  3851  //   * LimitExceededException
  3852  //   The number of pipelines associated with the AWS account has exceeded the
  3853  //   limit allowed for the account.
  3854  //
  3855  // See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/UpdatePipeline
  3856  func (c *CodePipeline) UpdatePipeline(input *UpdatePipelineInput) (*UpdatePipelineOutput, error) {
  3857  	req, out := c.UpdatePipelineRequest(input)
  3858  	return out, req.Send()
  3859  }
  3860  
  3861  // UpdatePipelineWithContext is the same as UpdatePipeline with the addition of
  3862  // the ability to pass a context and additional request options.
  3863  //
  3864  // See UpdatePipeline for details on how to use this API operation.
  3865  //
  3866  // The context must be non-nil and will be used for request cancellation. If
  3867  // the context is nil a panic will occur. In the future the SDK may create
  3868  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3869  // for more information on using Contexts.
  3870  func (c *CodePipeline) UpdatePipelineWithContext(ctx aws.Context, input *UpdatePipelineInput, opts ...request.Option) (*UpdatePipelineOutput, error) {
  3871  	req, out := c.UpdatePipelineRequest(input)
  3872  	req.SetContext(ctx)
  3873  	req.ApplyOptions(opts...)
  3874  	return out, req.Send()
  3875  }
  3876  
  3877  // Represents an AWS session credentials object. These credentials are temporary
  3878  // credentials that are issued by AWS Secure Token Service (STS). They can be
  3879  // used to access input and output artifacts in the S3 bucket used to store
  3880  // artifact for the pipeline in AWS CodePipeline.
  3881  type AWSSessionCredentials struct {
  3882  	_ struct{} `type:"structure" sensitive:"true"`
  3883  
  3884  	// The access key for the session.
  3885  	//
  3886  	// AccessKeyId is a sensitive parameter and its value will be
  3887  	// replaced with "sensitive" in string returned by AWSSessionCredentials's
  3888  	// String and GoString methods.
  3889  	//
  3890  	// AccessKeyId is a required field
  3891  	AccessKeyId *string `locationName:"accessKeyId" type:"string" required:"true" sensitive:"true"`
  3892  
  3893  	// The secret access key for the session.
  3894  	//
  3895  	// SecretAccessKey is a sensitive parameter and its value will be
  3896  	// replaced with "sensitive" in string returned by AWSSessionCredentials's
  3897  	// String and GoString methods.
  3898  	//
  3899  	// SecretAccessKey is a required field
  3900  	SecretAccessKey *string `locationName:"secretAccessKey" type:"string" required:"true" sensitive:"true"`
  3901  
  3902  	// The token for the session.
  3903  	//
  3904  	// SessionToken is a sensitive parameter and its value will be
  3905  	// replaced with "sensitive" in string returned by AWSSessionCredentials's
  3906  	// String and GoString methods.
  3907  	//
  3908  	// SessionToken is a required field
  3909  	SessionToken *string `locationName:"sessionToken" type:"string" required:"true" sensitive:"true"`
  3910  }
  3911  
  3912  // String returns the string representation.
  3913  //
  3914  // API parameter values that are decorated as "sensitive" in the API will not
  3915  // be included in the string output. The member name will be present, but the
  3916  // value will be replaced with "sensitive".
  3917  func (s AWSSessionCredentials) String() string {
  3918  	return awsutil.Prettify(s)
  3919  }
  3920  
  3921  // GoString returns the string representation.
  3922  //
  3923  // API parameter values that are decorated as "sensitive" in the API will not
  3924  // be included in the string output. The member name will be present, but the
  3925  // value will be replaced with "sensitive".
  3926  func (s AWSSessionCredentials) GoString() string {
  3927  	return s.String()
  3928  }
  3929  
  3930  // SetAccessKeyId sets the AccessKeyId field's value.
  3931  func (s *AWSSessionCredentials) SetAccessKeyId(v string) *AWSSessionCredentials {
  3932  	s.AccessKeyId = &v
  3933  	return s
  3934  }
  3935  
  3936  // SetSecretAccessKey sets the SecretAccessKey field's value.
  3937  func (s *AWSSessionCredentials) SetSecretAccessKey(v string) *AWSSessionCredentials {
  3938  	s.SecretAccessKey = &v
  3939  	return s
  3940  }
  3941  
  3942  // SetSessionToken sets the SessionToken field's value.
  3943  func (s *AWSSessionCredentials) SetSessionToken(v string) *AWSSessionCredentials {
  3944  	s.SessionToken = &v
  3945  	return s
  3946  }
  3947  
  3948  // Represents the input of an AcknowledgeJob action.
  3949  type AcknowledgeJobInput struct {
  3950  	_ struct{} `type:"structure"`
  3951  
  3952  	// The unique system-generated ID of the job for which you want to confirm receipt.
  3953  	//
  3954  	// JobId is a required field
  3955  	JobId *string `locationName:"jobId" type:"string" required:"true"`
  3956  
  3957  	// A system-generated random number that AWS CodePipeline uses to ensure that
  3958  	// the job is being worked on by only one job worker. Get this number from the
  3959  	// response of the PollForJobs request that returned this job.
  3960  	//
  3961  	// Nonce is a required field
  3962  	Nonce *string `locationName:"nonce" min:"1" type:"string" required:"true"`
  3963  }
  3964  
  3965  // String returns the string representation.
  3966  //
  3967  // API parameter values that are decorated as "sensitive" in the API will not
  3968  // be included in the string output. The member name will be present, but the
  3969  // value will be replaced with "sensitive".
  3970  func (s AcknowledgeJobInput) String() string {
  3971  	return awsutil.Prettify(s)
  3972  }
  3973  
  3974  // GoString returns the string representation.
  3975  //
  3976  // API parameter values that are decorated as "sensitive" in the API will not
  3977  // be included in the string output. The member name will be present, but the
  3978  // value will be replaced with "sensitive".
  3979  func (s AcknowledgeJobInput) GoString() string {
  3980  	return s.String()
  3981  }
  3982  
  3983  // Validate inspects the fields of the type to determine if they are valid.
  3984  func (s *AcknowledgeJobInput) Validate() error {
  3985  	invalidParams := request.ErrInvalidParams{Context: "AcknowledgeJobInput"}
  3986  	if s.JobId == nil {
  3987  		invalidParams.Add(request.NewErrParamRequired("JobId"))
  3988  	}
  3989  	if s.Nonce == nil {
  3990  		invalidParams.Add(request.NewErrParamRequired("Nonce"))
  3991  	}
  3992  	if s.Nonce != nil && len(*s.Nonce) < 1 {
  3993  		invalidParams.Add(request.NewErrParamMinLen("Nonce", 1))
  3994  	}
  3995  
  3996  	if invalidParams.Len() > 0 {
  3997  		return invalidParams
  3998  	}
  3999  	return nil
  4000  }
  4001  
  4002  // SetJobId sets the JobId field's value.
  4003  func (s *AcknowledgeJobInput) SetJobId(v string) *AcknowledgeJobInput {
  4004  	s.JobId = &v
  4005  	return s
  4006  }
  4007  
  4008  // SetNonce sets the Nonce field's value.
  4009  func (s *AcknowledgeJobInput) SetNonce(v string) *AcknowledgeJobInput {
  4010  	s.Nonce = &v
  4011  	return s
  4012  }
  4013  
  4014  // Represents the output of an AcknowledgeJob action.
  4015  type AcknowledgeJobOutput struct {
  4016  	_ struct{} `type:"structure"`
  4017  
  4018  	// Whether the job worker has received the specified job.
  4019  	Status *string `locationName:"status" type:"string" enum:"JobStatus"`
  4020  }
  4021  
  4022  // String returns the string representation.
  4023  //
  4024  // API parameter values that are decorated as "sensitive" in the API will not
  4025  // be included in the string output. The member name will be present, but the
  4026  // value will be replaced with "sensitive".
  4027  func (s AcknowledgeJobOutput) String() string {
  4028  	return awsutil.Prettify(s)
  4029  }
  4030  
  4031  // GoString returns the string representation.
  4032  //
  4033  // API parameter values that are decorated as "sensitive" in the API will not
  4034  // be included in the string output. The member name will be present, but the
  4035  // value will be replaced with "sensitive".
  4036  func (s AcknowledgeJobOutput) GoString() string {
  4037  	return s.String()
  4038  }
  4039  
  4040  // SetStatus sets the Status field's value.
  4041  func (s *AcknowledgeJobOutput) SetStatus(v string) *AcknowledgeJobOutput {
  4042  	s.Status = &v
  4043  	return s
  4044  }
  4045  
  4046  // Represents the input of an AcknowledgeThirdPartyJob action.
  4047  type AcknowledgeThirdPartyJobInput struct {
  4048  	_ struct{} `type:"structure"`
  4049  
  4050  	// The clientToken portion of the clientId and clientToken pair used to verify
  4051  	// that the calling entity is allowed access to the job and its details.
  4052  	//
  4053  	// ClientToken is a required field
  4054  	ClientToken *string `locationName:"clientToken" min:"1" type:"string" required:"true"`
  4055  
  4056  	// The unique system-generated ID of the job.
  4057  	//
  4058  	// JobId is a required field
  4059  	JobId *string `locationName:"jobId" min:"1" type:"string" required:"true"`
  4060  
  4061  	// A system-generated random number that AWS CodePipeline uses to ensure that
  4062  	// the job is being worked on by only one job worker. Get this number from the
  4063  	// response to a GetThirdPartyJobDetails request.
  4064  	//
  4065  	// Nonce is a required field
  4066  	Nonce *string `locationName:"nonce" min:"1" type:"string" required:"true"`
  4067  }
  4068  
  4069  // String returns the string representation.
  4070  //
  4071  // API parameter values that are decorated as "sensitive" in the API will not
  4072  // be included in the string output. The member name will be present, but the
  4073  // value will be replaced with "sensitive".
  4074  func (s AcknowledgeThirdPartyJobInput) String() string {
  4075  	return awsutil.Prettify(s)
  4076  }
  4077  
  4078  // GoString returns the string representation.
  4079  //
  4080  // API parameter values that are decorated as "sensitive" in the API will not
  4081  // be included in the string output. The member name will be present, but the
  4082  // value will be replaced with "sensitive".
  4083  func (s AcknowledgeThirdPartyJobInput) GoString() string {
  4084  	return s.String()
  4085  }
  4086  
  4087  // Validate inspects the fields of the type to determine if they are valid.
  4088  func (s *AcknowledgeThirdPartyJobInput) Validate() error {
  4089  	invalidParams := request.ErrInvalidParams{Context: "AcknowledgeThirdPartyJobInput"}
  4090  	if s.ClientToken == nil {
  4091  		invalidParams.Add(request.NewErrParamRequired("ClientToken"))
  4092  	}
  4093  	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
  4094  		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
  4095  	}
  4096  	if s.JobId == nil {
  4097  		invalidParams.Add(request.NewErrParamRequired("JobId"))
  4098  	}
  4099  	if s.JobId != nil && len(*s.JobId) < 1 {
  4100  		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
  4101  	}
  4102  	if s.Nonce == nil {
  4103  		invalidParams.Add(request.NewErrParamRequired("Nonce"))
  4104  	}
  4105  	if s.Nonce != nil && len(*s.Nonce) < 1 {
  4106  		invalidParams.Add(request.NewErrParamMinLen("Nonce", 1))
  4107  	}
  4108  
  4109  	if invalidParams.Len() > 0 {
  4110  		return invalidParams
  4111  	}
  4112  	return nil
  4113  }
  4114  
  4115  // SetClientToken sets the ClientToken field's value.
  4116  func (s *AcknowledgeThirdPartyJobInput) SetClientToken(v string) *AcknowledgeThirdPartyJobInput {
  4117  	s.ClientToken = &v
  4118  	return s
  4119  }
  4120  
  4121  // SetJobId sets the JobId field's value.
  4122  func (s *AcknowledgeThirdPartyJobInput) SetJobId(v string) *AcknowledgeThirdPartyJobInput {
  4123  	s.JobId = &v
  4124  	return s
  4125  }
  4126  
  4127  // SetNonce sets the Nonce field's value.
  4128  func (s *AcknowledgeThirdPartyJobInput) SetNonce(v string) *AcknowledgeThirdPartyJobInput {
  4129  	s.Nonce = &v
  4130  	return s
  4131  }
  4132  
  4133  // Represents the output of an AcknowledgeThirdPartyJob action.
  4134  type AcknowledgeThirdPartyJobOutput struct {
  4135  	_ struct{} `type:"structure"`
  4136  
  4137  	// The status information for the third party job, if any.
  4138  	Status *string `locationName:"status" type:"string" enum:"JobStatus"`
  4139  }
  4140  
  4141  // String returns the string representation.
  4142  //
  4143  // API parameter values that are decorated as "sensitive" in the API will not
  4144  // be included in the string output. The member name will be present, but the
  4145  // value will be replaced with "sensitive".
  4146  func (s AcknowledgeThirdPartyJobOutput) String() string {
  4147  	return awsutil.Prettify(s)
  4148  }
  4149  
  4150  // GoString returns the string representation.
  4151  //
  4152  // API parameter values that are decorated as "sensitive" in the API will not
  4153  // be included in the string output. The member name will be present, but the
  4154  // value will be replaced with "sensitive".
  4155  func (s AcknowledgeThirdPartyJobOutput) GoString() string {
  4156  	return s.String()
  4157  }
  4158  
  4159  // SetStatus sets the Status field's value.
  4160  func (s *AcknowledgeThirdPartyJobOutput) SetStatus(v string) *AcknowledgeThirdPartyJobOutput {
  4161  	s.Status = &v
  4162  	return s
  4163  }
  4164  
  4165  // Represents information about an action configuration.
  4166  type ActionConfiguration struct {
  4167  	_ struct{} `type:"structure"`
  4168  
  4169  	// The configuration data for the action.
  4170  	Configuration map[string]*string `locationName:"configuration" type:"map"`
  4171  }
  4172  
  4173  // String returns the string representation.
  4174  //
  4175  // API parameter values that are decorated as "sensitive" in the API will not
  4176  // be included in the string output. The member name will be present, but the
  4177  // value will be replaced with "sensitive".
  4178  func (s ActionConfiguration) String() string {
  4179  	return awsutil.Prettify(s)
  4180  }
  4181  
  4182  // GoString returns the string representation.
  4183  //
  4184  // API parameter values that are decorated as "sensitive" in the API will not
  4185  // be included in the string output. The member name will be present, but the
  4186  // value will be replaced with "sensitive".
  4187  func (s ActionConfiguration) GoString() string {
  4188  	return s.String()
  4189  }
  4190  
  4191  // SetConfiguration sets the Configuration field's value.
  4192  func (s *ActionConfiguration) SetConfiguration(v map[string]*string) *ActionConfiguration {
  4193  	s.Configuration = v
  4194  	return s
  4195  }
  4196  
  4197  // Represents information about an action configuration property.
  4198  type ActionConfigurationProperty struct {
  4199  	_ struct{} `type:"structure"`
  4200  
  4201  	// The description of the action configuration property that is displayed to
  4202  	// users.
  4203  	Description *string `locationName:"description" min:"1" type:"string"`
  4204  
  4205  	// Whether the configuration property is a key.
  4206  	//
  4207  	// Key is a required field
  4208  	Key *bool `locationName:"key" type:"boolean" required:"true"`
  4209  
  4210  	// The name of the action configuration property.
  4211  	//
  4212  	// Name is a required field
  4213  	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
  4214  
  4215  	// Indicates that the property is used with PollForJobs. When creating a custom
  4216  	// action, an action can have up to one queryable property. If it has one, that
  4217  	// property must be both required and not secret.
  4218  	//
  4219  	// If you create a pipeline with a custom action type, and that custom action
  4220  	// contains a queryable property, the value for that configuration property
  4221  	// is subject to other restrictions. The value must be less than or equal to
  4222  	// twenty (20) characters. The value can contain only alphanumeric characters,
  4223  	// underscores, and hyphens.
  4224  	Queryable *bool `locationName:"queryable" type:"boolean"`
  4225  
  4226  	// Whether the configuration property is a required value.
  4227  	//
  4228  	// Required is a required field
  4229  	Required *bool `locationName:"required" type:"boolean" required:"true"`
  4230  
  4231  	// Whether the configuration property is secret. Secrets are hidden from all
  4232  	// calls except for GetJobDetails, GetThirdPartyJobDetails, PollForJobs, and
  4233  	// PollForThirdPartyJobs.
  4234  	//
  4235  	// When updating a pipeline, passing * * * * * without changing any other values
  4236  	// of the action preserves the previous value of the secret.
  4237  	//
  4238  	// Secret is a required field
  4239  	Secret *bool `locationName:"secret" type:"boolean" required:"true"`
  4240  
  4241  	// The type of the configuration property.
  4242  	Type *string `locationName:"type" type:"string" enum:"ActionConfigurationPropertyType"`
  4243  }
  4244  
  4245  // String 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 ActionConfigurationProperty) String() string {
  4251  	return awsutil.Prettify(s)
  4252  }
  4253  
  4254  // GoString returns the string representation.
  4255  //
  4256  // API parameter values that are decorated as "sensitive" in the API will not
  4257  // be included in the string output. The member name will be present, but the
  4258  // value will be replaced with "sensitive".
  4259  func (s ActionConfigurationProperty) GoString() string {
  4260  	return s.String()
  4261  }
  4262  
  4263  // Validate inspects the fields of the type to determine if they are valid.
  4264  func (s *ActionConfigurationProperty) Validate() error {
  4265  	invalidParams := request.ErrInvalidParams{Context: "ActionConfigurationProperty"}
  4266  	if s.Description != nil && len(*s.Description) < 1 {
  4267  		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
  4268  	}
  4269  	if s.Key == nil {
  4270  		invalidParams.Add(request.NewErrParamRequired("Key"))
  4271  	}
  4272  	if s.Name == nil {
  4273  		invalidParams.Add(request.NewErrParamRequired("Name"))
  4274  	}
  4275  	if s.Name != nil && len(*s.Name) < 1 {
  4276  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
  4277  	}
  4278  	if s.Required == nil {
  4279  		invalidParams.Add(request.NewErrParamRequired("Required"))
  4280  	}
  4281  	if s.Secret == nil {
  4282  		invalidParams.Add(request.NewErrParamRequired("Secret"))
  4283  	}
  4284  
  4285  	if invalidParams.Len() > 0 {
  4286  		return invalidParams
  4287  	}
  4288  	return nil
  4289  }
  4290  
  4291  // SetDescription sets the Description field's value.
  4292  func (s *ActionConfigurationProperty) SetDescription(v string) *ActionConfigurationProperty {
  4293  	s.Description = &v
  4294  	return s
  4295  }
  4296  
  4297  // SetKey sets the Key field's value.
  4298  func (s *ActionConfigurationProperty) SetKey(v bool) *ActionConfigurationProperty {
  4299  	s.Key = &v
  4300  	return s
  4301  }
  4302  
  4303  // SetName sets the Name field's value.
  4304  func (s *ActionConfigurationProperty) SetName(v string) *ActionConfigurationProperty {
  4305  	s.Name = &v
  4306  	return s
  4307  }
  4308  
  4309  // SetQueryable sets the Queryable field's value.
  4310  func (s *ActionConfigurationProperty) SetQueryable(v bool) *ActionConfigurationProperty {
  4311  	s.Queryable = &v
  4312  	return s
  4313  }
  4314  
  4315  // SetRequired sets the Required field's value.
  4316  func (s *ActionConfigurationProperty) SetRequired(v bool) *ActionConfigurationProperty {
  4317  	s.Required = &v
  4318  	return s
  4319  }
  4320  
  4321  // SetSecret sets the Secret field's value.
  4322  func (s *ActionConfigurationProperty) SetSecret(v bool) *ActionConfigurationProperty {
  4323  	s.Secret = &v
  4324  	return s
  4325  }
  4326  
  4327  // SetType sets the Type field's value.
  4328  func (s *ActionConfigurationProperty) SetType(v string) *ActionConfigurationProperty {
  4329  	s.Type = &v
  4330  	return s
  4331  }
  4332  
  4333  // Represents the context of an action in the stage of a pipeline to a job worker.
  4334  type ActionContext struct {
  4335  	_ struct{} `type:"structure"`
  4336  
  4337  	// The system-generated unique ID that corresponds to an action's execution.
  4338  	ActionExecutionId *string `locationName:"actionExecutionId" type:"string"`
  4339  
  4340  	// The name of the action in the context of a job.
  4341  	Name *string `locationName:"name" min:"1" type:"string"`
  4342  }
  4343  
  4344  // String returns the string representation.
  4345  //
  4346  // API parameter values that are decorated as "sensitive" in the API will not
  4347  // be included in the string output. The member name will be present, but the
  4348  // value will be replaced with "sensitive".
  4349  func (s ActionContext) String() string {
  4350  	return awsutil.Prettify(s)
  4351  }
  4352  
  4353  // GoString returns the string representation.
  4354  //
  4355  // API parameter values that are decorated as "sensitive" in the API will not
  4356  // be included in the string output. The member name will be present, but the
  4357  // value will be replaced with "sensitive".
  4358  func (s ActionContext) GoString() string {
  4359  	return s.String()
  4360  }
  4361  
  4362  // SetActionExecutionId sets the ActionExecutionId field's value.
  4363  func (s *ActionContext) SetActionExecutionId(v string) *ActionContext {
  4364  	s.ActionExecutionId = &v
  4365  	return s
  4366  }
  4367  
  4368  // SetName sets the Name field's value.
  4369  func (s *ActionContext) SetName(v string) *ActionContext {
  4370  	s.Name = &v
  4371  	return s
  4372  }
  4373  
  4374  // Represents information about an action declaration.
  4375  type ActionDeclaration struct {
  4376  	_ struct{} `type:"structure"`
  4377  
  4378  	// Specifies the action type and the provider of the action.
  4379  	//
  4380  	// ActionTypeId is a required field
  4381  	ActionTypeId *ActionTypeId `locationName:"actionTypeId" type:"structure" required:"true"`
  4382  
  4383  	// The action's configuration. These are key-value pairs that specify input
  4384  	// values for an action. For more information, see Action Structure Requirements
  4385  	// in CodePipeline (https://docs.aws.amazon.com/codepipeline/latest/userguide/reference-pipeline-structure.html#action-requirements).
  4386  	// For the list of configuration properties for the AWS CloudFormation action
  4387  	// type in CodePipeline, see Configuration Properties Reference (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/continuous-delivery-codepipeline-action-reference.html)
  4388  	// in the AWS CloudFormation User Guide. For template snippets with examples,
  4389  	// see Using Parameter Override Functions with CodePipeline Pipelines (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/continuous-delivery-codepipeline-parameter-override-functions.html)
  4390  	// in the AWS CloudFormation User Guide.
  4391  	//
  4392  	// The values can be represented in either JSON or YAML format. For example,
  4393  	// the JSON configuration item format is as follows:
  4394  	//
  4395  	// JSON:
  4396  	//
  4397  	// "Configuration" : { Key : Value },
  4398  	Configuration map[string]*string `locationName:"configuration" type:"map"`
  4399  
  4400  	// The name or ID of the artifact consumed by the action, such as a test or
  4401  	// build artifact.
  4402  	InputArtifacts []*InputArtifact `locationName:"inputArtifacts" type:"list"`
  4403  
  4404  	// The action declaration's name.
  4405  	//
  4406  	// Name is a required field
  4407  	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
  4408  
  4409  	// The variable namespace associated with the action. All variables produced
  4410  	// as output by this action fall under this namespace.
  4411  	Namespace *string `locationName:"namespace" min:"1" type:"string"`
  4412  
  4413  	// The name or ID of the result of the action declaration, such as a test or
  4414  	// build artifact.
  4415  	OutputArtifacts []*OutputArtifact `locationName:"outputArtifacts" type:"list"`
  4416  
  4417  	// The action declaration's AWS Region, such as us-east-1.
  4418  	Region *string `locationName:"region" min:"4" type:"string"`
  4419  
  4420  	// The ARN of the IAM service role that performs the declared action. This is
  4421  	// assumed through the roleArn for the pipeline.
  4422  	RoleArn *string `locationName:"roleArn" type:"string"`
  4423  
  4424  	// The order in which actions are run.
  4425  	RunOrder *int64 `locationName:"runOrder" min:"1" type:"integer"`
  4426  }
  4427  
  4428  // String returns the string representation.
  4429  //
  4430  // API parameter values that are decorated as "sensitive" in the API will not
  4431  // be included in the string output. The member name will be present, but the
  4432  // value will be replaced with "sensitive".
  4433  func (s ActionDeclaration) String() string {
  4434  	return awsutil.Prettify(s)
  4435  }
  4436  
  4437  // GoString returns the string representation.
  4438  //
  4439  // API parameter values that are decorated as "sensitive" in the API will not
  4440  // be included in the string output. The member name will be present, but the
  4441  // value will be replaced with "sensitive".
  4442  func (s ActionDeclaration) GoString() string {
  4443  	return s.String()
  4444  }
  4445  
  4446  // Validate inspects the fields of the type to determine if they are valid.
  4447  func (s *ActionDeclaration) Validate() error {
  4448  	invalidParams := request.ErrInvalidParams{Context: "ActionDeclaration"}
  4449  	if s.ActionTypeId == nil {
  4450  		invalidParams.Add(request.NewErrParamRequired("ActionTypeId"))
  4451  	}
  4452  	if s.Name == nil {
  4453  		invalidParams.Add(request.NewErrParamRequired("Name"))
  4454  	}
  4455  	if s.Name != nil && len(*s.Name) < 1 {
  4456  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
  4457  	}
  4458  	if s.Namespace != nil && len(*s.Namespace) < 1 {
  4459  		invalidParams.Add(request.NewErrParamMinLen("Namespace", 1))
  4460  	}
  4461  	if s.Region != nil && len(*s.Region) < 4 {
  4462  		invalidParams.Add(request.NewErrParamMinLen("Region", 4))
  4463  	}
  4464  	if s.RunOrder != nil && *s.RunOrder < 1 {
  4465  		invalidParams.Add(request.NewErrParamMinValue("RunOrder", 1))
  4466  	}
  4467  	if s.ActionTypeId != nil {
  4468  		if err := s.ActionTypeId.Validate(); err != nil {
  4469  			invalidParams.AddNested("ActionTypeId", err.(request.ErrInvalidParams))
  4470  		}
  4471  	}
  4472  	if s.InputArtifacts != nil {
  4473  		for i, v := range s.InputArtifacts {
  4474  			if v == nil {
  4475  				continue
  4476  			}
  4477  			if err := v.Validate(); err != nil {
  4478  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InputArtifacts", i), err.(request.ErrInvalidParams))
  4479  			}
  4480  		}
  4481  	}
  4482  	if s.OutputArtifacts != nil {
  4483  		for i, v := range s.OutputArtifacts {
  4484  			if v == nil {
  4485  				continue
  4486  			}
  4487  			if err := v.Validate(); err != nil {
  4488  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OutputArtifacts", i), err.(request.ErrInvalidParams))
  4489  			}
  4490  		}
  4491  	}
  4492  
  4493  	if invalidParams.Len() > 0 {
  4494  		return invalidParams
  4495  	}
  4496  	return nil
  4497  }
  4498  
  4499  // SetActionTypeId sets the ActionTypeId field's value.
  4500  func (s *ActionDeclaration) SetActionTypeId(v *ActionTypeId) *ActionDeclaration {
  4501  	s.ActionTypeId = v
  4502  	return s
  4503  }
  4504  
  4505  // SetConfiguration sets the Configuration field's value.
  4506  func (s *ActionDeclaration) SetConfiguration(v map[string]*string) *ActionDeclaration {
  4507  	s.Configuration = v
  4508  	return s
  4509  }
  4510  
  4511  // SetInputArtifacts sets the InputArtifacts field's value.
  4512  func (s *ActionDeclaration) SetInputArtifacts(v []*InputArtifact) *ActionDeclaration {
  4513  	s.InputArtifacts = v
  4514  	return s
  4515  }
  4516  
  4517  // SetName sets the Name field's value.
  4518  func (s *ActionDeclaration) SetName(v string) *ActionDeclaration {
  4519  	s.Name = &v
  4520  	return s
  4521  }
  4522  
  4523  // SetNamespace sets the Namespace field's value.
  4524  func (s *ActionDeclaration) SetNamespace(v string) *ActionDeclaration {
  4525  	s.Namespace = &v
  4526  	return s
  4527  }
  4528  
  4529  // SetOutputArtifacts sets the OutputArtifacts field's value.
  4530  func (s *ActionDeclaration) SetOutputArtifacts(v []*OutputArtifact) *ActionDeclaration {
  4531  	s.OutputArtifacts = v
  4532  	return s
  4533  }
  4534  
  4535  // SetRegion sets the Region field's value.
  4536  func (s *ActionDeclaration) SetRegion(v string) *ActionDeclaration {
  4537  	s.Region = &v
  4538  	return s
  4539  }
  4540  
  4541  // SetRoleArn sets the RoleArn field's value.
  4542  func (s *ActionDeclaration) SetRoleArn(v string) *ActionDeclaration {
  4543  	s.RoleArn = &v
  4544  	return s
  4545  }
  4546  
  4547  // SetRunOrder sets the RunOrder field's value.
  4548  func (s *ActionDeclaration) SetRunOrder(v int64) *ActionDeclaration {
  4549  	s.RunOrder = &v
  4550  	return s
  4551  }
  4552  
  4553  // Represents information about the run of an action.
  4554  type ActionExecution struct {
  4555  	_ struct{} `type:"structure"`
  4556  
  4557  	// ID of the workflow action execution in the current stage. Use the GetPipelineState
  4558  	// action to retrieve the current action execution details of the current stage.
  4559  	//
  4560  	// For older executions, this field might be empty. The action execution ID
  4561  	// is available for executions run on or after March 2020.
  4562  	ActionExecutionId *string `locationName:"actionExecutionId" type:"string"`
  4563  
  4564  	// The details of an error returned by a URL external to AWS.
  4565  	ErrorDetails *ErrorDetails `locationName:"errorDetails" type:"structure"`
  4566  
  4567  	// The external ID of the run of the action.
  4568  	ExternalExecutionId *string `locationName:"externalExecutionId" min:"1" type:"string"`
  4569  
  4570  	// The URL of a resource external to AWS that is used when running the action
  4571  	// (for example, an external repository URL).
  4572  	ExternalExecutionUrl *string `locationName:"externalExecutionUrl" min:"1" type:"string"`
  4573  
  4574  	// The last status change of the action.
  4575  	LastStatusChange *time.Time `locationName:"lastStatusChange" type:"timestamp"`
  4576  
  4577  	// The ARN of the user who last changed the pipeline.
  4578  	LastUpdatedBy *string `locationName:"lastUpdatedBy" type:"string"`
  4579  
  4580  	// A percentage of completeness of the action as it runs.
  4581  	PercentComplete *int64 `locationName:"percentComplete" type:"integer"`
  4582  
  4583  	// The status of the action, or for a completed action, the last status of the
  4584  	// action.
  4585  	Status *string `locationName:"status" type:"string" enum:"ActionExecutionStatus"`
  4586  
  4587  	// A summary of the run of the action.
  4588  	Summary *string `locationName:"summary" min:"1" type:"string"`
  4589  
  4590  	// The system-generated token used to identify a unique approval request. The
  4591  	// token for each open approval request can be obtained using the GetPipelineState
  4592  	// command. It is used to validate that the approval request corresponding to
  4593  	// this token is still valid.
  4594  	Token *string `locationName:"token" type:"string"`
  4595  }
  4596  
  4597  // String returns the string representation.
  4598  //
  4599  // API parameter values that are decorated as "sensitive" in the API will not
  4600  // be included in the string output. The member name will be present, but the
  4601  // value will be replaced with "sensitive".
  4602  func (s ActionExecution) String() string {
  4603  	return awsutil.Prettify(s)
  4604  }
  4605  
  4606  // GoString returns the string representation.
  4607  //
  4608  // API parameter values that are decorated as "sensitive" in the API will not
  4609  // be included in the string output. The member name will be present, but the
  4610  // value will be replaced with "sensitive".
  4611  func (s ActionExecution) GoString() string {
  4612  	return s.String()
  4613  }
  4614  
  4615  // SetActionExecutionId sets the ActionExecutionId field's value.
  4616  func (s *ActionExecution) SetActionExecutionId(v string) *ActionExecution {
  4617  	s.ActionExecutionId = &v
  4618  	return s
  4619  }
  4620  
  4621  // SetErrorDetails sets the ErrorDetails field's value.
  4622  func (s *ActionExecution) SetErrorDetails(v *ErrorDetails) *ActionExecution {
  4623  	s.ErrorDetails = v
  4624  	return s
  4625  }
  4626  
  4627  // SetExternalExecutionId sets the ExternalExecutionId field's value.
  4628  func (s *ActionExecution) SetExternalExecutionId(v string) *ActionExecution {
  4629  	s.ExternalExecutionId = &v
  4630  	return s
  4631  }
  4632  
  4633  // SetExternalExecutionUrl sets the ExternalExecutionUrl field's value.
  4634  func (s *ActionExecution) SetExternalExecutionUrl(v string) *ActionExecution {
  4635  	s.ExternalExecutionUrl = &v
  4636  	return s
  4637  }
  4638  
  4639  // SetLastStatusChange sets the LastStatusChange field's value.
  4640  func (s *ActionExecution) SetLastStatusChange(v time.Time) *ActionExecution {
  4641  	s.LastStatusChange = &v
  4642  	return s
  4643  }
  4644  
  4645  // SetLastUpdatedBy sets the LastUpdatedBy field's value.
  4646  func (s *ActionExecution) SetLastUpdatedBy(v string) *ActionExecution {
  4647  	s.LastUpdatedBy = &v
  4648  	return s
  4649  }
  4650  
  4651  // SetPercentComplete sets the PercentComplete field's value.
  4652  func (s *ActionExecution) SetPercentComplete(v int64) *ActionExecution {
  4653  	s.PercentComplete = &v
  4654  	return s
  4655  }
  4656  
  4657  // SetStatus sets the Status field's value.
  4658  func (s *ActionExecution) SetStatus(v string) *ActionExecution {
  4659  	s.Status = &v
  4660  	return s
  4661  }
  4662  
  4663  // SetSummary sets the Summary field's value.
  4664  func (s *ActionExecution) SetSummary(v string) *ActionExecution {
  4665  	s.Summary = &v
  4666  	return s
  4667  }
  4668  
  4669  // SetToken sets the Token field's value.
  4670  func (s *ActionExecution) SetToken(v string) *ActionExecution {
  4671  	s.Token = &v
  4672  	return s
  4673  }
  4674  
  4675  // Returns information about an execution of an action, including the action
  4676  // execution ID, and the name, version, and timing of the action.
  4677  type ActionExecutionDetail struct {
  4678  	_ struct{} `type:"structure"`
  4679  
  4680  	// The action execution ID.
  4681  	ActionExecutionId *string `locationName:"actionExecutionId" type:"string"`
  4682  
  4683  	// The name of the action.
  4684  	ActionName *string `locationName:"actionName" min:"1" type:"string"`
  4685  
  4686  	// Input details for the action execution, such as role ARN, Region, and input
  4687  	// artifacts.
  4688  	Input *ActionExecutionInput `locationName:"input" type:"structure"`
  4689  
  4690  	// The last update time of the action execution.
  4691  	LastUpdateTime *time.Time `locationName:"lastUpdateTime" type:"timestamp"`
  4692  
  4693  	// Output details for the action execution, such as the action execution result.
  4694  	Output *ActionExecutionOutput `locationName:"output" type:"structure"`
  4695  
  4696  	// The pipeline execution ID for the action execution.
  4697  	PipelineExecutionId *string `locationName:"pipelineExecutionId" type:"string"`
  4698  
  4699  	// The version of the pipeline where the action was run.
  4700  	PipelineVersion *int64 `locationName:"pipelineVersion" min:"1" type:"integer"`
  4701  
  4702  	// The name of the stage that contains the action.
  4703  	StageName *string `locationName:"stageName" min:"1" type:"string"`
  4704  
  4705  	// The start time of the action execution.
  4706  	StartTime *time.Time `locationName:"startTime" type:"timestamp"`
  4707  
  4708  	// The status of the action execution. Status categories are InProgress, Succeeded,
  4709  	// and Failed.
  4710  	Status *string `locationName:"status" type:"string" enum:"ActionExecutionStatus"`
  4711  }
  4712  
  4713  // String returns the string representation.
  4714  //
  4715  // API parameter values that are decorated as "sensitive" in the API will not
  4716  // be included in the string output. The member name will be present, but the
  4717  // value will be replaced with "sensitive".
  4718  func (s ActionExecutionDetail) String() string {
  4719  	return awsutil.Prettify(s)
  4720  }
  4721  
  4722  // GoString returns the string representation.
  4723  //
  4724  // API parameter values that are decorated as "sensitive" in the API will not
  4725  // be included in the string output. The member name will be present, but the
  4726  // value will be replaced with "sensitive".
  4727  func (s ActionExecutionDetail) GoString() string {
  4728  	return s.String()
  4729  }
  4730  
  4731  // SetActionExecutionId sets the ActionExecutionId field's value.
  4732  func (s *ActionExecutionDetail) SetActionExecutionId(v string) *ActionExecutionDetail {
  4733  	s.ActionExecutionId = &v
  4734  	return s
  4735  }
  4736  
  4737  // SetActionName sets the ActionName field's value.
  4738  func (s *ActionExecutionDetail) SetActionName(v string) *ActionExecutionDetail {
  4739  	s.ActionName = &v
  4740  	return s
  4741  }
  4742  
  4743  // SetInput sets the Input field's value.
  4744  func (s *ActionExecutionDetail) SetInput(v *ActionExecutionInput) *ActionExecutionDetail {
  4745  	s.Input = v
  4746  	return s
  4747  }
  4748  
  4749  // SetLastUpdateTime sets the LastUpdateTime field's value.
  4750  func (s *ActionExecutionDetail) SetLastUpdateTime(v time.Time) *ActionExecutionDetail {
  4751  	s.LastUpdateTime = &v
  4752  	return s
  4753  }
  4754  
  4755  // SetOutput sets the Output field's value.
  4756  func (s *ActionExecutionDetail) SetOutput(v *ActionExecutionOutput) *ActionExecutionDetail {
  4757  	s.Output = v
  4758  	return s
  4759  }
  4760  
  4761  // SetPipelineExecutionId sets the PipelineExecutionId field's value.
  4762  func (s *ActionExecutionDetail) SetPipelineExecutionId(v string) *ActionExecutionDetail {
  4763  	s.PipelineExecutionId = &v
  4764  	return s
  4765  }
  4766  
  4767  // SetPipelineVersion sets the PipelineVersion field's value.
  4768  func (s *ActionExecutionDetail) SetPipelineVersion(v int64) *ActionExecutionDetail {
  4769  	s.PipelineVersion = &v
  4770  	return s
  4771  }
  4772  
  4773  // SetStageName sets the StageName field's value.
  4774  func (s *ActionExecutionDetail) SetStageName(v string) *ActionExecutionDetail {
  4775  	s.StageName = &v
  4776  	return s
  4777  }
  4778  
  4779  // SetStartTime sets the StartTime field's value.
  4780  func (s *ActionExecutionDetail) SetStartTime(v time.Time) *ActionExecutionDetail {
  4781  	s.StartTime = &v
  4782  	return s
  4783  }
  4784  
  4785  // SetStatus sets the Status field's value.
  4786  func (s *ActionExecutionDetail) SetStatus(v string) *ActionExecutionDetail {
  4787  	s.Status = &v
  4788  	return s
  4789  }
  4790  
  4791  // Filter values for the action execution.
  4792  type ActionExecutionFilter struct {
  4793  	_ struct{} `type:"structure"`
  4794  
  4795  	// The pipeline execution ID used to filter action execution history.
  4796  	PipelineExecutionId *string `locationName:"pipelineExecutionId" type:"string"`
  4797  }
  4798  
  4799  // String returns the string representation.
  4800  //
  4801  // API parameter values that are decorated as "sensitive" in the API will not
  4802  // be included in the string output. The member name will be present, but the
  4803  // value will be replaced with "sensitive".
  4804  func (s ActionExecutionFilter) String() string {
  4805  	return awsutil.Prettify(s)
  4806  }
  4807  
  4808  // GoString returns the string representation.
  4809  //
  4810  // API parameter values that are decorated as "sensitive" in the API will not
  4811  // be included in the string output. The member name will be present, but the
  4812  // value will be replaced with "sensitive".
  4813  func (s ActionExecutionFilter) GoString() string {
  4814  	return s.String()
  4815  }
  4816  
  4817  // SetPipelineExecutionId sets the PipelineExecutionId field's value.
  4818  func (s *ActionExecutionFilter) SetPipelineExecutionId(v string) *ActionExecutionFilter {
  4819  	s.PipelineExecutionId = &v
  4820  	return s
  4821  }
  4822  
  4823  // Input information used for an action execution.
  4824  type ActionExecutionInput struct {
  4825  	_ struct{} `type:"structure"`
  4826  
  4827  	// Represents information about an action type.
  4828  	ActionTypeId *ActionTypeId `locationName:"actionTypeId" type:"structure"`
  4829  
  4830  	// Configuration data for an action execution.
  4831  	Configuration map[string]*string `locationName:"configuration" type:"map"`
  4832  
  4833  	// Details of input artifacts of the action that correspond to the action execution.
  4834  	InputArtifacts []*ArtifactDetail `locationName:"inputArtifacts" type:"list"`
  4835  
  4836  	// The variable namespace associated with the action. All variables produced
  4837  	// as output by this action fall under this namespace.
  4838  	Namespace *string `locationName:"namespace" min:"1" type:"string"`
  4839  
  4840  	// The AWS Region for the action, such as us-east-1.
  4841  	Region *string `locationName:"region" min:"4" type:"string"`
  4842  
  4843  	// Configuration data for an action execution with all variable references replaced
  4844  	// with their real values for the execution.
  4845  	ResolvedConfiguration map[string]*string `locationName:"resolvedConfiguration" type:"map"`
  4846  
  4847  	// The ARN of the IAM service role that performs the declared action. This is
  4848  	// assumed through the roleArn for the pipeline.
  4849  	RoleArn *string `locationName:"roleArn" type:"string"`
  4850  }
  4851  
  4852  // String returns the string representation.
  4853  //
  4854  // API parameter values that are decorated as "sensitive" in the API will not
  4855  // be included in the string output. The member name will be present, but the
  4856  // value will be replaced with "sensitive".
  4857  func (s ActionExecutionInput) String() string {
  4858  	return awsutil.Prettify(s)
  4859  }
  4860  
  4861  // GoString returns the string representation.
  4862  //
  4863  // API parameter values that are decorated as "sensitive" in the API will not
  4864  // be included in the string output. The member name will be present, but the
  4865  // value will be replaced with "sensitive".
  4866  func (s ActionExecutionInput) GoString() string {
  4867  	return s.String()
  4868  }
  4869  
  4870  // SetActionTypeId sets the ActionTypeId field's value.
  4871  func (s *ActionExecutionInput) SetActionTypeId(v *ActionTypeId) *ActionExecutionInput {
  4872  	s.ActionTypeId = v
  4873  	return s
  4874  }
  4875  
  4876  // SetConfiguration sets the Configuration field's value.
  4877  func (s *ActionExecutionInput) SetConfiguration(v map[string]*string) *ActionExecutionInput {
  4878  	s.Configuration = v
  4879  	return s
  4880  }
  4881  
  4882  // SetInputArtifacts sets the InputArtifacts field's value.
  4883  func (s *ActionExecutionInput) SetInputArtifacts(v []*ArtifactDetail) *ActionExecutionInput {
  4884  	s.InputArtifacts = v
  4885  	return s
  4886  }
  4887  
  4888  // SetNamespace sets the Namespace field's value.
  4889  func (s *ActionExecutionInput) SetNamespace(v string) *ActionExecutionInput {
  4890  	s.Namespace = &v
  4891  	return s
  4892  }
  4893  
  4894  // SetRegion sets the Region field's value.
  4895  func (s *ActionExecutionInput) SetRegion(v string) *ActionExecutionInput {
  4896  	s.Region = &v
  4897  	return s
  4898  }
  4899  
  4900  // SetResolvedConfiguration sets the ResolvedConfiguration field's value.
  4901  func (s *ActionExecutionInput) SetResolvedConfiguration(v map[string]*string) *ActionExecutionInput {
  4902  	s.ResolvedConfiguration = v
  4903  	return s
  4904  }
  4905  
  4906  // SetRoleArn sets the RoleArn field's value.
  4907  func (s *ActionExecutionInput) SetRoleArn(v string) *ActionExecutionInput {
  4908  	s.RoleArn = &v
  4909  	return s
  4910  }
  4911  
  4912  // Output details listed for an action execution, such as the action execution
  4913  // result.
  4914  type ActionExecutionOutput struct {
  4915  	_ struct{} `type:"structure"`
  4916  
  4917  	// Execution result information listed in the output details for an action execution.
  4918  	ExecutionResult *ActionExecutionResult `locationName:"executionResult" type:"structure"`
  4919  
  4920  	// Details of output artifacts of the action that correspond to the action execution.
  4921  	OutputArtifacts []*ArtifactDetail `locationName:"outputArtifacts" type:"list"`
  4922  
  4923  	// The outputVariables field shows the key-value pairs that were output as part
  4924  	// of that execution.
  4925  	OutputVariables map[string]*string `locationName:"outputVariables" type:"map"`
  4926  }
  4927  
  4928  // String returns the string representation.
  4929  //
  4930  // API parameter values that are decorated as "sensitive" in the API will not
  4931  // be included in the string output. The member name will be present, but the
  4932  // value will be replaced with "sensitive".
  4933  func (s ActionExecutionOutput) String() string {
  4934  	return awsutil.Prettify(s)
  4935  }
  4936  
  4937  // GoString returns the string representation.
  4938  //
  4939  // API parameter values that are decorated as "sensitive" in the API will not
  4940  // be included in the string output. The member name will be present, but the
  4941  // value will be replaced with "sensitive".
  4942  func (s ActionExecutionOutput) GoString() string {
  4943  	return s.String()
  4944  }
  4945  
  4946  // SetExecutionResult sets the ExecutionResult field's value.
  4947  func (s *ActionExecutionOutput) SetExecutionResult(v *ActionExecutionResult) *ActionExecutionOutput {
  4948  	s.ExecutionResult = v
  4949  	return s
  4950  }
  4951  
  4952  // SetOutputArtifacts sets the OutputArtifacts field's value.
  4953  func (s *ActionExecutionOutput) SetOutputArtifacts(v []*ArtifactDetail) *ActionExecutionOutput {
  4954  	s.OutputArtifacts = v
  4955  	return s
  4956  }
  4957  
  4958  // SetOutputVariables sets the OutputVariables field's value.
  4959  func (s *ActionExecutionOutput) SetOutputVariables(v map[string]*string) *ActionExecutionOutput {
  4960  	s.OutputVariables = v
  4961  	return s
  4962  }
  4963  
  4964  // Execution result information, such as the external execution ID.
  4965  type ActionExecutionResult struct {
  4966  	_ struct{} `type:"structure"`
  4967  
  4968  	// The action provider's external ID for the action execution.
  4969  	ExternalExecutionId *string `locationName:"externalExecutionId" type:"string"`
  4970  
  4971  	// The action provider's summary for the action execution.
  4972  	ExternalExecutionSummary *string `locationName:"externalExecutionSummary" type:"string"`
  4973  
  4974  	// The deepest external link to the external resource (for example, a repository
  4975  	// URL or deployment endpoint) that is used when running the action.
  4976  	ExternalExecutionUrl *string `locationName:"externalExecutionUrl" min:"1" type:"string"`
  4977  }
  4978  
  4979  // String returns the string representation.
  4980  //
  4981  // API parameter values that are decorated as "sensitive" in the API will not
  4982  // be included in the string output. The member name will be present, but the
  4983  // value will be replaced with "sensitive".
  4984  func (s ActionExecutionResult) String() string {
  4985  	return awsutil.Prettify(s)
  4986  }
  4987  
  4988  // GoString returns the string representation.
  4989  //
  4990  // API parameter values that are decorated as "sensitive" in the API will not
  4991  // be included in the string output. The member name will be present, but the
  4992  // value will be replaced with "sensitive".
  4993  func (s ActionExecutionResult) GoString() string {
  4994  	return s.String()
  4995  }
  4996  
  4997  // SetExternalExecutionId sets the ExternalExecutionId field's value.
  4998  func (s *ActionExecutionResult) SetExternalExecutionId(v string) *ActionExecutionResult {
  4999  	s.ExternalExecutionId = &v
  5000  	return s
  5001  }
  5002  
  5003  // SetExternalExecutionSummary sets the ExternalExecutionSummary field's value.
  5004  func (s *ActionExecutionResult) SetExternalExecutionSummary(v string) *ActionExecutionResult {
  5005  	s.ExternalExecutionSummary = &v
  5006  	return s
  5007  }
  5008  
  5009  // SetExternalExecutionUrl sets the ExternalExecutionUrl field's value.
  5010  func (s *ActionExecutionResult) SetExternalExecutionUrl(v string) *ActionExecutionResult {
  5011  	s.ExternalExecutionUrl = &v
  5012  	return s
  5013  }
  5014  
  5015  // The specified action cannot be found.
  5016  type ActionNotFoundException struct {
  5017  	_            struct{}                  `type:"structure"`
  5018  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  5019  
  5020  	Message_ *string `locationName:"message" type:"string"`
  5021  }
  5022  
  5023  // String returns the string representation.
  5024  //
  5025  // API parameter values that are decorated as "sensitive" in the API will not
  5026  // be included in the string output. The member name will be present, but the
  5027  // value will be replaced with "sensitive".
  5028  func (s ActionNotFoundException) String() string {
  5029  	return awsutil.Prettify(s)
  5030  }
  5031  
  5032  // GoString returns the string representation.
  5033  //
  5034  // API parameter values that are decorated as "sensitive" in the API will not
  5035  // be included in the string output. The member name will be present, but the
  5036  // value will be replaced with "sensitive".
  5037  func (s ActionNotFoundException) GoString() string {
  5038  	return s.String()
  5039  }
  5040  
  5041  func newErrorActionNotFoundException(v protocol.ResponseMetadata) error {
  5042  	return &ActionNotFoundException{
  5043  		RespMetadata: v,
  5044  	}
  5045  }
  5046  
  5047  // Code returns the exception type name.
  5048  func (s *ActionNotFoundException) Code() string {
  5049  	return "ActionNotFoundException"
  5050  }
  5051  
  5052  // Message returns the exception's message.
  5053  func (s *ActionNotFoundException) Message() string {
  5054  	if s.Message_ != nil {
  5055  		return *s.Message_
  5056  	}
  5057  	return ""
  5058  }
  5059  
  5060  // OrigErr always returns nil, satisfies awserr.Error interface.
  5061  func (s *ActionNotFoundException) OrigErr() error {
  5062  	return nil
  5063  }
  5064  
  5065  func (s *ActionNotFoundException) Error() string {
  5066  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  5067  }
  5068  
  5069  // Status code returns the HTTP status code for the request's response error.
  5070  func (s *ActionNotFoundException) StatusCode() int {
  5071  	return s.RespMetadata.StatusCode
  5072  }
  5073  
  5074  // RequestID returns the service's response RequestID for request.
  5075  func (s *ActionNotFoundException) RequestID() string {
  5076  	return s.RespMetadata.RequestID
  5077  }
  5078  
  5079  // Represents information about the version (or revision) of an action.
  5080  type ActionRevision struct {
  5081  	_ struct{} `type:"structure"`
  5082  
  5083  	// The date and time when the most recent version of the action was created,
  5084  	// in timestamp format.
  5085  	//
  5086  	// Created is a required field
  5087  	Created *time.Time `locationName:"created" type:"timestamp" required:"true"`
  5088  
  5089  	// The unique identifier of the change that set the state to this revision (for
  5090  	// example, a deployment ID or timestamp).
  5091  	//
  5092  	// RevisionChangeId is a required field
  5093  	RevisionChangeId *string `locationName:"revisionChangeId" min:"1" type:"string" required:"true"`
  5094  
  5095  	// The system-generated unique ID that identifies the revision number of the
  5096  	// action.
  5097  	//
  5098  	// RevisionId is a required field
  5099  	RevisionId *string `locationName:"revisionId" min:"1" type:"string" required:"true"`
  5100  }
  5101  
  5102  // String returns the string representation.
  5103  //
  5104  // API parameter values that are decorated as "sensitive" in the API will not
  5105  // be included in the string output. The member name will be present, but the
  5106  // value will be replaced with "sensitive".
  5107  func (s ActionRevision) String() string {
  5108  	return awsutil.Prettify(s)
  5109  }
  5110  
  5111  // GoString returns the string representation.
  5112  //
  5113  // API parameter values that are decorated as "sensitive" in the API will not
  5114  // be included in the string output. The member name will be present, but the
  5115  // value will be replaced with "sensitive".
  5116  func (s ActionRevision) GoString() string {
  5117  	return s.String()
  5118  }
  5119  
  5120  // Validate inspects the fields of the type to determine if they are valid.
  5121  func (s *ActionRevision) Validate() error {
  5122  	invalidParams := request.ErrInvalidParams{Context: "ActionRevision"}
  5123  	if s.Created == nil {
  5124  		invalidParams.Add(request.NewErrParamRequired("Created"))
  5125  	}
  5126  	if s.RevisionChangeId == nil {
  5127  		invalidParams.Add(request.NewErrParamRequired("RevisionChangeId"))
  5128  	}
  5129  	if s.RevisionChangeId != nil && len(*s.RevisionChangeId) < 1 {
  5130  		invalidParams.Add(request.NewErrParamMinLen("RevisionChangeId", 1))
  5131  	}
  5132  	if s.RevisionId == nil {
  5133  		invalidParams.Add(request.NewErrParamRequired("RevisionId"))
  5134  	}
  5135  	if s.RevisionId != nil && len(*s.RevisionId) < 1 {
  5136  		invalidParams.Add(request.NewErrParamMinLen("RevisionId", 1))
  5137  	}
  5138  
  5139  	if invalidParams.Len() > 0 {
  5140  		return invalidParams
  5141  	}
  5142  	return nil
  5143  }
  5144  
  5145  // SetCreated sets the Created field's value.
  5146  func (s *ActionRevision) SetCreated(v time.Time) *ActionRevision {
  5147  	s.Created = &v
  5148  	return s
  5149  }
  5150  
  5151  // SetRevisionChangeId sets the RevisionChangeId field's value.
  5152  func (s *ActionRevision) SetRevisionChangeId(v string) *ActionRevision {
  5153  	s.RevisionChangeId = &v
  5154  	return s
  5155  }
  5156  
  5157  // SetRevisionId sets the RevisionId field's value.
  5158  func (s *ActionRevision) SetRevisionId(v string) *ActionRevision {
  5159  	s.RevisionId = &v
  5160  	return s
  5161  }
  5162  
  5163  // Represents information about the state of an action.
  5164  type ActionState struct {
  5165  	_ struct{} `type:"structure"`
  5166  
  5167  	// The name of the action.
  5168  	ActionName *string `locationName:"actionName" min:"1" type:"string"`
  5169  
  5170  	// Represents information about the version (or revision) of an action.
  5171  	CurrentRevision *ActionRevision `locationName:"currentRevision" type:"structure"`
  5172  
  5173  	// A URL link for more information about the state of the action, such as a
  5174  	// deployment group details page.
  5175  	EntityUrl *string `locationName:"entityUrl" min:"1" type:"string"`
  5176  
  5177  	// Represents information about the run of an action.
  5178  	LatestExecution *ActionExecution `locationName:"latestExecution" type:"structure"`
  5179  
  5180  	// A URL link for more information about the revision, such as a commit details
  5181  	// page.
  5182  	RevisionUrl *string `locationName:"revisionUrl" min:"1" type:"string"`
  5183  }
  5184  
  5185  // String returns the string representation.
  5186  //
  5187  // API parameter values that are decorated as "sensitive" in the API will not
  5188  // be included in the string output. The member name will be present, but the
  5189  // value will be replaced with "sensitive".
  5190  func (s ActionState) String() string {
  5191  	return awsutil.Prettify(s)
  5192  }
  5193  
  5194  // GoString returns the string representation.
  5195  //
  5196  // API parameter values that are decorated as "sensitive" in the API will not
  5197  // be included in the string output. The member name will be present, but the
  5198  // value will be replaced with "sensitive".
  5199  func (s ActionState) GoString() string {
  5200  	return s.String()
  5201  }
  5202  
  5203  // SetActionName sets the ActionName field's value.
  5204  func (s *ActionState) SetActionName(v string) *ActionState {
  5205  	s.ActionName = &v
  5206  	return s
  5207  }
  5208  
  5209  // SetCurrentRevision sets the CurrentRevision field's value.
  5210  func (s *ActionState) SetCurrentRevision(v *ActionRevision) *ActionState {
  5211  	s.CurrentRevision = v
  5212  	return s
  5213  }
  5214  
  5215  // SetEntityUrl sets the EntityUrl field's value.
  5216  func (s *ActionState) SetEntityUrl(v string) *ActionState {
  5217  	s.EntityUrl = &v
  5218  	return s
  5219  }
  5220  
  5221  // SetLatestExecution sets the LatestExecution field's value.
  5222  func (s *ActionState) SetLatestExecution(v *ActionExecution) *ActionState {
  5223  	s.LatestExecution = v
  5224  	return s
  5225  }
  5226  
  5227  // SetRevisionUrl sets the RevisionUrl field's value.
  5228  func (s *ActionState) SetRevisionUrl(v string) *ActionState {
  5229  	s.RevisionUrl = &v
  5230  	return s
  5231  }
  5232  
  5233  // Returns information about the details of an action type.
  5234  type ActionType struct {
  5235  	_ struct{} `type:"structure"`
  5236  
  5237  	// The configuration properties for the action type.
  5238  	ActionConfigurationProperties []*ActionConfigurationProperty `locationName:"actionConfigurationProperties" type:"list"`
  5239  
  5240  	// Represents information about an action type.
  5241  	//
  5242  	// Id is a required field
  5243  	Id *ActionTypeId `locationName:"id" type:"structure" required:"true"`
  5244  
  5245  	// The details of the input artifact for the action, such as its commit ID.
  5246  	//
  5247  	// InputArtifactDetails is a required field
  5248  	InputArtifactDetails *ArtifactDetails `locationName:"inputArtifactDetails" type:"structure" required:"true"`
  5249  
  5250  	// The details of the output artifact of the action, such as its commit ID.
  5251  	//
  5252  	// OutputArtifactDetails is a required field
  5253  	OutputArtifactDetails *ArtifactDetails `locationName:"outputArtifactDetails" type:"structure" required:"true"`
  5254  
  5255  	// The settings for the action type.
  5256  	Settings *ActionTypeSettings `locationName:"settings" type:"structure"`
  5257  }
  5258  
  5259  // String returns the string representation.
  5260  //
  5261  // API parameter values that are decorated as "sensitive" in the API will not
  5262  // be included in the string output. The member name will be present, but the
  5263  // value will be replaced with "sensitive".
  5264  func (s ActionType) String() string {
  5265  	return awsutil.Prettify(s)
  5266  }
  5267  
  5268  // GoString returns the string representation.
  5269  //
  5270  // API parameter values that are decorated as "sensitive" in the API will not
  5271  // be included in the string output. The member name will be present, but the
  5272  // value will be replaced with "sensitive".
  5273  func (s ActionType) GoString() string {
  5274  	return s.String()
  5275  }
  5276  
  5277  // SetActionConfigurationProperties sets the ActionConfigurationProperties field's value.
  5278  func (s *ActionType) SetActionConfigurationProperties(v []*ActionConfigurationProperty) *ActionType {
  5279  	s.ActionConfigurationProperties = v
  5280  	return s
  5281  }
  5282  
  5283  // SetId sets the Id field's value.
  5284  func (s *ActionType) SetId(v *ActionTypeId) *ActionType {
  5285  	s.Id = v
  5286  	return s
  5287  }
  5288  
  5289  // SetInputArtifactDetails sets the InputArtifactDetails field's value.
  5290  func (s *ActionType) SetInputArtifactDetails(v *ArtifactDetails) *ActionType {
  5291  	s.InputArtifactDetails = v
  5292  	return s
  5293  }
  5294  
  5295  // SetOutputArtifactDetails sets the OutputArtifactDetails field's value.
  5296  func (s *ActionType) SetOutputArtifactDetails(v *ArtifactDetails) *ActionType {
  5297  	s.OutputArtifactDetails = v
  5298  	return s
  5299  }
  5300  
  5301  // SetSettings sets the Settings field's value.
  5302  func (s *ActionType) SetSettings(v *ActionTypeSettings) *ActionType {
  5303  	s.Settings = v
  5304  	return s
  5305  }
  5306  
  5307  // Information about parameters for artifacts associated with the action type,
  5308  // such as the minimum and maximum artifacts allowed.
  5309  type ActionTypeArtifactDetails struct {
  5310  	_ struct{} `type:"structure"`
  5311  
  5312  	// The maximum number of artifacts that can be used with the actiontype. For
  5313  	// example, you should specify a minimum and maximum of zero input artifacts
  5314  	// for an action type with a category of source.
  5315  	//
  5316  	// MaximumCount is a required field
  5317  	MaximumCount *int64 `locationName:"maximumCount" type:"integer" required:"true"`
  5318  
  5319  	// The minimum number of artifacts that can be used with the action type. For
  5320  	// example, you should specify a minimum and maximum of zero input artifacts
  5321  	// for an action type with a category of source.
  5322  	//
  5323  	// MinimumCount is a required field
  5324  	MinimumCount *int64 `locationName:"minimumCount" type:"integer" required:"true"`
  5325  }
  5326  
  5327  // String returns the string representation.
  5328  //
  5329  // API parameter values that are decorated as "sensitive" in the API will not
  5330  // be included in the string output. The member name will be present, but the
  5331  // value will be replaced with "sensitive".
  5332  func (s ActionTypeArtifactDetails) String() string {
  5333  	return awsutil.Prettify(s)
  5334  }
  5335  
  5336  // GoString returns the string representation.
  5337  //
  5338  // API parameter values that are decorated as "sensitive" in the API will not
  5339  // be included in the string output. The member name will be present, but the
  5340  // value will be replaced with "sensitive".
  5341  func (s ActionTypeArtifactDetails) GoString() string {
  5342  	return s.String()
  5343  }
  5344  
  5345  // Validate inspects the fields of the type to determine if they are valid.
  5346  func (s *ActionTypeArtifactDetails) Validate() error {
  5347  	invalidParams := request.ErrInvalidParams{Context: "ActionTypeArtifactDetails"}
  5348  	if s.MaximumCount == nil {
  5349  		invalidParams.Add(request.NewErrParamRequired("MaximumCount"))
  5350  	}
  5351  	if s.MinimumCount == nil {
  5352  		invalidParams.Add(request.NewErrParamRequired("MinimumCount"))
  5353  	}
  5354  
  5355  	if invalidParams.Len() > 0 {
  5356  		return invalidParams
  5357  	}
  5358  	return nil
  5359  }
  5360  
  5361  // SetMaximumCount sets the MaximumCount field's value.
  5362  func (s *ActionTypeArtifactDetails) SetMaximumCount(v int64) *ActionTypeArtifactDetails {
  5363  	s.MaximumCount = &v
  5364  	return s
  5365  }
  5366  
  5367  // SetMinimumCount sets the MinimumCount field's value.
  5368  func (s *ActionTypeArtifactDetails) SetMinimumCount(v int64) *ActionTypeArtifactDetails {
  5369  	s.MinimumCount = &v
  5370  	return s
  5371  }
  5372  
  5373  // The parameters for the action type definition that are provided when the
  5374  // action type is created or updated.
  5375  type ActionTypeDeclaration struct {
  5376  	_ struct{} `type:"structure"`
  5377  
  5378  	// The description for the action type to be updated.
  5379  	Description *string `locationName:"description" min:"1" type:"string"`
  5380  
  5381  	// Information about the executor for an action type that was created with any
  5382  	// supported integration model.
  5383  	//
  5384  	// Executor is a required field
  5385  	Executor *ActionTypeExecutor `locationName:"executor" type:"structure" required:"true"`
  5386  
  5387  	// The action category, owner, provider, and version of the action type to be
  5388  	// updated.
  5389  	//
  5390  	// Id is a required field
  5391  	Id *ActionTypeIdentifier `locationName:"id" type:"structure" required:"true"`
  5392  
  5393  	// Details for the artifacts, such as application files, to be worked on by
  5394  	// the action. For example, the minimum and maximum number of input artifacts
  5395  	// allowed.
  5396  	//
  5397  	// InputArtifactDetails is a required field
  5398  	InputArtifactDetails *ActionTypeArtifactDetails `locationName:"inputArtifactDetails" type:"structure" required:"true"`
  5399  
  5400  	// Details for the output artifacts, such as a built application, that are the
  5401  	// result of the action. For example, the minimum and maximum number of output
  5402  	// artifacts allowed.
  5403  	//
  5404  	// OutputArtifactDetails is a required field
  5405  	OutputArtifactDetails *ActionTypeArtifactDetails `locationName:"outputArtifactDetails" type:"structure" required:"true"`
  5406  
  5407  	// Details identifying the accounts with permissions to use the action type.
  5408  	Permissions *ActionTypePermissions `locationName:"permissions" type:"structure"`
  5409  
  5410  	// The properties of the action type to be updated.
  5411  	Properties []*ActionTypeProperty `locationName:"properties" type:"list"`
  5412  
  5413  	// The links associated with the action type to be updated.
  5414  	Urls *ActionTypeUrls `locationName:"urls" type:"structure"`
  5415  }
  5416  
  5417  // String returns the string representation.
  5418  //
  5419  // API parameter values that are decorated as "sensitive" in the API will not
  5420  // be included in the string output. The member name will be present, but the
  5421  // value will be replaced with "sensitive".
  5422  func (s ActionTypeDeclaration) String() string {
  5423  	return awsutil.Prettify(s)
  5424  }
  5425  
  5426  // GoString returns the string representation.
  5427  //
  5428  // API parameter values that are decorated as "sensitive" in the API will not
  5429  // be included in the string output. The member name will be present, but the
  5430  // value will be replaced with "sensitive".
  5431  func (s ActionTypeDeclaration) GoString() string {
  5432  	return s.String()
  5433  }
  5434  
  5435  // Validate inspects the fields of the type to determine if they are valid.
  5436  func (s *ActionTypeDeclaration) Validate() error {
  5437  	invalidParams := request.ErrInvalidParams{Context: "ActionTypeDeclaration"}
  5438  	if s.Description != nil && len(*s.Description) < 1 {
  5439  		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
  5440  	}
  5441  	if s.Executor == nil {
  5442  		invalidParams.Add(request.NewErrParamRequired("Executor"))
  5443  	}
  5444  	if s.Id == nil {
  5445  		invalidParams.Add(request.NewErrParamRequired("Id"))
  5446  	}
  5447  	if s.InputArtifactDetails == nil {
  5448  		invalidParams.Add(request.NewErrParamRequired("InputArtifactDetails"))
  5449  	}
  5450  	if s.OutputArtifactDetails == nil {
  5451  		invalidParams.Add(request.NewErrParamRequired("OutputArtifactDetails"))
  5452  	}
  5453  	if s.Executor != nil {
  5454  		if err := s.Executor.Validate(); err != nil {
  5455  			invalidParams.AddNested("Executor", err.(request.ErrInvalidParams))
  5456  		}
  5457  	}
  5458  	if s.Id != nil {
  5459  		if err := s.Id.Validate(); err != nil {
  5460  			invalidParams.AddNested("Id", err.(request.ErrInvalidParams))
  5461  		}
  5462  	}
  5463  	if s.InputArtifactDetails != nil {
  5464  		if err := s.InputArtifactDetails.Validate(); err != nil {
  5465  			invalidParams.AddNested("InputArtifactDetails", err.(request.ErrInvalidParams))
  5466  		}
  5467  	}
  5468  	if s.OutputArtifactDetails != nil {
  5469  		if err := s.OutputArtifactDetails.Validate(); err != nil {
  5470  			invalidParams.AddNested("OutputArtifactDetails", err.(request.ErrInvalidParams))
  5471  		}
  5472  	}
  5473  	if s.Permissions != nil {
  5474  		if err := s.Permissions.Validate(); err != nil {
  5475  			invalidParams.AddNested("Permissions", err.(request.ErrInvalidParams))
  5476  		}
  5477  	}
  5478  	if s.Properties != nil {
  5479  		for i, v := range s.Properties {
  5480  			if v == nil {
  5481  				continue
  5482  			}
  5483  			if err := v.Validate(); err != nil {
  5484  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Properties", i), err.(request.ErrInvalidParams))
  5485  			}
  5486  		}
  5487  	}
  5488  	if s.Urls != nil {
  5489  		if err := s.Urls.Validate(); err != nil {
  5490  			invalidParams.AddNested("Urls", err.(request.ErrInvalidParams))
  5491  		}
  5492  	}
  5493  
  5494  	if invalidParams.Len() > 0 {
  5495  		return invalidParams
  5496  	}
  5497  	return nil
  5498  }
  5499  
  5500  // SetDescription sets the Description field's value.
  5501  func (s *ActionTypeDeclaration) SetDescription(v string) *ActionTypeDeclaration {
  5502  	s.Description = &v
  5503  	return s
  5504  }
  5505  
  5506  // SetExecutor sets the Executor field's value.
  5507  func (s *ActionTypeDeclaration) SetExecutor(v *ActionTypeExecutor) *ActionTypeDeclaration {
  5508  	s.Executor = v
  5509  	return s
  5510  }
  5511  
  5512  // SetId sets the Id field's value.
  5513  func (s *ActionTypeDeclaration) SetId(v *ActionTypeIdentifier) *ActionTypeDeclaration {
  5514  	s.Id = v
  5515  	return s
  5516  }
  5517  
  5518  // SetInputArtifactDetails sets the InputArtifactDetails field's value.
  5519  func (s *ActionTypeDeclaration) SetInputArtifactDetails(v *ActionTypeArtifactDetails) *ActionTypeDeclaration {
  5520  	s.InputArtifactDetails = v
  5521  	return s
  5522  }
  5523  
  5524  // SetOutputArtifactDetails sets the OutputArtifactDetails field's value.
  5525  func (s *ActionTypeDeclaration) SetOutputArtifactDetails(v *ActionTypeArtifactDetails) *ActionTypeDeclaration {
  5526  	s.OutputArtifactDetails = v
  5527  	return s
  5528  }
  5529  
  5530  // SetPermissions sets the Permissions field's value.
  5531  func (s *ActionTypeDeclaration) SetPermissions(v *ActionTypePermissions) *ActionTypeDeclaration {
  5532  	s.Permissions = v
  5533  	return s
  5534  }
  5535  
  5536  // SetProperties sets the Properties field's value.
  5537  func (s *ActionTypeDeclaration) SetProperties(v []*ActionTypeProperty) *ActionTypeDeclaration {
  5538  	s.Properties = v
  5539  	return s
  5540  }
  5541  
  5542  // SetUrls sets the Urls field's value.
  5543  func (s *ActionTypeDeclaration) SetUrls(v *ActionTypeUrls) *ActionTypeDeclaration {
  5544  	s.Urls = v
  5545  	return s
  5546  }
  5547  
  5548  // The action engine, or executor, for an action type created for a provider,
  5549  // where the action is to be used by customers of the provider. The action engine
  5550  // is associated with the model used to create and update the action, such as
  5551  // the Lambda integration model.
  5552  type ActionTypeExecutor struct {
  5553  	_ struct{} `type:"structure"`
  5554  
  5555  	// The action configuration properties for the action type. These properties
  5556  	// are specified in the action definition when the action type is created.
  5557  	//
  5558  	// Configuration is a required field
  5559  	Configuration *ExecutorConfiguration `locationName:"configuration" type:"structure" required:"true"`
  5560  
  5561  	// The timeout in seconds for the job. An action execution can have multiple
  5562  	// jobs. This is the timeout for a single job, not the entire action execution.
  5563  	JobTimeout *int64 `locationName:"jobTimeout" min:"60" type:"integer"`
  5564  
  5565  	// The policy statement that specifies the permissions in the CodePipeline customer’s
  5566  	// account that are needed to successfully run an action.
  5567  	//
  5568  	// To grant permission to another account, specify the account ID as the Principal,
  5569  	// a domain-style identifier defined by the service, for example codepipeline.amazonaws.com.
  5570  	//
  5571  	// The size of the passed JSON policy document cannot exceed 2048 characters.
  5572  	PolicyStatementsTemplate *string `locationName:"policyStatementsTemplate" min:"1" type:"string"`
  5573  
  5574  	// The integration model used to create and update the action type, Lambda or
  5575  	// JobWorker.
  5576  	//
  5577  	// Type is a required field
  5578  	Type *string `locationName:"type" type:"string" required:"true" enum:"ExecutorType"`
  5579  }
  5580  
  5581  // String returns the string representation.
  5582  //
  5583  // API parameter values that are decorated as "sensitive" in the API will not
  5584  // be included in the string output. The member name will be present, but the
  5585  // value will be replaced with "sensitive".
  5586  func (s ActionTypeExecutor) String() string {
  5587  	return awsutil.Prettify(s)
  5588  }
  5589  
  5590  // GoString returns the string representation.
  5591  //
  5592  // API parameter values that are decorated as "sensitive" in the API will not
  5593  // be included in the string output. The member name will be present, but the
  5594  // value will be replaced with "sensitive".
  5595  func (s ActionTypeExecutor) GoString() string {
  5596  	return s.String()
  5597  }
  5598  
  5599  // Validate inspects the fields of the type to determine if they are valid.
  5600  func (s *ActionTypeExecutor) Validate() error {
  5601  	invalidParams := request.ErrInvalidParams{Context: "ActionTypeExecutor"}
  5602  	if s.Configuration == nil {
  5603  		invalidParams.Add(request.NewErrParamRequired("Configuration"))
  5604  	}
  5605  	if s.JobTimeout != nil && *s.JobTimeout < 60 {
  5606  		invalidParams.Add(request.NewErrParamMinValue("JobTimeout", 60))
  5607  	}
  5608  	if s.PolicyStatementsTemplate != nil && len(*s.PolicyStatementsTemplate) < 1 {
  5609  		invalidParams.Add(request.NewErrParamMinLen("PolicyStatementsTemplate", 1))
  5610  	}
  5611  	if s.Type == nil {
  5612  		invalidParams.Add(request.NewErrParamRequired("Type"))
  5613  	}
  5614  	if s.Configuration != nil {
  5615  		if err := s.Configuration.Validate(); err != nil {
  5616  			invalidParams.AddNested("Configuration", err.(request.ErrInvalidParams))
  5617  		}
  5618  	}
  5619  
  5620  	if invalidParams.Len() > 0 {
  5621  		return invalidParams
  5622  	}
  5623  	return nil
  5624  }
  5625  
  5626  // SetConfiguration sets the Configuration field's value.
  5627  func (s *ActionTypeExecutor) SetConfiguration(v *ExecutorConfiguration) *ActionTypeExecutor {
  5628  	s.Configuration = v
  5629  	return s
  5630  }
  5631  
  5632  // SetJobTimeout sets the JobTimeout field's value.
  5633  func (s *ActionTypeExecutor) SetJobTimeout(v int64) *ActionTypeExecutor {
  5634  	s.JobTimeout = &v
  5635  	return s
  5636  }
  5637  
  5638  // SetPolicyStatementsTemplate sets the PolicyStatementsTemplate field's value.
  5639  func (s *ActionTypeExecutor) SetPolicyStatementsTemplate(v string) *ActionTypeExecutor {
  5640  	s.PolicyStatementsTemplate = &v
  5641  	return s
  5642  }
  5643  
  5644  // SetType sets the Type field's value.
  5645  func (s *ActionTypeExecutor) SetType(v string) *ActionTypeExecutor {
  5646  	s.Type = &v
  5647  	return s
  5648  }
  5649  
  5650  // Represents information about an action type.
  5651  type ActionTypeId struct {
  5652  	_ struct{} `type:"structure"`
  5653  
  5654  	// A category defines what kind of action can be taken in the stage, and constrains
  5655  	// the provider type for the action. Valid categories are limited to one of
  5656  	// the following values.
  5657  	//
  5658  	//    * Source
  5659  	//
  5660  	//    * Build
  5661  	//
  5662  	//    * Test
  5663  	//
  5664  	//    * Deploy
  5665  	//
  5666  	//    * Invoke
  5667  	//
  5668  	//    * Approval
  5669  	//
  5670  	// Category is a required field
  5671  	Category *string `locationName:"category" type:"string" required:"true" enum:"ActionCategory"`
  5672  
  5673  	// The creator of the action being called. There are three valid values for
  5674  	// the Owner field in the action category section within your pipeline structure:
  5675  	// AWS, ThirdParty, and Custom. For more information, see Valid Action Types
  5676  	// and Providers in CodePipeline (https://docs.aws.amazon.com/codepipeline/latest/userguide/reference-pipeline-structure.html#actions-valid-providers).
  5677  	//
  5678  	// Owner is a required field
  5679  	Owner *string `locationName:"owner" type:"string" required:"true" enum:"ActionOwner"`
  5680  
  5681  	// The provider of the service being called by the action. Valid providers are
  5682  	// determined by the action category. For example, an action in the Deploy category
  5683  	// type might have a provider of AWS CodeDeploy, which would be specified as
  5684  	// CodeDeploy. For more information, see Valid Action Types and Providers in
  5685  	// CodePipeline (https://docs.aws.amazon.com/codepipeline/latest/userguide/reference-pipeline-structure.html#actions-valid-providers).
  5686  	//
  5687  	// Provider is a required field
  5688  	Provider *string `locationName:"provider" min:"1" type:"string" required:"true"`
  5689  
  5690  	// A string that describes the action version.
  5691  	//
  5692  	// Version is a required field
  5693  	Version *string `locationName:"version" min:"1" type:"string" required:"true"`
  5694  }
  5695  
  5696  // String returns the string representation.
  5697  //
  5698  // API parameter values that are decorated as "sensitive" in the API will not
  5699  // be included in the string output. The member name will be present, but the
  5700  // value will be replaced with "sensitive".
  5701  func (s ActionTypeId) String() string {
  5702  	return awsutil.Prettify(s)
  5703  }
  5704  
  5705  // GoString returns the string representation.
  5706  //
  5707  // API parameter values that are decorated as "sensitive" in the API will not
  5708  // be included in the string output. The member name will be present, but the
  5709  // value will be replaced with "sensitive".
  5710  func (s ActionTypeId) GoString() string {
  5711  	return s.String()
  5712  }
  5713  
  5714  // Validate inspects the fields of the type to determine if they are valid.
  5715  func (s *ActionTypeId) Validate() error {
  5716  	invalidParams := request.ErrInvalidParams{Context: "ActionTypeId"}
  5717  	if s.Category == nil {
  5718  		invalidParams.Add(request.NewErrParamRequired("Category"))
  5719  	}
  5720  	if s.Owner == nil {
  5721  		invalidParams.Add(request.NewErrParamRequired("Owner"))
  5722  	}
  5723  	if s.Provider == nil {
  5724  		invalidParams.Add(request.NewErrParamRequired("Provider"))
  5725  	}
  5726  	if s.Provider != nil && len(*s.Provider) < 1 {
  5727  		invalidParams.Add(request.NewErrParamMinLen("Provider", 1))
  5728  	}
  5729  	if s.Version == nil {
  5730  		invalidParams.Add(request.NewErrParamRequired("Version"))
  5731  	}
  5732  	if s.Version != nil && len(*s.Version) < 1 {
  5733  		invalidParams.Add(request.NewErrParamMinLen("Version", 1))
  5734  	}
  5735  
  5736  	if invalidParams.Len() > 0 {
  5737  		return invalidParams
  5738  	}
  5739  	return nil
  5740  }
  5741  
  5742  // SetCategory sets the Category field's value.
  5743  func (s *ActionTypeId) SetCategory(v string) *ActionTypeId {
  5744  	s.Category = &v
  5745  	return s
  5746  }
  5747  
  5748  // SetOwner sets the Owner field's value.
  5749  func (s *ActionTypeId) SetOwner(v string) *ActionTypeId {
  5750  	s.Owner = &v
  5751  	return s
  5752  }
  5753  
  5754  // SetProvider sets the Provider field's value.
  5755  func (s *ActionTypeId) SetProvider(v string) *ActionTypeId {
  5756  	s.Provider = &v
  5757  	return s
  5758  }
  5759  
  5760  // SetVersion sets the Version field's value.
  5761  func (s *ActionTypeId) SetVersion(v string) *ActionTypeId {
  5762  	s.Version = &v
  5763  	return s
  5764  }
  5765  
  5766  // Specifies the category, owner, provider, and version of the action type.
  5767  type ActionTypeIdentifier struct {
  5768  	_ struct{} `type:"structure"`
  5769  
  5770  	// Defines what kind of action can be taken in the stage, one of the following:
  5771  	//
  5772  	//    * Source
  5773  	//
  5774  	//    * Build
  5775  	//
  5776  	//    * Test
  5777  	//
  5778  	//    * Deploy
  5779  	//
  5780  	//    * Approval
  5781  	//
  5782  	//    * Invoke
  5783  	//
  5784  	// Category is a required field
  5785  	Category *string `locationName:"category" type:"string" required:"true" enum:"ActionCategory"`
  5786  
  5787  	// The creator of the action type being called: AWS or ThirdParty.
  5788  	//
  5789  	// Owner is a required field
  5790  	Owner *string `locationName:"owner" type:"string" required:"true"`
  5791  
  5792  	// The provider of the action type being called. The provider name is supplied
  5793  	// when the action type is created.
  5794  	//
  5795  	// Provider is a required field
  5796  	Provider *string `locationName:"provider" min:"1" type:"string" required:"true"`
  5797  
  5798  	// A string that describes the action type version.
  5799  	//
  5800  	// Version is a required field
  5801  	Version *string `locationName:"version" min:"1" type:"string" required:"true"`
  5802  }
  5803  
  5804  // String returns the string representation.
  5805  //
  5806  // API parameter values that are decorated as "sensitive" in the API will not
  5807  // be included in the string output. The member name will be present, but the
  5808  // value will be replaced with "sensitive".
  5809  func (s ActionTypeIdentifier) String() string {
  5810  	return awsutil.Prettify(s)
  5811  }
  5812  
  5813  // GoString returns the string representation.
  5814  //
  5815  // API parameter values that are decorated as "sensitive" in the API will not
  5816  // be included in the string output. The member name will be present, but the
  5817  // value will be replaced with "sensitive".
  5818  func (s ActionTypeIdentifier) GoString() string {
  5819  	return s.String()
  5820  }
  5821  
  5822  // Validate inspects the fields of the type to determine if they are valid.
  5823  func (s *ActionTypeIdentifier) Validate() error {
  5824  	invalidParams := request.ErrInvalidParams{Context: "ActionTypeIdentifier"}
  5825  	if s.Category == nil {
  5826  		invalidParams.Add(request.NewErrParamRequired("Category"))
  5827  	}
  5828  	if s.Owner == nil {
  5829  		invalidParams.Add(request.NewErrParamRequired("Owner"))
  5830  	}
  5831  	if s.Provider == nil {
  5832  		invalidParams.Add(request.NewErrParamRequired("Provider"))
  5833  	}
  5834  	if s.Provider != nil && len(*s.Provider) < 1 {
  5835  		invalidParams.Add(request.NewErrParamMinLen("Provider", 1))
  5836  	}
  5837  	if s.Version == nil {
  5838  		invalidParams.Add(request.NewErrParamRequired("Version"))
  5839  	}
  5840  	if s.Version != nil && len(*s.Version) < 1 {
  5841  		invalidParams.Add(request.NewErrParamMinLen("Version", 1))
  5842  	}
  5843  
  5844  	if invalidParams.Len() > 0 {
  5845  		return invalidParams
  5846  	}
  5847  	return nil
  5848  }
  5849  
  5850  // SetCategory sets the Category field's value.
  5851  func (s *ActionTypeIdentifier) SetCategory(v string) *ActionTypeIdentifier {
  5852  	s.Category = &v
  5853  	return s
  5854  }
  5855  
  5856  // SetOwner sets the Owner field's value.
  5857  func (s *ActionTypeIdentifier) SetOwner(v string) *ActionTypeIdentifier {
  5858  	s.Owner = &v
  5859  	return s
  5860  }
  5861  
  5862  // SetProvider sets the Provider field's value.
  5863  func (s *ActionTypeIdentifier) SetProvider(v string) *ActionTypeIdentifier {
  5864  	s.Provider = &v
  5865  	return s
  5866  }
  5867  
  5868  // SetVersion sets the Version field's value.
  5869  func (s *ActionTypeIdentifier) SetVersion(v string) *ActionTypeIdentifier {
  5870  	s.Version = &v
  5871  	return s
  5872  }
  5873  
  5874  // The specified action type cannot be found.
  5875  type ActionTypeNotFoundException struct {
  5876  	_            struct{}                  `type:"structure"`
  5877  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  5878  
  5879  	Message_ *string `locationName:"message" type:"string"`
  5880  }
  5881  
  5882  // String returns the string representation.
  5883  //
  5884  // API parameter values that are decorated as "sensitive" in the API will not
  5885  // be included in the string output. The member name will be present, but the
  5886  // value will be replaced with "sensitive".
  5887  func (s ActionTypeNotFoundException) String() string {
  5888  	return awsutil.Prettify(s)
  5889  }
  5890  
  5891  // GoString returns the string representation.
  5892  //
  5893  // API parameter values that are decorated as "sensitive" in the API will not
  5894  // be included in the string output. The member name will be present, but the
  5895  // value will be replaced with "sensitive".
  5896  func (s ActionTypeNotFoundException) GoString() string {
  5897  	return s.String()
  5898  }
  5899  
  5900  func newErrorActionTypeNotFoundException(v protocol.ResponseMetadata) error {
  5901  	return &ActionTypeNotFoundException{
  5902  		RespMetadata: v,
  5903  	}
  5904  }
  5905  
  5906  // Code returns the exception type name.
  5907  func (s *ActionTypeNotFoundException) Code() string {
  5908  	return "ActionTypeNotFoundException"
  5909  }
  5910  
  5911  // Message returns the exception's message.
  5912  func (s *ActionTypeNotFoundException) Message() string {
  5913  	if s.Message_ != nil {
  5914  		return *s.Message_
  5915  	}
  5916  	return ""
  5917  }
  5918  
  5919  // OrigErr always returns nil, satisfies awserr.Error interface.
  5920  func (s *ActionTypeNotFoundException) OrigErr() error {
  5921  	return nil
  5922  }
  5923  
  5924  func (s *ActionTypeNotFoundException) Error() string {
  5925  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  5926  }
  5927  
  5928  // Status code returns the HTTP status code for the request's response error.
  5929  func (s *ActionTypeNotFoundException) StatusCode() int {
  5930  	return s.RespMetadata.StatusCode
  5931  }
  5932  
  5933  // RequestID returns the service's response RequestID for request.
  5934  func (s *ActionTypeNotFoundException) RequestID() string {
  5935  	return s.RespMetadata.RequestID
  5936  }
  5937  
  5938  // Details identifying the users with permissions to use the action type.
  5939  type ActionTypePermissions struct {
  5940  	_ struct{} `type:"structure"`
  5941  
  5942  	// A list of AWS account IDs with access to use the action type in their pipelines.
  5943  	//
  5944  	// AllowedAccounts is a required field
  5945  	AllowedAccounts []*string `locationName:"allowedAccounts" min:"1" type:"list" required:"true"`
  5946  }
  5947  
  5948  // String returns the string representation.
  5949  //
  5950  // API parameter values that are decorated as "sensitive" in the API will not
  5951  // be included in the string output. The member name will be present, but the
  5952  // value will be replaced with "sensitive".
  5953  func (s ActionTypePermissions) String() string {
  5954  	return awsutil.Prettify(s)
  5955  }
  5956  
  5957  // GoString returns the string representation.
  5958  //
  5959  // API parameter values that are decorated as "sensitive" in the API will not
  5960  // be included in the string output. The member name will be present, but the
  5961  // value will be replaced with "sensitive".
  5962  func (s ActionTypePermissions) GoString() string {
  5963  	return s.String()
  5964  }
  5965  
  5966  // Validate inspects the fields of the type to determine if they are valid.
  5967  func (s *ActionTypePermissions) Validate() error {
  5968  	invalidParams := request.ErrInvalidParams{Context: "ActionTypePermissions"}
  5969  	if s.AllowedAccounts == nil {
  5970  		invalidParams.Add(request.NewErrParamRequired("AllowedAccounts"))
  5971  	}
  5972  	if s.AllowedAccounts != nil && len(s.AllowedAccounts) < 1 {
  5973  		invalidParams.Add(request.NewErrParamMinLen("AllowedAccounts", 1))
  5974  	}
  5975  
  5976  	if invalidParams.Len() > 0 {
  5977  		return invalidParams
  5978  	}
  5979  	return nil
  5980  }
  5981  
  5982  // SetAllowedAccounts sets the AllowedAccounts field's value.
  5983  func (s *ActionTypePermissions) SetAllowedAccounts(v []*string) *ActionTypePermissions {
  5984  	s.AllowedAccounts = v
  5985  	return s
  5986  }
  5987  
  5988  // Represents information about each property specified in the action configuration,
  5989  // such as the description and key name that display for the customer using
  5990  // the action type.
  5991  type ActionTypeProperty struct {
  5992  	_ struct{} `type:"structure"`
  5993  
  5994  	// The description of the property that is displayed to users.
  5995  	Description *string `locationName:"description" min:"1" type:"string"`
  5996  
  5997  	// Whether the configuration property is a key.
  5998  	//
  5999  	// Key is a required field
  6000  	Key *bool `locationName:"key" type:"boolean" required:"true"`
  6001  
  6002  	// The property name that is displayed to users.
  6003  	//
  6004  	// Name is a required field
  6005  	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
  6006  
  6007  	// Whether to omit the field value entered by the customer in the log. If true,
  6008  	// the value is not saved in CloudTrail logs for the action execution.
  6009  	//
  6010  	// NoEcho is a required field
  6011  	NoEcho *bool `locationName:"noEcho" type:"boolean" required:"true"`
  6012  
  6013  	// Whether the configuration property is an optional value.
  6014  	//
  6015  	// Optional is a required field
  6016  	Optional *bool `locationName:"optional" type:"boolean" required:"true"`
  6017  
  6018  	// Indicates that the property is used with polling. An action type can have
  6019  	// up to one queryable property. If it has one, that property must be both required
  6020  	// and not secret.
  6021  	Queryable *bool `locationName:"queryable" type:"boolean"`
  6022  }
  6023  
  6024  // String returns the string representation.
  6025  //
  6026  // API parameter values that are decorated as "sensitive" in the API will not
  6027  // be included in the string output. The member name will be present, but the
  6028  // value will be replaced with "sensitive".
  6029  func (s ActionTypeProperty) String() string {
  6030  	return awsutil.Prettify(s)
  6031  }
  6032  
  6033  // GoString 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 ActionTypeProperty) GoString() string {
  6039  	return s.String()
  6040  }
  6041  
  6042  // Validate inspects the fields of the type to determine if they are valid.
  6043  func (s *ActionTypeProperty) Validate() error {
  6044  	invalidParams := request.ErrInvalidParams{Context: "ActionTypeProperty"}
  6045  	if s.Description != nil && len(*s.Description) < 1 {
  6046  		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
  6047  	}
  6048  	if s.Key == nil {
  6049  		invalidParams.Add(request.NewErrParamRequired("Key"))
  6050  	}
  6051  	if s.Name == nil {
  6052  		invalidParams.Add(request.NewErrParamRequired("Name"))
  6053  	}
  6054  	if s.Name != nil && len(*s.Name) < 1 {
  6055  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
  6056  	}
  6057  	if s.NoEcho == nil {
  6058  		invalidParams.Add(request.NewErrParamRequired("NoEcho"))
  6059  	}
  6060  	if s.Optional == nil {
  6061  		invalidParams.Add(request.NewErrParamRequired("Optional"))
  6062  	}
  6063  
  6064  	if invalidParams.Len() > 0 {
  6065  		return invalidParams
  6066  	}
  6067  	return nil
  6068  }
  6069  
  6070  // SetDescription sets the Description field's value.
  6071  func (s *ActionTypeProperty) SetDescription(v string) *ActionTypeProperty {
  6072  	s.Description = &v
  6073  	return s
  6074  }
  6075  
  6076  // SetKey sets the Key field's value.
  6077  func (s *ActionTypeProperty) SetKey(v bool) *ActionTypeProperty {
  6078  	s.Key = &v
  6079  	return s
  6080  }
  6081  
  6082  // SetName sets the Name field's value.
  6083  func (s *ActionTypeProperty) SetName(v string) *ActionTypeProperty {
  6084  	s.Name = &v
  6085  	return s
  6086  }
  6087  
  6088  // SetNoEcho sets the NoEcho field's value.
  6089  func (s *ActionTypeProperty) SetNoEcho(v bool) *ActionTypeProperty {
  6090  	s.NoEcho = &v
  6091  	return s
  6092  }
  6093  
  6094  // SetOptional sets the Optional field's value.
  6095  func (s *ActionTypeProperty) SetOptional(v bool) *ActionTypeProperty {
  6096  	s.Optional = &v
  6097  	return s
  6098  }
  6099  
  6100  // SetQueryable sets the Queryable field's value.
  6101  func (s *ActionTypeProperty) SetQueryable(v bool) *ActionTypeProperty {
  6102  	s.Queryable = &v
  6103  	return s
  6104  }
  6105  
  6106  // Returns information about the settings for an action type.
  6107  type ActionTypeSettings struct {
  6108  	_ struct{} `type:"structure"`
  6109  
  6110  	// The URL returned to the AWS CodePipeline console that provides a deep link
  6111  	// to the resources of the external system, such as the configuration page for
  6112  	// an AWS CodeDeploy deployment group. This link is provided as part of the
  6113  	// action display in the pipeline.
  6114  	EntityUrlTemplate *string `locationName:"entityUrlTemplate" min:"1" type:"string"`
  6115  
  6116  	// The URL returned to the AWS CodePipeline console that contains a link to
  6117  	// the top-level landing page for the external system, such as the console page
  6118  	// for AWS CodeDeploy. This link is shown on the pipeline view page in the AWS
  6119  	// CodePipeline console and provides a link to the execution entity of the external
  6120  	// action.
  6121  	ExecutionUrlTemplate *string `locationName:"executionUrlTemplate" min:"1" type:"string"`
  6122  
  6123  	// The URL returned to the AWS CodePipeline console that contains a link to
  6124  	// the page where customers can update or change the configuration of the external
  6125  	// action.
  6126  	RevisionUrlTemplate *string `locationName:"revisionUrlTemplate" min:"1" type:"string"`
  6127  
  6128  	// The URL of a sign-up page where users can sign up for an external service
  6129  	// and perform initial configuration of the action provided by that service.
  6130  	ThirdPartyConfigurationUrl *string `locationName:"thirdPartyConfigurationUrl" min:"1" type:"string"`
  6131  }
  6132  
  6133  // String returns the string representation.
  6134  //
  6135  // API parameter values that are decorated as "sensitive" in the API will not
  6136  // be included in the string output. The member name will be present, but the
  6137  // value will be replaced with "sensitive".
  6138  func (s ActionTypeSettings) String() string {
  6139  	return awsutil.Prettify(s)
  6140  }
  6141  
  6142  // GoString returns the string representation.
  6143  //
  6144  // API parameter values that are decorated as "sensitive" in the API will not
  6145  // be included in the string output. The member name will be present, but the
  6146  // value will be replaced with "sensitive".
  6147  func (s ActionTypeSettings) GoString() string {
  6148  	return s.String()
  6149  }
  6150  
  6151  // Validate inspects the fields of the type to determine if they are valid.
  6152  func (s *ActionTypeSettings) Validate() error {
  6153  	invalidParams := request.ErrInvalidParams{Context: "ActionTypeSettings"}
  6154  	if s.EntityUrlTemplate != nil && len(*s.EntityUrlTemplate) < 1 {
  6155  		invalidParams.Add(request.NewErrParamMinLen("EntityUrlTemplate", 1))
  6156  	}
  6157  	if s.ExecutionUrlTemplate != nil && len(*s.ExecutionUrlTemplate) < 1 {
  6158  		invalidParams.Add(request.NewErrParamMinLen("ExecutionUrlTemplate", 1))
  6159  	}
  6160  	if s.RevisionUrlTemplate != nil && len(*s.RevisionUrlTemplate) < 1 {
  6161  		invalidParams.Add(request.NewErrParamMinLen("RevisionUrlTemplate", 1))
  6162  	}
  6163  	if s.ThirdPartyConfigurationUrl != nil && len(*s.ThirdPartyConfigurationUrl) < 1 {
  6164  		invalidParams.Add(request.NewErrParamMinLen("ThirdPartyConfigurationUrl", 1))
  6165  	}
  6166  
  6167  	if invalidParams.Len() > 0 {
  6168  		return invalidParams
  6169  	}
  6170  	return nil
  6171  }
  6172  
  6173  // SetEntityUrlTemplate sets the EntityUrlTemplate field's value.
  6174  func (s *ActionTypeSettings) SetEntityUrlTemplate(v string) *ActionTypeSettings {
  6175  	s.EntityUrlTemplate = &v
  6176  	return s
  6177  }
  6178  
  6179  // SetExecutionUrlTemplate sets the ExecutionUrlTemplate field's value.
  6180  func (s *ActionTypeSettings) SetExecutionUrlTemplate(v string) *ActionTypeSettings {
  6181  	s.ExecutionUrlTemplate = &v
  6182  	return s
  6183  }
  6184  
  6185  // SetRevisionUrlTemplate sets the RevisionUrlTemplate field's value.
  6186  func (s *ActionTypeSettings) SetRevisionUrlTemplate(v string) *ActionTypeSettings {
  6187  	s.RevisionUrlTemplate = &v
  6188  	return s
  6189  }
  6190  
  6191  // SetThirdPartyConfigurationUrl sets the ThirdPartyConfigurationUrl field's value.
  6192  func (s *ActionTypeSettings) SetThirdPartyConfigurationUrl(v string) *ActionTypeSettings {
  6193  	s.ThirdPartyConfigurationUrl = &v
  6194  	return s
  6195  }
  6196  
  6197  // Returns information about URLs for web pages that display to customers as
  6198  // links on the pipeline view, such as an external configuration page for the
  6199  // action type.
  6200  type ActionTypeUrls struct {
  6201  	_ struct{} `type:"structure"`
  6202  
  6203  	// The URL returned to the CodePipeline console that contains a link to the
  6204  	// page where customers can configure the external action.
  6205  	ConfigurationUrl *string `locationName:"configurationUrl" min:"1" type:"string"`
  6206  
  6207  	// The URL returned to the CodePipeline console that provides a deep link to
  6208  	// the resources of the external system, such as a status page. This link is
  6209  	// provided as part of the action display in the pipeline.
  6210  	EntityUrlTemplate *string `locationName:"entityUrlTemplate" min:"1" type:"string"`
  6211  
  6212  	// The link to an execution page for the action type in progress. For example,
  6213  	// for a CodeDeploy action, this link is shown on the pipeline view page in
  6214  	// the CodePipeline console, and it links to a CodeDeploy status page.
  6215  	ExecutionUrlTemplate *string `locationName:"executionUrlTemplate" min:"1" type:"string"`
  6216  
  6217  	// The URL returned to the CodePipeline console that contains a link to the
  6218  	// page where customers can update or change the configuration of the external
  6219  	// action.
  6220  	RevisionUrlTemplate *string `locationName:"revisionUrlTemplate" min:"1" type:"string"`
  6221  }
  6222  
  6223  // String returns the string representation.
  6224  //
  6225  // API parameter values that are decorated as "sensitive" in the API will not
  6226  // be included in the string output. The member name will be present, but the
  6227  // value will be replaced with "sensitive".
  6228  func (s ActionTypeUrls) String() string {
  6229  	return awsutil.Prettify(s)
  6230  }
  6231  
  6232  // GoString returns the string representation.
  6233  //
  6234  // API parameter values that are decorated as "sensitive" in the API will not
  6235  // be included in the string output. The member name will be present, but the
  6236  // value will be replaced with "sensitive".
  6237  func (s ActionTypeUrls) GoString() string {
  6238  	return s.String()
  6239  }
  6240  
  6241  // Validate inspects the fields of the type to determine if they are valid.
  6242  func (s *ActionTypeUrls) Validate() error {
  6243  	invalidParams := request.ErrInvalidParams{Context: "ActionTypeUrls"}
  6244  	if s.ConfigurationUrl != nil && len(*s.ConfigurationUrl) < 1 {
  6245  		invalidParams.Add(request.NewErrParamMinLen("ConfigurationUrl", 1))
  6246  	}
  6247  	if s.EntityUrlTemplate != nil && len(*s.EntityUrlTemplate) < 1 {
  6248  		invalidParams.Add(request.NewErrParamMinLen("EntityUrlTemplate", 1))
  6249  	}
  6250  	if s.ExecutionUrlTemplate != nil && len(*s.ExecutionUrlTemplate) < 1 {
  6251  		invalidParams.Add(request.NewErrParamMinLen("ExecutionUrlTemplate", 1))
  6252  	}
  6253  	if s.RevisionUrlTemplate != nil && len(*s.RevisionUrlTemplate) < 1 {
  6254  		invalidParams.Add(request.NewErrParamMinLen("RevisionUrlTemplate", 1))
  6255  	}
  6256  
  6257  	if invalidParams.Len() > 0 {
  6258  		return invalidParams
  6259  	}
  6260  	return nil
  6261  }
  6262  
  6263  // SetConfigurationUrl sets the ConfigurationUrl field's value.
  6264  func (s *ActionTypeUrls) SetConfigurationUrl(v string) *ActionTypeUrls {
  6265  	s.ConfigurationUrl = &v
  6266  	return s
  6267  }
  6268  
  6269  // SetEntityUrlTemplate sets the EntityUrlTemplate field's value.
  6270  func (s *ActionTypeUrls) SetEntityUrlTemplate(v string) *ActionTypeUrls {
  6271  	s.EntityUrlTemplate = &v
  6272  	return s
  6273  }
  6274  
  6275  // SetExecutionUrlTemplate sets the ExecutionUrlTemplate field's value.
  6276  func (s *ActionTypeUrls) SetExecutionUrlTemplate(v string) *ActionTypeUrls {
  6277  	s.ExecutionUrlTemplate = &v
  6278  	return s
  6279  }
  6280  
  6281  // SetRevisionUrlTemplate sets the RevisionUrlTemplate field's value.
  6282  func (s *ActionTypeUrls) SetRevisionUrlTemplate(v string) *ActionTypeUrls {
  6283  	s.RevisionUrlTemplate = &v
  6284  	return s
  6285  }
  6286  
  6287  // The approval action has already been approved or rejected.
  6288  type ApprovalAlreadyCompletedException struct {
  6289  	_            struct{}                  `type:"structure"`
  6290  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  6291  
  6292  	Message_ *string `locationName:"message" type:"string"`
  6293  }
  6294  
  6295  // String returns the string representation.
  6296  //
  6297  // API parameter values that are decorated as "sensitive" in the API will not
  6298  // be included in the string output. The member name will be present, but the
  6299  // value will be replaced with "sensitive".
  6300  func (s ApprovalAlreadyCompletedException) String() string {
  6301  	return awsutil.Prettify(s)
  6302  }
  6303  
  6304  // GoString returns the string representation.
  6305  //
  6306  // API parameter values that are decorated as "sensitive" in the API will not
  6307  // be included in the string output. The member name will be present, but the
  6308  // value will be replaced with "sensitive".
  6309  func (s ApprovalAlreadyCompletedException) GoString() string {
  6310  	return s.String()
  6311  }
  6312  
  6313  func newErrorApprovalAlreadyCompletedException(v protocol.ResponseMetadata) error {
  6314  	return &ApprovalAlreadyCompletedException{
  6315  		RespMetadata: v,
  6316  	}
  6317  }
  6318  
  6319  // Code returns the exception type name.
  6320  func (s *ApprovalAlreadyCompletedException) Code() string {
  6321  	return "ApprovalAlreadyCompletedException"
  6322  }
  6323  
  6324  // Message returns the exception's message.
  6325  func (s *ApprovalAlreadyCompletedException) Message() string {
  6326  	if s.Message_ != nil {
  6327  		return *s.Message_
  6328  	}
  6329  	return ""
  6330  }
  6331  
  6332  // OrigErr always returns nil, satisfies awserr.Error interface.
  6333  func (s *ApprovalAlreadyCompletedException) OrigErr() error {
  6334  	return nil
  6335  }
  6336  
  6337  func (s *ApprovalAlreadyCompletedException) Error() string {
  6338  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  6339  }
  6340  
  6341  // Status code returns the HTTP status code for the request's response error.
  6342  func (s *ApprovalAlreadyCompletedException) StatusCode() int {
  6343  	return s.RespMetadata.StatusCode
  6344  }
  6345  
  6346  // RequestID returns the service's response RequestID for request.
  6347  func (s *ApprovalAlreadyCompletedException) RequestID() string {
  6348  	return s.RespMetadata.RequestID
  6349  }
  6350  
  6351  // Represents information about the result of an approval request.
  6352  type ApprovalResult struct {
  6353  	_ struct{} `type:"structure"`
  6354  
  6355  	// The response submitted by a reviewer assigned to an approval action request.
  6356  	//
  6357  	// Status is a required field
  6358  	Status *string `locationName:"status" type:"string" required:"true" enum:"ApprovalStatus"`
  6359  
  6360  	// The summary of the current status of the approval request.
  6361  	//
  6362  	// Summary is a required field
  6363  	Summary *string `locationName:"summary" type:"string" required:"true"`
  6364  }
  6365  
  6366  // String returns the string representation.
  6367  //
  6368  // API parameter values that are decorated as "sensitive" in the API will not
  6369  // be included in the string output. The member name will be present, but the
  6370  // value will be replaced with "sensitive".
  6371  func (s ApprovalResult) String() string {
  6372  	return awsutil.Prettify(s)
  6373  }
  6374  
  6375  // GoString returns the string representation.
  6376  //
  6377  // API parameter values that are decorated as "sensitive" in the API will not
  6378  // be included in the string output. The member name will be present, but the
  6379  // value will be replaced with "sensitive".
  6380  func (s ApprovalResult) GoString() string {
  6381  	return s.String()
  6382  }
  6383  
  6384  // Validate inspects the fields of the type to determine if they are valid.
  6385  func (s *ApprovalResult) Validate() error {
  6386  	invalidParams := request.ErrInvalidParams{Context: "ApprovalResult"}
  6387  	if s.Status == nil {
  6388  		invalidParams.Add(request.NewErrParamRequired("Status"))
  6389  	}
  6390  	if s.Summary == nil {
  6391  		invalidParams.Add(request.NewErrParamRequired("Summary"))
  6392  	}
  6393  
  6394  	if invalidParams.Len() > 0 {
  6395  		return invalidParams
  6396  	}
  6397  	return nil
  6398  }
  6399  
  6400  // SetStatus sets the Status field's value.
  6401  func (s *ApprovalResult) SetStatus(v string) *ApprovalResult {
  6402  	s.Status = &v
  6403  	return s
  6404  }
  6405  
  6406  // SetSummary sets the Summary field's value.
  6407  func (s *ApprovalResult) SetSummary(v string) *ApprovalResult {
  6408  	s.Summary = &v
  6409  	return s
  6410  }
  6411  
  6412  // Represents information about an artifact that is worked on by actions in
  6413  // the pipeline.
  6414  type Artifact struct {
  6415  	_ struct{} `type:"structure"`
  6416  
  6417  	// The location of an artifact.
  6418  	Location *ArtifactLocation `locationName:"location" type:"structure"`
  6419  
  6420  	// The artifact's name.
  6421  	Name *string `locationName:"name" min:"1" type:"string"`
  6422  
  6423  	// The artifact's revision ID. Depending on the type of object, this could be
  6424  	// a commit ID (GitHub) or a revision ID (Amazon S3).
  6425  	Revision *string `locationName:"revision" min:"1" type:"string"`
  6426  }
  6427  
  6428  // String returns the string representation.
  6429  //
  6430  // API parameter values that are decorated as "sensitive" in the API will not
  6431  // be included in the string output. The member name will be present, but the
  6432  // value will be replaced with "sensitive".
  6433  func (s Artifact) String() string {
  6434  	return awsutil.Prettify(s)
  6435  }
  6436  
  6437  // GoString returns the string representation.
  6438  //
  6439  // API parameter values that are decorated as "sensitive" in the API will not
  6440  // be included in the string output. The member name will be present, but the
  6441  // value will be replaced with "sensitive".
  6442  func (s Artifact) GoString() string {
  6443  	return s.String()
  6444  }
  6445  
  6446  // SetLocation sets the Location field's value.
  6447  func (s *Artifact) SetLocation(v *ArtifactLocation) *Artifact {
  6448  	s.Location = v
  6449  	return s
  6450  }
  6451  
  6452  // SetName sets the Name field's value.
  6453  func (s *Artifact) SetName(v string) *Artifact {
  6454  	s.Name = &v
  6455  	return s
  6456  }
  6457  
  6458  // SetRevision sets the Revision field's value.
  6459  func (s *Artifact) SetRevision(v string) *Artifact {
  6460  	s.Revision = &v
  6461  	return s
  6462  }
  6463  
  6464  // Artifact details for the action execution, such as the artifact location.
  6465  type ArtifactDetail struct {
  6466  	_ struct{} `type:"structure"`
  6467  
  6468  	// The artifact object name for the action execution.
  6469  	Name *string `locationName:"name" min:"1" type:"string"`
  6470  
  6471  	// The Amazon S3 artifact location for the action execution.
  6472  	S3location *S3Location `locationName:"s3location" type:"structure"`
  6473  }
  6474  
  6475  // String returns the string representation.
  6476  //
  6477  // API parameter values that are decorated as "sensitive" in the API will not
  6478  // be included in the string output. The member name will be present, but the
  6479  // value will be replaced with "sensitive".
  6480  func (s ArtifactDetail) String() string {
  6481  	return awsutil.Prettify(s)
  6482  }
  6483  
  6484  // GoString returns the string representation.
  6485  //
  6486  // API parameter values that are decorated as "sensitive" in the API will not
  6487  // be included in the string output. The member name will be present, but the
  6488  // value will be replaced with "sensitive".
  6489  func (s ArtifactDetail) GoString() string {
  6490  	return s.String()
  6491  }
  6492  
  6493  // SetName sets the Name field's value.
  6494  func (s *ArtifactDetail) SetName(v string) *ArtifactDetail {
  6495  	s.Name = &v
  6496  	return s
  6497  }
  6498  
  6499  // SetS3location sets the S3location field's value.
  6500  func (s *ArtifactDetail) SetS3location(v *S3Location) *ArtifactDetail {
  6501  	s.S3location = v
  6502  	return s
  6503  }
  6504  
  6505  // Returns information about the details of an artifact.
  6506  type ArtifactDetails struct {
  6507  	_ struct{} `type:"structure"`
  6508  
  6509  	// The maximum number of artifacts allowed for the action type.
  6510  	//
  6511  	// MaximumCount is a required field
  6512  	MaximumCount *int64 `locationName:"maximumCount" type:"integer" required:"true"`
  6513  
  6514  	// The minimum number of artifacts allowed for the action type.
  6515  	//
  6516  	// MinimumCount is a required field
  6517  	MinimumCount *int64 `locationName:"minimumCount" type:"integer" required:"true"`
  6518  }
  6519  
  6520  // String returns the string representation.
  6521  //
  6522  // API parameter values that are decorated as "sensitive" in the API will not
  6523  // be included in the string output. The member name will be present, but the
  6524  // value will be replaced with "sensitive".
  6525  func (s ArtifactDetails) String() string {
  6526  	return awsutil.Prettify(s)
  6527  }
  6528  
  6529  // GoString returns the string representation.
  6530  //
  6531  // API parameter values that are decorated as "sensitive" in the API will not
  6532  // be included in the string output. The member name will be present, but the
  6533  // value will be replaced with "sensitive".
  6534  func (s ArtifactDetails) GoString() string {
  6535  	return s.String()
  6536  }
  6537  
  6538  // Validate inspects the fields of the type to determine if they are valid.
  6539  func (s *ArtifactDetails) Validate() error {
  6540  	invalidParams := request.ErrInvalidParams{Context: "ArtifactDetails"}
  6541  	if s.MaximumCount == nil {
  6542  		invalidParams.Add(request.NewErrParamRequired("MaximumCount"))
  6543  	}
  6544  	if s.MinimumCount == nil {
  6545  		invalidParams.Add(request.NewErrParamRequired("MinimumCount"))
  6546  	}
  6547  
  6548  	if invalidParams.Len() > 0 {
  6549  		return invalidParams
  6550  	}
  6551  	return nil
  6552  }
  6553  
  6554  // SetMaximumCount sets the MaximumCount field's value.
  6555  func (s *ArtifactDetails) SetMaximumCount(v int64) *ArtifactDetails {
  6556  	s.MaximumCount = &v
  6557  	return s
  6558  }
  6559  
  6560  // SetMinimumCount sets the MinimumCount field's value.
  6561  func (s *ArtifactDetails) SetMinimumCount(v int64) *ArtifactDetails {
  6562  	s.MinimumCount = &v
  6563  	return s
  6564  }
  6565  
  6566  // Represents information about the location of an artifact.
  6567  type ArtifactLocation struct {
  6568  	_ struct{} `type:"structure"`
  6569  
  6570  	// The S3 bucket that contains the artifact.
  6571  	S3Location *S3ArtifactLocation `locationName:"s3Location" type:"structure"`
  6572  
  6573  	// The type of artifact in the location.
  6574  	Type *string `locationName:"type" type:"string" enum:"ArtifactLocationType"`
  6575  }
  6576  
  6577  // String returns the string representation.
  6578  //
  6579  // API parameter values that are decorated as "sensitive" in the API will not
  6580  // be included in the string output. The member name will be present, but the
  6581  // value will be replaced with "sensitive".
  6582  func (s ArtifactLocation) String() string {
  6583  	return awsutil.Prettify(s)
  6584  }
  6585  
  6586  // GoString returns the string representation.
  6587  //
  6588  // API parameter values that are decorated as "sensitive" in the API will not
  6589  // be included in the string output. The member name will be present, but the
  6590  // value will be replaced with "sensitive".
  6591  func (s ArtifactLocation) GoString() string {
  6592  	return s.String()
  6593  }
  6594  
  6595  // SetS3Location sets the S3Location field's value.
  6596  func (s *ArtifactLocation) SetS3Location(v *S3ArtifactLocation) *ArtifactLocation {
  6597  	s.S3Location = v
  6598  	return s
  6599  }
  6600  
  6601  // SetType sets the Type field's value.
  6602  func (s *ArtifactLocation) SetType(v string) *ArtifactLocation {
  6603  	s.Type = &v
  6604  	return s
  6605  }
  6606  
  6607  // Represents revision details of an artifact.
  6608  type ArtifactRevision struct {
  6609  	_ struct{} `type:"structure"`
  6610  
  6611  	// The date and time when the most recent revision of the artifact was created,
  6612  	// in timestamp format.
  6613  	Created *time.Time `locationName:"created" type:"timestamp"`
  6614  
  6615  	// The name of an artifact. This name might be system-generated, such as "MyApp",
  6616  	// or defined by the user when an action is created.
  6617  	Name *string `locationName:"name" min:"1" type:"string"`
  6618  
  6619  	// An additional identifier for a revision, such as a commit date or, for artifacts
  6620  	// stored in Amazon S3 buckets, the ETag value.
  6621  	RevisionChangeIdentifier *string `locationName:"revisionChangeIdentifier" min:"1" type:"string"`
  6622  
  6623  	// The revision ID of the artifact.
  6624  	RevisionId *string `locationName:"revisionId" min:"1" type:"string"`
  6625  
  6626  	// Summary information about the most recent revision of the artifact. For GitHub
  6627  	// and AWS CodeCommit repositories, the commit message. For Amazon S3 buckets
  6628  	// or actions, the user-provided content of a codepipeline-artifact-revision-summary
  6629  	// key specified in the object metadata.
  6630  	RevisionSummary *string `locationName:"revisionSummary" min:"1" type:"string"`
  6631  
  6632  	// The commit ID for the artifact revision. For artifacts stored in GitHub or
  6633  	// AWS CodeCommit repositories, the commit ID is linked to a commit details
  6634  	// page.
  6635  	RevisionUrl *string `locationName:"revisionUrl" min:"1" type:"string"`
  6636  }
  6637  
  6638  // String returns the string representation.
  6639  //
  6640  // API parameter values that are decorated as "sensitive" in the API will not
  6641  // be included in the string output. The member name will be present, but the
  6642  // value will be replaced with "sensitive".
  6643  func (s ArtifactRevision) String() string {
  6644  	return awsutil.Prettify(s)
  6645  }
  6646  
  6647  // GoString returns the string representation.
  6648  //
  6649  // API parameter values that are decorated as "sensitive" in the API will not
  6650  // be included in the string output. The member name will be present, but the
  6651  // value will be replaced with "sensitive".
  6652  func (s ArtifactRevision) GoString() string {
  6653  	return s.String()
  6654  }
  6655  
  6656  // SetCreated sets the Created field's value.
  6657  func (s *ArtifactRevision) SetCreated(v time.Time) *ArtifactRevision {
  6658  	s.Created = &v
  6659  	return s
  6660  }
  6661  
  6662  // SetName sets the Name field's value.
  6663  func (s *ArtifactRevision) SetName(v string) *ArtifactRevision {
  6664  	s.Name = &v
  6665  	return s
  6666  }
  6667  
  6668  // SetRevisionChangeIdentifier sets the RevisionChangeIdentifier field's value.
  6669  func (s *ArtifactRevision) SetRevisionChangeIdentifier(v string) *ArtifactRevision {
  6670  	s.RevisionChangeIdentifier = &v
  6671  	return s
  6672  }
  6673  
  6674  // SetRevisionId sets the RevisionId field's value.
  6675  func (s *ArtifactRevision) SetRevisionId(v string) *ArtifactRevision {
  6676  	s.RevisionId = &v
  6677  	return s
  6678  }
  6679  
  6680  // SetRevisionSummary sets the RevisionSummary field's value.
  6681  func (s *ArtifactRevision) SetRevisionSummary(v string) *ArtifactRevision {
  6682  	s.RevisionSummary = &v
  6683  	return s
  6684  }
  6685  
  6686  // SetRevisionUrl sets the RevisionUrl field's value.
  6687  func (s *ArtifactRevision) SetRevisionUrl(v string) *ArtifactRevision {
  6688  	s.RevisionUrl = &v
  6689  	return s
  6690  }
  6691  
  6692  // The S3 bucket where artifacts for the pipeline are stored.
  6693  //
  6694  // You must include either artifactStore or artifactStores in your pipeline,
  6695  // but you cannot use both. If you create a cross-region action in your pipeline,
  6696  // you must use artifactStores.
  6697  type ArtifactStore struct {
  6698  	_ struct{} `type:"structure"`
  6699  
  6700  	// The encryption key used to encrypt the data in the artifact store, such as
  6701  	// an AWS Key Management Service (AWS KMS) key. If this is undefined, the default
  6702  	// key for Amazon S3 is used.
  6703  	EncryptionKey *EncryptionKey `locationName:"encryptionKey" type:"structure"`
  6704  
  6705  	// The S3 bucket used for storing the artifacts for a pipeline. You can specify
  6706  	// the name of an S3 bucket but not a folder in the bucket. A folder to contain
  6707  	// the pipeline artifacts is created for you based on the name of the pipeline.
  6708  	// You can use any S3 bucket in the same AWS Region as the pipeline to store
  6709  	// your pipeline artifacts.
  6710  	//
  6711  	// Location is a required field
  6712  	Location *string `locationName:"location" min:"3" type:"string" required:"true"`
  6713  
  6714  	// The type of the artifact store, such as S3.
  6715  	//
  6716  	// Type is a required field
  6717  	Type *string `locationName:"type" type:"string" required:"true" enum:"ArtifactStoreType"`
  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 ArtifactStore) 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 ArtifactStore) GoString() string {
  6735  	return s.String()
  6736  }
  6737  
  6738  // Validate inspects the fields of the type to determine if they are valid.
  6739  func (s *ArtifactStore) Validate() error {
  6740  	invalidParams := request.ErrInvalidParams{Context: "ArtifactStore"}
  6741  	if s.Location == nil {
  6742  		invalidParams.Add(request.NewErrParamRequired("Location"))
  6743  	}
  6744  	if s.Location != nil && len(*s.Location) < 3 {
  6745  		invalidParams.Add(request.NewErrParamMinLen("Location", 3))
  6746  	}
  6747  	if s.Type == nil {
  6748  		invalidParams.Add(request.NewErrParamRequired("Type"))
  6749  	}
  6750  	if s.EncryptionKey != nil {
  6751  		if err := s.EncryptionKey.Validate(); err != nil {
  6752  			invalidParams.AddNested("EncryptionKey", err.(request.ErrInvalidParams))
  6753  		}
  6754  	}
  6755  
  6756  	if invalidParams.Len() > 0 {
  6757  		return invalidParams
  6758  	}
  6759  	return nil
  6760  }
  6761  
  6762  // SetEncryptionKey sets the EncryptionKey field's value.
  6763  func (s *ArtifactStore) SetEncryptionKey(v *EncryptionKey) *ArtifactStore {
  6764  	s.EncryptionKey = v
  6765  	return s
  6766  }
  6767  
  6768  // SetLocation sets the Location field's value.
  6769  func (s *ArtifactStore) SetLocation(v string) *ArtifactStore {
  6770  	s.Location = &v
  6771  	return s
  6772  }
  6773  
  6774  // SetType sets the Type field's value.
  6775  func (s *ArtifactStore) SetType(v string) *ArtifactStore {
  6776  	s.Type = &v
  6777  	return s
  6778  }
  6779  
  6780  // Reserved for future use.
  6781  type BlockerDeclaration struct {
  6782  	_ struct{} `type:"structure"`
  6783  
  6784  	// Reserved for future use.
  6785  	//
  6786  	// Name is a required field
  6787  	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
  6788  
  6789  	// Reserved for future use.
  6790  	//
  6791  	// Type is a required field
  6792  	Type *string `locationName:"type" type:"string" required:"true" enum:"BlockerType"`
  6793  }
  6794  
  6795  // String returns the string representation.
  6796  //
  6797  // API parameter values that are decorated as "sensitive" in the API will not
  6798  // be included in the string output. The member name will be present, but the
  6799  // value will be replaced with "sensitive".
  6800  func (s BlockerDeclaration) String() string {
  6801  	return awsutil.Prettify(s)
  6802  }
  6803  
  6804  // GoString returns the string representation.
  6805  //
  6806  // API parameter values that are decorated as "sensitive" in the API will not
  6807  // be included in the string output. The member name will be present, but the
  6808  // value will be replaced with "sensitive".
  6809  func (s BlockerDeclaration) GoString() string {
  6810  	return s.String()
  6811  }
  6812  
  6813  // Validate inspects the fields of the type to determine if they are valid.
  6814  func (s *BlockerDeclaration) Validate() error {
  6815  	invalidParams := request.ErrInvalidParams{Context: "BlockerDeclaration"}
  6816  	if s.Name == nil {
  6817  		invalidParams.Add(request.NewErrParamRequired("Name"))
  6818  	}
  6819  	if s.Name != nil && len(*s.Name) < 1 {
  6820  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
  6821  	}
  6822  	if s.Type == nil {
  6823  		invalidParams.Add(request.NewErrParamRequired("Type"))
  6824  	}
  6825  
  6826  	if invalidParams.Len() > 0 {
  6827  		return invalidParams
  6828  	}
  6829  	return nil
  6830  }
  6831  
  6832  // SetName sets the Name field's value.
  6833  func (s *BlockerDeclaration) SetName(v string) *BlockerDeclaration {
  6834  	s.Name = &v
  6835  	return s
  6836  }
  6837  
  6838  // SetType sets the Type field's value.
  6839  func (s *BlockerDeclaration) SetType(v string) *BlockerDeclaration {
  6840  	s.Type = &v
  6841  	return s
  6842  }
  6843  
  6844  // Unable to modify the tag due to a simultaneous update request.
  6845  type ConcurrentModificationException struct {
  6846  	_            struct{}                  `type:"structure"`
  6847  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  6848  
  6849  	Message_ *string `locationName:"message" min:"1" type:"string"`
  6850  }
  6851  
  6852  // String returns the string representation.
  6853  //
  6854  // API parameter values that are decorated as "sensitive" in the API will not
  6855  // be included in the string output. The member name will be present, but the
  6856  // value will be replaced with "sensitive".
  6857  func (s ConcurrentModificationException) String() string {
  6858  	return awsutil.Prettify(s)
  6859  }
  6860  
  6861  // GoString returns the string representation.
  6862  //
  6863  // API parameter values that are decorated as "sensitive" in the API will not
  6864  // be included in the string output. The member name will be present, but the
  6865  // value will be replaced with "sensitive".
  6866  func (s ConcurrentModificationException) GoString() string {
  6867  	return s.String()
  6868  }
  6869  
  6870  func newErrorConcurrentModificationException(v protocol.ResponseMetadata) error {
  6871  	return &ConcurrentModificationException{
  6872  		RespMetadata: v,
  6873  	}
  6874  }
  6875  
  6876  // Code returns the exception type name.
  6877  func (s *ConcurrentModificationException) Code() string {
  6878  	return "ConcurrentModificationException"
  6879  }
  6880  
  6881  // Message returns the exception's message.
  6882  func (s *ConcurrentModificationException) Message() string {
  6883  	if s.Message_ != nil {
  6884  		return *s.Message_
  6885  	}
  6886  	return ""
  6887  }
  6888  
  6889  // OrigErr always returns nil, satisfies awserr.Error interface.
  6890  func (s *ConcurrentModificationException) OrigErr() error {
  6891  	return nil
  6892  }
  6893  
  6894  func (s *ConcurrentModificationException) Error() string {
  6895  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  6896  }
  6897  
  6898  // Status code returns the HTTP status code for the request's response error.
  6899  func (s *ConcurrentModificationException) StatusCode() int {
  6900  	return s.RespMetadata.StatusCode
  6901  }
  6902  
  6903  // RequestID returns the service's response RequestID for request.
  6904  func (s *ConcurrentModificationException) RequestID() string {
  6905  	return s.RespMetadata.RequestID
  6906  }
  6907  
  6908  // Your request cannot be handled because the pipeline is busy handling ongoing
  6909  // activities. Try again later.
  6910  type ConflictException struct {
  6911  	_            struct{}                  `type:"structure"`
  6912  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  6913  
  6914  	Message_ *string `locationName:"message" min:"1" type:"string"`
  6915  }
  6916  
  6917  // String returns the string representation.
  6918  //
  6919  // API parameter values that are decorated as "sensitive" in the API will not
  6920  // be included in the string output. The member name will be present, but the
  6921  // value will be replaced with "sensitive".
  6922  func (s ConflictException) String() string {
  6923  	return awsutil.Prettify(s)
  6924  }
  6925  
  6926  // GoString returns the string representation.
  6927  //
  6928  // API parameter values that are decorated as "sensitive" in the API will not
  6929  // be included in the string output. The member name will be present, but the
  6930  // value will be replaced with "sensitive".
  6931  func (s ConflictException) GoString() string {
  6932  	return s.String()
  6933  }
  6934  
  6935  func newErrorConflictException(v protocol.ResponseMetadata) error {
  6936  	return &ConflictException{
  6937  		RespMetadata: v,
  6938  	}
  6939  }
  6940  
  6941  // Code returns the exception type name.
  6942  func (s *ConflictException) Code() string {
  6943  	return "ConflictException"
  6944  }
  6945  
  6946  // Message returns the exception's message.
  6947  func (s *ConflictException) Message() string {
  6948  	if s.Message_ != nil {
  6949  		return *s.Message_
  6950  	}
  6951  	return ""
  6952  }
  6953  
  6954  // OrigErr always returns nil, satisfies awserr.Error interface.
  6955  func (s *ConflictException) OrigErr() error {
  6956  	return nil
  6957  }
  6958  
  6959  func (s *ConflictException) Error() string {
  6960  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  6961  }
  6962  
  6963  // Status code returns the HTTP status code for the request's response error.
  6964  func (s *ConflictException) StatusCode() int {
  6965  	return s.RespMetadata.StatusCode
  6966  }
  6967  
  6968  // RequestID returns the service's response RequestID for request.
  6969  func (s *ConflictException) RequestID() string {
  6970  	return s.RespMetadata.RequestID
  6971  }
  6972  
  6973  // Represents the input of a CreateCustomActionType operation.
  6974  type CreateCustomActionTypeInput struct {
  6975  	_ struct{} `type:"structure"`
  6976  
  6977  	// The category of the custom action, such as a build action or a test action.
  6978  	//
  6979  	// Category is a required field
  6980  	Category *string `locationName:"category" type:"string" required:"true" enum:"ActionCategory"`
  6981  
  6982  	// The configuration properties for the custom action.
  6983  	//
  6984  	// You can refer to a name in the configuration properties of the custom action
  6985  	// within the URL templates by following the format of {Config:name}, as long
  6986  	// as the configuration property is both required and not secret. For more information,
  6987  	// see Create a Custom Action for a Pipeline (https://docs.aws.amazon.com/codepipeline/latest/userguide/how-to-create-custom-action.html).
  6988  	ConfigurationProperties []*ActionConfigurationProperty `locationName:"configurationProperties" type:"list"`
  6989  
  6990  	// The details of the input artifact for the action, such as its commit ID.
  6991  	//
  6992  	// InputArtifactDetails is a required field
  6993  	InputArtifactDetails *ArtifactDetails `locationName:"inputArtifactDetails" type:"structure" required:"true"`
  6994  
  6995  	// The details of the output artifact of the action, such as its commit ID.
  6996  	//
  6997  	// OutputArtifactDetails is a required field
  6998  	OutputArtifactDetails *ArtifactDetails `locationName:"outputArtifactDetails" type:"structure" required:"true"`
  6999  
  7000  	// The provider of the service used in the custom action, such as AWS CodeDeploy.
  7001  	//
  7002  	// Provider is a required field
  7003  	Provider *string `locationName:"provider" min:"1" type:"string" required:"true"`
  7004  
  7005  	// URLs that provide users information about this custom action.
  7006  	Settings *ActionTypeSettings `locationName:"settings" type:"structure"`
  7007  
  7008  	// The tags for the custom action.
  7009  	Tags []*Tag `locationName:"tags" type:"list"`
  7010  
  7011  	// The version identifier of the custom action.
  7012  	//
  7013  	// Version is a required field
  7014  	Version *string `locationName:"version" min:"1" type:"string" required:"true"`
  7015  }
  7016  
  7017  // String returns the string representation.
  7018  //
  7019  // API parameter values that are decorated as "sensitive" in the API will not
  7020  // be included in the string output. The member name will be present, but the
  7021  // value will be replaced with "sensitive".
  7022  func (s CreateCustomActionTypeInput) String() string {
  7023  	return awsutil.Prettify(s)
  7024  }
  7025  
  7026  // GoString returns the string representation.
  7027  //
  7028  // API parameter values that are decorated as "sensitive" in the API will not
  7029  // be included in the string output. The member name will be present, but the
  7030  // value will be replaced with "sensitive".
  7031  func (s CreateCustomActionTypeInput) GoString() string {
  7032  	return s.String()
  7033  }
  7034  
  7035  // Validate inspects the fields of the type to determine if they are valid.
  7036  func (s *CreateCustomActionTypeInput) Validate() error {
  7037  	invalidParams := request.ErrInvalidParams{Context: "CreateCustomActionTypeInput"}
  7038  	if s.Category == nil {
  7039  		invalidParams.Add(request.NewErrParamRequired("Category"))
  7040  	}
  7041  	if s.InputArtifactDetails == nil {
  7042  		invalidParams.Add(request.NewErrParamRequired("InputArtifactDetails"))
  7043  	}
  7044  	if s.OutputArtifactDetails == nil {
  7045  		invalidParams.Add(request.NewErrParamRequired("OutputArtifactDetails"))
  7046  	}
  7047  	if s.Provider == nil {
  7048  		invalidParams.Add(request.NewErrParamRequired("Provider"))
  7049  	}
  7050  	if s.Provider != nil && len(*s.Provider) < 1 {
  7051  		invalidParams.Add(request.NewErrParamMinLen("Provider", 1))
  7052  	}
  7053  	if s.Version == nil {
  7054  		invalidParams.Add(request.NewErrParamRequired("Version"))
  7055  	}
  7056  	if s.Version != nil && len(*s.Version) < 1 {
  7057  		invalidParams.Add(request.NewErrParamMinLen("Version", 1))
  7058  	}
  7059  	if s.ConfigurationProperties != nil {
  7060  		for i, v := range s.ConfigurationProperties {
  7061  			if v == nil {
  7062  				continue
  7063  			}
  7064  			if err := v.Validate(); err != nil {
  7065  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ConfigurationProperties", i), err.(request.ErrInvalidParams))
  7066  			}
  7067  		}
  7068  	}
  7069  	if s.InputArtifactDetails != nil {
  7070  		if err := s.InputArtifactDetails.Validate(); err != nil {
  7071  			invalidParams.AddNested("InputArtifactDetails", err.(request.ErrInvalidParams))
  7072  		}
  7073  	}
  7074  	if s.OutputArtifactDetails != nil {
  7075  		if err := s.OutputArtifactDetails.Validate(); err != nil {
  7076  			invalidParams.AddNested("OutputArtifactDetails", err.(request.ErrInvalidParams))
  7077  		}
  7078  	}
  7079  	if s.Settings != nil {
  7080  		if err := s.Settings.Validate(); err != nil {
  7081  			invalidParams.AddNested("Settings", err.(request.ErrInvalidParams))
  7082  		}
  7083  	}
  7084  	if s.Tags != nil {
  7085  		for i, v := range s.Tags {
  7086  			if v == nil {
  7087  				continue
  7088  			}
  7089  			if err := v.Validate(); err != nil {
  7090  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
  7091  			}
  7092  		}
  7093  	}
  7094  
  7095  	if invalidParams.Len() > 0 {
  7096  		return invalidParams
  7097  	}
  7098  	return nil
  7099  }
  7100  
  7101  // SetCategory sets the Category field's value.
  7102  func (s *CreateCustomActionTypeInput) SetCategory(v string) *CreateCustomActionTypeInput {
  7103  	s.Category = &v
  7104  	return s
  7105  }
  7106  
  7107  // SetConfigurationProperties sets the ConfigurationProperties field's value.
  7108  func (s *CreateCustomActionTypeInput) SetConfigurationProperties(v []*ActionConfigurationProperty) *CreateCustomActionTypeInput {
  7109  	s.ConfigurationProperties = v
  7110  	return s
  7111  }
  7112  
  7113  // SetInputArtifactDetails sets the InputArtifactDetails field's value.
  7114  func (s *CreateCustomActionTypeInput) SetInputArtifactDetails(v *ArtifactDetails) *CreateCustomActionTypeInput {
  7115  	s.InputArtifactDetails = v
  7116  	return s
  7117  }
  7118  
  7119  // SetOutputArtifactDetails sets the OutputArtifactDetails field's value.
  7120  func (s *CreateCustomActionTypeInput) SetOutputArtifactDetails(v *ArtifactDetails) *CreateCustomActionTypeInput {
  7121  	s.OutputArtifactDetails = v
  7122  	return s
  7123  }
  7124  
  7125  // SetProvider sets the Provider field's value.
  7126  func (s *CreateCustomActionTypeInput) SetProvider(v string) *CreateCustomActionTypeInput {
  7127  	s.Provider = &v
  7128  	return s
  7129  }
  7130  
  7131  // SetSettings sets the Settings field's value.
  7132  func (s *CreateCustomActionTypeInput) SetSettings(v *ActionTypeSettings) *CreateCustomActionTypeInput {
  7133  	s.Settings = v
  7134  	return s
  7135  }
  7136  
  7137  // SetTags sets the Tags field's value.
  7138  func (s *CreateCustomActionTypeInput) SetTags(v []*Tag) *CreateCustomActionTypeInput {
  7139  	s.Tags = v
  7140  	return s
  7141  }
  7142  
  7143  // SetVersion sets the Version field's value.
  7144  func (s *CreateCustomActionTypeInput) SetVersion(v string) *CreateCustomActionTypeInput {
  7145  	s.Version = &v
  7146  	return s
  7147  }
  7148  
  7149  // Represents the output of a CreateCustomActionType operation.
  7150  type CreateCustomActionTypeOutput struct {
  7151  	_ struct{} `type:"structure"`
  7152  
  7153  	// Returns information about the details of an action type.
  7154  	//
  7155  	// ActionType is a required field
  7156  	ActionType *ActionType `locationName:"actionType" type:"structure" required:"true"`
  7157  
  7158  	// Specifies the tags applied to the custom action.
  7159  	Tags []*Tag `locationName:"tags" type:"list"`
  7160  }
  7161  
  7162  // String returns the string representation.
  7163  //
  7164  // API parameter values that are decorated as "sensitive" in the API will not
  7165  // be included in the string output. The member name will be present, but the
  7166  // value will be replaced with "sensitive".
  7167  func (s CreateCustomActionTypeOutput) String() string {
  7168  	return awsutil.Prettify(s)
  7169  }
  7170  
  7171  // GoString returns the string representation.
  7172  //
  7173  // API parameter values that are decorated as "sensitive" in the API will not
  7174  // be included in the string output. The member name will be present, but the
  7175  // value will be replaced with "sensitive".
  7176  func (s CreateCustomActionTypeOutput) GoString() string {
  7177  	return s.String()
  7178  }
  7179  
  7180  // SetActionType sets the ActionType field's value.
  7181  func (s *CreateCustomActionTypeOutput) SetActionType(v *ActionType) *CreateCustomActionTypeOutput {
  7182  	s.ActionType = v
  7183  	return s
  7184  }
  7185  
  7186  // SetTags sets the Tags field's value.
  7187  func (s *CreateCustomActionTypeOutput) SetTags(v []*Tag) *CreateCustomActionTypeOutput {
  7188  	s.Tags = v
  7189  	return s
  7190  }
  7191  
  7192  // Represents the input of a CreatePipeline action.
  7193  type CreatePipelineInput struct {
  7194  	_ struct{} `type:"structure"`
  7195  
  7196  	// Represents the structure of actions and stages to be performed in the pipeline.
  7197  	//
  7198  	// Pipeline is a required field
  7199  	Pipeline *PipelineDeclaration `locationName:"pipeline" type:"structure" required:"true"`
  7200  
  7201  	// The tags for the pipeline.
  7202  	Tags []*Tag `locationName:"tags" type:"list"`
  7203  }
  7204  
  7205  // String returns the string representation.
  7206  //
  7207  // API parameter values that are decorated as "sensitive" in the API will not
  7208  // be included in the string output. The member name will be present, but the
  7209  // value will be replaced with "sensitive".
  7210  func (s CreatePipelineInput) String() string {
  7211  	return awsutil.Prettify(s)
  7212  }
  7213  
  7214  // GoString returns the string representation.
  7215  //
  7216  // API parameter values that are decorated as "sensitive" in the API will not
  7217  // be included in the string output. The member name will be present, but the
  7218  // value will be replaced with "sensitive".
  7219  func (s CreatePipelineInput) GoString() string {
  7220  	return s.String()
  7221  }
  7222  
  7223  // Validate inspects the fields of the type to determine if they are valid.
  7224  func (s *CreatePipelineInput) Validate() error {
  7225  	invalidParams := request.ErrInvalidParams{Context: "CreatePipelineInput"}
  7226  	if s.Pipeline == nil {
  7227  		invalidParams.Add(request.NewErrParamRequired("Pipeline"))
  7228  	}
  7229  	if s.Pipeline != nil {
  7230  		if err := s.Pipeline.Validate(); err != nil {
  7231  			invalidParams.AddNested("Pipeline", err.(request.ErrInvalidParams))
  7232  		}
  7233  	}
  7234  	if s.Tags != nil {
  7235  		for i, v := range s.Tags {
  7236  			if v == nil {
  7237  				continue
  7238  			}
  7239  			if err := v.Validate(); err != nil {
  7240  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
  7241  			}
  7242  		}
  7243  	}
  7244  
  7245  	if invalidParams.Len() > 0 {
  7246  		return invalidParams
  7247  	}
  7248  	return nil
  7249  }
  7250  
  7251  // SetPipeline sets the Pipeline field's value.
  7252  func (s *CreatePipelineInput) SetPipeline(v *PipelineDeclaration) *CreatePipelineInput {
  7253  	s.Pipeline = v
  7254  	return s
  7255  }
  7256  
  7257  // SetTags sets the Tags field's value.
  7258  func (s *CreatePipelineInput) SetTags(v []*Tag) *CreatePipelineInput {
  7259  	s.Tags = v
  7260  	return s
  7261  }
  7262  
  7263  // Represents the output of a CreatePipeline action.
  7264  type CreatePipelineOutput struct {
  7265  	_ struct{} `type:"structure"`
  7266  
  7267  	// Represents the structure of actions and stages to be performed in the pipeline.
  7268  	Pipeline *PipelineDeclaration `locationName:"pipeline" type:"structure"`
  7269  
  7270  	// Specifies the tags applied to the pipeline.
  7271  	Tags []*Tag `locationName:"tags" type:"list"`
  7272  }
  7273  
  7274  // String returns the string representation.
  7275  //
  7276  // API parameter values that are decorated as "sensitive" in the API will not
  7277  // be included in the string output. The member name will be present, but the
  7278  // value will be replaced with "sensitive".
  7279  func (s CreatePipelineOutput) String() string {
  7280  	return awsutil.Prettify(s)
  7281  }
  7282  
  7283  // GoString returns the string representation.
  7284  //
  7285  // API parameter values that are decorated as "sensitive" in the API will not
  7286  // be included in the string output. The member name will be present, but the
  7287  // value will be replaced with "sensitive".
  7288  func (s CreatePipelineOutput) GoString() string {
  7289  	return s.String()
  7290  }
  7291  
  7292  // SetPipeline sets the Pipeline field's value.
  7293  func (s *CreatePipelineOutput) SetPipeline(v *PipelineDeclaration) *CreatePipelineOutput {
  7294  	s.Pipeline = v
  7295  	return s
  7296  }
  7297  
  7298  // SetTags sets the Tags field's value.
  7299  func (s *CreatePipelineOutput) SetTags(v []*Tag) *CreatePipelineOutput {
  7300  	s.Tags = v
  7301  	return s
  7302  }
  7303  
  7304  // Represents information about a current revision.
  7305  type CurrentRevision struct {
  7306  	_ struct{} `type:"structure"`
  7307  
  7308  	// The change identifier for the current revision.
  7309  	//
  7310  	// ChangeIdentifier is a required field
  7311  	ChangeIdentifier *string `locationName:"changeIdentifier" min:"1" type:"string" required:"true"`
  7312  
  7313  	// The date and time when the most recent revision of the artifact was created,
  7314  	// in timestamp format.
  7315  	Created *time.Time `locationName:"created" type:"timestamp"`
  7316  
  7317  	// The revision ID of the current version of an artifact.
  7318  	//
  7319  	// Revision is a required field
  7320  	Revision *string `locationName:"revision" min:"1" type:"string" required:"true"`
  7321  
  7322  	// The summary of the most recent revision of the artifact.
  7323  	RevisionSummary *string `locationName:"revisionSummary" min:"1" type:"string"`
  7324  }
  7325  
  7326  // String returns the string representation.
  7327  //
  7328  // API parameter values that are decorated as "sensitive" in the API will not
  7329  // be included in the string output. The member name will be present, but the
  7330  // value will be replaced with "sensitive".
  7331  func (s CurrentRevision) String() string {
  7332  	return awsutil.Prettify(s)
  7333  }
  7334  
  7335  // GoString returns the string representation.
  7336  //
  7337  // API parameter values that are decorated as "sensitive" in the API will not
  7338  // be included in the string output. The member name will be present, but the
  7339  // value will be replaced with "sensitive".
  7340  func (s CurrentRevision) GoString() string {
  7341  	return s.String()
  7342  }
  7343  
  7344  // Validate inspects the fields of the type to determine if they are valid.
  7345  func (s *CurrentRevision) Validate() error {
  7346  	invalidParams := request.ErrInvalidParams{Context: "CurrentRevision"}
  7347  	if s.ChangeIdentifier == nil {
  7348  		invalidParams.Add(request.NewErrParamRequired("ChangeIdentifier"))
  7349  	}
  7350  	if s.ChangeIdentifier != nil && len(*s.ChangeIdentifier) < 1 {
  7351  		invalidParams.Add(request.NewErrParamMinLen("ChangeIdentifier", 1))
  7352  	}
  7353  	if s.Revision == nil {
  7354  		invalidParams.Add(request.NewErrParamRequired("Revision"))
  7355  	}
  7356  	if s.Revision != nil && len(*s.Revision) < 1 {
  7357  		invalidParams.Add(request.NewErrParamMinLen("Revision", 1))
  7358  	}
  7359  	if s.RevisionSummary != nil && len(*s.RevisionSummary) < 1 {
  7360  		invalidParams.Add(request.NewErrParamMinLen("RevisionSummary", 1))
  7361  	}
  7362  
  7363  	if invalidParams.Len() > 0 {
  7364  		return invalidParams
  7365  	}
  7366  	return nil
  7367  }
  7368  
  7369  // SetChangeIdentifier sets the ChangeIdentifier field's value.
  7370  func (s *CurrentRevision) SetChangeIdentifier(v string) *CurrentRevision {
  7371  	s.ChangeIdentifier = &v
  7372  	return s
  7373  }
  7374  
  7375  // SetCreated sets the Created field's value.
  7376  func (s *CurrentRevision) SetCreated(v time.Time) *CurrentRevision {
  7377  	s.Created = &v
  7378  	return s
  7379  }
  7380  
  7381  // SetRevision sets the Revision field's value.
  7382  func (s *CurrentRevision) SetRevision(v string) *CurrentRevision {
  7383  	s.Revision = &v
  7384  	return s
  7385  }
  7386  
  7387  // SetRevisionSummary sets the RevisionSummary field's value.
  7388  func (s *CurrentRevision) SetRevisionSummary(v string) *CurrentRevision {
  7389  	s.RevisionSummary = &v
  7390  	return s
  7391  }
  7392  
  7393  // Represents the input of a DeleteCustomActionType operation. The custom action
  7394  // will be marked as deleted.
  7395  type DeleteCustomActionTypeInput struct {
  7396  	_ struct{} `type:"structure"`
  7397  
  7398  	// The category of the custom action that you want to delete, such as source
  7399  	// or deploy.
  7400  	//
  7401  	// Category is a required field
  7402  	Category *string `locationName:"category" type:"string" required:"true" enum:"ActionCategory"`
  7403  
  7404  	// The provider of the service used in the custom action, such as AWS CodeDeploy.
  7405  	//
  7406  	// Provider is a required field
  7407  	Provider *string `locationName:"provider" min:"1" type:"string" required:"true"`
  7408  
  7409  	// The version of the custom action to delete.
  7410  	//
  7411  	// Version is a required field
  7412  	Version *string `locationName:"version" min:"1" type:"string" required:"true"`
  7413  }
  7414  
  7415  // String returns the string representation.
  7416  //
  7417  // API parameter values that are decorated as "sensitive" in the API will not
  7418  // be included in the string output. The member name will be present, but the
  7419  // value will be replaced with "sensitive".
  7420  func (s DeleteCustomActionTypeInput) String() string {
  7421  	return awsutil.Prettify(s)
  7422  }
  7423  
  7424  // GoString returns the string representation.
  7425  //
  7426  // API parameter values that are decorated as "sensitive" in the API will not
  7427  // be included in the string output. The member name will be present, but the
  7428  // value will be replaced with "sensitive".
  7429  func (s DeleteCustomActionTypeInput) GoString() string {
  7430  	return s.String()
  7431  }
  7432  
  7433  // Validate inspects the fields of the type to determine if they are valid.
  7434  func (s *DeleteCustomActionTypeInput) Validate() error {
  7435  	invalidParams := request.ErrInvalidParams{Context: "DeleteCustomActionTypeInput"}
  7436  	if s.Category == nil {
  7437  		invalidParams.Add(request.NewErrParamRequired("Category"))
  7438  	}
  7439  	if s.Provider == nil {
  7440  		invalidParams.Add(request.NewErrParamRequired("Provider"))
  7441  	}
  7442  	if s.Provider != nil && len(*s.Provider) < 1 {
  7443  		invalidParams.Add(request.NewErrParamMinLen("Provider", 1))
  7444  	}
  7445  	if s.Version == nil {
  7446  		invalidParams.Add(request.NewErrParamRequired("Version"))
  7447  	}
  7448  	if s.Version != nil && len(*s.Version) < 1 {
  7449  		invalidParams.Add(request.NewErrParamMinLen("Version", 1))
  7450  	}
  7451  
  7452  	if invalidParams.Len() > 0 {
  7453  		return invalidParams
  7454  	}
  7455  	return nil
  7456  }
  7457  
  7458  // SetCategory sets the Category field's value.
  7459  func (s *DeleteCustomActionTypeInput) SetCategory(v string) *DeleteCustomActionTypeInput {
  7460  	s.Category = &v
  7461  	return s
  7462  }
  7463  
  7464  // SetProvider sets the Provider field's value.
  7465  func (s *DeleteCustomActionTypeInput) SetProvider(v string) *DeleteCustomActionTypeInput {
  7466  	s.Provider = &v
  7467  	return s
  7468  }
  7469  
  7470  // SetVersion sets the Version field's value.
  7471  func (s *DeleteCustomActionTypeInput) SetVersion(v string) *DeleteCustomActionTypeInput {
  7472  	s.Version = &v
  7473  	return s
  7474  }
  7475  
  7476  type DeleteCustomActionTypeOutput struct {
  7477  	_ struct{} `type:"structure"`
  7478  }
  7479  
  7480  // String returns the string representation.
  7481  //
  7482  // API parameter values that are decorated as "sensitive" in the API will not
  7483  // be included in the string output. The member name will be present, but the
  7484  // value will be replaced with "sensitive".
  7485  func (s DeleteCustomActionTypeOutput) String() string {
  7486  	return awsutil.Prettify(s)
  7487  }
  7488  
  7489  // GoString returns the string representation.
  7490  //
  7491  // API parameter values that are decorated as "sensitive" in the API will not
  7492  // be included in the string output. The member name will be present, but the
  7493  // value will be replaced with "sensitive".
  7494  func (s DeleteCustomActionTypeOutput) GoString() string {
  7495  	return s.String()
  7496  }
  7497  
  7498  // Represents the input of a DeletePipeline action.
  7499  type DeletePipelineInput struct {
  7500  	_ struct{} `type:"structure"`
  7501  
  7502  	// The name of the pipeline to be deleted.
  7503  	//
  7504  	// Name is a required field
  7505  	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
  7506  }
  7507  
  7508  // String returns the string representation.
  7509  //
  7510  // API parameter values that are decorated as "sensitive" in the API will not
  7511  // be included in the string output. The member name will be present, but the
  7512  // value will be replaced with "sensitive".
  7513  func (s DeletePipelineInput) String() string {
  7514  	return awsutil.Prettify(s)
  7515  }
  7516  
  7517  // GoString returns the string representation.
  7518  //
  7519  // API parameter values that are decorated as "sensitive" in the API will not
  7520  // be included in the string output. The member name will be present, but the
  7521  // value will be replaced with "sensitive".
  7522  func (s DeletePipelineInput) GoString() string {
  7523  	return s.String()
  7524  }
  7525  
  7526  // Validate inspects the fields of the type to determine if they are valid.
  7527  func (s *DeletePipelineInput) Validate() error {
  7528  	invalidParams := request.ErrInvalidParams{Context: "DeletePipelineInput"}
  7529  	if s.Name == nil {
  7530  		invalidParams.Add(request.NewErrParamRequired("Name"))
  7531  	}
  7532  	if s.Name != nil && len(*s.Name) < 1 {
  7533  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
  7534  	}
  7535  
  7536  	if invalidParams.Len() > 0 {
  7537  		return invalidParams
  7538  	}
  7539  	return nil
  7540  }
  7541  
  7542  // SetName sets the Name field's value.
  7543  func (s *DeletePipelineInput) SetName(v string) *DeletePipelineInput {
  7544  	s.Name = &v
  7545  	return s
  7546  }
  7547  
  7548  type DeletePipelineOutput struct {
  7549  	_ struct{} `type:"structure"`
  7550  }
  7551  
  7552  // String returns the string representation.
  7553  //
  7554  // API parameter values that are decorated as "sensitive" in the API will not
  7555  // be included in the string output. The member name will be present, but the
  7556  // value will be replaced with "sensitive".
  7557  func (s DeletePipelineOutput) String() string {
  7558  	return awsutil.Prettify(s)
  7559  }
  7560  
  7561  // GoString returns the string representation.
  7562  //
  7563  // API parameter values that are decorated as "sensitive" in the API will not
  7564  // be included in the string output. The member name will be present, but the
  7565  // value will be replaced with "sensitive".
  7566  func (s DeletePipelineOutput) GoString() string {
  7567  	return s.String()
  7568  }
  7569  
  7570  type DeleteWebhookInput struct {
  7571  	_ struct{} `type:"structure"`
  7572  
  7573  	// The name of the webhook you want to delete.
  7574  	//
  7575  	// Name is a required field
  7576  	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
  7577  }
  7578  
  7579  // String returns the string representation.
  7580  //
  7581  // API parameter values that are decorated as "sensitive" in the API will not
  7582  // be included in the string output. The member name will be present, but the
  7583  // value will be replaced with "sensitive".
  7584  func (s DeleteWebhookInput) String() string {
  7585  	return awsutil.Prettify(s)
  7586  }
  7587  
  7588  // GoString returns the string representation.
  7589  //
  7590  // API parameter values that are decorated as "sensitive" in the API will not
  7591  // be included in the string output. The member name will be present, but the
  7592  // value will be replaced with "sensitive".
  7593  func (s DeleteWebhookInput) GoString() string {
  7594  	return s.String()
  7595  }
  7596  
  7597  // Validate inspects the fields of the type to determine if they are valid.
  7598  func (s *DeleteWebhookInput) Validate() error {
  7599  	invalidParams := request.ErrInvalidParams{Context: "DeleteWebhookInput"}
  7600  	if s.Name == nil {
  7601  		invalidParams.Add(request.NewErrParamRequired("Name"))
  7602  	}
  7603  	if s.Name != nil && len(*s.Name) < 1 {
  7604  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
  7605  	}
  7606  
  7607  	if invalidParams.Len() > 0 {
  7608  		return invalidParams
  7609  	}
  7610  	return nil
  7611  }
  7612  
  7613  // SetName sets the Name field's value.
  7614  func (s *DeleteWebhookInput) SetName(v string) *DeleteWebhookInput {
  7615  	s.Name = &v
  7616  	return s
  7617  }
  7618  
  7619  type DeleteWebhookOutput struct {
  7620  	_ struct{} `type:"structure"`
  7621  }
  7622  
  7623  // String returns the string representation.
  7624  //
  7625  // API parameter values that are decorated as "sensitive" in the API will not
  7626  // be included in the string output. The member name will be present, but the
  7627  // value will be replaced with "sensitive".
  7628  func (s DeleteWebhookOutput) String() string {
  7629  	return awsutil.Prettify(s)
  7630  }
  7631  
  7632  // GoString returns the string representation.
  7633  //
  7634  // API parameter values that are decorated as "sensitive" in the API will not
  7635  // be included in the string output. The member name will be present, but the
  7636  // value will be replaced with "sensitive".
  7637  func (s DeleteWebhookOutput) GoString() string {
  7638  	return s.String()
  7639  }
  7640  
  7641  type DeregisterWebhookWithThirdPartyInput struct {
  7642  	_ struct{} `type:"structure"`
  7643  
  7644  	// The name of the webhook you want to deregister.
  7645  	WebhookName *string `locationName:"webhookName" min:"1" type:"string"`
  7646  }
  7647  
  7648  // String returns the string representation.
  7649  //
  7650  // API parameter values that are decorated as "sensitive" in the API will not
  7651  // be included in the string output. The member name will be present, but the
  7652  // value will be replaced with "sensitive".
  7653  func (s DeregisterWebhookWithThirdPartyInput) String() string {
  7654  	return awsutil.Prettify(s)
  7655  }
  7656  
  7657  // GoString returns the string representation.
  7658  //
  7659  // API parameter values that are decorated as "sensitive" in the API will not
  7660  // be included in the string output. The member name will be present, but the
  7661  // value will be replaced with "sensitive".
  7662  func (s DeregisterWebhookWithThirdPartyInput) GoString() string {
  7663  	return s.String()
  7664  }
  7665  
  7666  // Validate inspects the fields of the type to determine if they are valid.
  7667  func (s *DeregisterWebhookWithThirdPartyInput) Validate() error {
  7668  	invalidParams := request.ErrInvalidParams{Context: "DeregisterWebhookWithThirdPartyInput"}
  7669  	if s.WebhookName != nil && len(*s.WebhookName) < 1 {
  7670  		invalidParams.Add(request.NewErrParamMinLen("WebhookName", 1))
  7671  	}
  7672  
  7673  	if invalidParams.Len() > 0 {
  7674  		return invalidParams
  7675  	}
  7676  	return nil
  7677  }
  7678  
  7679  // SetWebhookName sets the WebhookName field's value.
  7680  func (s *DeregisterWebhookWithThirdPartyInput) SetWebhookName(v string) *DeregisterWebhookWithThirdPartyInput {
  7681  	s.WebhookName = &v
  7682  	return s
  7683  }
  7684  
  7685  type DeregisterWebhookWithThirdPartyOutput struct {
  7686  	_ struct{} `type:"structure"`
  7687  }
  7688  
  7689  // String returns the string representation.
  7690  //
  7691  // API parameter values that are decorated as "sensitive" in the API will not
  7692  // be included in the string output. The member name will be present, but the
  7693  // value will be replaced with "sensitive".
  7694  func (s DeregisterWebhookWithThirdPartyOutput) String() string {
  7695  	return awsutil.Prettify(s)
  7696  }
  7697  
  7698  // GoString returns the string representation.
  7699  //
  7700  // API parameter values that are decorated as "sensitive" in the API will not
  7701  // be included in the string output. The member name will be present, but the
  7702  // value will be replaced with "sensitive".
  7703  func (s DeregisterWebhookWithThirdPartyOutput) GoString() string {
  7704  	return s.String()
  7705  }
  7706  
  7707  // Represents the input of a DisableStageTransition action.
  7708  type DisableStageTransitionInput struct {
  7709  	_ struct{} `type:"structure"`
  7710  
  7711  	// The name of the pipeline in which you want to disable the flow of artifacts
  7712  	// from one stage to another.
  7713  	//
  7714  	// PipelineName is a required field
  7715  	PipelineName *string `locationName:"pipelineName" min:"1" type:"string" required:"true"`
  7716  
  7717  	// The reason given to the user that a stage is disabled, such as waiting for
  7718  	// manual approval or manual tests. This message is displayed in the pipeline
  7719  	// console UI.
  7720  	//
  7721  	// Reason is a required field
  7722  	Reason *string `locationName:"reason" min:"1" type:"string" required:"true"`
  7723  
  7724  	// The name of the stage where you want to disable the inbound or outbound transition
  7725  	// of artifacts.
  7726  	//
  7727  	// StageName is a required field
  7728  	StageName *string `locationName:"stageName" min:"1" type:"string" required:"true"`
  7729  
  7730  	// Specifies whether artifacts are prevented from transitioning into the stage
  7731  	// and being processed by the actions in that stage (inbound), or prevented
  7732  	// from transitioning from the stage after they have been processed by the actions
  7733  	// in that stage (outbound).
  7734  	//
  7735  	// TransitionType is a required field
  7736  	TransitionType *string `locationName:"transitionType" type:"string" required:"true" enum:"StageTransitionType"`
  7737  }
  7738  
  7739  // String returns the string representation.
  7740  //
  7741  // API parameter values that are decorated as "sensitive" in the API will not
  7742  // be included in the string output. The member name will be present, but the
  7743  // value will be replaced with "sensitive".
  7744  func (s DisableStageTransitionInput) String() string {
  7745  	return awsutil.Prettify(s)
  7746  }
  7747  
  7748  // GoString returns the string representation.
  7749  //
  7750  // API parameter values that are decorated as "sensitive" in the API will not
  7751  // be included in the string output. The member name will be present, but the
  7752  // value will be replaced with "sensitive".
  7753  func (s DisableStageTransitionInput) GoString() string {
  7754  	return s.String()
  7755  }
  7756  
  7757  // Validate inspects the fields of the type to determine if they are valid.
  7758  func (s *DisableStageTransitionInput) Validate() error {
  7759  	invalidParams := request.ErrInvalidParams{Context: "DisableStageTransitionInput"}
  7760  	if s.PipelineName == nil {
  7761  		invalidParams.Add(request.NewErrParamRequired("PipelineName"))
  7762  	}
  7763  	if s.PipelineName != nil && len(*s.PipelineName) < 1 {
  7764  		invalidParams.Add(request.NewErrParamMinLen("PipelineName", 1))
  7765  	}
  7766  	if s.Reason == nil {
  7767  		invalidParams.Add(request.NewErrParamRequired("Reason"))
  7768  	}
  7769  	if s.Reason != nil && len(*s.Reason) < 1 {
  7770  		invalidParams.Add(request.NewErrParamMinLen("Reason", 1))
  7771  	}
  7772  	if s.StageName == nil {
  7773  		invalidParams.Add(request.NewErrParamRequired("StageName"))
  7774  	}
  7775  	if s.StageName != nil && len(*s.StageName) < 1 {
  7776  		invalidParams.Add(request.NewErrParamMinLen("StageName", 1))
  7777  	}
  7778  	if s.TransitionType == nil {
  7779  		invalidParams.Add(request.NewErrParamRequired("TransitionType"))
  7780  	}
  7781  
  7782  	if invalidParams.Len() > 0 {
  7783  		return invalidParams
  7784  	}
  7785  	return nil
  7786  }
  7787  
  7788  // SetPipelineName sets the PipelineName field's value.
  7789  func (s *DisableStageTransitionInput) SetPipelineName(v string) *DisableStageTransitionInput {
  7790  	s.PipelineName = &v
  7791  	return s
  7792  }
  7793  
  7794  // SetReason sets the Reason field's value.
  7795  func (s *DisableStageTransitionInput) SetReason(v string) *DisableStageTransitionInput {
  7796  	s.Reason = &v
  7797  	return s
  7798  }
  7799  
  7800  // SetStageName sets the StageName field's value.
  7801  func (s *DisableStageTransitionInput) SetStageName(v string) *DisableStageTransitionInput {
  7802  	s.StageName = &v
  7803  	return s
  7804  }
  7805  
  7806  // SetTransitionType sets the TransitionType field's value.
  7807  func (s *DisableStageTransitionInput) SetTransitionType(v string) *DisableStageTransitionInput {
  7808  	s.TransitionType = &v
  7809  	return s
  7810  }
  7811  
  7812  type DisableStageTransitionOutput struct {
  7813  	_ struct{} `type:"structure"`
  7814  }
  7815  
  7816  // String returns the string representation.
  7817  //
  7818  // API parameter values that are decorated as "sensitive" in the API will not
  7819  // be included in the string output. The member name will be present, but the
  7820  // value will be replaced with "sensitive".
  7821  func (s DisableStageTransitionOutput) String() string {
  7822  	return awsutil.Prettify(s)
  7823  }
  7824  
  7825  // GoString returns the string representation.
  7826  //
  7827  // API parameter values that are decorated as "sensitive" in the API will not
  7828  // be included in the string output. The member name will be present, but the
  7829  // value will be replaced with "sensitive".
  7830  func (s DisableStageTransitionOutput) GoString() string {
  7831  	return s.String()
  7832  }
  7833  
  7834  // The pipeline execution is already in a Stopping state. If you already chose
  7835  // to stop and wait, you cannot make that request again. You can choose to stop
  7836  // and abandon now, but be aware that this option can lead to failed tasks or
  7837  // out of sequence tasks. If you already chose to stop and abandon, you cannot
  7838  // make that request again.
  7839  type DuplicatedStopRequestException struct {
  7840  	_            struct{}                  `type:"structure"`
  7841  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  7842  
  7843  	Message_ *string `locationName:"message" min:"1" type:"string"`
  7844  }
  7845  
  7846  // String returns the string representation.
  7847  //
  7848  // API parameter values that are decorated as "sensitive" in the API will not
  7849  // be included in the string output. The member name will be present, but the
  7850  // value will be replaced with "sensitive".
  7851  func (s DuplicatedStopRequestException) String() string {
  7852  	return awsutil.Prettify(s)
  7853  }
  7854  
  7855  // GoString returns the string representation.
  7856  //
  7857  // API parameter values that are decorated as "sensitive" in the API will not
  7858  // be included in the string output. The member name will be present, but the
  7859  // value will be replaced with "sensitive".
  7860  func (s DuplicatedStopRequestException) GoString() string {
  7861  	return s.String()
  7862  }
  7863  
  7864  func newErrorDuplicatedStopRequestException(v protocol.ResponseMetadata) error {
  7865  	return &DuplicatedStopRequestException{
  7866  		RespMetadata: v,
  7867  	}
  7868  }
  7869  
  7870  // Code returns the exception type name.
  7871  func (s *DuplicatedStopRequestException) Code() string {
  7872  	return "DuplicatedStopRequestException"
  7873  }
  7874  
  7875  // Message returns the exception's message.
  7876  func (s *DuplicatedStopRequestException) Message() string {
  7877  	if s.Message_ != nil {
  7878  		return *s.Message_
  7879  	}
  7880  	return ""
  7881  }
  7882  
  7883  // OrigErr always returns nil, satisfies awserr.Error interface.
  7884  func (s *DuplicatedStopRequestException) OrigErr() error {
  7885  	return nil
  7886  }
  7887  
  7888  func (s *DuplicatedStopRequestException) Error() string {
  7889  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  7890  }
  7891  
  7892  // Status code returns the HTTP status code for the request's response error.
  7893  func (s *DuplicatedStopRequestException) StatusCode() int {
  7894  	return s.RespMetadata.StatusCode
  7895  }
  7896  
  7897  // RequestID returns the service's response RequestID for request.
  7898  func (s *DuplicatedStopRequestException) RequestID() string {
  7899  	return s.RespMetadata.RequestID
  7900  }
  7901  
  7902  // Represents the input of an EnableStageTransition action.
  7903  type EnableStageTransitionInput struct {
  7904  	_ struct{} `type:"structure"`
  7905  
  7906  	// The name of the pipeline in which you want to enable the flow of artifacts
  7907  	// from one stage to another.
  7908  	//
  7909  	// PipelineName is a required field
  7910  	PipelineName *string `locationName:"pipelineName" min:"1" type:"string" required:"true"`
  7911  
  7912  	// The name of the stage where you want to enable the transition of artifacts,
  7913  	// either into the stage (inbound) or from that stage to the next stage (outbound).
  7914  	//
  7915  	// StageName is a required field
  7916  	StageName *string `locationName:"stageName" min:"1" type:"string" required:"true"`
  7917  
  7918  	// Specifies whether artifacts are allowed to enter the stage and be processed
  7919  	// by the actions in that stage (inbound) or whether already processed artifacts
  7920  	// are allowed to transition to the next stage (outbound).
  7921  	//
  7922  	// TransitionType is a required field
  7923  	TransitionType *string `locationName:"transitionType" type:"string" required:"true" enum:"StageTransitionType"`
  7924  }
  7925  
  7926  // String returns the string representation.
  7927  //
  7928  // API parameter values that are decorated as "sensitive" in the API will not
  7929  // be included in the string output. The member name will be present, but the
  7930  // value will be replaced with "sensitive".
  7931  func (s EnableStageTransitionInput) String() string {
  7932  	return awsutil.Prettify(s)
  7933  }
  7934  
  7935  // GoString returns the string representation.
  7936  //
  7937  // API parameter values that are decorated as "sensitive" in the API will not
  7938  // be included in the string output. The member name will be present, but the
  7939  // value will be replaced with "sensitive".
  7940  func (s EnableStageTransitionInput) GoString() string {
  7941  	return s.String()
  7942  }
  7943  
  7944  // Validate inspects the fields of the type to determine if they are valid.
  7945  func (s *EnableStageTransitionInput) Validate() error {
  7946  	invalidParams := request.ErrInvalidParams{Context: "EnableStageTransitionInput"}
  7947  	if s.PipelineName == nil {
  7948  		invalidParams.Add(request.NewErrParamRequired("PipelineName"))
  7949  	}
  7950  	if s.PipelineName != nil && len(*s.PipelineName) < 1 {
  7951  		invalidParams.Add(request.NewErrParamMinLen("PipelineName", 1))
  7952  	}
  7953  	if s.StageName == nil {
  7954  		invalidParams.Add(request.NewErrParamRequired("StageName"))
  7955  	}
  7956  	if s.StageName != nil && len(*s.StageName) < 1 {
  7957  		invalidParams.Add(request.NewErrParamMinLen("StageName", 1))
  7958  	}
  7959  	if s.TransitionType == nil {
  7960  		invalidParams.Add(request.NewErrParamRequired("TransitionType"))
  7961  	}
  7962  
  7963  	if invalidParams.Len() > 0 {
  7964  		return invalidParams
  7965  	}
  7966  	return nil
  7967  }
  7968  
  7969  // SetPipelineName sets the PipelineName field's value.
  7970  func (s *EnableStageTransitionInput) SetPipelineName(v string) *EnableStageTransitionInput {
  7971  	s.PipelineName = &v
  7972  	return s
  7973  }
  7974  
  7975  // SetStageName sets the StageName field's value.
  7976  func (s *EnableStageTransitionInput) SetStageName(v string) *EnableStageTransitionInput {
  7977  	s.StageName = &v
  7978  	return s
  7979  }
  7980  
  7981  // SetTransitionType sets the TransitionType field's value.
  7982  func (s *EnableStageTransitionInput) SetTransitionType(v string) *EnableStageTransitionInput {
  7983  	s.TransitionType = &v
  7984  	return s
  7985  }
  7986  
  7987  type EnableStageTransitionOutput struct {
  7988  	_ struct{} `type:"structure"`
  7989  }
  7990  
  7991  // String returns the string representation.
  7992  //
  7993  // API parameter values that are decorated as "sensitive" in the API will not
  7994  // be included in the string output. The member name will be present, but the
  7995  // value will be replaced with "sensitive".
  7996  func (s EnableStageTransitionOutput) String() string {
  7997  	return awsutil.Prettify(s)
  7998  }
  7999  
  8000  // GoString returns the string representation.
  8001  //
  8002  // API parameter values that are decorated as "sensitive" in the API will not
  8003  // be included in the string output. The member name will be present, but the
  8004  // value will be replaced with "sensitive".
  8005  func (s EnableStageTransitionOutput) GoString() string {
  8006  	return s.String()
  8007  }
  8008  
  8009  // Represents information about the key used to encrypt data in the artifact
  8010  // store, such as an AWS Key Management Service (AWS KMS) key.
  8011  type EncryptionKey struct {
  8012  	_ struct{} `type:"structure"`
  8013  
  8014  	// The ID used to identify the key. For an AWS KMS key, you can use the key
  8015  	// ID, the key ARN, or the alias ARN.
  8016  	//
  8017  	// Aliases are recognized only in the account that created the customer master
  8018  	// key (CMK). For cross-account actions, you can only use the key ID or key
  8019  	// ARN to identify the key.
  8020  	//
  8021  	// Id is a required field
  8022  	Id *string `locationName:"id" min:"1" type:"string" required:"true"`
  8023  
  8024  	// The type of encryption key, such as an AWS Key Management Service (AWS KMS)
  8025  	// key. When creating or updating a pipeline, the value must be set to 'KMS'.
  8026  	//
  8027  	// Type is a required field
  8028  	Type *string `locationName:"type" type:"string" required:"true" enum:"EncryptionKeyType"`
  8029  }
  8030  
  8031  // String returns the string representation.
  8032  //
  8033  // API parameter values that are decorated as "sensitive" in the API will not
  8034  // be included in the string output. The member name will be present, but the
  8035  // value will be replaced with "sensitive".
  8036  func (s EncryptionKey) String() string {
  8037  	return awsutil.Prettify(s)
  8038  }
  8039  
  8040  // GoString returns the string representation.
  8041  //
  8042  // API parameter values that are decorated as "sensitive" in the API will not
  8043  // be included in the string output. The member name will be present, but the
  8044  // value will be replaced with "sensitive".
  8045  func (s EncryptionKey) GoString() string {
  8046  	return s.String()
  8047  }
  8048  
  8049  // Validate inspects the fields of the type to determine if they are valid.
  8050  func (s *EncryptionKey) Validate() error {
  8051  	invalidParams := request.ErrInvalidParams{Context: "EncryptionKey"}
  8052  	if s.Id == nil {
  8053  		invalidParams.Add(request.NewErrParamRequired("Id"))
  8054  	}
  8055  	if s.Id != nil && len(*s.Id) < 1 {
  8056  		invalidParams.Add(request.NewErrParamMinLen("Id", 1))
  8057  	}
  8058  	if s.Type == nil {
  8059  		invalidParams.Add(request.NewErrParamRequired("Type"))
  8060  	}
  8061  
  8062  	if invalidParams.Len() > 0 {
  8063  		return invalidParams
  8064  	}
  8065  	return nil
  8066  }
  8067  
  8068  // SetId sets the Id field's value.
  8069  func (s *EncryptionKey) SetId(v string) *EncryptionKey {
  8070  	s.Id = &v
  8071  	return s
  8072  }
  8073  
  8074  // SetType sets the Type field's value.
  8075  func (s *EncryptionKey) SetType(v string) *EncryptionKey {
  8076  	s.Type = &v
  8077  	return s
  8078  }
  8079  
  8080  // Represents information about an error in AWS CodePipeline.
  8081  type ErrorDetails struct {
  8082  	_ struct{} `type:"structure"`
  8083  
  8084  	// The system ID or number code of the error.
  8085  	Code *string `locationName:"code" type:"string"`
  8086  
  8087  	// The text of the error message.
  8088  	Message *string `locationName:"message" min:"1" type:"string"`
  8089  }
  8090  
  8091  // String returns the string representation.
  8092  //
  8093  // API parameter values that are decorated as "sensitive" in the API will not
  8094  // be included in the string output. The member name will be present, but the
  8095  // value will be replaced with "sensitive".
  8096  func (s ErrorDetails) String() string {
  8097  	return awsutil.Prettify(s)
  8098  }
  8099  
  8100  // GoString returns the string representation.
  8101  //
  8102  // API parameter values that are decorated as "sensitive" in the API will not
  8103  // be included in the string output. The member name will be present, but the
  8104  // value will be replaced with "sensitive".
  8105  func (s ErrorDetails) GoString() string {
  8106  	return s.String()
  8107  }
  8108  
  8109  // SetCode sets the Code field's value.
  8110  func (s *ErrorDetails) SetCode(v string) *ErrorDetails {
  8111  	s.Code = &v
  8112  	return s
  8113  }
  8114  
  8115  // SetMessage sets the Message field's value.
  8116  func (s *ErrorDetails) SetMessage(v string) *ErrorDetails {
  8117  	s.Message = &v
  8118  	return s
  8119  }
  8120  
  8121  // The details of the actions taken and results produced on an artifact as it
  8122  // passes through stages in the pipeline.
  8123  type ExecutionDetails struct {
  8124  	_ struct{} `type:"structure"`
  8125  
  8126  	// The system-generated unique ID of this action used to identify this job worker
  8127  	// in any external systems, such as AWS CodeDeploy.
  8128  	ExternalExecutionId *string `locationName:"externalExecutionId" min:"1" type:"string"`
  8129  
  8130  	// The percentage of work completed on the action, represented on a scale of
  8131  	// 0 to 100 percent.
  8132  	PercentComplete *int64 `locationName:"percentComplete" type:"integer"`
  8133  
  8134  	// The summary of the current status of the actions.
  8135  	Summary *string `locationName:"summary" min:"1" type:"string"`
  8136  }
  8137  
  8138  // String returns the string representation.
  8139  //
  8140  // API parameter values that are decorated as "sensitive" in the API will not
  8141  // be included in the string output. The member name will be present, but the
  8142  // value will be replaced with "sensitive".
  8143  func (s ExecutionDetails) String() string {
  8144  	return awsutil.Prettify(s)
  8145  }
  8146  
  8147  // GoString returns the string representation.
  8148  //
  8149  // API parameter values that are decorated as "sensitive" in the API will not
  8150  // be included in the string output. The member name will be present, but the
  8151  // value will be replaced with "sensitive".
  8152  func (s ExecutionDetails) GoString() string {
  8153  	return s.String()
  8154  }
  8155  
  8156  // Validate inspects the fields of the type to determine if they are valid.
  8157  func (s *ExecutionDetails) Validate() error {
  8158  	invalidParams := request.ErrInvalidParams{Context: "ExecutionDetails"}
  8159  	if s.ExternalExecutionId != nil && len(*s.ExternalExecutionId) < 1 {
  8160  		invalidParams.Add(request.NewErrParamMinLen("ExternalExecutionId", 1))
  8161  	}
  8162  	if s.Summary != nil && len(*s.Summary) < 1 {
  8163  		invalidParams.Add(request.NewErrParamMinLen("Summary", 1))
  8164  	}
  8165  
  8166  	if invalidParams.Len() > 0 {
  8167  		return invalidParams
  8168  	}
  8169  	return nil
  8170  }
  8171  
  8172  // SetExternalExecutionId sets the ExternalExecutionId field's value.
  8173  func (s *ExecutionDetails) SetExternalExecutionId(v string) *ExecutionDetails {
  8174  	s.ExternalExecutionId = &v
  8175  	return s
  8176  }
  8177  
  8178  // SetPercentComplete sets the PercentComplete field's value.
  8179  func (s *ExecutionDetails) SetPercentComplete(v int64) *ExecutionDetails {
  8180  	s.PercentComplete = &v
  8181  	return s
  8182  }
  8183  
  8184  // SetSummary sets the Summary field's value.
  8185  func (s *ExecutionDetails) SetSummary(v string) *ExecutionDetails {
  8186  	s.Summary = &v
  8187  	return s
  8188  }
  8189  
  8190  // The interaction or event that started a pipeline execution.
  8191  type ExecutionTrigger struct {
  8192  	_ struct{} `type:"structure"`
  8193  
  8194  	// Detail related to the event that started a pipeline execution, such as the
  8195  	// webhook ARN of the webhook that triggered the pipeline execution or the user
  8196  	// ARN for a user-initiated start-pipeline-execution CLI command.
  8197  	TriggerDetail *string `locationName:"triggerDetail" type:"string"`
  8198  
  8199  	// The type of change-detection method, command, or user interaction that started
  8200  	// a pipeline execution.
  8201  	TriggerType *string `locationName:"triggerType" type:"string" enum:"TriggerType"`
  8202  }
  8203  
  8204  // String returns the string representation.
  8205  //
  8206  // API parameter values that are decorated as "sensitive" in the API will not
  8207  // be included in the string output. The member name will be present, but the
  8208  // value will be replaced with "sensitive".
  8209  func (s ExecutionTrigger) String() string {
  8210  	return awsutil.Prettify(s)
  8211  }
  8212  
  8213  // GoString returns the string representation.
  8214  //
  8215  // API parameter values that are decorated as "sensitive" in the API will not
  8216  // be included in the string output. The member name will be present, but the
  8217  // value will be replaced with "sensitive".
  8218  func (s ExecutionTrigger) GoString() string {
  8219  	return s.String()
  8220  }
  8221  
  8222  // SetTriggerDetail sets the TriggerDetail field's value.
  8223  func (s *ExecutionTrigger) SetTriggerDetail(v string) *ExecutionTrigger {
  8224  	s.TriggerDetail = &v
  8225  	return s
  8226  }
  8227  
  8228  // SetTriggerType sets the TriggerType field's value.
  8229  func (s *ExecutionTrigger) SetTriggerType(v string) *ExecutionTrigger {
  8230  	s.TriggerType = &v
  8231  	return s
  8232  }
  8233  
  8234  // The action engine, or executor, related to the supported integration model
  8235  // used to create and update the action type. The available executor types are
  8236  // Lambda and JobWorker.
  8237  type ExecutorConfiguration struct {
  8238  	_ struct{} `type:"structure"`
  8239  
  8240  	// Details about the JobWorker executor of the action type.
  8241  	JobWorkerExecutorConfiguration *JobWorkerExecutorConfiguration `locationName:"jobWorkerExecutorConfiguration" type:"structure"`
  8242  
  8243  	// Details about the Lambda executor of the action type.
  8244  	LambdaExecutorConfiguration *LambdaExecutorConfiguration `locationName:"lambdaExecutorConfiguration" type:"structure"`
  8245  }
  8246  
  8247  // String returns the string representation.
  8248  //
  8249  // API parameter values that are decorated as "sensitive" in the API will not
  8250  // be included in the string output. The member name will be present, but the
  8251  // value will be replaced with "sensitive".
  8252  func (s ExecutorConfiguration) String() string {
  8253  	return awsutil.Prettify(s)
  8254  }
  8255  
  8256  // GoString returns the string representation.
  8257  //
  8258  // API parameter values that are decorated as "sensitive" in the API will not
  8259  // be included in the string output. The member name will be present, but the
  8260  // value will be replaced with "sensitive".
  8261  func (s ExecutorConfiguration) GoString() string {
  8262  	return s.String()
  8263  }
  8264  
  8265  // Validate inspects the fields of the type to determine if they are valid.
  8266  func (s *ExecutorConfiguration) Validate() error {
  8267  	invalidParams := request.ErrInvalidParams{Context: "ExecutorConfiguration"}
  8268  	if s.JobWorkerExecutorConfiguration != nil {
  8269  		if err := s.JobWorkerExecutorConfiguration.Validate(); err != nil {
  8270  			invalidParams.AddNested("JobWorkerExecutorConfiguration", err.(request.ErrInvalidParams))
  8271  		}
  8272  	}
  8273  	if s.LambdaExecutorConfiguration != nil {
  8274  		if err := s.LambdaExecutorConfiguration.Validate(); err != nil {
  8275  			invalidParams.AddNested("LambdaExecutorConfiguration", err.(request.ErrInvalidParams))
  8276  		}
  8277  	}
  8278  
  8279  	if invalidParams.Len() > 0 {
  8280  		return invalidParams
  8281  	}
  8282  	return nil
  8283  }
  8284  
  8285  // SetJobWorkerExecutorConfiguration sets the JobWorkerExecutorConfiguration field's value.
  8286  func (s *ExecutorConfiguration) SetJobWorkerExecutorConfiguration(v *JobWorkerExecutorConfiguration) *ExecutorConfiguration {
  8287  	s.JobWorkerExecutorConfiguration = v
  8288  	return s
  8289  }
  8290  
  8291  // SetLambdaExecutorConfiguration sets the LambdaExecutorConfiguration field's value.
  8292  func (s *ExecutorConfiguration) SetLambdaExecutorConfiguration(v *LambdaExecutorConfiguration) *ExecutorConfiguration {
  8293  	s.LambdaExecutorConfiguration = v
  8294  	return s
  8295  }
  8296  
  8297  // Represents information about failure details.
  8298  type FailureDetails struct {
  8299  	_ struct{} `type:"structure"`
  8300  
  8301  	// The external ID of the run of the action that failed.
  8302  	ExternalExecutionId *string `locationName:"externalExecutionId" min:"1" type:"string"`
  8303  
  8304  	// The message about the failure.
  8305  	//
  8306  	// Message is a required field
  8307  	Message *string `locationName:"message" min:"1" type:"string" required:"true"`
  8308  
  8309  	// The type of the failure.
  8310  	//
  8311  	// Type is a required field
  8312  	Type *string `locationName:"type" type:"string" required:"true" enum:"FailureType"`
  8313  }
  8314  
  8315  // String returns the string representation.
  8316  //
  8317  // API parameter values that are decorated as "sensitive" in the API will not
  8318  // be included in the string output. The member name will be present, but the
  8319  // value will be replaced with "sensitive".
  8320  func (s FailureDetails) String() string {
  8321  	return awsutil.Prettify(s)
  8322  }
  8323  
  8324  // GoString returns the string representation.
  8325  //
  8326  // API parameter values that are decorated as "sensitive" in the API will not
  8327  // be included in the string output. The member name will be present, but the
  8328  // value will be replaced with "sensitive".
  8329  func (s FailureDetails) GoString() string {
  8330  	return s.String()
  8331  }
  8332  
  8333  // Validate inspects the fields of the type to determine if they are valid.
  8334  func (s *FailureDetails) Validate() error {
  8335  	invalidParams := request.ErrInvalidParams{Context: "FailureDetails"}
  8336  	if s.ExternalExecutionId != nil && len(*s.ExternalExecutionId) < 1 {
  8337  		invalidParams.Add(request.NewErrParamMinLen("ExternalExecutionId", 1))
  8338  	}
  8339  	if s.Message == nil {
  8340  		invalidParams.Add(request.NewErrParamRequired("Message"))
  8341  	}
  8342  	if s.Message != nil && len(*s.Message) < 1 {
  8343  		invalidParams.Add(request.NewErrParamMinLen("Message", 1))
  8344  	}
  8345  	if s.Type == nil {
  8346  		invalidParams.Add(request.NewErrParamRequired("Type"))
  8347  	}
  8348  
  8349  	if invalidParams.Len() > 0 {
  8350  		return invalidParams
  8351  	}
  8352  	return nil
  8353  }
  8354  
  8355  // SetExternalExecutionId sets the ExternalExecutionId field's value.
  8356  func (s *FailureDetails) SetExternalExecutionId(v string) *FailureDetails {
  8357  	s.ExternalExecutionId = &v
  8358  	return s
  8359  }
  8360  
  8361  // SetMessage sets the Message field's value.
  8362  func (s *FailureDetails) SetMessage(v string) *FailureDetails {
  8363  	s.Message = &v
  8364  	return s
  8365  }
  8366  
  8367  // SetType sets the Type field's value.
  8368  func (s *FailureDetails) SetType(v string) *FailureDetails {
  8369  	s.Type = &v
  8370  	return s
  8371  }
  8372  
  8373  type GetActionTypeInput struct {
  8374  	_ struct{} `type:"structure"`
  8375  
  8376  	// Defines what kind of action can be taken in the stage. The following are
  8377  	// the valid values:
  8378  	//
  8379  	//    * Source
  8380  	//
  8381  	//    * Build
  8382  	//
  8383  	//    * Test
  8384  	//
  8385  	//    * Deploy
  8386  	//
  8387  	//    * Approval
  8388  	//
  8389  	//    * Invoke
  8390  	//
  8391  	// Category is a required field
  8392  	Category *string `locationName:"category" type:"string" required:"true" enum:"ActionCategory"`
  8393  
  8394  	// The creator of an action type that was created with any supported integration
  8395  	// model. There are two valid values: AWS and ThirdParty.
  8396  	//
  8397  	// Owner is a required field
  8398  	Owner *string `locationName:"owner" type:"string" required:"true"`
  8399  
  8400  	// The provider of the action type being called. The provider name is specified
  8401  	// when the action type is created.
  8402  	//
  8403  	// Provider is a required field
  8404  	Provider *string `locationName:"provider" min:"1" type:"string" required:"true"`
  8405  
  8406  	// A string that describes the action type version.
  8407  	//
  8408  	// Version is a required field
  8409  	Version *string `locationName:"version" min:"1" type:"string" required:"true"`
  8410  }
  8411  
  8412  // String returns the string representation.
  8413  //
  8414  // API parameter values that are decorated as "sensitive" in the API will not
  8415  // be included in the string output. The member name will be present, but the
  8416  // value will be replaced with "sensitive".
  8417  func (s GetActionTypeInput) String() string {
  8418  	return awsutil.Prettify(s)
  8419  }
  8420  
  8421  // GoString returns the string representation.
  8422  //
  8423  // API parameter values that are decorated as "sensitive" in the API will not
  8424  // be included in the string output. The member name will be present, but the
  8425  // value will be replaced with "sensitive".
  8426  func (s GetActionTypeInput) GoString() string {
  8427  	return s.String()
  8428  }
  8429  
  8430  // Validate inspects the fields of the type to determine if they are valid.
  8431  func (s *GetActionTypeInput) Validate() error {
  8432  	invalidParams := request.ErrInvalidParams{Context: "GetActionTypeInput"}
  8433  	if s.Category == nil {
  8434  		invalidParams.Add(request.NewErrParamRequired("Category"))
  8435  	}
  8436  	if s.Owner == nil {
  8437  		invalidParams.Add(request.NewErrParamRequired("Owner"))
  8438  	}
  8439  	if s.Provider == nil {
  8440  		invalidParams.Add(request.NewErrParamRequired("Provider"))
  8441  	}
  8442  	if s.Provider != nil && len(*s.Provider) < 1 {
  8443  		invalidParams.Add(request.NewErrParamMinLen("Provider", 1))
  8444  	}
  8445  	if s.Version == nil {
  8446  		invalidParams.Add(request.NewErrParamRequired("Version"))
  8447  	}
  8448  	if s.Version != nil && len(*s.Version) < 1 {
  8449  		invalidParams.Add(request.NewErrParamMinLen("Version", 1))
  8450  	}
  8451  
  8452  	if invalidParams.Len() > 0 {
  8453  		return invalidParams
  8454  	}
  8455  	return nil
  8456  }
  8457  
  8458  // SetCategory sets the Category field's value.
  8459  func (s *GetActionTypeInput) SetCategory(v string) *GetActionTypeInput {
  8460  	s.Category = &v
  8461  	return s
  8462  }
  8463  
  8464  // SetOwner sets the Owner field's value.
  8465  func (s *GetActionTypeInput) SetOwner(v string) *GetActionTypeInput {
  8466  	s.Owner = &v
  8467  	return s
  8468  }
  8469  
  8470  // SetProvider sets the Provider field's value.
  8471  func (s *GetActionTypeInput) SetProvider(v string) *GetActionTypeInput {
  8472  	s.Provider = &v
  8473  	return s
  8474  }
  8475  
  8476  // SetVersion sets the Version field's value.
  8477  func (s *GetActionTypeInput) SetVersion(v string) *GetActionTypeInput {
  8478  	s.Version = &v
  8479  	return s
  8480  }
  8481  
  8482  type GetActionTypeOutput struct {
  8483  	_ struct{} `type:"structure"`
  8484  
  8485  	// The action type information for the requested action type, such as the action
  8486  	// type ID.
  8487  	ActionType *ActionTypeDeclaration `locationName:"actionType" type:"structure"`
  8488  }
  8489  
  8490  // String returns the string representation.
  8491  //
  8492  // API parameter values that are decorated as "sensitive" in the API will not
  8493  // be included in the string output. The member name will be present, but the
  8494  // value will be replaced with "sensitive".
  8495  func (s GetActionTypeOutput) String() string {
  8496  	return awsutil.Prettify(s)
  8497  }
  8498  
  8499  // GoString returns the string representation.
  8500  //
  8501  // API parameter values that are decorated as "sensitive" in the API will not
  8502  // be included in the string output. The member name will be present, but the
  8503  // value will be replaced with "sensitive".
  8504  func (s GetActionTypeOutput) GoString() string {
  8505  	return s.String()
  8506  }
  8507  
  8508  // SetActionType sets the ActionType field's value.
  8509  func (s *GetActionTypeOutput) SetActionType(v *ActionTypeDeclaration) *GetActionTypeOutput {
  8510  	s.ActionType = v
  8511  	return s
  8512  }
  8513  
  8514  // Represents the input of a GetJobDetails action.
  8515  type GetJobDetailsInput struct {
  8516  	_ struct{} `type:"structure"`
  8517  
  8518  	// The unique system-generated ID for the job.
  8519  	//
  8520  	// JobId is a required field
  8521  	JobId *string `locationName:"jobId" type:"string" required:"true"`
  8522  }
  8523  
  8524  // String returns the string representation.
  8525  //
  8526  // API parameter values that are decorated as "sensitive" in the API will not
  8527  // be included in the string output. The member name will be present, but the
  8528  // value will be replaced with "sensitive".
  8529  func (s GetJobDetailsInput) String() string {
  8530  	return awsutil.Prettify(s)
  8531  }
  8532  
  8533  // GoString returns the string representation.
  8534  //
  8535  // API parameter values that are decorated as "sensitive" in the API will not
  8536  // be included in the string output. The member name will be present, but the
  8537  // value will be replaced with "sensitive".
  8538  func (s GetJobDetailsInput) GoString() string {
  8539  	return s.String()
  8540  }
  8541  
  8542  // Validate inspects the fields of the type to determine if they are valid.
  8543  func (s *GetJobDetailsInput) Validate() error {
  8544  	invalidParams := request.ErrInvalidParams{Context: "GetJobDetailsInput"}
  8545  	if s.JobId == nil {
  8546  		invalidParams.Add(request.NewErrParamRequired("JobId"))
  8547  	}
  8548  
  8549  	if invalidParams.Len() > 0 {
  8550  		return invalidParams
  8551  	}
  8552  	return nil
  8553  }
  8554  
  8555  // SetJobId sets the JobId field's value.
  8556  func (s *GetJobDetailsInput) SetJobId(v string) *GetJobDetailsInput {
  8557  	s.JobId = &v
  8558  	return s
  8559  }
  8560  
  8561  // Represents the output of a GetJobDetails action.
  8562  type GetJobDetailsOutput struct {
  8563  	_ struct{} `type:"structure"`
  8564  
  8565  	// The details of the job.
  8566  	//
  8567  	// If AWSSessionCredentials is used, a long-running job can call GetJobDetails
  8568  	// again to obtain new credentials.
  8569  	JobDetails *JobDetails `locationName:"jobDetails" type:"structure"`
  8570  }
  8571  
  8572  // String returns the string representation.
  8573  //
  8574  // API parameter values that are decorated as "sensitive" in the API will not
  8575  // be included in the string output. The member name will be present, but the
  8576  // value will be replaced with "sensitive".
  8577  func (s GetJobDetailsOutput) String() string {
  8578  	return awsutil.Prettify(s)
  8579  }
  8580  
  8581  // GoString returns the string representation.
  8582  //
  8583  // API parameter values that are decorated as "sensitive" in the API will not
  8584  // be included in the string output. The member name will be present, but the
  8585  // value will be replaced with "sensitive".
  8586  func (s GetJobDetailsOutput) GoString() string {
  8587  	return s.String()
  8588  }
  8589  
  8590  // SetJobDetails sets the JobDetails field's value.
  8591  func (s *GetJobDetailsOutput) SetJobDetails(v *JobDetails) *GetJobDetailsOutput {
  8592  	s.JobDetails = v
  8593  	return s
  8594  }
  8595  
  8596  // Represents the input of a GetPipelineExecution action.
  8597  type GetPipelineExecutionInput struct {
  8598  	_ struct{} `type:"structure"`
  8599  
  8600  	// The ID of the pipeline execution about which you want to get execution details.
  8601  	//
  8602  	// PipelineExecutionId is a required field
  8603  	PipelineExecutionId *string `locationName:"pipelineExecutionId" type:"string" required:"true"`
  8604  
  8605  	// The name of the pipeline about which you want to get execution details.
  8606  	//
  8607  	// PipelineName is a required field
  8608  	PipelineName *string `locationName:"pipelineName" min:"1" type:"string" required:"true"`
  8609  }
  8610  
  8611  // String returns the string representation.
  8612  //
  8613  // API parameter values that are decorated as "sensitive" in the API will not
  8614  // be included in the string output. The member name will be present, but the
  8615  // value will be replaced with "sensitive".
  8616  func (s GetPipelineExecutionInput) String() string {
  8617  	return awsutil.Prettify(s)
  8618  }
  8619  
  8620  // GoString returns the string representation.
  8621  //
  8622  // API parameter values that are decorated as "sensitive" in the API will not
  8623  // be included in the string output. The member name will be present, but the
  8624  // value will be replaced with "sensitive".
  8625  func (s GetPipelineExecutionInput) GoString() string {
  8626  	return s.String()
  8627  }
  8628  
  8629  // Validate inspects the fields of the type to determine if they are valid.
  8630  func (s *GetPipelineExecutionInput) Validate() error {
  8631  	invalidParams := request.ErrInvalidParams{Context: "GetPipelineExecutionInput"}
  8632  	if s.PipelineExecutionId == nil {
  8633  		invalidParams.Add(request.NewErrParamRequired("PipelineExecutionId"))
  8634  	}
  8635  	if s.PipelineName == nil {
  8636  		invalidParams.Add(request.NewErrParamRequired("PipelineName"))
  8637  	}
  8638  	if s.PipelineName != nil && len(*s.PipelineName) < 1 {
  8639  		invalidParams.Add(request.NewErrParamMinLen("PipelineName", 1))
  8640  	}
  8641  
  8642  	if invalidParams.Len() > 0 {
  8643  		return invalidParams
  8644  	}
  8645  	return nil
  8646  }
  8647  
  8648  // SetPipelineExecutionId sets the PipelineExecutionId field's value.
  8649  func (s *GetPipelineExecutionInput) SetPipelineExecutionId(v string) *GetPipelineExecutionInput {
  8650  	s.PipelineExecutionId = &v
  8651  	return s
  8652  }
  8653  
  8654  // SetPipelineName sets the PipelineName field's value.
  8655  func (s *GetPipelineExecutionInput) SetPipelineName(v string) *GetPipelineExecutionInput {
  8656  	s.PipelineName = &v
  8657  	return s
  8658  }
  8659  
  8660  // Represents the output of a GetPipelineExecution action.
  8661  type GetPipelineExecutionOutput struct {
  8662  	_ struct{} `type:"structure"`
  8663  
  8664  	// Represents information about the execution of a pipeline.
  8665  	PipelineExecution *PipelineExecution `locationName:"pipelineExecution" type:"structure"`
  8666  }
  8667  
  8668  // String returns the string representation.
  8669  //
  8670  // API parameter values that are decorated as "sensitive" in the API will not
  8671  // be included in the string output. The member name will be present, but the
  8672  // value will be replaced with "sensitive".
  8673  func (s GetPipelineExecutionOutput) String() string {
  8674  	return awsutil.Prettify(s)
  8675  }
  8676  
  8677  // GoString returns the string representation.
  8678  //
  8679  // API parameter values that are decorated as "sensitive" in the API will not
  8680  // be included in the string output. The member name will be present, but the
  8681  // value will be replaced with "sensitive".
  8682  func (s GetPipelineExecutionOutput) GoString() string {
  8683  	return s.String()
  8684  }
  8685  
  8686  // SetPipelineExecution sets the PipelineExecution field's value.
  8687  func (s *GetPipelineExecutionOutput) SetPipelineExecution(v *PipelineExecution) *GetPipelineExecutionOutput {
  8688  	s.PipelineExecution = v
  8689  	return s
  8690  }
  8691  
  8692  // Represents the input of a GetPipeline action.
  8693  type GetPipelineInput struct {
  8694  	_ struct{} `type:"structure"`
  8695  
  8696  	// The name of the pipeline for which you want to get information. Pipeline
  8697  	// names must be unique under an AWS user account.
  8698  	//
  8699  	// Name is a required field
  8700  	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
  8701  
  8702  	// The version number of the pipeline. If you do not specify a version, defaults
  8703  	// to the current version.
  8704  	Version *int64 `locationName:"version" min:"1" type:"integer"`
  8705  }
  8706  
  8707  // String returns the string representation.
  8708  //
  8709  // API parameter values that are decorated as "sensitive" in the API will not
  8710  // be included in the string output. The member name will be present, but the
  8711  // value will be replaced with "sensitive".
  8712  func (s GetPipelineInput) String() string {
  8713  	return awsutil.Prettify(s)
  8714  }
  8715  
  8716  // GoString returns the string representation.
  8717  //
  8718  // API parameter values that are decorated as "sensitive" in the API will not
  8719  // be included in the string output. The member name will be present, but the
  8720  // value will be replaced with "sensitive".
  8721  func (s GetPipelineInput) GoString() string {
  8722  	return s.String()
  8723  }
  8724  
  8725  // Validate inspects the fields of the type to determine if they are valid.
  8726  func (s *GetPipelineInput) Validate() error {
  8727  	invalidParams := request.ErrInvalidParams{Context: "GetPipelineInput"}
  8728  	if s.Name == nil {
  8729  		invalidParams.Add(request.NewErrParamRequired("Name"))
  8730  	}
  8731  	if s.Name != nil && len(*s.Name) < 1 {
  8732  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
  8733  	}
  8734  	if s.Version != nil && *s.Version < 1 {
  8735  		invalidParams.Add(request.NewErrParamMinValue("Version", 1))
  8736  	}
  8737  
  8738  	if invalidParams.Len() > 0 {
  8739  		return invalidParams
  8740  	}
  8741  	return nil
  8742  }
  8743  
  8744  // SetName sets the Name field's value.
  8745  func (s *GetPipelineInput) SetName(v string) *GetPipelineInput {
  8746  	s.Name = &v
  8747  	return s
  8748  }
  8749  
  8750  // SetVersion sets the Version field's value.
  8751  func (s *GetPipelineInput) SetVersion(v int64) *GetPipelineInput {
  8752  	s.Version = &v
  8753  	return s
  8754  }
  8755  
  8756  // Represents the output of a GetPipeline action.
  8757  type GetPipelineOutput struct {
  8758  	_ struct{} `type:"structure"`
  8759  
  8760  	// Represents the pipeline metadata information returned as part of the output
  8761  	// of a GetPipeline action.
  8762  	Metadata *PipelineMetadata `locationName:"metadata" type:"structure"`
  8763  
  8764  	// Represents the structure of actions and stages to be performed in the pipeline.
  8765  	Pipeline *PipelineDeclaration `locationName:"pipeline" type:"structure"`
  8766  }
  8767  
  8768  // String returns the string representation.
  8769  //
  8770  // API parameter values that are decorated as "sensitive" in the API will not
  8771  // be included in the string output. The member name will be present, but the
  8772  // value will be replaced with "sensitive".
  8773  func (s GetPipelineOutput) String() string {
  8774  	return awsutil.Prettify(s)
  8775  }
  8776  
  8777  // GoString returns the string representation.
  8778  //
  8779  // API parameter values that are decorated as "sensitive" in the API will not
  8780  // be included in the string output. The member name will be present, but the
  8781  // value will be replaced with "sensitive".
  8782  func (s GetPipelineOutput) GoString() string {
  8783  	return s.String()
  8784  }
  8785  
  8786  // SetMetadata sets the Metadata field's value.
  8787  func (s *GetPipelineOutput) SetMetadata(v *PipelineMetadata) *GetPipelineOutput {
  8788  	s.Metadata = v
  8789  	return s
  8790  }
  8791  
  8792  // SetPipeline sets the Pipeline field's value.
  8793  func (s *GetPipelineOutput) SetPipeline(v *PipelineDeclaration) *GetPipelineOutput {
  8794  	s.Pipeline = v
  8795  	return s
  8796  }
  8797  
  8798  // Represents the input of a GetPipelineState action.
  8799  type GetPipelineStateInput struct {
  8800  	_ struct{} `type:"structure"`
  8801  
  8802  	// The name of the pipeline about which you want to get information.
  8803  	//
  8804  	// Name is a required field
  8805  	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
  8806  }
  8807  
  8808  // String returns the string representation.
  8809  //
  8810  // API parameter values that are decorated as "sensitive" in the API will not
  8811  // be included in the string output. The member name will be present, but the
  8812  // value will be replaced with "sensitive".
  8813  func (s GetPipelineStateInput) String() string {
  8814  	return awsutil.Prettify(s)
  8815  }
  8816  
  8817  // GoString returns the string representation.
  8818  //
  8819  // API parameter values that are decorated as "sensitive" in the API will not
  8820  // be included in the string output. The member name will be present, but the
  8821  // value will be replaced with "sensitive".
  8822  func (s GetPipelineStateInput) GoString() string {
  8823  	return s.String()
  8824  }
  8825  
  8826  // Validate inspects the fields of the type to determine if they are valid.
  8827  func (s *GetPipelineStateInput) Validate() error {
  8828  	invalidParams := request.ErrInvalidParams{Context: "GetPipelineStateInput"}
  8829  	if s.Name == nil {
  8830  		invalidParams.Add(request.NewErrParamRequired("Name"))
  8831  	}
  8832  	if s.Name != nil && len(*s.Name) < 1 {
  8833  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
  8834  	}
  8835  
  8836  	if invalidParams.Len() > 0 {
  8837  		return invalidParams
  8838  	}
  8839  	return nil
  8840  }
  8841  
  8842  // SetName sets the Name field's value.
  8843  func (s *GetPipelineStateInput) SetName(v string) *GetPipelineStateInput {
  8844  	s.Name = &v
  8845  	return s
  8846  }
  8847  
  8848  // Represents the output of a GetPipelineState action.
  8849  type GetPipelineStateOutput struct {
  8850  	_ struct{} `type:"structure"`
  8851  
  8852  	// The date and time the pipeline was created, in timestamp format.
  8853  	Created *time.Time `locationName:"created" type:"timestamp"`
  8854  
  8855  	// The name of the pipeline for which you want to get the state.
  8856  	PipelineName *string `locationName:"pipelineName" min:"1" type:"string"`
  8857  
  8858  	// The version number of the pipeline.
  8859  	//
  8860  	// A newly created pipeline is always assigned a version number of 1.
  8861  	PipelineVersion *int64 `locationName:"pipelineVersion" min:"1" type:"integer"`
  8862  
  8863  	// A list of the pipeline stage output information, including stage name, state,
  8864  	// most recent run details, whether the stage is disabled, and other data.
  8865  	StageStates []*StageState `locationName:"stageStates" type:"list"`
  8866  
  8867  	// The date and time the pipeline was last updated, in timestamp format.
  8868  	Updated *time.Time `locationName:"updated" type:"timestamp"`
  8869  }
  8870  
  8871  // String returns the string representation.
  8872  //
  8873  // API parameter values that are decorated as "sensitive" in the API will not
  8874  // be included in the string output. The member name will be present, but the
  8875  // value will be replaced with "sensitive".
  8876  func (s GetPipelineStateOutput) String() string {
  8877  	return awsutil.Prettify(s)
  8878  }
  8879  
  8880  // GoString returns the string representation.
  8881  //
  8882  // API parameter values that are decorated as "sensitive" in the API will not
  8883  // be included in the string output. The member name will be present, but the
  8884  // value will be replaced with "sensitive".
  8885  func (s GetPipelineStateOutput) GoString() string {
  8886  	return s.String()
  8887  }
  8888  
  8889  // SetCreated sets the Created field's value.
  8890  func (s *GetPipelineStateOutput) SetCreated(v time.Time) *GetPipelineStateOutput {
  8891  	s.Created = &v
  8892  	return s
  8893  }
  8894  
  8895  // SetPipelineName sets the PipelineName field's value.
  8896  func (s *GetPipelineStateOutput) SetPipelineName(v string) *GetPipelineStateOutput {
  8897  	s.PipelineName = &v
  8898  	return s
  8899  }
  8900  
  8901  // SetPipelineVersion sets the PipelineVersion field's value.
  8902  func (s *GetPipelineStateOutput) SetPipelineVersion(v int64) *GetPipelineStateOutput {
  8903  	s.PipelineVersion = &v
  8904  	return s
  8905  }
  8906  
  8907  // SetStageStates sets the StageStates field's value.
  8908  func (s *GetPipelineStateOutput) SetStageStates(v []*StageState) *GetPipelineStateOutput {
  8909  	s.StageStates = v
  8910  	return s
  8911  }
  8912  
  8913  // SetUpdated sets the Updated field's value.
  8914  func (s *GetPipelineStateOutput) SetUpdated(v time.Time) *GetPipelineStateOutput {
  8915  	s.Updated = &v
  8916  	return s
  8917  }
  8918  
  8919  // Represents the input of a GetThirdPartyJobDetails action.
  8920  type GetThirdPartyJobDetailsInput struct {
  8921  	_ struct{} `type:"structure"`
  8922  
  8923  	// The clientToken portion of the clientId and clientToken pair used to verify
  8924  	// that the calling entity is allowed access to the job and its details.
  8925  	//
  8926  	// ClientToken is a required field
  8927  	ClientToken *string `locationName:"clientToken" min:"1" type:"string" required:"true"`
  8928  
  8929  	// The unique system-generated ID used for identifying the job.
  8930  	//
  8931  	// JobId is a required field
  8932  	JobId *string `locationName:"jobId" min:"1" type:"string" required:"true"`
  8933  }
  8934  
  8935  // String returns the string representation.
  8936  //
  8937  // API parameter values that are decorated as "sensitive" in the API will not
  8938  // be included in the string output. The member name will be present, but the
  8939  // value will be replaced with "sensitive".
  8940  func (s GetThirdPartyJobDetailsInput) String() string {
  8941  	return awsutil.Prettify(s)
  8942  }
  8943  
  8944  // GoString returns the string representation.
  8945  //
  8946  // API parameter values that are decorated as "sensitive" in the API will not
  8947  // be included in the string output. The member name will be present, but the
  8948  // value will be replaced with "sensitive".
  8949  func (s GetThirdPartyJobDetailsInput) GoString() string {
  8950  	return s.String()
  8951  }
  8952  
  8953  // Validate inspects the fields of the type to determine if they are valid.
  8954  func (s *GetThirdPartyJobDetailsInput) Validate() error {
  8955  	invalidParams := request.ErrInvalidParams{Context: "GetThirdPartyJobDetailsInput"}
  8956  	if s.ClientToken == nil {
  8957  		invalidParams.Add(request.NewErrParamRequired("ClientToken"))
  8958  	}
  8959  	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
  8960  		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
  8961  	}
  8962  	if s.JobId == nil {
  8963  		invalidParams.Add(request.NewErrParamRequired("JobId"))
  8964  	}
  8965  	if s.JobId != nil && len(*s.JobId) < 1 {
  8966  		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
  8967  	}
  8968  
  8969  	if invalidParams.Len() > 0 {
  8970  		return invalidParams
  8971  	}
  8972  	return nil
  8973  }
  8974  
  8975  // SetClientToken sets the ClientToken field's value.
  8976  func (s *GetThirdPartyJobDetailsInput) SetClientToken(v string) *GetThirdPartyJobDetailsInput {
  8977  	s.ClientToken = &v
  8978  	return s
  8979  }
  8980  
  8981  // SetJobId sets the JobId field's value.
  8982  func (s *GetThirdPartyJobDetailsInput) SetJobId(v string) *GetThirdPartyJobDetailsInput {
  8983  	s.JobId = &v
  8984  	return s
  8985  }
  8986  
  8987  // Represents the output of a GetThirdPartyJobDetails action.
  8988  type GetThirdPartyJobDetailsOutput struct {
  8989  	_ struct{} `type:"structure"`
  8990  
  8991  	// The details of the job, including any protected values defined for the job.
  8992  	JobDetails *ThirdPartyJobDetails `locationName:"jobDetails" type:"structure"`
  8993  }
  8994  
  8995  // String returns the string representation.
  8996  //
  8997  // API parameter values that are decorated as "sensitive" in the API will not
  8998  // be included in the string output. The member name will be present, but the
  8999  // value will be replaced with "sensitive".
  9000  func (s GetThirdPartyJobDetailsOutput) String() string {
  9001  	return awsutil.Prettify(s)
  9002  }
  9003  
  9004  // GoString returns the string representation.
  9005  //
  9006  // API parameter values that are decorated as "sensitive" in the API will not
  9007  // be included in the string output. The member name will be present, but the
  9008  // value will be replaced with "sensitive".
  9009  func (s GetThirdPartyJobDetailsOutput) GoString() string {
  9010  	return s.String()
  9011  }
  9012  
  9013  // SetJobDetails sets the JobDetails field's value.
  9014  func (s *GetThirdPartyJobDetailsOutput) SetJobDetails(v *ThirdPartyJobDetails) *GetThirdPartyJobDetailsOutput {
  9015  	s.JobDetails = v
  9016  	return s
  9017  }
  9018  
  9019  // Represents information about an artifact to be worked on, such as a test
  9020  // or build artifact.
  9021  type InputArtifact struct {
  9022  	_ struct{} `type:"structure"`
  9023  
  9024  	// The name of the artifact to be worked on (for example, "My App").
  9025  	//
  9026  	// The input artifact of an action must exactly match the output artifact declared
  9027  	// in a preceding action, but the input artifact does not have to be the next
  9028  	// action in strict sequence from the action that provided the output artifact.
  9029  	// Actions in parallel can declare different output artifacts, which are in
  9030  	// turn consumed by different following actions.
  9031  	//
  9032  	// Name is a required field
  9033  	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
  9034  }
  9035  
  9036  // String returns the string representation.
  9037  //
  9038  // API parameter values that are decorated as "sensitive" in the API will not
  9039  // be included in the string output. The member name will be present, but the
  9040  // value will be replaced with "sensitive".
  9041  func (s InputArtifact) String() string {
  9042  	return awsutil.Prettify(s)
  9043  }
  9044  
  9045  // GoString returns the string representation.
  9046  //
  9047  // API parameter values that are decorated as "sensitive" in the API will not
  9048  // be included in the string output. The member name will be present, but the
  9049  // value will be replaced with "sensitive".
  9050  func (s InputArtifact) GoString() string {
  9051  	return s.String()
  9052  }
  9053  
  9054  // Validate inspects the fields of the type to determine if they are valid.
  9055  func (s *InputArtifact) Validate() error {
  9056  	invalidParams := request.ErrInvalidParams{Context: "InputArtifact"}
  9057  	if s.Name == nil {
  9058  		invalidParams.Add(request.NewErrParamRequired("Name"))
  9059  	}
  9060  	if s.Name != nil && len(*s.Name) < 1 {
  9061  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
  9062  	}
  9063  
  9064  	if invalidParams.Len() > 0 {
  9065  		return invalidParams
  9066  	}
  9067  	return nil
  9068  }
  9069  
  9070  // SetName sets the Name field's value.
  9071  func (s *InputArtifact) SetName(v string) *InputArtifact {
  9072  	s.Name = &v
  9073  	return s
  9074  }
  9075  
  9076  // The action declaration was specified in an invalid format.
  9077  type InvalidActionDeclarationException struct {
  9078  	_            struct{}                  `type:"structure"`
  9079  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  9080  
  9081  	Message_ *string `locationName:"message" type:"string"`
  9082  }
  9083  
  9084  // String returns the string representation.
  9085  //
  9086  // API parameter values that are decorated as "sensitive" in the API will not
  9087  // be included in the string output. The member name will be present, but the
  9088  // value will be replaced with "sensitive".
  9089  func (s InvalidActionDeclarationException) String() string {
  9090  	return awsutil.Prettify(s)
  9091  }
  9092  
  9093  // GoString returns the string representation.
  9094  //
  9095  // API parameter values that are decorated as "sensitive" in the API will not
  9096  // be included in the string output. The member name will be present, but the
  9097  // value will be replaced with "sensitive".
  9098  func (s InvalidActionDeclarationException) GoString() string {
  9099  	return s.String()
  9100  }
  9101  
  9102  func newErrorInvalidActionDeclarationException(v protocol.ResponseMetadata) error {
  9103  	return &InvalidActionDeclarationException{
  9104  		RespMetadata: v,
  9105  	}
  9106  }
  9107  
  9108  // Code returns the exception type name.
  9109  func (s *InvalidActionDeclarationException) Code() string {
  9110  	return "InvalidActionDeclarationException"
  9111  }
  9112  
  9113  // Message returns the exception's message.
  9114  func (s *InvalidActionDeclarationException) Message() string {
  9115  	if s.Message_ != nil {
  9116  		return *s.Message_
  9117  	}
  9118  	return ""
  9119  }
  9120  
  9121  // OrigErr always returns nil, satisfies awserr.Error interface.
  9122  func (s *InvalidActionDeclarationException) OrigErr() error {
  9123  	return nil
  9124  }
  9125  
  9126  func (s *InvalidActionDeclarationException) Error() string {
  9127  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  9128  }
  9129  
  9130  // Status code returns the HTTP status code for the request's response error.
  9131  func (s *InvalidActionDeclarationException) StatusCode() int {
  9132  	return s.RespMetadata.StatusCode
  9133  }
  9134  
  9135  // RequestID returns the service's response RequestID for request.
  9136  func (s *InvalidActionDeclarationException) RequestID() string {
  9137  	return s.RespMetadata.RequestID
  9138  }
  9139  
  9140  // The approval request already received a response or has expired.
  9141  type InvalidApprovalTokenException struct {
  9142  	_            struct{}                  `type:"structure"`
  9143  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  9144  
  9145  	Message_ *string `locationName:"message" type:"string"`
  9146  }
  9147  
  9148  // String returns the string representation.
  9149  //
  9150  // API parameter values that are decorated as "sensitive" in the API will not
  9151  // be included in the string output. The member name will be present, but the
  9152  // value will be replaced with "sensitive".
  9153  func (s InvalidApprovalTokenException) String() string {
  9154  	return awsutil.Prettify(s)
  9155  }
  9156  
  9157  // GoString returns the string representation.
  9158  //
  9159  // API parameter values that are decorated as "sensitive" in the API will not
  9160  // be included in the string output. The member name will be present, but the
  9161  // value will be replaced with "sensitive".
  9162  func (s InvalidApprovalTokenException) GoString() string {
  9163  	return s.String()
  9164  }
  9165  
  9166  func newErrorInvalidApprovalTokenException(v protocol.ResponseMetadata) error {
  9167  	return &InvalidApprovalTokenException{
  9168  		RespMetadata: v,
  9169  	}
  9170  }
  9171  
  9172  // Code returns the exception type name.
  9173  func (s *InvalidApprovalTokenException) Code() string {
  9174  	return "InvalidApprovalTokenException"
  9175  }
  9176  
  9177  // Message returns the exception's message.
  9178  func (s *InvalidApprovalTokenException) Message() string {
  9179  	if s.Message_ != nil {
  9180  		return *s.Message_
  9181  	}
  9182  	return ""
  9183  }
  9184  
  9185  // OrigErr always returns nil, satisfies awserr.Error interface.
  9186  func (s *InvalidApprovalTokenException) OrigErr() error {
  9187  	return nil
  9188  }
  9189  
  9190  func (s *InvalidApprovalTokenException) Error() string {
  9191  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  9192  }
  9193  
  9194  // Status code returns the HTTP status code for the request's response error.
  9195  func (s *InvalidApprovalTokenException) StatusCode() int {
  9196  	return s.RespMetadata.StatusCode
  9197  }
  9198  
  9199  // RequestID returns the service's response RequestID for request.
  9200  func (s *InvalidApprovalTokenException) RequestID() string {
  9201  	return s.RespMetadata.RequestID
  9202  }
  9203  
  9204  // The specified resource ARN is invalid.
  9205  type InvalidArnException struct {
  9206  	_            struct{}                  `type:"structure"`
  9207  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  9208  
  9209  	Message_ *string `locationName:"message" min:"1" type:"string"`
  9210  }
  9211  
  9212  // String returns the string representation.
  9213  //
  9214  // API parameter values that are decorated as "sensitive" in the API will not
  9215  // be included in the string output. The member name will be present, but the
  9216  // value will be replaced with "sensitive".
  9217  func (s InvalidArnException) String() string {
  9218  	return awsutil.Prettify(s)
  9219  }
  9220  
  9221  // GoString returns the string representation.
  9222  //
  9223  // API parameter values that are decorated as "sensitive" in the API will not
  9224  // be included in the string output. The member name will be present, but the
  9225  // value will be replaced with "sensitive".
  9226  func (s InvalidArnException) GoString() string {
  9227  	return s.String()
  9228  }
  9229  
  9230  func newErrorInvalidArnException(v protocol.ResponseMetadata) error {
  9231  	return &InvalidArnException{
  9232  		RespMetadata: v,
  9233  	}
  9234  }
  9235  
  9236  // Code returns the exception type name.
  9237  func (s *InvalidArnException) Code() string {
  9238  	return "InvalidArnException"
  9239  }
  9240  
  9241  // Message returns the exception's message.
  9242  func (s *InvalidArnException) Message() string {
  9243  	if s.Message_ != nil {
  9244  		return *s.Message_
  9245  	}
  9246  	return ""
  9247  }
  9248  
  9249  // OrigErr always returns nil, satisfies awserr.Error interface.
  9250  func (s *InvalidArnException) OrigErr() error {
  9251  	return nil
  9252  }
  9253  
  9254  func (s *InvalidArnException) Error() string {
  9255  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  9256  }
  9257  
  9258  // Status code returns the HTTP status code for the request's response error.
  9259  func (s *InvalidArnException) StatusCode() int {
  9260  	return s.RespMetadata.StatusCode
  9261  }
  9262  
  9263  // RequestID returns the service's response RequestID for request.
  9264  func (s *InvalidArnException) RequestID() string {
  9265  	return s.RespMetadata.RequestID
  9266  }
  9267  
  9268  // Reserved for future use.
  9269  type InvalidBlockerDeclarationException struct {
  9270  	_            struct{}                  `type:"structure"`
  9271  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  9272  
  9273  	Message_ *string `locationName:"message" type:"string"`
  9274  }
  9275  
  9276  // String returns the string representation.
  9277  //
  9278  // API parameter values that are decorated as "sensitive" in the API will not
  9279  // be included in the string output. The member name will be present, but the
  9280  // value will be replaced with "sensitive".
  9281  func (s InvalidBlockerDeclarationException) String() string {
  9282  	return awsutil.Prettify(s)
  9283  }
  9284  
  9285  // GoString returns the string representation.
  9286  //
  9287  // API parameter values that are decorated as "sensitive" in the API will not
  9288  // be included in the string output. The member name will be present, but the
  9289  // value will be replaced with "sensitive".
  9290  func (s InvalidBlockerDeclarationException) GoString() string {
  9291  	return s.String()
  9292  }
  9293  
  9294  func newErrorInvalidBlockerDeclarationException(v protocol.ResponseMetadata) error {
  9295  	return &InvalidBlockerDeclarationException{
  9296  		RespMetadata: v,
  9297  	}
  9298  }
  9299  
  9300  // Code returns the exception type name.
  9301  func (s *InvalidBlockerDeclarationException) Code() string {
  9302  	return "InvalidBlockerDeclarationException"
  9303  }
  9304  
  9305  // Message returns the exception's message.
  9306  func (s *InvalidBlockerDeclarationException) Message() string {
  9307  	if s.Message_ != nil {
  9308  		return *s.Message_
  9309  	}
  9310  	return ""
  9311  }
  9312  
  9313  // OrigErr always returns nil, satisfies awserr.Error interface.
  9314  func (s *InvalidBlockerDeclarationException) OrigErr() error {
  9315  	return nil
  9316  }
  9317  
  9318  func (s *InvalidBlockerDeclarationException) Error() string {
  9319  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  9320  }
  9321  
  9322  // Status code returns the HTTP status code for the request's response error.
  9323  func (s *InvalidBlockerDeclarationException) StatusCode() int {
  9324  	return s.RespMetadata.StatusCode
  9325  }
  9326  
  9327  // RequestID returns the service's response RequestID for request.
  9328  func (s *InvalidBlockerDeclarationException) RequestID() string {
  9329  	return s.RespMetadata.RequestID
  9330  }
  9331  
  9332  // The client token was specified in an invalid format
  9333  type InvalidClientTokenException struct {
  9334  	_            struct{}                  `type:"structure"`
  9335  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  9336  
  9337  	Message_ *string `locationName:"message" type:"string"`
  9338  }
  9339  
  9340  // String returns the string representation.
  9341  //
  9342  // API parameter values that are decorated as "sensitive" in the API will not
  9343  // be included in the string output. The member name will be present, but the
  9344  // value will be replaced with "sensitive".
  9345  func (s InvalidClientTokenException) String() string {
  9346  	return awsutil.Prettify(s)
  9347  }
  9348  
  9349  // GoString returns the string representation.
  9350  //
  9351  // API parameter values that are decorated as "sensitive" in the API will not
  9352  // be included in the string output. The member name will be present, but the
  9353  // value will be replaced with "sensitive".
  9354  func (s InvalidClientTokenException) GoString() string {
  9355  	return s.String()
  9356  }
  9357  
  9358  func newErrorInvalidClientTokenException(v protocol.ResponseMetadata) error {
  9359  	return &InvalidClientTokenException{
  9360  		RespMetadata: v,
  9361  	}
  9362  }
  9363  
  9364  // Code returns the exception type name.
  9365  func (s *InvalidClientTokenException) Code() string {
  9366  	return "InvalidClientTokenException"
  9367  }
  9368  
  9369  // Message returns the exception's message.
  9370  func (s *InvalidClientTokenException) Message() string {
  9371  	if s.Message_ != nil {
  9372  		return *s.Message_
  9373  	}
  9374  	return ""
  9375  }
  9376  
  9377  // OrigErr always returns nil, satisfies awserr.Error interface.
  9378  func (s *InvalidClientTokenException) OrigErr() error {
  9379  	return nil
  9380  }
  9381  
  9382  func (s *InvalidClientTokenException) Error() string {
  9383  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  9384  }
  9385  
  9386  // Status code returns the HTTP status code for the request's response error.
  9387  func (s *InvalidClientTokenException) StatusCode() int {
  9388  	return s.RespMetadata.StatusCode
  9389  }
  9390  
  9391  // RequestID returns the service's response RequestID for request.
  9392  func (s *InvalidClientTokenException) RequestID() string {
  9393  	return s.RespMetadata.RequestID
  9394  }
  9395  
  9396  // The job was specified in an invalid format or cannot be found.
  9397  type InvalidJobException struct {
  9398  	_            struct{}                  `type:"structure"`
  9399  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  9400  
  9401  	Message_ *string `locationName:"message" type:"string"`
  9402  }
  9403  
  9404  // String returns the string representation.
  9405  //
  9406  // API parameter values that are decorated as "sensitive" in the API will not
  9407  // be included in the string output. The member name will be present, but the
  9408  // value will be replaced with "sensitive".
  9409  func (s InvalidJobException) String() string {
  9410  	return awsutil.Prettify(s)
  9411  }
  9412  
  9413  // GoString returns the string representation.
  9414  //
  9415  // API parameter values that are decorated as "sensitive" in the API will not
  9416  // be included in the string output. The member name will be present, but the
  9417  // value will be replaced with "sensitive".
  9418  func (s InvalidJobException) GoString() string {
  9419  	return s.String()
  9420  }
  9421  
  9422  func newErrorInvalidJobException(v protocol.ResponseMetadata) error {
  9423  	return &InvalidJobException{
  9424  		RespMetadata: v,
  9425  	}
  9426  }
  9427  
  9428  // Code returns the exception type name.
  9429  func (s *InvalidJobException) Code() string {
  9430  	return "InvalidJobException"
  9431  }
  9432  
  9433  // Message returns the exception's message.
  9434  func (s *InvalidJobException) Message() string {
  9435  	if s.Message_ != nil {
  9436  		return *s.Message_
  9437  	}
  9438  	return ""
  9439  }
  9440  
  9441  // OrigErr always returns nil, satisfies awserr.Error interface.
  9442  func (s *InvalidJobException) OrigErr() error {
  9443  	return nil
  9444  }
  9445  
  9446  func (s *InvalidJobException) Error() string {
  9447  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  9448  }
  9449  
  9450  // Status code returns the HTTP status code for the request's response error.
  9451  func (s *InvalidJobException) StatusCode() int {
  9452  	return s.RespMetadata.StatusCode
  9453  }
  9454  
  9455  // RequestID returns the service's response RequestID for request.
  9456  func (s *InvalidJobException) RequestID() string {
  9457  	return s.RespMetadata.RequestID
  9458  }
  9459  
  9460  // The job state was specified in an invalid format.
  9461  type InvalidJobStateException struct {
  9462  	_            struct{}                  `type:"structure"`
  9463  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  9464  
  9465  	Message_ *string `locationName:"message" type:"string"`
  9466  }
  9467  
  9468  // String returns the string representation.
  9469  //
  9470  // API parameter values that are decorated as "sensitive" in the API will not
  9471  // be included in the string output. The member name will be present, but the
  9472  // value will be replaced with "sensitive".
  9473  func (s InvalidJobStateException) String() string {
  9474  	return awsutil.Prettify(s)
  9475  }
  9476  
  9477  // GoString returns the string representation.
  9478  //
  9479  // API parameter values that are decorated as "sensitive" in the API will not
  9480  // be included in the string output. The member name will be present, but the
  9481  // value will be replaced with "sensitive".
  9482  func (s InvalidJobStateException) GoString() string {
  9483  	return s.String()
  9484  }
  9485  
  9486  func newErrorInvalidJobStateException(v protocol.ResponseMetadata) error {
  9487  	return &InvalidJobStateException{
  9488  		RespMetadata: v,
  9489  	}
  9490  }
  9491  
  9492  // Code returns the exception type name.
  9493  func (s *InvalidJobStateException) Code() string {
  9494  	return "InvalidJobStateException"
  9495  }
  9496  
  9497  // Message returns the exception's message.
  9498  func (s *InvalidJobStateException) Message() string {
  9499  	if s.Message_ != nil {
  9500  		return *s.Message_
  9501  	}
  9502  	return ""
  9503  }
  9504  
  9505  // OrigErr always returns nil, satisfies awserr.Error interface.
  9506  func (s *InvalidJobStateException) OrigErr() error {
  9507  	return nil
  9508  }
  9509  
  9510  func (s *InvalidJobStateException) Error() string {
  9511  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  9512  }
  9513  
  9514  // Status code returns the HTTP status code for the request's response error.
  9515  func (s *InvalidJobStateException) StatusCode() int {
  9516  	return s.RespMetadata.StatusCode
  9517  }
  9518  
  9519  // RequestID returns the service's response RequestID for request.
  9520  func (s *InvalidJobStateException) RequestID() string {
  9521  	return s.RespMetadata.RequestID
  9522  }
  9523  
  9524  // The next token was specified in an invalid format. Make sure that the next
  9525  // token you provide is the token returned by a previous call.
  9526  type InvalidNextTokenException struct {
  9527  	_            struct{}                  `type:"structure"`
  9528  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  9529  
  9530  	Message_ *string `locationName:"message" type:"string"`
  9531  }
  9532  
  9533  // String returns the string representation.
  9534  //
  9535  // API parameter values that are decorated as "sensitive" in the API will not
  9536  // be included in the string output. The member name will be present, but the
  9537  // value will be replaced with "sensitive".
  9538  func (s InvalidNextTokenException) String() string {
  9539  	return awsutil.Prettify(s)
  9540  }
  9541  
  9542  // GoString returns the string representation.
  9543  //
  9544  // API parameter values that are decorated as "sensitive" in the API will not
  9545  // be included in the string output. The member name will be present, but the
  9546  // value will be replaced with "sensitive".
  9547  func (s InvalidNextTokenException) GoString() string {
  9548  	return s.String()
  9549  }
  9550  
  9551  func newErrorInvalidNextTokenException(v protocol.ResponseMetadata) error {
  9552  	return &InvalidNextTokenException{
  9553  		RespMetadata: v,
  9554  	}
  9555  }
  9556  
  9557  // Code returns the exception type name.
  9558  func (s *InvalidNextTokenException) Code() string {
  9559  	return "InvalidNextTokenException"
  9560  }
  9561  
  9562  // Message returns the exception's message.
  9563  func (s *InvalidNextTokenException) Message() string {
  9564  	if s.Message_ != nil {
  9565  		return *s.Message_
  9566  	}
  9567  	return ""
  9568  }
  9569  
  9570  // OrigErr always returns nil, satisfies awserr.Error interface.
  9571  func (s *InvalidNextTokenException) OrigErr() error {
  9572  	return nil
  9573  }
  9574  
  9575  func (s *InvalidNextTokenException) Error() string {
  9576  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  9577  }
  9578  
  9579  // Status code returns the HTTP status code for the request's response error.
  9580  func (s *InvalidNextTokenException) StatusCode() int {
  9581  	return s.RespMetadata.StatusCode
  9582  }
  9583  
  9584  // RequestID returns the service's response RequestID for request.
  9585  func (s *InvalidNextTokenException) RequestID() string {
  9586  	return s.RespMetadata.RequestID
  9587  }
  9588  
  9589  // The nonce was specified in an invalid format.
  9590  type InvalidNonceException struct {
  9591  	_            struct{}                  `type:"structure"`
  9592  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  9593  
  9594  	Message_ *string `locationName:"message" type:"string"`
  9595  }
  9596  
  9597  // String returns the string representation.
  9598  //
  9599  // API parameter values that are decorated as "sensitive" in the API will not
  9600  // be included in the string output. The member name will be present, but the
  9601  // value will be replaced with "sensitive".
  9602  func (s InvalidNonceException) String() string {
  9603  	return awsutil.Prettify(s)
  9604  }
  9605  
  9606  // GoString returns the string representation.
  9607  //
  9608  // API parameter values that are decorated as "sensitive" in the API will not
  9609  // be included in the string output. The member name will be present, but the
  9610  // value will be replaced with "sensitive".
  9611  func (s InvalidNonceException) GoString() string {
  9612  	return s.String()
  9613  }
  9614  
  9615  func newErrorInvalidNonceException(v protocol.ResponseMetadata) error {
  9616  	return &InvalidNonceException{
  9617  		RespMetadata: v,
  9618  	}
  9619  }
  9620  
  9621  // Code returns the exception type name.
  9622  func (s *InvalidNonceException) Code() string {
  9623  	return "InvalidNonceException"
  9624  }
  9625  
  9626  // Message returns the exception's message.
  9627  func (s *InvalidNonceException) Message() string {
  9628  	if s.Message_ != nil {
  9629  		return *s.Message_
  9630  	}
  9631  	return ""
  9632  }
  9633  
  9634  // OrigErr always returns nil, satisfies awserr.Error interface.
  9635  func (s *InvalidNonceException) OrigErr() error {
  9636  	return nil
  9637  }
  9638  
  9639  func (s *InvalidNonceException) Error() string {
  9640  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  9641  }
  9642  
  9643  // Status code returns the HTTP status code for the request's response error.
  9644  func (s *InvalidNonceException) StatusCode() int {
  9645  	return s.RespMetadata.StatusCode
  9646  }
  9647  
  9648  // RequestID returns the service's response RequestID for request.
  9649  func (s *InvalidNonceException) RequestID() string {
  9650  	return s.RespMetadata.RequestID
  9651  }
  9652  
  9653  // The stage declaration was specified in an invalid format.
  9654  type InvalidStageDeclarationException struct {
  9655  	_            struct{}                  `type:"structure"`
  9656  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  9657  
  9658  	Message_ *string `locationName:"message" type:"string"`
  9659  }
  9660  
  9661  // String returns the string representation.
  9662  //
  9663  // API parameter values that are decorated as "sensitive" in the API will not
  9664  // be included in the string output. The member name will be present, but the
  9665  // value will be replaced with "sensitive".
  9666  func (s InvalidStageDeclarationException) String() string {
  9667  	return awsutil.Prettify(s)
  9668  }
  9669  
  9670  // GoString returns the string representation.
  9671  //
  9672  // API parameter values that are decorated as "sensitive" in the API will not
  9673  // be included in the string output. The member name will be present, but the
  9674  // value will be replaced with "sensitive".
  9675  func (s InvalidStageDeclarationException) GoString() string {
  9676  	return s.String()
  9677  }
  9678  
  9679  func newErrorInvalidStageDeclarationException(v protocol.ResponseMetadata) error {
  9680  	return &InvalidStageDeclarationException{
  9681  		RespMetadata: v,
  9682  	}
  9683  }
  9684  
  9685  // Code returns the exception type name.
  9686  func (s *InvalidStageDeclarationException) Code() string {
  9687  	return "InvalidStageDeclarationException"
  9688  }
  9689  
  9690  // Message returns the exception's message.
  9691  func (s *InvalidStageDeclarationException) Message() string {
  9692  	if s.Message_ != nil {
  9693  		return *s.Message_
  9694  	}
  9695  	return ""
  9696  }
  9697  
  9698  // OrigErr always returns nil, satisfies awserr.Error interface.
  9699  func (s *InvalidStageDeclarationException) OrigErr() error {
  9700  	return nil
  9701  }
  9702  
  9703  func (s *InvalidStageDeclarationException) Error() string {
  9704  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  9705  }
  9706  
  9707  // Status code returns the HTTP status code for the request's response error.
  9708  func (s *InvalidStageDeclarationException) StatusCode() int {
  9709  	return s.RespMetadata.StatusCode
  9710  }
  9711  
  9712  // RequestID returns the service's response RequestID for request.
  9713  func (s *InvalidStageDeclarationException) RequestID() string {
  9714  	return s.RespMetadata.RequestID
  9715  }
  9716  
  9717  // The structure was specified in an invalid format.
  9718  type InvalidStructureException struct {
  9719  	_            struct{}                  `type:"structure"`
  9720  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  9721  
  9722  	Message_ *string `locationName:"message" type:"string"`
  9723  }
  9724  
  9725  // String returns the string representation.
  9726  //
  9727  // API parameter values that are decorated as "sensitive" in the API will not
  9728  // be included in the string output. The member name will be present, but the
  9729  // value will be replaced with "sensitive".
  9730  func (s InvalidStructureException) String() string {
  9731  	return awsutil.Prettify(s)
  9732  }
  9733  
  9734  // GoString returns the string representation.
  9735  //
  9736  // API parameter values that are decorated as "sensitive" in the API will not
  9737  // be included in the string output. The member name will be present, but the
  9738  // value will be replaced with "sensitive".
  9739  func (s InvalidStructureException) GoString() string {
  9740  	return s.String()
  9741  }
  9742  
  9743  func newErrorInvalidStructureException(v protocol.ResponseMetadata) error {
  9744  	return &InvalidStructureException{
  9745  		RespMetadata: v,
  9746  	}
  9747  }
  9748  
  9749  // Code returns the exception type name.
  9750  func (s *InvalidStructureException) Code() string {
  9751  	return "InvalidStructureException"
  9752  }
  9753  
  9754  // Message returns the exception's message.
  9755  func (s *InvalidStructureException) Message() string {
  9756  	if s.Message_ != nil {
  9757  		return *s.Message_
  9758  	}
  9759  	return ""
  9760  }
  9761  
  9762  // OrigErr always returns nil, satisfies awserr.Error interface.
  9763  func (s *InvalidStructureException) OrigErr() error {
  9764  	return nil
  9765  }
  9766  
  9767  func (s *InvalidStructureException) Error() string {
  9768  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  9769  }
  9770  
  9771  // Status code returns the HTTP status code for the request's response error.
  9772  func (s *InvalidStructureException) StatusCode() int {
  9773  	return s.RespMetadata.StatusCode
  9774  }
  9775  
  9776  // RequestID returns the service's response RequestID for request.
  9777  func (s *InvalidStructureException) RequestID() string {
  9778  	return s.RespMetadata.RequestID
  9779  }
  9780  
  9781  // The specified resource tags are invalid.
  9782  type InvalidTagsException struct {
  9783  	_            struct{}                  `type:"structure"`
  9784  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  9785  
  9786  	Message_ *string `locationName:"message" min:"1" type:"string"`
  9787  }
  9788  
  9789  // String returns the string representation.
  9790  //
  9791  // API parameter values that are decorated as "sensitive" in the API will not
  9792  // be included in the string output. The member name will be present, but the
  9793  // value will be replaced with "sensitive".
  9794  func (s InvalidTagsException) String() string {
  9795  	return awsutil.Prettify(s)
  9796  }
  9797  
  9798  // GoString returns the string representation.
  9799  //
  9800  // API parameter values that are decorated as "sensitive" in the API will not
  9801  // be included in the string output. The member name will be present, but the
  9802  // value will be replaced with "sensitive".
  9803  func (s InvalidTagsException) GoString() string {
  9804  	return s.String()
  9805  }
  9806  
  9807  func newErrorInvalidTagsException(v protocol.ResponseMetadata) error {
  9808  	return &InvalidTagsException{
  9809  		RespMetadata: v,
  9810  	}
  9811  }
  9812  
  9813  // Code returns the exception type name.
  9814  func (s *InvalidTagsException) Code() string {
  9815  	return "InvalidTagsException"
  9816  }
  9817  
  9818  // Message returns the exception's message.
  9819  func (s *InvalidTagsException) Message() string {
  9820  	if s.Message_ != nil {
  9821  		return *s.Message_
  9822  	}
  9823  	return ""
  9824  }
  9825  
  9826  // OrigErr always returns nil, satisfies awserr.Error interface.
  9827  func (s *InvalidTagsException) OrigErr() error {
  9828  	return nil
  9829  }
  9830  
  9831  func (s *InvalidTagsException) Error() string {
  9832  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  9833  }
  9834  
  9835  // Status code returns the HTTP status code for the request's response error.
  9836  func (s *InvalidTagsException) StatusCode() int {
  9837  	return s.RespMetadata.StatusCode
  9838  }
  9839  
  9840  // RequestID returns the service's response RequestID for request.
  9841  func (s *InvalidTagsException) RequestID() string {
  9842  	return s.RespMetadata.RequestID
  9843  }
  9844  
  9845  // The specified authentication type is in an invalid format.
  9846  type InvalidWebhookAuthenticationParametersException struct {
  9847  	_            struct{}                  `type:"structure"`
  9848  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  9849  
  9850  	Message_ *string `locationName:"message" type:"string"`
  9851  }
  9852  
  9853  // String returns the string representation.
  9854  //
  9855  // API parameter values that are decorated as "sensitive" in the API will not
  9856  // be included in the string output. The member name will be present, but the
  9857  // value will be replaced with "sensitive".
  9858  func (s InvalidWebhookAuthenticationParametersException) String() string {
  9859  	return awsutil.Prettify(s)
  9860  }
  9861  
  9862  // GoString returns the string representation.
  9863  //
  9864  // API parameter values that are decorated as "sensitive" in the API will not
  9865  // be included in the string output. The member name will be present, but the
  9866  // value will be replaced with "sensitive".
  9867  func (s InvalidWebhookAuthenticationParametersException) GoString() string {
  9868  	return s.String()
  9869  }
  9870  
  9871  func newErrorInvalidWebhookAuthenticationParametersException(v protocol.ResponseMetadata) error {
  9872  	return &InvalidWebhookAuthenticationParametersException{
  9873  		RespMetadata: v,
  9874  	}
  9875  }
  9876  
  9877  // Code returns the exception type name.
  9878  func (s *InvalidWebhookAuthenticationParametersException) Code() string {
  9879  	return "InvalidWebhookAuthenticationParametersException"
  9880  }
  9881  
  9882  // Message returns the exception's message.
  9883  func (s *InvalidWebhookAuthenticationParametersException) Message() string {
  9884  	if s.Message_ != nil {
  9885  		return *s.Message_
  9886  	}
  9887  	return ""
  9888  }
  9889  
  9890  // OrigErr always returns nil, satisfies awserr.Error interface.
  9891  func (s *InvalidWebhookAuthenticationParametersException) OrigErr() error {
  9892  	return nil
  9893  }
  9894  
  9895  func (s *InvalidWebhookAuthenticationParametersException) Error() string {
  9896  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  9897  }
  9898  
  9899  // Status code returns the HTTP status code for the request's response error.
  9900  func (s *InvalidWebhookAuthenticationParametersException) StatusCode() int {
  9901  	return s.RespMetadata.StatusCode
  9902  }
  9903  
  9904  // RequestID returns the service's response RequestID for request.
  9905  func (s *InvalidWebhookAuthenticationParametersException) RequestID() string {
  9906  	return s.RespMetadata.RequestID
  9907  }
  9908  
  9909  // The specified event filter rule is in an invalid format.
  9910  type InvalidWebhookFilterPatternException struct {
  9911  	_            struct{}                  `type:"structure"`
  9912  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  9913  
  9914  	Message_ *string `locationName:"message" type:"string"`
  9915  }
  9916  
  9917  // String returns the string representation.
  9918  //
  9919  // API parameter values that are decorated as "sensitive" in the API will not
  9920  // be included in the string output. The member name will be present, but the
  9921  // value will be replaced with "sensitive".
  9922  func (s InvalidWebhookFilterPatternException) String() string {
  9923  	return awsutil.Prettify(s)
  9924  }
  9925  
  9926  // GoString returns the string representation.
  9927  //
  9928  // API parameter values that are decorated as "sensitive" in the API will not
  9929  // be included in the string output. The member name will be present, but the
  9930  // value will be replaced with "sensitive".
  9931  func (s InvalidWebhookFilterPatternException) GoString() string {
  9932  	return s.String()
  9933  }
  9934  
  9935  func newErrorInvalidWebhookFilterPatternException(v protocol.ResponseMetadata) error {
  9936  	return &InvalidWebhookFilterPatternException{
  9937  		RespMetadata: v,
  9938  	}
  9939  }
  9940  
  9941  // Code returns the exception type name.
  9942  func (s *InvalidWebhookFilterPatternException) Code() string {
  9943  	return "InvalidWebhookFilterPatternException"
  9944  }
  9945  
  9946  // Message returns the exception's message.
  9947  func (s *InvalidWebhookFilterPatternException) Message() string {
  9948  	if s.Message_ != nil {
  9949  		return *s.Message_
  9950  	}
  9951  	return ""
  9952  }
  9953  
  9954  // OrigErr always returns nil, satisfies awserr.Error interface.
  9955  func (s *InvalidWebhookFilterPatternException) OrigErr() error {
  9956  	return nil
  9957  }
  9958  
  9959  func (s *InvalidWebhookFilterPatternException) Error() string {
  9960  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  9961  }
  9962  
  9963  // Status code returns the HTTP status code for the request's response error.
  9964  func (s *InvalidWebhookFilterPatternException) StatusCode() int {
  9965  	return s.RespMetadata.StatusCode
  9966  }
  9967  
  9968  // RequestID returns the service's response RequestID for request.
  9969  func (s *InvalidWebhookFilterPatternException) RequestID() string {
  9970  	return s.RespMetadata.RequestID
  9971  }
  9972  
  9973  // Represents information about a job.
  9974  type Job struct {
  9975  	_ struct{} `type:"structure"`
  9976  
  9977  	// The ID of the AWS account to use when performing the job.
  9978  	AccountId *string `locationName:"accountId" type:"string"`
  9979  
  9980  	// Other data about a job.
  9981  	Data *JobData `locationName:"data" type:"structure"`
  9982  
  9983  	// The unique system-generated ID of the job.
  9984  	Id *string `locationName:"id" type:"string"`
  9985  
  9986  	// A system-generated random number that AWS CodePipeline uses to ensure that
  9987  	// the job is being worked on by only one job worker. Use this number in an
  9988  	// AcknowledgeJob request.
  9989  	Nonce *string `locationName:"nonce" min:"1" type:"string"`
  9990  }
  9991  
  9992  // String returns the string representation.
  9993  //
  9994  // API parameter values that are decorated as "sensitive" in the API will not
  9995  // be included in the string output. The member name will be present, but the
  9996  // value will be replaced with "sensitive".
  9997  func (s Job) String() string {
  9998  	return awsutil.Prettify(s)
  9999  }
 10000  
 10001  // GoString returns the string representation.
 10002  //
 10003  // API parameter values that are decorated as "sensitive" in the API will not
 10004  // be included in the string output. The member name will be present, but the
 10005  // value will be replaced with "sensitive".
 10006  func (s Job) GoString() string {
 10007  	return s.String()
 10008  }
 10009  
 10010  // SetAccountId sets the AccountId field's value.
 10011  func (s *Job) SetAccountId(v string) *Job {
 10012  	s.AccountId = &v
 10013  	return s
 10014  }
 10015  
 10016  // SetData sets the Data field's value.
 10017  func (s *Job) SetData(v *JobData) *Job {
 10018  	s.Data = v
 10019  	return s
 10020  }
 10021  
 10022  // SetId sets the Id field's value.
 10023  func (s *Job) SetId(v string) *Job {
 10024  	s.Id = &v
 10025  	return s
 10026  }
 10027  
 10028  // SetNonce sets the Nonce field's value.
 10029  func (s *Job) SetNonce(v string) *Job {
 10030  	s.Nonce = &v
 10031  	return s
 10032  }
 10033  
 10034  // Represents other information about a job required for a job worker to complete
 10035  // the job.
 10036  type JobData struct {
 10037  	_ struct{} `type:"structure"`
 10038  
 10039  	// Represents information about an action configuration.
 10040  	ActionConfiguration *ActionConfiguration `locationName:"actionConfiguration" type:"structure"`
 10041  
 10042  	// Represents information about an action type.
 10043  	ActionTypeId *ActionTypeId `locationName:"actionTypeId" type:"structure"`
 10044  
 10045  	// Represents an AWS session credentials object. These credentials are temporary
 10046  	// credentials that are issued by AWS Secure Token Service (STS). They can be
 10047  	// used to access input and output artifacts in the S3 bucket used to store
 10048  	// artifacts for the pipeline in AWS CodePipeline.
 10049  	//
 10050  	// ArtifactCredentials is a sensitive parameter and its value will be
 10051  	// replaced with "sensitive" in string returned by JobData's
 10052  	// String and GoString methods.
 10053  	ArtifactCredentials *AWSSessionCredentials `locationName:"artifactCredentials" type:"structure" sensitive:"true"`
 10054  
 10055  	// A system-generated token, such as a AWS CodeDeploy deployment ID, required
 10056  	// by a job to continue the job asynchronously.
 10057  	ContinuationToken *string `locationName:"continuationToken" min:"1" type:"string"`
 10058  
 10059  	// Represents information about the key used to encrypt data in the artifact
 10060  	// store, such as an AWS Key Management Service (AWS KMS) key.
 10061  	EncryptionKey *EncryptionKey `locationName:"encryptionKey" type:"structure"`
 10062  
 10063  	// The artifact supplied to the job.
 10064  	InputArtifacts []*Artifact `locationName:"inputArtifacts" type:"list"`
 10065  
 10066  	// The output of the job.
 10067  	OutputArtifacts []*Artifact `locationName:"outputArtifacts" type:"list"`
 10068  
 10069  	// Represents information about a pipeline to a job worker.
 10070  	//
 10071  	// Includes pipelineArn and pipelineExecutionId for custom jobs.
 10072  	PipelineContext *PipelineContext `locationName:"pipelineContext" type:"structure"`
 10073  }
 10074  
 10075  // String returns the string representation.
 10076  //
 10077  // API parameter values that are decorated as "sensitive" in the API will not
 10078  // be included in the string output. The member name will be present, but the
 10079  // value will be replaced with "sensitive".
 10080  func (s JobData) String() string {
 10081  	return awsutil.Prettify(s)
 10082  }
 10083  
 10084  // GoString returns the string representation.
 10085  //
 10086  // API parameter values that are decorated as "sensitive" in the API will not
 10087  // be included in the string output. The member name will be present, but the
 10088  // value will be replaced with "sensitive".
 10089  func (s JobData) GoString() string {
 10090  	return s.String()
 10091  }
 10092  
 10093  // SetActionConfiguration sets the ActionConfiguration field's value.
 10094  func (s *JobData) SetActionConfiguration(v *ActionConfiguration) *JobData {
 10095  	s.ActionConfiguration = v
 10096  	return s
 10097  }
 10098  
 10099  // SetActionTypeId sets the ActionTypeId field's value.
 10100  func (s *JobData) SetActionTypeId(v *ActionTypeId) *JobData {
 10101  	s.ActionTypeId = v
 10102  	return s
 10103  }
 10104  
 10105  // SetArtifactCredentials sets the ArtifactCredentials field's value.
 10106  func (s *JobData) SetArtifactCredentials(v *AWSSessionCredentials) *JobData {
 10107  	s.ArtifactCredentials = v
 10108  	return s
 10109  }
 10110  
 10111  // SetContinuationToken sets the ContinuationToken field's value.
 10112  func (s *JobData) SetContinuationToken(v string) *JobData {
 10113  	s.ContinuationToken = &v
 10114  	return s
 10115  }
 10116  
 10117  // SetEncryptionKey sets the EncryptionKey field's value.
 10118  func (s *JobData) SetEncryptionKey(v *EncryptionKey) *JobData {
 10119  	s.EncryptionKey = v
 10120  	return s
 10121  }
 10122  
 10123  // SetInputArtifacts sets the InputArtifacts field's value.
 10124  func (s *JobData) SetInputArtifacts(v []*Artifact) *JobData {
 10125  	s.InputArtifacts = v
 10126  	return s
 10127  }
 10128  
 10129  // SetOutputArtifacts sets the OutputArtifacts field's value.
 10130  func (s *JobData) SetOutputArtifacts(v []*Artifact) *JobData {
 10131  	s.OutputArtifacts = v
 10132  	return s
 10133  }
 10134  
 10135  // SetPipelineContext sets the PipelineContext field's value.
 10136  func (s *JobData) SetPipelineContext(v *PipelineContext) *JobData {
 10137  	s.PipelineContext = v
 10138  	return s
 10139  }
 10140  
 10141  // Represents information about the details of a job.
 10142  type JobDetails struct {
 10143  	_ struct{} `type:"structure"`
 10144  
 10145  	// The AWS account ID associated with the job.
 10146  	AccountId *string `locationName:"accountId" type:"string"`
 10147  
 10148  	// Represents other information about a job required for a job worker to complete
 10149  	// the job.
 10150  	Data *JobData `locationName:"data" type:"structure"`
 10151  
 10152  	// The unique system-generated ID of the job.
 10153  	Id *string `locationName:"id" type:"string"`
 10154  }
 10155  
 10156  // String returns the string representation.
 10157  //
 10158  // API parameter values that are decorated as "sensitive" in the API will not
 10159  // be included in the string output. The member name will be present, but the
 10160  // value will be replaced with "sensitive".
 10161  func (s JobDetails) String() string {
 10162  	return awsutil.Prettify(s)
 10163  }
 10164  
 10165  // GoString returns the string representation.
 10166  //
 10167  // API parameter values that are decorated as "sensitive" in the API will not
 10168  // be included in the string output. The member name will be present, but the
 10169  // value will be replaced with "sensitive".
 10170  func (s JobDetails) GoString() string {
 10171  	return s.String()
 10172  }
 10173  
 10174  // SetAccountId sets the AccountId field's value.
 10175  func (s *JobDetails) SetAccountId(v string) *JobDetails {
 10176  	s.AccountId = &v
 10177  	return s
 10178  }
 10179  
 10180  // SetData sets the Data field's value.
 10181  func (s *JobDetails) SetData(v *JobData) *JobDetails {
 10182  	s.Data = v
 10183  	return s
 10184  }
 10185  
 10186  // SetId sets the Id field's value.
 10187  func (s *JobDetails) SetId(v string) *JobDetails {
 10188  	s.Id = &v
 10189  	return s
 10190  }
 10191  
 10192  // The job was specified in an invalid format or cannot be found.
 10193  type JobNotFoundException struct {
 10194  	_            struct{}                  `type:"structure"`
 10195  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 10196  
 10197  	Message_ *string `locationName:"message" type:"string"`
 10198  }
 10199  
 10200  // String returns the string representation.
 10201  //
 10202  // API parameter values that are decorated as "sensitive" in the API will not
 10203  // be included in the string output. The member name will be present, but the
 10204  // value will be replaced with "sensitive".
 10205  func (s JobNotFoundException) String() string {
 10206  	return awsutil.Prettify(s)
 10207  }
 10208  
 10209  // GoString returns the string representation.
 10210  //
 10211  // API parameter values that are decorated as "sensitive" in the API will not
 10212  // be included in the string output. The member name will be present, but the
 10213  // value will be replaced with "sensitive".
 10214  func (s JobNotFoundException) GoString() string {
 10215  	return s.String()
 10216  }
 10217  
 10218  func newErrorJobNotFoundException(v protocol.ResponseMetadata) error {
 10219  	return &JobNotFoundException{
 10220  		RespMetadata: v,
 10221  	}
 10222  }
 10223  
 10224  // Code returns the exception type name.
 10225  func (s *JobNotFoundException) Code() string {
 10226  	return "JobNotFoundException"
 10227  }
 10228  
 10229  // Message returns the exception's message.
 10230  func (s *JobNotFoundException) Message() string {
 10231  	if s.Message_ != nil {
 10232  		return *s.Message_
 10233  	}
 10234  	return ""
 10235  }
 10236  
 10237  // OrigErr always returns nil, satisfies awserr.Error interface.
 10238  func (s *JobNotFoundException) OrigErr() error {
 10239  	return nil
 10240  }
 10241  
 10242  func (s *JobNotFoundException) Error() string {
 10243  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 10244  }
 10245  
 10246  // Status code returns the HTTP status code for the request's response error.
 10247  func (s *JobNotFoundException) StatusCode() int {
 10248  	return s.RespMetadata.StatusCode
 10249  }
 10250  
 10251  // RequestID returns the service's response RequestID for request.
 10252  func (s *JobNotFoundException) RequestID() string {
 10253  	return s.RespMetadata.RequestID
 10254  }
 10255  
 10256  // Details about the polling configuration for the JobWorker action engine,
 10257  // or executor.
 10258  type JobWorkerExecutorConfiguration struct {
 10259  	_ struct{} `type:"structure"`
 10260  
 10261  	// The accounts in which the job worker is configured and might poll for jobs
 10262  	// as part of the action execution.
 10263  	PollingAccounts []*string `locationName:"pollingAccounts" min:"1" type:"list"`
 10264  
 10265  	// The service Principals in which the job worker is configured and might poll
 10266  	// for jobs as part of the action execution.
 10267  	PollingServicePrincipals []*string `locationName:"pollingServicePrincipals" min:"1" type:"list"`
 10268  }
 10269  
 10270  // String returns the string representation.
 10271  //
 10272  // API parameter values that are decorated as "sensitive" in the API will not
 10273  // be included in the string output. The member name will be present, but the
 10274  // value will be replaced with "sensitive".
 10275  func (s JobWorkerExecutorConfiguration) String() string {
 10276  	return awsutil.Prettify(s)
 10277  }
 10278  
 10279  // GoString returns the string representation.
 10280  //
 10281  // API parameter values that are decorated as "sensitive" in the API will not
 10282  // be included in the string output. The member name will be present, but the
 10283  // value will be replaced with "sensitive".
 10284  func (s JobWorkerExecutorConfiguration) GoString() string {
 10285  	return s.String()
 10286  }
 10287  
 10288  // Validate inspects the fields of the type to determine if they are valid.
 10289  func (s *JobWorkerExecutorConfiguration) Validate() error {
 10290  	invalidParams := request.ErrInvalidParams{Context: "JobWorkerExecutorConfiguration"}
 10291  	if s.PollingAccounts != nil && len(s.PollingAccounts) < 1 {
 10292  		invalidParams.Add(request.NewErrParamMinLen("PollingAccounts", 1))
 10293  	}
 10294  	if s.PollingServicePrincipals != nil && len(s.PollingServicePrincipals) < 1 {
 10295  		invalidParams.Add(request.NewErrParamMinLen("PollingServicePrincipals", 1))
 10296  	}
 10297  
 10298  	if invalidParams.Len() > 0 {
 10299  		return invalidParams
 10300  	}
 10301  	return nil
 10302  }
 10303  
 10304  // SetPollingAccounts sets the PollingAccounts field's value.
 10305  func (s *JobWorkerExecutorConfiguration) SetPollingAccounts(v []*string) *JobWorkerExecutorConfiguration {
 10306  	s.PollingAccounts = v
 10307  	return s
 10308  }
 10309  
 10310  // SetPollingServicePrincipals sets the PollingServicePrincipals field's value.
 10311  func (s *JobWorkerExecutorConfiguration) SetPollingServicePrincipals(v []*string) *JobWorkerExecutorConfiguration {
 10312  	s.PollingServicePrincipals = v
 10313  	return s
 10314  }
 10315  
 10316  // Details about the configuration for the Lambda action engine, or executor.
 10317  type LambdaExecutorConfiguration struct {
 10318  	_ struct{} `type:"structure"`
 10319  
 10320  	// The ARN of the Lambda function used by the action engine.
 10321  	//
 10322  	// LambdaFunctionArn is a required field
 10323  	LambdaFunctionArn *string `locationName:"lambdaFunctionArn" min:"1" type:"string" required:"true"`
 10324  }
 10325  
 10326  // String returns the string representation.
 10327  //
 10328  // API parameter values that are decorated as "sensitive" in the API will not
 10329  // be included in the string output. The member name will be present, but the
 10330  // value will be replaced with "sensitive".
 10331  func (s LambdaExecutorConfiguration) String() string {
 10332  	return awsutil.Prettify(s)
 10333  }
 10334  
 10335  // GoString returns the string representation.
 10336  //
 10337  // API parameter values that are decorated as "sensitive" in the API will not
 10338  // be included in the string output. The member name will be present, but the
 10339  // value will be replaced with "sensitive".
 10340  func (s LambdaExecutorConfiguration) GoString() string {
 10341  	return s.String()
 10342  }
 10343  
 10344  // Validate inspects the fields of the type to determine if they are valid.
 10345  func (s *LambdaExecutorConfiguration) Validate() error {
 10346  	invalidParams := request.ErrInvalidParams{Context: "LambdaExecutorConfiguration"}
 10347  	if s.LambdaFunctionArn == nil {
 10348  		invalidParams.Add(request.NewErrParamRequired("LambdaFunctionArn"))
 10349  	}
 10350  	if s.LambdaFunctionArn != nil && len(*s.LambdaFunctionArn) < 1 {
 10351  		invalidParams.Add(request.NewErrParamMinLen("LambdaFunctionArn", 1))
 10352  	}
 10353  
 10354  	if invalidParams.Len() > 0 {
 10355  		return invalidParams
 10356  	}
 10357  	return nil
 10358  }
 10359  
 10360  // SetLambdaFunctionArn sets the LambdaFunctionArn field's value.
 10361  func (s *LambdaExecutorConfiguration) SetLambdaFunctionArn(v string) *LambdaExecutorConfiguration {
 10362  	s.LambdaFunctionArn = &v
 10363  	return s
 10364  }
 10365  
 10366  // The number of pipelines associated with the AWS account has exceeded the
 10367  // limit allowed for the account.
 10368  type LimitExceededException struct {
 10369  	_            struct{}                  `type:"structure"`
 10370  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 10371  
 10372  	Message_ *string `locationName:"message" type:"string"`
 10373  }
 10374  
 10375  // String returns the string representation.
 10376  //
 10377  // API parameter values that are decorated as "sensitive" in the API will not
 10378  // be included in the string output. The member name will be present, but the
 10379  // value will be replaced with "sensitive".
 10380  func (s LimitExceededException) String() string {
 10381  	return awsutil.Prettify(s)
 10382  }
 10383  
 10384  // GoString returns the string representation.
 10385  //
 10386  // API parameter values that are decorated as "sensitive" in the API will not
 10387  // be included in the string output. The member name will be present, but the
 10388  // value will be replaced with "sensitive".
 10389  func (s LimitExceededException) GoString() string {
 10390  	return s.String()
 10391  }
 10392  
 10393  func newErrorLimitExceededException(v protocol.ResponseMetadata) error {
 10394  	return &LimitExceededException{
 10395  		RespMetadata: v,
 10396  	}
 10397  }
 10398  
 10399  // Code returns the exception type name.
 10400  func (s *LimitExceededException) Code() string {
 10401  	return "LimitExceededException"
 10402  }
 10403  
 10404  // Message returns the exception's message.
 10405  func (s *LimitExceededException) Message() string {
 10406  	if s.Message_ != nil {
 10407  		return *s.Message_
 10408  	}
 10409  	return ""
 10410  }
 10411  
 10412  // OrigErr always returns nil, satisfies awserr.Error interface.
 10413  func (s *LimitExceededException) OrigErr() error {
 10414  	return nil
 10415  }
 10416  
 10417  func (s *LimitExceededException) Error() string {
 10418  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 10419  }
 10420  
 10421  // Status code returns the HTTP status code for the request's response error.
 10422  func (s *LimitExceededException) StatusCode() int {
 10423  	return s.RespMetadata.StatusCode
 10424  }
 10425  
 10426  // RequestID returns the service's response RequestID for request.
 10427  func (s *LimitExceededException) RequestID() string {
 10428  	return s.RespMetadata.RequestID
 10429  }
 10430  
 10431  type ListActionExecutionsInput struct {
 10432  	_ struct{} `type:"structure"`
 10433  
 10434  	// Input information used to filter action execution history.
 10435  	Filter *ActionExecutionFilter `locationName:"filter" type:"structure"`
 10436  
 10437  	// The maximum number of results to return in a single call. To retrieve the
 10438  	// remaining results, make another call with the returned nextToken value. Action
 10439  	// execution history is retained for up to 12 months, based on action execution
 10440  	// start times. Default value is 100.
 10441  	//
 10442  	// Detailed execution history is available for executions run on or after February
 10443  	// 21, 2019.
 10444  	MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"`
 10445  
 10446  	// The token that was returned from the previous ListActionExecutions call,
 10447  	// which can be used to return the next set of action executions in the list.
 10448  	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
 10449  
 10450  	// The name of the pipeline for which you want to list action execution history.
 10451  	//
 10452  	// PipelineName is a required field
 10453  	PipelineName *string `locationName:"pipelineName" min:"1" type:"string" required:"true"`
 10454  }
 10455  
 10456  // String returns the string representation.
 10457  //
 10458  // API parameter values that are decorated as "sensitive" in the API will not
 10459  // be included in the string output. The member name will be present, but the
 10460  // value will be replaced with "sensitive".
 10461  func (s ListActionExecutionsInput) String() string {
 10462  	return awsutil.Prettify(s)
 10463  }
 10464  
 10465  // GoString returns the string representation.
 10466  //
 10467  // API parameter values that are decorated as "sensitive" in the API will not
 10468  // be included in the string output. The member name will be present, but the
 10469  // value will be replaced with "sensitive".
 10470  func (s ListActionExecutionsInput) GoString() string {
 10471  	return s.String()
 10472  }
 10473  
 10474  // Validate inspects the fields of the type to determine if they are valid.
 10475  func (s *ListActionExecutionsInput) Validate() error {
 10476  	invalidParams := request.ErrInvalidParams{Context: "ListActionExecutionsInput"}
 10477  	if s.MaxResults != nil && *s.MaxResults < 1 {
 10478  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 10479  	}
 10480  	if s.NextToken != nil && len(*s.NextToken) < 1 {
 10481  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
 10482  	}
 10483  	if s.PipelineName == nil {
 10484  		invalidParams.Add(request.NewErrParamRequired("PipelineName"))
 10485  	}
 10486  	if s.PipelineName != nil && len(*s.PipelineName) < 1 {
 10487  		invalidParams.Add(request.NewErrParamMinLen("PipelineName", 1))
 10488  	}
 10489  
 10490  	if invalidParams.Len() > 0 {
 10491  		return invalidParams
 10492  	}
 10493  	return nil
 10494  }
 10495  
 10496  // SetFilter sets the Filter field's value.
 10497  func (s *ListActionExecutionsInput) SetFilter(v *ActionExecutionFilter) *ListActionExecutionsInput {
 10498  	s.Filter = v
 10499  	return s
 10500  }
 10501  
 10502  // SetMaxResults sets the MaxResults field's value.
 10503  func (s *ListActionExecutionsInput) SetMaxResults(v int64) *ListActionExecutionsInput {
 10504  	s.MaxResults = &v
 10505  	return s
 10506  }
 10507  
 10508  // SetNextToken sets the NextToken field's value.
 10509  func (s *ListActionExecutionsInput) SetNextToken(v string) *ListActionExecutionsInput {
 10510  	s.NextToken = &v
 10511  	return s
 10512  }
 10513  
 10514  // SetPipelineName sets the PipelineName field's value.
 10515  func (s *ListActionExecutionsInput) SetPipelineName(v string) *ListActionExecutionsInput {
 10516  	s.PipelineName = &v
 10517  	return s
 10518  }
 10519  
 10520  type ListActionExecutionsOutput struct {
 10521  	_ struct{} `type:"structure"`
 10522  
 10523  	// The details for a list of recent executions, such as action execution ID.
 10524  	ActionExecutionDetails []*ActionExecutionDetail `locationName:"actionExecutionDetails" type:"list"`
 10525  
 10526  	// If the amount of returned information is significantly large, an identifier
 10527  	// is also returned and can be used in a subsequent ListActionExecutions call
 10528  	// to return the next set of action executions in the list.
 10529  	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
 10530  }
 10531  
 10532  // String returns the string representation.
 10533  //
 10534  // API parameter values that are decorated as "sensitive" in the API will not
 10535  // be included in the string output. The member name will be present, but the
 10536  // value will be replaced with "sensitive".
 10537  func (s ListActionExecutionsOutput) String() string {
 10538  	return awsutil.Prettify(s)
 10539  }
 10540  
 10541  // GoString returns the string representation.
 10542  //
 10543  // API parameter values that are decorated as "sensitive" in the API will not
 10544  // be included in the string output. The member name will be present, but the
 10545  // value will be replaced with "sensitive".
 10546  func (s ListActionExecutionsOutput) GoString() string {
 10547  	return s.String()
 10548  }
 10549  
 10550  // SetActionExecutionDetails sets the ActionExecutionDetails field's value.
 10551  func (s *ListActionExecutionsOutput) SetActionExecutionDetails(v []*ActionExecutionDetail) *ListActionExecutionsOutput {
 10552  	s.ActionExecutionDetails = v
 10553  	return s
 10554  }
 10555  
 10556  // SetNextToken sets the NextToken field's value.
 10557  func (s *ListActionExecutionsOutput) SetNextToken(v string) *ListActionExecutionsOutput {
 10558  	s.NextToken = &v
 10559  	return s
 10560  }
 10561  
 10562  // Represents the input of a ListActionTypes action.
 10563  type ListActionTypesInput struct {
 10564  	_ struct{} `type:"structure"`
 10565  
 10566  	// Filters the list of action types to those created by a specified entity.
 10567  	ActionOwnerFilter *string `locationName:"actionOwnerFilter" type:"string" enum:"ActionOwner"`
 10568  
 10569  	// An identifier that was returned from the previous list action types call,
 10570  	// which can be used to return the next set of action types in the list.
 10571  	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
 10572  
 10573  	// The Region to filter on for the list of action types.
 10574  	RegionFilter *string `locationName:"regionFilter" min:"4" type:"string"`
 10575  }
 10576  
 10577  // String returns the string representation.
 10578  //
 10579  // API parameter values that are decorated as "sensitive" in the API will not
 10580  // be included in the string output. The member name will be present, but the
 10581  // value will be replaced with "sensitive".
 10582  func (s ListActionTypesInput) String() string {
 10583  	return awsutil.Prettify(s)
 10584  }
 10585  
 10586  // GoString returns the string representation.
 10587  //
 10588  // API parameter values that are decorated as "sensitive" in the API will not
 10589  // be included in the string output. The member name will be present, but the
 10590  // value will be replaced with "sensitive".
 10591  func (s ListActionTypesInput) GoString() string {
 10592  	return s.String()
 10593  }
 10594  
 10595  // Validate inspects the fields of the type to determine if they are valid.
 10596  func (s *ListActionTypesInput) Validate() error {
 10597  	invalidParams := request.ErrInvalidParams{Context: "ListActionTypesInput"}
 10598  	if s.NextToken != nil && len(*s.NextToken) < 1 {
 10599  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
 10600  	}
 10601  	if s.RegionFilter != nil && len(*s.RegionFilter) < 4 {
 10602  		invalidParams.Add(request.NewErrParamMinLen("RegionFilter", 4))
 10603  	}
 10604  
 10605  	if invalidParams.Len() > 0 {
 10606  		return invalidParams
 10607  	}
 10608  	return nil
 10609  }
 10610  
 10611  // SetActionOwnerFilter sets the ActionOwnerFilter field's value.
 10612  func (s *ListActionTypesInput) SetActionOwnerFilter(v string) *ListActionTypesInput {
 10613  	s.ActionOwnerFilter = &v
 10614  	return s
 10615  }
 10616  
 10617  // SetNextToken sets the NextToken field's value.
 10618  func (s *ListActionTypesInput) SetNextToken(v string) *ListActionTypesInput {
 10619  	s.NextToken = &v
 10620  	return s
 10621  }
 10622  
 10623  // SetRegionFilter sets the RegionFilter field's value.
 10624  func (s *ListActionTypesInput) SetRegionFilter(v string) *ListActionTypesInput {
 10625  	s.RegionFilter = &v
 10626  	return s
 10627  }
 10628  
 10629  // Represents the output of a ListActionTypes action.
 10630  type ListActionTypesOutput struct {
 10631  	_ struct{} `type:"structure"`
 10632  
 10633  	// Provides details of the action types.
 10634  	//
 10635  	// ActionTypes is a required field
 10636  	ActionTypes []*ActionType `locationName:"actionTypes" type:"list" required:"true"`
 10637  
 10638  	// If the amount of returned information is significantly large, an identifier
 10639  	// is also returned. It can be used in a subsequent list action types call to
 10640  	// return the next set of action types in the list.
 10641  	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
 10642  }
 10643  
 10644  // String returns the string representation.
 10645  //
 10646  // API parameter values that are decorated as "sensitive" in the API will not
 10647  // be included in the string output. The member name will be present, but the
 10648  // value will be replaced with "sensitive".
 10649  func (s ListActionTypesOutput) String() string {
 10650  	return awsutil.Prettify(s)
 10651  }
 10652  
 10653  // GoString returns the string representation.
 10654  //
 10655  // API parameter values that are decorated as "sensitive" in the API will not
 10656  // be included in the string output. The member name will be present, but the
 10657  // value will be replaced with "sensitive".
 10658  func (s ListActionTypesOutput) GoString() string {
 10659  	return s.String()
 10660  }
 10661  
 10662  // SetActionTypes sets the ActionTypes field's value.
 10663  func (s *ListActionTypesOutput) SetActionTypes(v []*ActionType) *ListActionTypesOutput {
 10664  	s.ActionTypes = v
 10665  	return s
 10666  }
 10667  
 10668  // SetNextToken sets the NextToken field's value.
 10669  func (s *ListActionTypesOutput) SetNextToken(v string) *ListActionTypesOutput {
 10670  	s.NextToken = &v
 10671  	return s
 10672  }
 10673  
 10674  // Represents the input of a ListPipelineExecutions action.
 10675  type ListPipelineExecutionsInput struct {
 10676  	_ struct{} `type:"structure"`
 10677  
 10678  	// The maximum number of results to return in a single call. To retrieve the
 10679  	// remaining results, make another call with the returned nextToken value. Pipeline
 10680  	// history is limited to the most recent 12 months, based on pipeline execution
 10681  	// start times. Default value is 100.
 10682  	MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"`
 10683  
 10684  	// The token that was returned from the previous ListPipelineExecutions call,
 10685  	// which can be used to return the next set of pipeline executions in the list.
 10686  	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
 10687  
 10688  	// The name of the pipeline for which you want to get execution summary information.
 10689  	//
 10690  	// PipelineName is a required field
 10691  	PipelineName *string `locationName:"pipelineName" min:"1" type:"string" required:"true"`
 10692  }
 10693  
 10694  // String returns the string representation.
 10695  //
 10696  // API parameter values that are decorated as "sensitive" in the API will not
 10697  // be included in the string output. The member name will be present, but the
 10698  // value will be replaced with "sensitive".
 10699  func (s ListPipelineExecutionsInput) String() string {
 10700  	return awsutil.Prettify(s)
 10701  }
 10702  
 10703  // GoString returns the string representation.
 10704  //
 10705  // API parameter values that are decorated as "sensitive" in the API will not
 10706  // be included in the string output. The member name will be present, but the
 10707  // value will be replaced with "sensitive".
 10708  func (s ListPipelineExecutionsInput) GoString() string {
 10709  	return s.String()
 10710  }
 10711  
 10712  // Validate inspects the fields of the type to determine if they are valid.
 10713  func (s *ListPipelineExecutionsInput) Validate() error {
 10714  	invalidParams := request.ErrInvalidParams{Context: "ListPipelineExecutionsInput"}
 10715  	if s.MaxResults != nil && *s.MaxResults < 1 {
 10716  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 10717  	}
 10718  	if s.NextToken != nil && len(*s.NextToken) < 1 {
 10719  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
 10720  	}
 10721  	if s.PipelineName == nil {
 10722  		invalidParams.Add(request.NewErrParamRequired("PipelineName"))
 10723  	}
 10724  	if s.PipelineName != nil && len(*s.PipelineName) < 1 {
 10725  		invalidParams.Add(request.NewErrParamMinLen("PipelineName", 1))
 10726  	}
 10727  
 10728  	if invalidParams.Len() > 0 {
 10729  		return invalidParams
 10730  	}
 10731  	return nil
 10732  }
 10733  
 10734  // SetMaxResults sets the MaxResults field's value.
 10735  func (s *ListPipelineExecutionsInput) SetMaxResults(v int64) *ListPipelineExecutionsInput {
 10736  	s.MaxResults = &v
 10737  	return s
 10738  }
 10739  
 10740  // SetNextToken sets the NextToken field's value.
 10741  func (s *ListPipelineExecutionsInput) SetNextToken(v string) *ListPipelineExecutionsInput {
 10742  	s.NextToken = &v
 10743  	return s
 10744  }
 10745  
 10746  // SetPipelineName sets the PipelineName field's value.
 10747  func (s *ListPipelineExecutionsInput) SetPipelineName(v string) *ListPipelineExecutionsInput {
 10748  	s.PipelineName = &v
 10749  	return s
 10750  }
 10751  
 10752  // Represents the output of a ListPipelineExecutions action.
 10753  type ListPipelineExecutionsOutput struct {
 10754  	_ struct{} `type:"structure"`
 10755  
 10756  	// A token that can be used in the next ListPipelineExecutions call. To view
 10757  	// all items in the list, continue to call this operation with each subsequent
 10758  	// token until no more nextToken values are returned.
 10759  	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
 10760  
 10761  	// A list of executions in the history of a pipeline.
 10762  	PipelineExecutionSummaries []*PipelineExecutionSummary `locationName:"pipelineExecutionSummaries" type:"list"`
 10763  }
 10764  
 10765  // String returns the string representation.
 10766  //
 10767  // API parameter values that are decorated as "sensitive" in the API will not
 10768  // be included in the string output. The member name will be present, but the
 10769  // value will be replaced with "sensitive".
 10770  func (s ListPipelineExecutionsOutput) String() string {
 10771  	return awsutil.Prettify(s)
 10772  }
 10773  
 10774  // GoString returns the string representation.
 10775  //
 10776  // API parameter values that are decorated as "sensitive" in the API will not
 10777  // be included in the string output. The member name will be present, but the
 10778  // value will be replaced with "sensitive".
 10779  func (s ListPipelineExecutionsOutput) GoString() string {
 10780  	return s.String()
 10781  }
 10782  
 10783  // SetNextToken sets the NextToken field's value.
 10784  func (s *ListPipelineExecutionsOutput) SetNextToken(v string) *ListPipelineExecutionsOutput {
 10785  	s.NextToken = &v
 10786  	return s
 10787  }
 10788  
 10789  // SetPipelineExecutionSummaries sets the PipelineExecutionSummaries field's value.
 10790  func (s *ListPipelineExecutionsOutput) SetPipelineExecutionSummaries(v []*PipelineExecutionSummary) *ListPipelineExecutionsOutput {
 10791  	s.PipelineExecutionSummaries = v
 10792  	return s
 10793  }
 10794  
 10795  // Represents the input of a ListPipelines action.
 10796  type ListPipelinesInput struct {
 10797  	_ struct{} `type:"structure"`
 10798  
 10799  	// The maximum number of pipelines to return in a single call. To retrieve the
 10800  	// remaining pipelines, make another call with the returned nextToken value.
 10801  	// The minimum value you can specify is 1. The maximum accepted value is 1000.
 10802  	MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"`
 10803  
 10804  	// An identifier that was returned from the previous list pipelines call. It
 10805  	// can be used to return the next set of pipelines in the list.
 10806  	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
 10807  }
 10808  
 10809  // String returns the string representation.
 10810  //
 10811  // API parameter values that are decorated as "sensitive" in the API will not
 10812  // be included in the string output. The member name will be present, but the
 10813  // value will be replaced with "sensitive".
 10814  func (s ListPipelinesInput) String() string {
 10815  	return awsutil.Prettify(s)
 10816  }
 10817  
 10818  // GoString returns the string representation.
 10819  //
 10820  // API parameter values that are decorated as "sensitive" in the API will not
 10821  // be included in the string output. The member name will be present, but the
 10822  // value will be replaced with "sensitive".
 10823  func (s ListPipelinesInput) GoString() string {
 10824  	return s.String()
 10825  }
 10826  
 10827  // Validate inspects the fields of the type to determine if they are valid.
 10828  func (s *ListPipelinesInput) Validate() error {
 10829  	invalidParams := request.ErrInvalidParams{Context: "ListPipelinesInput"}
 10830  	if s.MaxResults != nil && *s.MaxResults < 1 {
 10831  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 10832  	}
 10833  	if s.NextToken != nil && len(*s.NextToken) < 1 {
 10834  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
 10835  	}
 10836  
 10837  	if invalidParams.Len() > 0 {
 10838  		return invalidParams
 10839  	}
 10840  	return nil
 10841  }
 10842  
 10843  // SetMaxResults sets the MaxResults field's value.
 10844  func (s *ListPipelinesInput) SetMaxResults(v int64) *ListPipelinesInput {
 10845  	s.MaxResults = &v
 10846  	return s
 10847  }
 10848  
 10849  // SetNextToken sets the NextToken field's value.
 10850  func (s *ListPipelinesInput) SetNextToken(v string) *ListPipelinesInput {
 10851  	s.NextToken = &v
 10852  	return s
 10853  }
 10854  
 10855  // Represents the output of a ListPipelines action.
 10856  type ListPipelinesOutput struct {
 10857  	_ struct{} `type:"structure"`
 10858  
 10859  	// If the amount of returned information is significantly large, an identifier
 10860  	// is also returned. It can be used in a subsequent list pipelines call to return
 10861  	// the next set of pipelines in the list.
 10862  	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
 10863  
 10864  	// The list of pipelines.
 10865  	Pipelines []*PipelineSummary `locationName:"pipelines" type:"list"`
 10866  }
 10867  
 10868  // String returns the string representation.
 10869  //
 10870  // API parameter values that are decorated as "sensitive" in the API will not
 10871  // be included in the string output. The member name will be present, but the
 10872  // value will be replaced with "sensitive".
 10873  func (s ListPipelinesOutput) String() string {
 10874  	return awsutil.Prettify(s)
 10875  }
 10876  
 10877  // GoString returns the string representation.
 10878  //
 10879  // API parameter values that are decorated as "sensitive" in the API will not
 10880  // be included in the string output. The member name will be present, but the
 10881  // value will be replaced with "sensitive".
 10882  func (s ListPipelinesOutput) GoString() string {
 10883  	return s.String()
 10884  }
 10885  
 10886  // SetNextToken sets the NextToken field's value.
 10887  func (s *ListPipelinesOutput) SetNextToken(v string) *ListPipelinesOutput {
 10888  	s.NextToken = &v
 10889  	return s
 10890  }
 10891  
 10892  // SetPipelines sets the Pipelines field's value.
 10893  func (s *ListPipelinesOutput) SetPipelines(v []*PipelineSummary) *ListPipelinesOutput {
 10894  	s.Pipelines = v
 10895  	return s
 10896  }
 10897  
 10898  type ListTagsForResourceInput struct {
 10899  	_ struct{} `type:"structure"`
 10900  
 10901  	// The maximum number of results to return in a single call.
 10902  	MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"`
 10903  
 10904  	// The token that was returned from the previous API call, which would be used
 10905  	// to return the next page of the list. The ListTagsforResource call lists all
 10906  	// available tags in one call and does not use pagination.
 10907  	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
 10908  
 10909  	// The Amazon Resource Name (ARN) of the resource to get tags for.
 10910  	//
 10911  	// ResourceArn is a required field
 10912  	ResourceArn *string `locationName:"resourceArn" type:"string" required:"true"`
 10913  }
 10914  
 10915  // String returns the string representation.
 10916  //
 10917  // API parameter values that are decorated as "sensitive" in the API will not
 10918  // be included in the string output. The member name will be present, but the
 10919  // value will be replaced with "sensitive".
 10920  func (s ListTagsForResourceInput) String() string {
 10921  	return awsutil.Prettify(s)
 10922  }
 10923  
 10924  // GoString returns the string representation.
 10925  //
 10926  // API parameter values that are decorated as "sensitive" in the API will not
 10927  // be included in the string output. The member name will be present, but the
 10928  // value will be replaced with "sensitive".
 10929  func (s ListTagsForResourceInput) GoString() string {
 10930  	return s.String()
 10931  }
 10932  
 10933  // Validate inspects the fields of the type to determine if they are valid.
 10934  func (s *ListTagsForResourceInput) Validate() error {
 10935  	invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"}
 10936  	if s.MaxResults != nil && *s.MaxResults < 1 {
 10937  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 10938  	}
 10939  	if s.NextToken != nil && len(*s.NextToken) < 1 {
 10940  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
 10941  	}
 10942  	if s.ResourceArn == nil {
 10943  		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
 10944  	}
 10945  
 10946  	if invalidParams.Len() > 0 {
 10947  		return invalidParams
 10948  	}
 10949  	return nil
 10950  }
 10951  
 10952  // SetMaxResults sets the MaxResults field's value.
 10953  func (s *ListTagsForResourceInput) SetMaxResults(v int64) *ListTagsForResourceInput {
 10954  	s.MaxResults = &v
 10955  	return s
 10956  }
 10957  
 10958  // SetNextToken sets the NextToken field's value.
 10959  func (s *ListTagsForResourceInput) SetNextToken(v string) *ListTagsForResourceInput {
 10960  	s.NextToken = &v
 10961  	return s
 10962  }
 10963  
 10964  // SetResourceArn sets the ResourceArn field's value.
 10965  func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput {
 10966  	s.ResourceArn = &v
 10967  	return s
 10968  }
 10969  
 10970  type ListTagsForResourceOutput struct {
 10971  	_ struct{} `type:"structure"`
 10972  
 10973  	// If the amount of returned information is significantly large, an identifier
 10974  	// is also returned and can be used in a subsequent API call to return the next
 10975  	// page of the list. The ListTagsforResource call lists all available tags in
 10976  	// one call and does not use pagination.
 10977  	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
 10978  
 10979  	// The tags for the resource.
 10980  	Tags []*Tag `locationName:"tags" type:"list"`
 10981  }
 10982  
 10983  // String returns the string representation.
 10984  //
 10985  // API parameter values that are decorated as "sensitive" in the API will not
 10986  // be included in the string output. The member name will be present, but the
 10987  // value will be replaced with "sensitive".
 10988  func (s ListTagsForResourceOutput) String() string {
 10989  	return awsutil.Prettify(s)
 10990  }
 10991  
 10992  // GoString returns the string representation.
 10993  //
 10994  // API parameter values that are decorated as "sensitive" in the API will not
 10995  // be included in the string output. The member name will be present, but the
 10996  // value will be replaced with "sensitive".
 10997  func (s ListTagsForResourceOutput) GoString() string {
 10998  	return s.String()
 10999  }
 11000  
 11001  // SetNextToken sets the NextToken field's value.
 11002  func (s *ListTagsForResourceOutput) SetNextToken(v string) *ListTagsForResourceOutput {
 11003  	s.NextToken = &v
 11004  	return s
 11005  }
 11006  
 11007  // SetTags sets the Tags field's value.
 11008  func (s *ListTagsForResourceOutput) SetTags(v []*Tag) *ListTagsForResourceOutput {
 11009  	s.Tags = v
 11010  	return s
 11011  }
 11012  
 11013  // The detail returned for each webhook after listing webhooks, such as the
 11014  // webhook URL, the webhook name, and the webhook ARN.
 11015  type ListWebhookItem struct {
 11016  	_ struct{} `type:"structure"`
 11017  
 11018  	// The Amazon Resource Name (ARN) of the webhook.
 11019  	Arn *string `locationName:"arn" type:"string"`
 11020  
 11021  	// The detail returned for each webhook, such as the webhook authentication
 11022  	// type and filter rules.
 11023  	//
 11024  	// Definition is a required field
 11025  	Definition *WebhookDefinition `locationName:"definition" type:"structure" required:"true"`
 11026  
 11027  	// The number code of the error.
 11028  	ErrorCode *string `locationName:"errorCode" type:"string"`
 11029  
 11030  	// The text of the error message about the webhook.
 11031  	ErrorMessage *string `locationName:"errorMessage" type:"string"`
 11032  
 11033  	// The date and time a webhook was last successfully triggered, in timestamp
 11034  	// format.
 11035  	LastTriggered *time.Time `locationName:"lastTriggered" type:"timestamp"`
 11036  
 11037  	// Specifies the tags applied to the webhook.
 11038  	Tags []*Tag `locationName:"tags" type:"list"`
 11039  
 11040  	// A unique URL generated by CodePipeline. When a POST request is made to this
 11041  	// URL, the defined pipeline is started as long as the body of the post request
 11042  	// satisfies the defined authentication and filtering conditions. Deleting and
 11043  	// re-creating a webhook makes the old URL invalid and generates a new one.
 11044  	//
 11045  	// Url is a required field
 11046  	Url *string `locationName:"url" min:"1" type:"string" required:"true"`
 11047  }
 11048  
 11049  // String returns the string representation.
 11050  //
 11051  // API parameter values that are decorated as "sensitive" in the API will not
 11052  // be included in the string output. The member name will be present, but the
 11053  // value will be replaced with "sensitive".
 11054  func (s ListWebhookItem) String() string {
 11055  	return awsutil.Prettify(s)
 11056  }
 11057  
 11058  // GoString returns the string representation.
 11059  //
 11060  // API parameter values that are decorated as "sensitive" in the API will not
 11061  // be included in the string output. The member name will be present, but the
 11062  // value will be replaced with "sensitive".
 11063  func (s ListWebhookItem) GoString() string {
 11064  	return s.String()
 11065  }
 11066  
 11067  // SetArn sets the Arn field's value.
 11068  func (s *ListWebhookItem) SetArn(v string) *ListWebhookItem {
 11069  	s.Arn = &v
 11070  	return s
 11071  }
 11072  
 11073  // SetDefinition sets the Definition field's value.
 11074  func (s *ListWebhookItem) SetDefinition(v *WebhookDefinition) *ListWebhookItem {
 11075  	s.Definition = v
 11076  	return s
 11077  }
 11078  
 11079  // SetErrorCode sets the ErrorCode field's value.
 11080  func (s *ListWebhookItem) SetErrorCode(v string) *ListWebhookItem {
 11081  	s.ErrorCode = &v
 11082  	return s
 11083  }
 11084  
 11085  // SetErrorMessage sets the ErrorMessage field's value.
 11086  func (s *ListWebhookItem) SetErrorMessage(v string) *ListWebhookItem {
 11087  	s.ErrorMessage = &v
 11088  	return s
 11089  }
 11090  
 11091  // SetLastTriggered sets the LastTriggered field's value.
 11092  func (s *ListWebhookItem) SetLastTriggered(v time.Time) *ListWebhookItem {
 11093  	s.LastTriggered = &v
 11094  	return s
 11095  }
 11096  
 11097  // SetTags sets the Tags field's value.
 11098  func (s *ListWebhookItem) SetTags(v []*Tag) *ListWebhookItem {
 11099  	s.Tags = v
 11100  	return s
 11101  }
 11102  
 11103  // SetUrl sets the Url field's value.
 11104  func (s *ListWebhookItem) SetUrl(v string) *ListWebhookItem {
 11105  	s.Url = &v
 11106  	return s
 11107  }
 11108  
 11109  type ListWebhooksInput struct {
 11110  	_ struct{} `type:"structure"`
 11111  
 11112  	// The maximum number of results to return in a single call. To retrieve the
 11113  	// remaining results, make another call with the returned nextToken value.
 11114  	MaxResults *int64 `min:"1" type:"integer"`
 11115  
 11116  	// The token that was returned from the previous ListWebhooks call, which can
 11117  	// be used to return the next set of webhooks in the list.
 11118  	NextToken *string `min:"1" type:"string"`
 11119  }
 11120  
 11121  // String returns the string representation.
 11122  //
 11123  // API parameter values that are decorated as "sensitive" in the API will not
 11124  // be included in the string output. The member name will be present, but the
 11125  // value will be replaced with "sensitive".
 11126  func (s ListWebhooksInput) String() string {
 11127  	return awsutil.Prettify(s)
 11128  }
 11129  
 11130  // GoString returns the string representation.
 11131  //
 11132  // API parameter values that are decorated as "sensitive" in the API will not
 11133  // be included in the string output. The member name will be present, but the
 11134  // value will be replaced with "sensitive".
 11135  func (s ListWebhooksInput) GoString() string {
 11136  	return s.String()
 11137  }
 11138  
 11139  // Validate inspects the fields of the type to determine if they are valid.
 11140  func (s *ListWebhooksInput) Validate() error {
 11141  	invalidParams := request.ErrInvalidParams{Context: "ListWebhooksInput"}
 11142  	if s.MaxResults != nil && *s.MaxResults < 1 {
 11143  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 11144  	}
 11145  	if s.NextToken != nil && len(*s.NextToken) < 1 {
 11146  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
 11147  	}
 11148  
 11149  	if invalidParams.Len() > 0 {
 11150  		return invalidParams
 11151  	}
 11152  	return nil
 11153  }
 11154  
 11155  // SetMaxResults sets the MaxResults field's value.
 11156  func (s *ListWebhooksInput) SetMaxResults(v int64) *ListWebhooksInput {
 11157  	s.MaxResults = &v
 11158  	return s
 11159  }
 11160  
 11161  // SetNextToken sets the NextToken field's value.
 11162  func (s *ListWebhooksInput) SetNextToken(v string) *ListWebhooksInput {
 11163  	s.NextToken = &v
 11164  	return s
 11165  }
 11166  
 11167  type ListWebhooksOutput struct {
 11168  	_ struct{} `type:"structure"`
 11169  
 11170  	// If the amount of returned information is significantly large, an identifier
 11171  	// is also returned and can be used in a subsequent ListWebhooks call to return
 11172  	// the next set of webhooks in the list.
 11173  	NextToken *string `min:"1" type:"string"`
 11174  
 11175  	// The JSON detail returned for each webhook in the list output for the ListWebhooks
 11176  	// call.
 11177  	Webhooks []*ListWebhookItem `locationName:"webhooks" type:"list"`
 11178  }
 11179  
 11180  // String returns the string representation.
 11181  //
 11182  // API parameter values that are decorated as "sensitive" in the API will not
 11183  // be included in the string output. The member name will be present, but the
 11184  // value will be replaced with "sensitive".
 11185  func (s ListWebhooksOutput) String() string {
 11186  	return awsutil.Prettify(s)
 11187  }
 11188  
 11189  // GoString returns the string representation.
 11190  //
 11191  // API parameter values that are decorated as "sensitive" in the API will not
 11192  // be included in the string output. The member name will be present, but the
 11193  // value will be replaced with "sensitive".
 11194  func (s ListWebhooksOutput) GoString() string {
 11195  	return s.String()
 11196  }
 11197  
 11198  // SetNextToken sets the NextToken field's value.
 11199  func (s *ListWebhooksOutput) SetNextToken(v string) *ListWebhooksOutput {
 11200  	s.NextToken = &v
 11201  	return s
 11202  }
 11203  
 11204  // SetWebhooks sets the Webhooks field's value.
 11205  func (s *ListWebhooksOutput) SetWebhooks(v []*ListWebhookItem) *ListWebhooksOutput {
 11206  	s.Webhooks = v
 11207  	return s
 11208  }
 11209  
 11210  // The stage has failed in a later run of the pipeline and the pipelineExecutionId
 11211  // associated with the request is out of date.
 11212  type NotLatestPipelineExecutionException struct {
 11213  	_            struct{}                  `type:"structure"`
 11214  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 11215  
 11216  	Message_ *string `locationName:"message" type:"string"`
 11217  }
 11218  
 11219  // String returns the string representation.
 11220  //
 11221  // API parameter values that are decorated as "sensitive" in the API will not
 11222  // be included in the string output. The member name will be present, but the
 11223  // value will be replaced with "sensitive".
 11224  func (s NotLatestPipelineExecutionException) String() string {
 11225  	return awsutil.Prettify(s)
 11226  }
 11227  
 11228  // GoString returns the string representation.
 11229  //
 11230  // API parameter values that are decorated as "sensitive" in the API will not
 11231  // be included in the string output. The member name will be present, but the
 11232  // value will be replaced with "sensitive".
 11233  func (s NotLatestPipelineExecutionException) GoString() string {
 11234  	return s.String()
 11235  }
 11236  
 11237  func newErrorNotLatestPipelineExecutionException(v protocol.ResponseMetadata) error {
 11238  	return &NotLatestPipelineExecutionException{
 11239  		RespMetadata: v,
 11240  	}
 11241  }
 11242  
 11243  // Code returns the exception type name.
 11244  func (s *NotLatestPipelineExecutionException) Code() string {
 11245  	return "NotLatestPipelineExecutionException"
 11246  }
 11247  
 11248  // Message returns the exception's message.
 11249  func (s *NotLatestPipelineExecutionException) Message() string {
 11250  	if s.Message_ != nil {
 11251  		return *s.Message_
 11252  	}
 11253  	return ""
 11254  }
 11255  
 11256  // OrigErr always returns nil, satisfies awserr.Error interface.
 11257  func (s *NotLatestPipelineExecutionException) OrigErr() error {
 11258  	return nil
 11259  }
 11260  
 11261  func (s *NotLatestPipelineExecutionException) Error() string {
 11262  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 11263  }
 11264  
 11265  // Status code returns the HTTP status code for the request's response error.
 11266  func (s *NotLatestPipelineExecutionException) StatusCode() int {
 11267  	return s.RespMetadata.StatusCode
 11268  }
 11269  
 11270  // RequestID returns the service's response RequestID for request.
 11271  func (s *NotLatestPipelineExecutionException) RequestID() string {
 11272  	return s.RespMetadata.RequestID
 11273  }
 11274  
 11275  // Represents information about the output of an action.
 11276  type OutputArtifact struct {
 11277  	_ struct{} `type:"structure"`
 11278  
 11279  	// The name of the output of an artifact, such as "My App".
 11280  	//
 11281  	// The input artifact of an action must exactly match the output artifact declared
 11282  	// in a preceding action, but the input artifact does not have to be the next
 11283  	// action in strict sequence from the action that provided the output artifact.
 11284  	// Actions in parallel can declare different output artifacts, which are in
 11285  	// turn consumed by different following actions.
 11286  	//
 11287  	// Output artifact names must be unique within a pipeline.
 11288  	//
 11289  	// Name is a required field
 11290  	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
 11291  }
 11292  
 11293  // String returns the string representation.
 11294  //
 11295  // API parameter values that are decorated as "sensitive" in the API will not
 11296  // be included in the string output. The member name will be present, but the
 11297  // value will be replaced with "sensitive".
 11298  func (s OutputArtifact) String() string {
 11299  	return awsutil.Prettify(s)
 11300  }
 11301  
 11302  // GoString returns the string representation.
 11303  //
 11304  // API parameter values that are decorated as "sensitive" in the API will not
 11305  // be included in the string output. The member name will be present, but the
 11306  // value will be replaced with "sensitive".
 11307  func (s OutputArtifact) GoString() string {
 11308  	return s.String()
 11309  }
 11310  
 11311  // Validate inspects the fields of the type to determine if they are valid.
 11312  func (s *OutputArtifact) Validate() error {
 11313  	invalidParams := request.ErrInvalidParams{Context: "OutputArtifact"}
 11314  	if s.Name == nil {
 11315  		invalidParams.Add(request.NewErrParamRequired("Name"))
 11316  	}
 11317  	if s.Name != nil && len(*s.Name) < 1 {
 11318  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
 11319  	}
 11320  
 11321  	if invalidParams.Len() > 0 {
 11322  		return invalidParams
 11323  	}
 11324  	return nil
 11325  }
 11326  
 11327  // SetName sets the Name field's value.
 11328  func (s *OutputArtifact) SetName(v string) *OutputArtifact {
 11329  	s.Name = &v
 11330  	return s
 11331  }
 11332  
 11333  // Exceeded the total size limit for all variables in the pipeline.
 11334  type OutputVariablesSizeExceededException struct {
 11335  	_            struct{}                  `type:"structure"`
 11336  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 11337  
 11338  	Message_ *string `locationName:"message" min:"1" type:"string"`
 11339  }
 11340  
 11341  // String returns the string representation.
 11342  //
 11343  // API parameter values that are decorated as "sensitive" in the API will not
 11344  // be included in the string output. The member name will be present, but the
 11345  // value will be replaced with "sensitive".
 11346  func (s OutputVariablesSizeExceededException) String() string {
 11347  	return awsutil.Prettify(s)
 11348  }
 11349  
 11350  // GoString returns the string representation.
 11351  //
 11352  // API parameter values that are decorated as "sensitive" in the API will not
 11353  // be included in the string output. The member name will be present, but the
 11354  // value will be replaced with "sensitive".
 11355  func (s OutputVariablesSizeExceededException) GoString() string {
 11356  	return s.String()
 11357  }
 11358  
 11359  func newErrorOutputVariablesSizeExceededException(v protocol.ResponseMetadata) error {
 11360  	return &OutputVariablesSizeExceededException{
 11361  		RespMetadata: v,
 11362  	}
 11363  }
 11364  
 11365  // Code returns the exception type name.
 11366  func (s *OutputVariablesSizeExceededException) Code() string {
 11367  	return "OutputVariablesSizeExceededException"
 11368  }
 11369  
 11370  // Message returns the exception's message.
 11371  func (s *OutputVariablesSizeExceededException) Message() string {
 11372  	if s.Message_ != nil {
 11373  		return *s.Message_
 11374  	}
 11375  	return ""
 11376  }
 11377  
 11378  // OrigErr always returns nil, satisfies awserr.Error interface.
 11379  func (s *OutputVariablesSizeExceededException) OrigErr() error {
 11380  	return nil
 11381  }
 11382  
 11383  func (s *OutputVariablesSizeExceededException) Error() string {
 11384  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 11385  }
 11386  
 11387  // Status code returns the HTTP status code for the request's response error.
 11388  func (s *OutputVariablesSizeExceededException) StatusCode() int {
 11389  	return s.RespMetadata.StatusCode
 11390  }
 11391  
 11392  // RequestID returns the service's response RequestID for request.
 11393  func (s *OutputVariablesSizeExceededException) RequestID() string {
 11394  	return s.RespMetadata.RequestID
 11395  }
 11396  
 11397  // Represents information about a pipeline to a job worker.
 11398  //
 11399  // PipelineContext contains pipelineArn and pipelineExecutionId for custom action
 11400  // jobs. The pipelineArn and pipelineExecutionId fields are not populated for
 11401  // ThirdParty action jobs.
 11402  type PipelineContext struct {
 11403  	_ struct{} `type:"structure"`
 11404  
 11405  	// The context of an action to a job worker in the stage of a pipeline.
 11406  	Action *ActionContext `locationName:"action" type:"structure"`
 11407  
 11408  	// The Amazon Resource Name (ARN) of the pipeline.
 11409  	PipelineArn *string `locationName:"pipelineArn" type:"string"`
 11410  
 11411  	// The execution ID of the pipeline.
 11412  	PipelineExecutionId *string `locationName:"pipelineExecutionId" type:"string"`
 11413  
 11414  	// The name of the pipeline. This is a user-specified value. Pipeline names
 11415  	// must be unique across all pipeline names under an Amazon Web Services account.
 11416  	PipelineName *string `locationName:"pipelineName" min:"1" type:"string"`
 11417  
 11418  	// The stage of the pipeline.
 11419  	Stage *StageContext `locationName:"stage" type:"structure"`
 11420  }
 11421  
 11422  // String returns the string representation.
 11423  //
 11424  // API parameter values that are decorated as "sensitive" in the API will not
 11425  // be included in the string output. The member name will be present, but the
 11426  // value will be replaced with "sensitive".
 11427  func (s PipelineContext) String() string {
 11428  	return awsutil.Prettify(s)
 11429  }
 11430  
 11431  // GoString returns the string representation.
 11432  //
 11433  // API parameter values that are decorated as "sensitive" in the API will not
 11434  // be included in the string output. The member name will be present, but the
 11435  // value will be replaced with "sensitive".
 11436  func (s PipelineContext) GoString() string {
 11437  	return s.String()
 11438  }
 11439  
 11440  // SetAction sets the Action field's value.
 11441  func (s *PipelineContext) SetAction(v *ActionContext) *PipelineContext {
 11442  	s.Action = v
 11443  	return s
 11444  }
 11445  
 11446  // SetPipelineArn sets the PipelineArn field's value.
 11447  func (s *PipelineContext) SetPipelineArn(v string) *PipelineContext {
 11448  	s.PipelineArn = &v
 11449  	return s
 11450  }
 11451  
 11452  // SetPipelineExecutionId sets the PipelineExecutionId field's value.
 11453  func (s *PipelineContext) SetPipelineExecutionId(v string) *PipelineContext {
 11454  	s.PipelineExecutionId = &v
 11455  	return s
 11456  }
 11457  
 11458  // SetPipelineName sets the PipelineName field's value.
 11459  func (s *PipelineContext) SetPipelineName(v string) *PipelineContext {
 11460  	s.PipelineName = &v
 11461  	return s
 11462  }
 11463  
 11464  // SetStage sets the Stage field's value.
 11465  func (s *PipelineContext) SetStage(v *StageContext) *PipelineContext {
 11466  	s.Stage = v
 11467  	return s
 11468  }
 11469  
 11470  // Represents the structure of actions and stages to be performed in the pipeline.
 11471  type PipelineDeclaration struct {
 11472  	_ struct{} `type:"structure"`
 11473  
 11474  	// Represents information about the S3 bucket where artifacts are stored for
 11475  	// the pipeline.
 11476  	//
 11477  	// You must include either artifactStore or artifactStores in your pipeline,
 11478  	// but you cannot use both. If you create a cross-region action in your pipeline,
 11479  	// you must use artifactStores.
 11480  	ArtifactStore *ArtifactStore `locationName:"artifactStore" type:"structure"`
 11481  
 11482  	// A mapping of artifactStore objects and their corresponding AWS Regions. There
 11483  	// must be an artifact store for the pipeline Region and for each cross-region
 11484  	// action in the pipeline.
 11485  	//
 11486  	// You must include either artifactStore or artifactStores in your pipeline,
 11487  	// but you cannot use both. If you create a cross-region action in your pipeline,
 11488  	// you must use artifactStores.
 11489  	ArtifactStores map[string]*ArtifactStore `locationName:"artifactStores" type:"map"`
 11490  
 11491  	// The name of the pipeline.
 11492  	//
 11493  	// Name is a required field
 11494  	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
 11495  
 11496  	// The Amazon Resource Name (ARN) for AWS CodePipeline to use to either perform
 11497  	// actions with no actionRoleArn, or to use to assume roles for actions with
 11498  	// an actionRoleArn.
 11499  	//
 11500  	// RoleArn is a required field
 11501  	RoleArn *string `locationName:"roleArn" type:"string" required:"true"`
 11502  
 11503  	// The stage in which to perform the action.
 11504  	//
 11505  	// Stages is a required field
 11506  	Stages []*StageDeclaration `locationName:"stages" type:"list" required:"true"`
 11507  
 11508  	// The version number of the pipeline. A new pipeline always has a version number
 11509  	// of 1. This number is incremented when a pipeline is updated.
 11510  	Version *int64 `locationName:"version" min:"1" type:"integer"`
 11511  }
 11512  
 11513  // String returns the string representation.
 11514  //
 11515  // API parameter values that are decorated as "sensitive" in the API will not
 11516  // be included in the string output. The member name will be present, but the
 11517  // value will be replaced with "sensitive".
 11518  func (s PipelineDeclaration) String() string {
 11519  	return awsutil.Prettify(s)
 11520  }
 11521  
 11522  // GoString returns the string representation.
 11523  //
 11524  // API parameter values that are decorated as "sensitive" in the API will not
 11525  // be included in the string output. The member name will be present, but the
 11526  // value will be replaced with "sensitive".
 11527  func (s PipelineDeclaration) GoString() string {
 11528  	return s.String()
 11529  }
 11530  
 11531  // Validate inspects the fields of the type to determine if they are valid.
 11532  func (s *PipelineDeclaration) Validate() error {
 11533  	invalidParams := request.ErrInvalidParams{Context: "PipelineDeclaration"}
 11534  	if s.Name == nil {
 11535  		invalidParams.Add(request.NewErrParamRequired("Name"))
 11536  	}
 11537  	if s.Name != nil && len(*s.Name) < 1 {
 11538  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
 11539  	}
 11540  	if s.RoleArn == nil {
 11541  		invalidParams.Add(request.NewErrParamRequired("RoleArn"))
 11542  	}
 11543  	if s.Stages == nil {
 11544  		invalidParams.Add(request.NewErrParamRequired("Stages"))
 11545  	}
 11546  	if s.Version != nil && *s.Version < 1 {
 11547  		invalidParams.Add(request.NewErrParamMinValue("Version", 1))
 11548  	}
 11549  	if s.ArtifactStore != nil {
 11550  		if err := s.ArtifactStore.Validate(); err != nil {
 11551  			invalidParams.AddNested("ArtifactStore", err.(request.ErrInvalidParams))
 11552  		}
 11553  	}
 11554  	if s.ArtifactStores != nil {
 11555  		for i, v := range s.ArtifactStores {
 11556  			if v == nil {
 11557  				continue
 11558  			}
 11559  			if err := v.Validate(); err != nil {
 11560  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ArtifactStores", i), err.(request.ErrInvalidParams))
 11561  			}
 11562  		}
 11563  	}
 11564  	if s.Stages != nil {
 11565  		for i, v := range s.Stages {
 11566  			if v == nil {
 11567  				continue
 11568  			}
 11569  			if err := v.Validate(); err != nil {
 11570  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Stages", i), err.(request.ErrInvalidParams))
 11571  			}
 11572  		}
 11573  	}
 11574  
 11575  	if invalidParams.Len() > 0 {
 11576  		return invalidParams
 11577  	}
 11578  	return nil
 11579  }
 11580  
 11581  // SetArtifactStore sets the ArtifactStore field's value.
 11582  func (s *PipelineDeclaration) SetArtifactStore(v *ArtifactStore) *PipelineDeclaration {
 11583  	s.ArtifactStore = v
 11584  	return s
 11585  }
 11586  
 11587  // SetArtifactStores sets the ArtifactStores field's value.
 11588  func (s *PipelineDeclaration) SetArtifactStores(v map[string]*ArtifactStore) *PipelineDeclaration {
 11589  	s.ArtifactStores = v
 11590  	return s
 11591  }
 11592  
 11593  // SetName sets the Name field's value.
 11594  func (s *PipelineDeclaration) SetName(v string) *PipelineDeclaration {
 11595  	s.Name = &v
 11596  	return s
 11597  }
 11598  
 11599  // SetRoleArn sets the RoleArn field's value.
 11600  func (s *PipelineDeclaration) SetRoleArn(v string) *PipelineDeclaration {
 11601  	s.RoleArn = &v
 11602  	return s
 11603  }
 11604  
 11605  // SetStages sets the Stages field's value.
 11606  func (s *PipelineDeclaration) SetStages(v []*StageDeclaration) *PipelineDeclaration {
 11607  	s.Stages = v
 11608  	return s
 11609  }
 11610  
 11611  // SetVersion sets the Version field's value.
 11612  func (s *PipelineDeclaration) SetVersion(v int64) *PipelineDeclaration {
 11613  	s.Version = &v
 11614  	return s
 11615  }
 11616  
 11617  // Represents information about an execution of a pipeline.
 11618  type PipelineExecution struct {
 11619  	_ struct{} `type:"structure"`
 11620  
 11621  	// A list of ArtifactRevision objects included in a pipeline execution.
 11622  	ArtifactRevisions []*ArtifactRevision `locationName:"artifactRevisions" type:"list"`
 11623  
 11624  	// The ID of the pipeline execution.
 11625  	PipelineExecutionId *string `locationName:"pipelineExecutionId" type:"string"`
 11626  
 11627  	// The name of the pipeline with the specified pipeline execution.
 11628  	PipelineName *string `locationName:"pipelineName" min:"1" type:"string"`
 11629  
 11630  	// The version number of the pipeline with the specified pipeline execution.
 11631  	PipelineVersion *int64 `locationName:"pipelineVersion" min:"1" type:"integer"`
 11632  
 11633  	// The status of the pipeline execution.
 11634  	//
 11635  	//    * Cancelled: The pipeline’s definition was updated before the pipeline
 11636  	//    execution could be completed.
 11637  	//
 11638  	//    * InProgress: The pipeline execution is currently running.
 11639  	//
 11640  	//    * Stopped: The pipeline execution was manually stopped. For more information,
 11641  	//    see Stopped Executions (https://docs.aws.amazon.com/codepipeline/latest/userguide/concepts.html#concepts-executions-stopped).
 11642  	//
 11643  	//    * Stopping: The pipeline execution received a request to be manually stopped.
 11644  	//    Depending on the selected stop mode, the execution is either completing
 11645  	//    or abandoning in-progress actions. For more information, see Stopped Executions
 11646  	//    (https://docs.aws.amazon.com/codepipeline/latest/userguide/concepts.html#concepts-executions-stopped).
 11647  	//
 11648  	//    * Succeeded: The pipeline execution was completed successfully.
 11649  	//
 11650  	//    * Superseded: While this pipeline execution was waiting for the next stage
 11651  	//    to be completed, a newer pipeline execution advanced and continued through
 11652  	//    the pipeline instead. For more information, see Superseded Executions
 11653  	//    (https://docs.aws.amazon.com/codepipeline/latest/userguide/concepts.html#concepts-superseded).
 11654  	//
 11655  	//    * Failed: The pipeline execution was not completed successfully.
 11656  	Status *string `locationName:"status" type:"string" enum:"PipelineExecutionStatus"`
 11657  
 11658  	// A summary that contains a description of the pipeline execution status.
 11659  	StatusSummary *string `locationName:"statusSummary" type:"string"`
 11660  }
 11661  
 11662  // String returns the string representation.
 11663  //
 11664  // API parameter values that are decorated as "sensitive" in the API will not
 11665  // be included in the string output. The member name will be present, but the
 11666  // value will be replaced with "sensitive".
 11667  func (s PipelineExecution) String() string {
 11668  	return awsutil.Prettify(s)
 11669  }
 11670  
 11671  // GoString returns the string representation.
 11672  //
 11673  // API parameter values that are decorated as "sensitive" in the API will not
 11674  // be included in the string output. The member name will be present, but the
 11675  // value will be replaced with "sensitive".
 11676  func (s PipelineExecution) GoString() string {
 11677  	return s.String()
 11678  }
 11679  
 11680  // SetArtifactRevisions sets the ArtifactRevisions field's value.
 11681  func (s *PipelineExecution) SetArtifactRevisions(v []*ArtifactRevision) *PipelineExecution {
 11682  	s.ArtifactRevisions = v
 11683  	return s
 11684  }
 11685  
 11686  // SetPipelineExecutionId sets the PipelineExecutionId field's value.
 11687  func (s *PipelineExecution) SetPipelineExecutionId(v string) *PipelineExecution {
 11688  	s.PipelineExecutionId = &v
 11689  	return s
 11690  }
 11691  
 11692  // SetPipelineName sets the PipelineName field's value.
 11693  func (s *PipelineExecution) SetPipelineName(v string) *PipelineExecution {
 11694  	s.PipelineName = &v
 11695  	return s
 11696  }
 11697  
 11698  // SetPipelineVersion sets the PipelineVersion field's value.
 11699  func (s *PipelineExecution) SetPipelineVersion(v int64) *PipelineExecution {
 11700  	s.PipelineVersion = &v
 11701  	return s
 11702  }
 11703  
 11704  // SetStatus sets the Status field's value.
 11705  func (s *PipelineExecution) SetStatus(v string) *PipelineExecution {
 11706  	s.Status = &v
 11707  	return s
 11708  }
 11709  
 11710  // SetStatusSummary sets the StatusSummary field's value.
 11711  func (s *PipelineExecution) SetStatusSummary(v string) *PipelineExecution {
 11712  	s.StatusSummary = &v
 11713  	return s
 11714  }
 11715  
 11716  // The pipeline execution was specified in an invalid format or cannot be found,
 11717  // or an execution ID does not belong to the specified pipeline.
 11718  type PipelineExecutionNotFoundException struct {
 11719  	_            struct{}                  `type:"structure"`
 11720  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 11721  
 11722  	Message_ *string `locationName:"message" type:"string"`
 11723  }
 11724  
 11725  // String returns the string representation.
 11726  //
 11727  // API parameter values that are decorated as "sensitive" in the API will not
 11728  // be included in the string output. The member name will be present, but the
 11729  // value will be replaced with "sensitive".
 11730  func (s PipelineExecutionNotFoundException) String() string {
 11731  	return awsutil.Prettify(s)
 11732  }
 11733  
 11734  // GoString returns the string representation.
 11735  //
 11736  // API parameter values that are decorated as "sensitive" in the API will not
 11737  // be included in the string output. The member name will be present, but the
 11738  // value will be replaced with "sensitive".
 11739  func (s PipelineExecutionNotFoundException) GoString() string {
 11740  	return s.String()
 11741  }
 11742  
 11743  func newErrorPipelineExecutionNotFoundException(v protocol.ResponseMetadata) error {
 11744  	return &PipelineExecutionNotFoundException{
 11745  		RespMetadata: v,
 11746  	}
 11747  }
 11748  
 11749  // Code returns the exception type name.
 11750  func (s *PipelineExecutionNotFoundException) Code() string {
 11751  	return "PipelineExecutionNotFoundException"
 11752  }
 11753  
 11754  // Message returns the exception's message.
 11755  func (s *PipelineExecutionNotFoundException) Message() string {
 11756  	if s.Message_ != nil {
 11757  		return *s.Message_
 11758  	}
 11759  	return ""
 11760  }
 11761  
 11762  // OrigErr always returns nil, satisfies awserr.Error interface.
 11763  func (s *PipelineExecutionNotFoundException) OrigErr() error {
 11764  	return nil
 11765  }
 11766  
 11767  func (s *PipelineExecutionNotFoundException) Error() string {
 11768  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 11769  }
 11770  
 11771  // Status code returns the HTTP status code for the request's response error.
 11772  func (s *PipelineExecutionNotFoundException) StatusCode() int {
 11773  	return s.RespMetadata.StatusCode
 11774  }
 11775  
 11776  // RequestID returns the service's response RequestID for request.
 11777  func (s *PipelineExecutionNotFoundException) RequestID() string {
 11778  	return s.RespMetadata.RequestID
 11779  }
 11780  
 11781  // Unable to stop the pipeline execution. The execution might already be in
 11782  // a Stopped state, or it might no longer be in progress.
 11783  type PipelineExecutionNotStoppableException struct {
 11784  	_            struct{}                  `type:"structure"`
 11785  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 11786  
 11787  	Message_ *string `locationName:"message" min:"1" type:"string"`
 11788  }
 11789  
 11790  // String returns the string representation.
 11791  //
 11792  // API parameter values that are decorated as "sensitive" in the API will not
 11793  // be included in the string output. The member name will be present, but the
 11794  // value will be replaced with "sensitive".
 11795  func (s PipelineExecutionNotStoppableException) String() string {
 11796  	return awsutil.Prettify(s)
 11797  }
 11798  
 11799  // GoString returns the string representation.
 11800  //
 11801  // API parameter values that are decorated as "sensitive" in the API will not
 11802  // be included in the string output. The member name will be present, but the
 11803  // value will be replaced with "sensitive".
 11804  func (s PipelineExecutionNotStoppableException) GoString() string {
 11805  	return s.String()
 11806  }
 11807  
 11808  func newErrorPipelineExecutionNotStoppableException(v protocol.ResponseMetadata) error {
 11809  	return &PipelineExecutionNotStoppableException{
 11810  		RespMetadata: v,
 11811  	}
 11812  }
 11813  
 11814  // Code returns the exception type name.
 11815  func (s *PipelineExecutionNotStoppableException) Code() string {
 11816  	return "PipelineExecutionNotStoppableException"
 11817  }
 11818  
 11819  // Message returns the exception's message.
 11820  func (s *PipelineExecutionNotStoppableException) Message() string {
 11821  	if s.Message_ != nil {
 11822  		return *s.Message_
 11823  	}
 11824  	return ""
 11825  }
 11826  
 11827  // OrigErr always returns nil, satisfies awserr.Error interface.
 11828  func (s *PipelineExecutionNotStoppableException) OrigErr() error {
 11829  	return nil
 11830  }
 11831  
 11832  func (s *PipelineExecutionNotStoppableException) Error() string {
 11833  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 11834  }
 11835  
 11836  // Status code returns the HTTP status code for the request's response error.
 11837  func (s *PipelineExecutionNotStoppableException) StatusCode() int {
 11838  	return s.RespMetadata.StatusCode
 11839  }
 11840  
 11841  // RequestID returns the service's response RequestID for request.
 11842  func (s *PipelineExecutionNotStoppableException) RequestID() string {
 11843  	return s.RespMetadata.RequestID
 11844  }
 11845  
 11846  // Summary information about a pipeline execution.
 11847  type PipelineExecutionSummary struct {
 11848  	_ struct{} `type:"structure"`
 11849  
 11850  	// The date and time of the last change to the pipeline execution, in timestamp
 11851  	// format.
 11852  	LastUpdateTime *time.Time `locationName:"lastUpdateTime" type:"timestamp"`
 11853  
 11854  	// The ID of the pipeline execution.
 11855  	PipelineExecutionId *string `locationName:"pipelineExecutionId" type:"string"`
 11856  
 11857  	// A list of the source artifact revisions that initiated a pipeline execution.
 11858  	SourceRevisions []*SourceRevision `locationName:"sourceRevisions" type:"list"`
 11859  
 11860  	// The date and time when the pipeline execution began, in timestamp format.
 11861  	StartTime *time.Time `locationName:"startTime" type:"timestamp"`
 11862  
 11863  	// The status of the pipeline execution.
 11864  	//
 11865  	//    * InProgress: The pipeline execution is currently running.
 11866  	//
 11867  	//    * Stopped: The pipeline execution was manually stopped. For more information,
 11868  	//    see Stopped Executions (https://docs.aws.amazon.com/codepipeline/latest/userguide/concepts.html#concepts-executions-stopped).
 11869  	//
 11870  	//    * Stopping: The pipeline execution received a request to be manually stopped.
 11871  	//    Depending on the selected stop mode, the execution is either completing
 11872  	//    or abandoning in-progress actions. For more information, see Stopped Executions
 11873  	//    (https://docs.aws.amazon.com/codepipeline/latest/userguide/concepts.html#concepts-executions-stopped).
 11874  	//
 11875  	//    * Succeeded: The pipeline execution was completed successfully.
 11876  	//
 11877  	//    * Superseded: While this pipeline execution was waiting for the next stage
 11878  	//    to be completed, a newer pipeline execution advanced and continued through
 11879  	//    the pipeline instead. For more information, see Superseded Executions
 11880  	//    (https://docs.aws.amazon.com/codepipeline/latest/userguide/concepts.html#concepts-superseded).
 11881  	//
 11882  	//    * Failed: The pipeline execution was not completed successfully.
 11883  	Status *string `locationName:"status" type:"string" enum:"PipelineExecutionStatus"`
 11884  
 11885  	// The interaction that stopped a pipeline execution.
 11886  	StopTrigger *StopExecutionTrigger `locationName:"stopTrigger" type:"structure"`
 11887  
 11888  	// The interaction or event that started a pipeline execution, such as automated
 11889  	// change detection or a StartPipelineExecution API call.
 11890  	Trigger *ExecutionTrigger `locationName:"trigger" type:"structure"`
 11891  }
 11892  
 11893  // String returns the string representation.
 11894  //
 11895  // API parameter values that are decorated as "sensitive" in the API will not
 11896  // be included in the string output. The member name will be present, but the
 11897  // value will be replaced with "sensitive".
 11898  func (s PipelineExecutionSummary) String() string {
 11899  	return awsutil.Prettify(s)
 11900  }
 11901  
 11902  // GoString returns the string representation.
 11903  //
 11904  // API parameter values that are decorated as "sensitive" in the API will not
 11905  // be included in the string output. The member name will be present, but the
 11906  // value will be replaced with "sensitive".
 11907  func (s PipelineExecutionSummary) GoString() string {
 11908  	return s.String()
 11909  }
 11910  
 11911  // SetLastUpdateTime sets the LastUpdateTime field's value.
 11912  func (s *PipelineExecutionSummary) SetLastUpdateTime(v time.Time) *PipelineExecutionSummary {
 11913  	s.LastUpdateTime = &v
 11914  	return s
 11915  }
 11916  
 11917  // SetPipelineExecutionId sets the PipelineExecutionId field's value.
 11918  func (s *PipelineExecutionSummary) SetPipelineExecutionId(v string) *PipelineExecutionSummary {
 11919  	s.PipelineExecutionId = &v
 11920  	return s
 11921  }
 11922  
 11923  // SetSourceRevisions sets the SourceRevisions field's value.
 11924  func (s *PipelineExecutionSummary) SetSourceRevisions(v []*SourceRevision) *PipelineExecutionSummary {
 11925  	s.SourceRevisions = v
 11926  	return s
 11927  }
 11928  
 11929  // SetStartTime sets the StartTime field's value.
 11930  func (s *PipelineExecutionSummary) SetStartTime(v time.Time) *PipelineExecutionSummary {
 11931  	s.StartTime = &v
 11932  	return s
 11933  }
 11934  
 11935  // SetStatus sets the Status field's value.
 11936  func (s *PipelineExecutionSummary) SetStatus(v string) *PipelineExecutionSummary {
 11937  	s.Status = &v
 11938  	return s
 11939  }
 11940  
 11941  // SetStopTrigger sets the StopTrigger field's value.
 11942  func (s *PipelineExecutionSummary) SetStopTrigger(v *StopExecutionTrigger) *PipelineExecutionSummary {
 11943  	s.StopTrigger = v
 11944  	return s
 11945  }
 11946  
 11947  // SetTrigger sets the Trigger field's value.
 11948  func (s *PipelineExecutionSummary) SetTrigger(v *ExecutionTrigger) *PipelineExecutionSummary {
 11949  	s.Trigger = v
 11950  	return s
 11951  }
 11952  
 11953  // Information about a pipeline.
 11954  type PipelineMetadata struct {
 11955  	_ struct{} `type:"structure"`
 11956  
 11957  	// The date and time the pipeline was created, in timestamp format.
 11958  	Created *time.Time `locationName:"created" type:"timestamp"`
 11959  
 11960  	// The Amazon Resource Name (ARN) of the pipeline.
 11961  	PipelineArn *string `locationName:"pipelineArn" type:"string"`
 11962  
 11963  	// The date and time the pipeline was last updated, in timestamp format.
 11964  	Updated *time.Time `locationName:"updated" type:"timestamp"`
 11965  }
 11966  
 11967  // String returns the string representation.
 11968  //
 11969  // API parameter values that are decorated as "sensitive" in the API will not
 11970  // be included in the string output. The member name will be present, but the
 11971  // value will be replaced with "sensitive".
 11972  func (s PipelineMetadata) String() string {
 11973  	return awsutil.Prettify(s)
 11974  }
 11975  
 11976  // GoString returns the string representation.
 11977  //
 11978  // API parameter values that are decorated as "sensitive" in the API will not
 11979  // be included in the string output. The member name will be present, but the
 11980  // value will be replaced with "sensitive".
 11981  func (s PipelineMetadata) GoString() string {
 11982  	return s.String()
 11983  }
 11984  
 11985  // SetCreated sets the Created field's value.
 11986  func (s *PipelineMetadata) SetCreated(v time.Time) *PipelineMetadata {
 11987  	s.Created = &v
 11988  	return s
 11989  }
 11990  
 11991  // SetPipelineArn sets the PipelineArn field's value.
 11992  func (s *PipelineMetadata) SetPipelineArn(v string) *PipelineMetadata {
 11993  	s.PipelineArn = &v
 11994  	return s
 11995  }
 11996  
 11997  // SetUpdated sets the Updated field's value.
 11998  func (s *PipelineMetadata) SetUpdated(v time.Time) *PipelineMetadata {
 11999  	s.Updated = &v
 12000  	return s
 12001  }
 12002  
 12003  // The specified pipeline name is already in use.
 12004  type PipelineNameInUseException struct {
 12005  	_            struct{}                  `type:"structure"`
 12006  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 12007  
 12008  	Message_ *string `locationName:"message" type:"string"`
 12009  }
 12010  
 12011  // String returns the string representation.
 12012  //
 12013  // API parameter values that are decorated as "sensitive" in the API will not
 12014  // be included in the string output. The member name will be present, but the
 12015  // value will be replaced with "sensitive".
 12016  func (s PipelineNameInUseException) String() string {
 12017  	return awsutil.Prettify(s)
 12018  }
 12019  
 12020  // GoString returns the string representation.
 12021  //
 12022  // API parameter values that are decorated as "sensitive" in the API will not
 12023  // be included in the string output. The member name will be present, but the
 12024  // value will be replaced with "sensitive".
 12025  func (s PipelineNameInUseException) GoString() string {
 12026  	return s.String()
 12027  }
 12028  
 12029  func newErrorPipelineNameInUseException(v protocol.ResponseMetadata) error {
 12030  	return &PipelineNameInUseException{
 12031  		RespMetadata: v,
 12032  	}
 12033  }
 12034  
 12035  // Code returns the exception type name.
 12036  func (s *PipelineNameInUseException) Code() string {
 12037  	return "PipelineNameInUseException"
 12038  }
 12039  
 12040  // Message returns the exception's message.
 12041  func (s *PipelineNameInUseException) Message() string {
 12042  	if s.Message_ != nil {
 12043  		return *s.Message_
 12044  	}
 12045  	return ""
 12046  }
 12047  
 12048  // OrigErr always returns nil, satisfies awserr.Error interface.
 12049  func (s *PipelineNameInUseException) OrigErr() error {
 12050  	return nil
 12051  }
 12052  
 12053  func (s *PipelineNameInUseException) Error() string {
 12054  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 12055  }
 12056  
 12057  // Status code returns the HTTP status code for the request's response error.
 12058  func (s *PipelineNameInUseException) StatusCode() int {
 12059  	return s.RespMetadata.StatusCode
 12060  }
 12061  
 12062  // RequestID returns the service's response RequestID for request.
 12063  func (s *PipelineNameInUseException) RequestID() string {
 12064  	return s.RespMetadata.RequestID
 12065  }
 12066  
 12067  // The pipeline was specified in an invalid format or cannot be found.
 12068  type PipelineNotFoundException struct {
 12069  	_            struct{}                  `type:"structure"`
 12070  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 12071  
 12072  	Message_ *string `locationName:"message" type:"string"`
 12073  }
 12074  
 12075  // String returns the string representation.
 12076  //
 12077  // API parameter values that are decorated as "sensitive" in the API will not
 12078  // be included in the string output. The member name will be present, but the
 12079  // value will be replaced with "sensitive".
 12080  func (s PipelineNotFoundException) String() string {
 12081  	return awsutil.Prettify(s)
 12082  }
 12083  
 12084  // GoString returns the string representation.
 12085  //
 12086  // API parameter values that are decorated as "sensitive" in the API will not
 12087  // be included in the string output. The member name will be present, but the
 12088  // value will be replaced with "sensitive".
 12089  func (s PipelineNotFoundException) GoString() string {
 12090  	return s.String()
 12091  }
 12092  
 12093  func newErrorPipelineNotFoundException(v protocol.ResponseMetadata) error {
 12094  	return &PipelineNotFoundException{
 12095  		RespMetadata: v,
 12096  	}
 12097  }
 12098  
 12099  // Code returns the exception type name.
 12100  func (s *PipelineNotFoundException) Code() string {
 12101  	return "PipelineNotFoundException"
 12102  }
 12103  
 12104  // Message returns the exception's message.
 12105  func (s *PipelineNotFoundException) Message() string {
 12106  	if s.Message_ != nil {
 12107  		return *s.Message_
 12108  	}
 12109  	return ""
 12110  }
 12111  
 12112  // OrigErr always returns nil, satisfies awserr.Error interface.
 12113  func (s *PipelineNotFoundException) OrigErr() error {
 12114  	return nil
 12115  }
 12116  
 12117  func (s *PipelineNotFoundException) Error() string {
 12118  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 12119  }
 12120  
 12121  // Status code returns the HTTP status code for the request's response error.
 12122  func (s *PipelineNotFoundException) StatusCode() int {
 12123  	return s.RespMetadata.StatusCode
 12124  }
 12125  
 12126  // RequestID returns the service's response RequestID for request.
 12127  func (s *PipelineNotFoundException) RequestID() string {
 12128  	return s.RespMetadata.RequestID
 12129  }
 12130  
 12131  // Returns a summary of a pipeline.
 12132  type PipelineSummary struct {
 12133  	_ struct{} `type:"structure"`
 12134  
 12135  	// The date and time the pipeline was created, in timestamp format.
 12136  	Created *time.Time `locationName:"created" type:"timestamp"`
 12137  
 12138  	// The name of the pipeline.
 12139  	Name *string `locationName:"name" min:"1" type:"string"`
 12140  
 12141  	// The date and time of the last update to the pipeline, in timestamp format.
 12142  	Updated *time.Time `locationName:"updated" type:"timestamp"`
 12143  
 12144  	// The version number of the pipeline.
 12145  	Version *int64 `locationName:"version" min:"1" type:"integer"`
 12146  }
 12147  
 12148  // String returns the string representation.
 12149  //
 12150  // API parameter values that are decorated as "sensitive" in the API will not
 12151  // be included in the string output. The member name will be present, but the
 12152  // value will be replaced with "sensitive".
 12153  func (s PipelineSummary) String() string {
 12154  	return awsutil.Prettify(s)
 12155  }
 12156  
 12157  // GoString returns the string representation.
 12158  //
 12159  // API parameter values that are decorated as "sensitive" in the API will not
 12160  // be included in the string output. The member name will be present, but the
 12161  // value will be replaced with "sensitive".
 12162  func (s PipelineSummary) GoString() string {
 12163  	return s.String()
 12164  }
 12165  
 12166  // SetCreated sets the Created field's value.
 12167  func (s *PipelineSummary) SetCreated(v time.Time) *PipelineSummary {
 12168  	s.Created = &v
 12169  	return s
 12170  }
 12171  
 12172  // SetName sets the Name field's value.
 12173  func (s *PipelineSummary) SetName(v string) *PipelineSummary {
 12174  	s.Name = &v
 12175  	return s
 12176  }
 12177  
 12178  // SetUpdated sets the Updated field's value.
 12179  func (s *PipelineSummary) SetUpdated(v time.Time) *PipelineSummary {
 12180  	s.Updated = &v
 12181  	return s
 12182  }
 12183  
 12184  // SetVersion sets the Version field's value.
 12185  func (s *PipelineSummary) SetVersion(v int64) *PipelineSummary {
 12186  	s.Version = &v
 12187  	return s
 12188  }
 12189  
 12190  // The pipeline version was specified in an invalid format or cannot be found.
 12191  type PipelineVersionNotFoundException struct {
 12192  	_            struct{}                  `type:"structure"`
 12193  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 12194  
 12195  	Message_ *string `locationName:"message" type:"string"`
 12196  }
 12197  
 12198  // String returns the string representation.
 12199  //
 12200  // API parameter values that are decorated as "sensitive" in the API will not
 12201  // be included in the string output. The member name will be present, but the
 12202  // value will be replaced with "sensitive".
 12203  func (s PipelineVersionNotFoundException) String() string {
 12204  	return awsutil.Prettify(s)
 12205  }
 12206  
 12207  // GoString returns the string representation.
 12208  //
 12209  // API parameter values that are decorated as "sensitive" in the API will not
 12210  // be included in the string output. The member name will be present, but the
 12211  // value will be replaced with "sensitive".
 12212  func (s PipelineVersionNotFoundException) GoString() string {
 12213  	return s.String()
 12214  }
 12215  
 12216  func newErrorPipelineVersionNotFoundException(v protocol.ResponseMetadata) error {
 12217  	return &PipelineVersionNotFoundException{
 12218  		RespMetadata: v,
 12219  	}
 12220  }
 12221  
 12222  // Code returns the exception type name.
 12223  func (s *PipelineVersionNotFoundException) Code() string {
 12224  	return "PipelineVersionNotFoundException"
 12225  }
 12226  
 12227  // Message returns the exception's message.
 12228  func (s *PipelineVersionNotFoundException) Message() string {
 12229  	if s.Message_ != nil {
 12230  		return *s.Message_
 12231  	}
 12232  	return ""
 12233  }
 12234  
 12235  // OrigErr always returns nil, satisfies awserr.Error interface.
 12236  func (s *PipelineVersionNotFoundException) OrigErr() error {
 12237  	return nil
 12238  }
 12239  
 12240  func (s *PipelineVersionNotFoundException) Error() string {
 12241  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 12242  }
 12243  
 12244  // Status code returns the HTTP status code for the request's response error.
 12245  func (s *PipelineVersionNotFoundException) StatusCode() int {
 12246  	return s.RespMetadata.StatusCode
 12247  }
 12248  
 12249  // RequestID returns the service's response RequestID for request.
 12250  func (s *PipelineVersionNotFoundException) RequestID() string {
 12251  	return s.RespMetadata.RequestID
 12252  }
 12253  
 12254  // Represents the input of a PollForJobs action.
 12255  type PollForJobsInput struct {
 12256  	_ struct{} `type:"structure"`
 12257  
 12258  	// Represents information about an action type.
 12259  	//
 12260  	// ActionTypeId is a required field
 12261  	ActionTypeId *ActionTypeId `locationName:"actionTypeId" type:"structure" required:"true"`
 12262  
 12263  	// The maximum number of jobs to return in a poll for jobs call.
 12264  	MaxBatchSize *int64 `locationName:"maxBatchSize" min:"1" type:"integer"`
 12265  
 12266  	// A map of property names and values. For an action type with no queryable
 12267  	// properties, this value must be null or an empty map. For an action type with
 12268  	// a queryable property, you must supply that property as a key in the map.
 12269  	// Only jobs whose action configuration matches the mapped value are returned.
 12270  	QueryParam map[string]*string `locationName:"queryParam" type:"map"`
 12271  }
 12272  
 12273  // String returns the string representation.
 12274  //
 12275  // API parameter values that are decorated as "sensitive" in the API will not
 12276  // be included in the string output. The member name will be present, but the
 12277  // value will be replaced with "sensitive".
 12278  func (s PollForJobsInput) String() string {
 12279  	return awsutil.Prettify(s)
 12280  }
 12281  
 12282  // GoString returns the string representation.
 12283  //
 12284  // API parameter values that are decorated as "sensitive" in the API will not
 12285  // be included in the string output. The member name will be present, but the
 12286  // value will be replaced with "sensitive".
 12287  func (s PollForJobsInput) GoString() string {
 12288  	return s.String()
 12289  }
 12290  
 12291  // Validate inspects the fields of the type to determine if they are valid.
 12292  func (s *PollForJobsInput) Validate() error {
 12293  	invalidParams := request.ErrInvalidParams{Context: "PollForJobsInput"}
 12294  	if s.ActionTypeId == nil {
 12295  		invalidParams.Add(request.NewErrParamRequired("ActionTypeId"))
 12296  	}
 12297  	if s.MaxBatchSize != nil && *s.MaxBatchSize < 1 {
 12298  		invalidParams.Add(request.NewErrParamMinValue("MaxBatchSize", 1))
 12299  	}
 12300  	if s.ActionTypeId != nil {
 12301  		if err := s.ActionTypeId.Validate(); err != nil {
 12302  			invalidParams.AddNested("ActionTypeId", err.(request.ErrInvalidParams))
 12303  		}
 12304  	}
 12305  
 12306  	if invalidParams.Len() > 0 {
 12307  		return invalidParams
 12308  	}
 12309  	return nil
 12310  }
 12311  
 12312  // SetActionTypeId sets the ActionTypeId field's value.
 12313  func (s *PollForJobsInput) SetActionTypeId(v *ActionTypeId) *PollForJobsInput {
 12314  	s.ActionTypeId = v
 12315  	return s
 12316  }
 12317  
 12318  // SetMaxBatchSize sets the MaxBatchSize field's value.
 12319  func (s *PollForJobsInput) SetMaxBatchSize(v int64) *PollForJobsInput {
 12320  	s.MaxBatchSize = &v
 12321  	return s
 12322  }
 12323  
 12324  // SetQueryParam sets the QueryParam field's value.
 12325  func (s *PollForJobsInput) SetQueryParam(v map[string]*string) *PollForJobsInput {
 12326  	s.QueryParam = v
 12327  	return s
 12328  }
 12329  
 12330  // Represents the output of a PollForJobs action.
 12331  type PollForJobsOutput struct {
 12332  	_ struct{} `type:"structure"`
 12333  
 12334  	// Information about the jobs to take action on.
 12335  	Jobs []*Job `locationName:"jobs" type:"list"`
 12336  }
 12337  
 12338  // String returns the string representation.
 12339  //
 12340  // API parameter values that are decorated as "sensitive" in the API will not
 12341  // be included in the string output. The member name will be present, but the
 12342  // value will be replaced with "sensitive".
 12343  func (s PollForJobsOutput) String() string {
 12344  	return awsutil.Prettify(s)
 12345  }
 12346  
 12347  // GoString returns the string representation.
 12348  //
 12349  // API parameter values that are decorated as "sensitive" in the API will not
 12350  // be included in the string output. The member name will be present, but the
 12351  // value will be replaced with "sensitive".
 12352  func (s PollForJobsOutput) GoString() string {
 12353  	return s.String()
 12354  }
 12355  
 12356  // SetJobs sets the Jobs field's value.
 12357  func (s *PollForJobsOutput) SetJobs(v []*Job) *PollForJobsOutput {
 12358  	s.Jobs = v
 12359  	return s
 12360  }
 12361  
 12362  // Represents the input of a PollForThirdPartyJobs action.
 12363  type PollForThirdPartyJobsInput struct {
 12364  	_ struct{} `type:"structure"`
 12365  
 12366  	// Represents information about an action type.
 12367  	//
 12368  	// ActionTypeId is a required field
 12369  	ActionTypeId *ActionTypeId `locationName:"actionTypeId" type:"structure" required:"true"`
 12370  
 12371  	// The maximum number of jobs to return in a poll for jobs call.
 12372  	MaxBatchSize *int64 `locationName:"maxBatchSize" min:"1" type:"integer"`
 12373  }
 12374  
 12375  // String returns the string representation.
 12376  //
 12377  // API parameter values that are decorated as "sensitive" in the API will not
 12378  // be included in the string output. The member name will be present, but the
 12379  // value will be replaced with "sensitive".
 12380  func (s PollForThirdPartyJobsInput) String() string {
 12381  	return awsutil.Prettify(s)
 12382  }
 12383  
 12384  // GoString returns the string representation.
 12385  //
 12386  // API parameter values that are decorated as "sensitive" in the API will not
 12387  // be included in the string output. The member name will be present, but the
 12388  // value will be replaced with "sensitive".
 12389  func (s PollForThirdPartyJobsInput) GoString() string {
 12390  	return s.String()
 12391  }
 12392  
 12393  // Validate inspects the fields of the type to determine if they are valid.
 12394  func (s *PollForThirdPartyJobsInput) Validate() error {
 12395  	invalidParams := request.ErrInvalidParams{Context: "PollForThirdPartyJobsInput"}
 12396  	if s.ActionTypeId == nil {
 12397  		invalidParams.Add(request.NewErrParamRequired("ActionTypeId"))
 12398  	}
 12399  	if s.MaxBatchSize != nil && *s.MaxBatchSize < 1 {
 12400  		invalidParams.Add(request.NewErrParamMinValue("MaxBatchSize", 1))
 12401  	}
 12402  	if s.ActionTypeId != nil {
 12403  		if err := s.ActionTypeId.Validate(); err != nil {
 12404  			invalidParams.AddNested("ActionTypeId", err.(request.ErrInvalidParams))
 12405  		}
 12406  	}
 12407  
 12408  	if invalidParams.Len() > 0 {
 12409  		return invalidParams
 12410  	}
 12411  	return nil
 12412  }
 12413  
 12414  // SetActionTypeId sets the ActionTypeId field's value.
 12415  func (s *PollForThirdPartyJobsInput) SetActionTypeId(v *ActionTypeId) *PollForThirdPartyJobsInput {
 12416  	s.ActionTypeId = v
 12417  	return s
 12418  }
 12419  
 12420  // SetMaxBatchSize sets the MaxBatchSize field's value.
 12421  func (s *PollForThirdPartyJobsInput) SetMaxBatchSize(v int64) *PollForThirdPartyJobsInput {
 12422  	s.MaxBatchSize = &v
 12423  	return s
 12424  }
 12425  
 12426  // Represents the output of a PollForThirdPartyJobs action.
 12427  type PollForThirdPartyJobsOutput struct {
 12428  	_ struct{} `type:"structure"`
 12429  
 12430  	// Information about the jobs to take action on.
 12431  	Jobs []*ThirdPartyJob `locationName:"jobs" type:"list"`
 12432  }
 12433  
 12434  // String returns the string representation.
 12435  //
 12436  // API parameter values that are decorated as "sensitive" in the API will not
 12437  // be included in the string output. The member name will be present, but the
 12438  // value will be replaced with "sensitive".
 12439  func (s PollForThirdPartyJobsOutput) String() string {
 12440  	return awsutil.Prettify(s)
 12441  }
 12442  
 12443  // GoString returns the string representation.
 12444  //
 12445  // API parameter values that are decorated as "sensitive" in the API will not
 12446  // be included in the string output. The member name will be present, but the
 12447  // value will be replaced with "sensitive".
 12448  func (s PollForThirdPartyJobsOutput) GoString() string {
 12449  	return s.String()
 12450  }
 12451  
 12452  // SetJobs sets the Jobs field's value.
 12453  func (s *PollForThirdPartyJobsOutput) SetJobs(v []*ThirdPartyJob) *PollForThirdPartyJobsOutput {
 12454  	s.Jobs = v
 12455  	return s
 12456  }
 12457  
 12458  // Represents the input of a PutActionRevision action.
 12459  type PutActionRevisionInput struct {
 12460  	_ struct{} `type:"structure"`
 12461  
 12462  	// The name of the action that processes the revision.
 12463  	//
 12464  	// ActionName is a required field
 12465  	ActionName *string `locationName:"actionName" min:"1" type:"string" required:"true"`
 12466  
 12467  	// Represents information about the version (or revision) of an action.
 12468  	//
 12469  	// ActionRevision is a required field
 12470  	ActionRevision *ActionRevision `locationName:"actionRevision" type:"structure" required:"true"`
 12471  
 12472  	// The name of the pipeline that starts processing the revision to the source.
 12473  	//
 12474  	// PipelineName is a required field
 12475  	PipelineName *string `locationName:"pipelineName" min:"1" type:"string" required:"true"`
 12476  
 12477  	// The name of the stage that contains the action that acts on the revision.
 12478  	//
 12479  	// StageName is a required field
 12480  	StageName *string `locationName:"stageName" min:"1" type:"string" required:"true"`
 12481  }
 12482  
 12483  // String returns the string representation.
 12484  //
 12485  // API parameter values that are decorated as "sensitive" in the API will not
 12486  // be included in the string output. The member name will be present, but the
 12487  // value will be replaced with "sensitive".
 12488  func (s PutActionRevisionInput) String() string {
 12489  	return awsutil.Prettify(s)
 12490  }
 12491  
 12492  // GoString returns the string representation.
 12493  //
 12494  // API parameter values that are decorated as "sensitive" in the API will not
 12495  // be included in the string output. The member name will be present, but the
 12496  // value will be replaced with "sensitive".
 12497  func (s PutActionRevisionInput) GoString() string {
 12498  	return s.String()
 12499  }
 12500  
 12501  // Validate inspects the fields of the type to determine if they are valid.
 12502  func (s *PutActionRevisionInput) Validate() error {
 12503  	invalidParams := request.ErrInvalidParams{Context: "PutActionRevisionInput"}
 12504  	if s.ActionName == nil {
 12505  		invalidParams.Add(request.NewErrParamRequired("ActionName"))
 12506  	}
 12507  	if s.ActionName != nil && len(*s.ActionName) < 1 {
 12508  		invalidParams.Add(request.NewErrParamMinLen("ActionName", 1))
 12509  	}
 12510  	if s.ActionRevision == nil {
 12511  		invalidParams.Add(request.NewErrParamRequired("ActionRevision"))
 12512  	}
 12513  	if s.PipelineName == nil {
 12514  		invalidParams.Add(request.NewErrParamRequired("PipelineName"))
 12515  	}
 12516  	if s.PipelineName != nil && len(*s.PipelineName) < 1 {
 12517  		invalidParams.Add(request.NewErrParamMinLen("PipelineName", 1))
 12518  	}
 12519  	if s.StageName == nil {
 12520  		invalidParams.Add(request.NewErrParamRequired("StageName"))
 12521  	}
 12522  	if s.StageName != nil && len(*s.StageName) < 1 {
 12523  		invalidParams.Add(request.NewErrParamMinLen("StageName", 1))
 12524  	}
 12525  	if s.ActionRevision != nil {
 12526  		if err := s.ActionRevision.Validate(); err != nil {
 12527  			invalidParams.AddNested("ActionRevision", err.(request.ErrInvalidParams))
 12528  		}
 12529  	}
 12530  
 12531  	if invalidParams.Len() > 0 {
 12532  		return invalidParams
 12533  	}
 12534  	return nil
 12535  }
 12536  
 12537  // SetActionName sets the ActionName field's value.
 12538  func (s *PutActionRevisionInput) SetActionName(v string) *PutActionRevisionInput {
 12539  	s.ActionName = &v
 12540  	return s
 12541  }
 12542  
 12543  // SetActionRevision sets the ActionRevision field's value.
 12544  func (s *PutActionRevisionInput) SetActionRevision(v *ActionRevision) *PutActionRevisionInput {
 12545  	s.ActionRevision = v
 12546  	return s
 12547  }
 12548  
 12549  // SetPipelineName sets the PipelineName field's value.
 12550  func (s *PutActionRevisionInput) SetPipelineName(v string) *PutActionRevisionInput {
 12551  	s.PipelineName = &v
 12552  	return s
 12553  }
 12554  
 12555  // SetStageName sets the StageName field's value.
 12556  func (s *PutActionRevisionInput) SetStageName(v string) *PutActionRevisionInput {
 12557  	s.StageName = &v
 12558  	return s
 12559  }
 12560  
 12561  // Represents the output of a PutActionRevision action.
 12562  type PutActionRevisionOutput struct {
 12563  	_ struct{} `type:"structure"`
 12564  
 12565  	// Indicates whether the artifact revision was previously used in an execution
 12566  	// of the specified pipeline.
 12567  	NewRevision *bool `locationName:"newRevision" type:"boolean"`
 12568  
 12569  	// The ID of the current workflow state of the pipeline.
 12570  	PipelineExecutionId *string `locationName:"pipelineExecutionId" type:"string"`
 12571  }
 12572  
 12573  // String returns the string representation.
 12574  //
 12575  // API parameter values that are decorated as "sensitive" in the API will not
 12576  // be included in the string output. The member name will be present, but the
 12577  // value will be replaced with "sensitive".
 12578  func (s PutActionRevisionOutput) String() string {
 12579  	return awsutil.Prettify(s)
 12580  }
 12581  
 12582  // GoString returns the string representation.
 12583  //
 12584  // API parameter values that are decorated as "sensitive" in the API will not
 12585  // be included in the string output. The member name will be present, but the
 12586  // value will be replaced with "sensitive".
 12587  func (s PutActionRevisionOutput) GoString() string {
 12588  	return s.String()
 12589  }
 12590  
 12591  // SetNewRevision sets the NewRevision field's value.
 12592  func (s *PutActionRevisionOutput) SetNewRevision(v bool) *PutActionRevisionOutput {
 12593  	s.NewRevision = &v
 12594  	return s
 12595  }
 12596  
 12597  // SetPipelineExecutionId sets the PipelineExecutionId field's value.
 12598  func (s *PutActionRevisionOutput) SetPipelineExecutionId(v string) *PutActionRevisionOutput {
 12599  	s.PipelineExecutionId = &v
 12600  	return s
 12601  }
 12602  
 12603  // Represents the input of a PutApprovalResult action.
 12604  type PutApprovalResultInput struct {
 12605  	_ struct{} `type:"structure"`
 12606  
 12607  	// The name of the action for which approval is requested.
 12608  	//
 12609  	// ActionName is a required field
 12610  	ActionName *string `locationName:"actionName" min:"1" type:"string" required:"true"`
 12611  
 12612  	// The name of the pipeline that contains the action.
 12613  	//
 12614  	// PipelineName is a required field
 12615  	PipelineName *string `locationName:"pipelineName" min:"1" type:"string" required:"true"`
 12616  
 12617  	// Represents information about the result of the approval request.
 12618  	//
 12619  	// Result is a required field
 12620  	Result *ApprovalResult `locationName:"result" type:"structure" required:"true"`
 12621  
 12622  	// The name of the stage that contains the action.
 12623  	//
 12624  	// StageName is a required field
 12625  	StageName *string `locationName:"stageName" min:"1" type:"string" required:"true"`
 12626  
 12627  	// The system-generated token used to identify a unique approval request. The
 12628  	// token for each open approval request can be obtained using the GetPipelineState
 12629  	// action. It is used to validate that the approval request corresponding to
 12630  	// this token is still valid.
 12631  	//
 12632  	// Token is a required field
 12633  	Token *string `locationName:"token" type:"string" required:"true"`
 12634  }
 12635  
 12636  // String returns the string representation.
 12637  //
 12638  // API parameter values that are decorated as "sensitive" in the API will not
 12639  // be included in the string output. The member name will be present, but the
 12640  // value will be replaced with "sensitive".
 12641  func (s PutApprovalResultInput) String() string {
 12642  	return awsutil.Prettify(s)
 12643  }
 12644  
 12645  // GoString returns the string representation.
 12646  //
 12647  // API parameter values that are decorated as "sensitive" in the API will not
 12648  // be included in the string output. The member name will be present, but the
 12649  // value will be replaced with "sensitive".
 12650  func (s PutApprovalResultInput) GoString() string {
 12651  	return s.String()
 12652  }
 12653  
 12654  // Validate inspects the fields of the type to determine if they are valid.
 12655  func (s *PutApprovalResultInput) Validate() error {
 12656  	invalidParams := request.ErrInvalidParams{Context: "PutApprovalResultInput"}
 12657  	if s.ActionName == nil {
 12658  		invalidParams.Add(request.NewErrParamRequired("ActionName"))
 12659  	}
 12660  	if s.ActionName != nil && len(*s.ActionName) < 1 {
 12661  		invalidParams.Add(request.NewErrParamMinLen("ActionName", 1))
 12662  	}
 12663  	if s.PipelineName == nil {
 12664  		invalidParams.Add(request.NewErrParamRequired("PipelineName"))
 12665  	}
 12666  	if s.PipelineName != nil && len(*s.PipelineName) < 1 {
 12667  		invalidParams.Add(request.NewErrParamMinLen("PipelineName", 1))
 12668  	}
 12669  	if s.Result == nil {
 12670  		invalidParams.Add(request.NewErrParamRequired("Result"))
 12671  	}
 12672  	if s.StageName == nil {
 12673  		invalidParams.Add(request.NewErrParamRequired("StageName"))
 12674  	}
 12675  	if s.StageName != nil && len(*s.StageName) < 1 {
 12676  		invalidParams.Add(request.NewErrParamMinLen("StageName", 1))
 12677  	}
 12678  	if s.Token == nil {
 12679  		invalidParams.Add(request.NewErrParamRequired("Token"))
 12680  	}
 12681  	if s.Result != nil {
 12682  		if err := s.Result.Validate(); err != nil {
 12683  			invalidParams.AddNested("Result", err.(request.ErrInvalidParams))
 12684  		}
 12685  	}
 12686  
 12687  	if invalidParams.Len() > 0 {
 12688  		return invalidParams
 12689  	}
 12690  	return nil
 12691  }
 12692  
 12693  // SetActionName sets the ActionName field's value.
 12694  func (s *PutApprovalResultInput) SetActionName(v string) *PutApprovalResultInput {
 12695  	s.ActionName = &v
 12696  	return s
 12697  }
 12698  
 12699  // SetPipelineName sets the PipelineName field's value.
 12700  func (s *PutApprovalResultInput) SetPipelineName(v string) *PutApprovalResultInput {
 12701  	s.PipelineName = &v
 12702  	return s
 12703  }
 12704  
 12705  // SetResult sets the Result field's value.
 12706  func (s *PutApprovalResultInput) SetResult(v *ApprovalResult) *PutApprovalResultInput {
 12707  	s.Result = v
 12708  	return s
 12709  }
 12710  
 12711  // SetStageName sets the StageName field's value.
 12712  func (s *PutApprovalResultInput) SetStageName(v string) *PutApprovalResultInput {
 12713  	s.StageName = &v
 12714  	return s
 12715  }
 12716  
 12717  // SetToken sets the Token field's value.
 12718  func (s *PutApprovalResultInput) SetToken(v string) *PutApprovalResultInput {
 12719  	s.Token = &v
 12720  	return s
 12721  }
 12722  
 12723  // Represents the output of a PutApprovalResult action.
 12724  type PutApprovalResultOutput struct {
 12725  	_ struct{} `type:"structure"`
 12726  
 12727  	// The timestamp showing when the approval or rejection was submitted.
 12728  	ApprovedAt *time.Time `locationName:"approvedAt" type:"timestamp"`
 12729  }
 12730  
 12731  // String returns the string representation.
 12732  //
 12733  // API parameter values that are decorated as "sensitive" in the API will not
 12734  // be included in the string output. The member name will be present, but the
 12735  // value will be replaced with "sensitive".
 12736  func (s PutApprovalResultOutput) String() string {
 12737  	return awsutil.Prettify(s)
 12738  }
 12739  
 12740  // GoString returns the string representation.
 12741  //
 12742  // API parameter values that are decorated as "sensitive" in the API will not
 12743  // be included in the string output. The member name will be present, but the
 12744  // value will be replaced with "sensitive".
 12745  func (s PutApprovalResultOutput) GoString() string {
 12746  	return s.String()
 12747  }
 12748  
 12749  // SetApprovedAt sets the ApprovedAt field's value.
 12750  func (s *PutApprovalResultOutput) SetApprovedAt(v time.Time) *PutApprovalResultOutput {
 12751  	s.ApprovedAt = &v
 12752  	return s
 12753  }
 12754  
 12755  // Represents the input of a PutJobFailureResult action.
 12756  type PutJobFailureResultInput struct {
 12757  	_ struct{} `type:"structure"`
 12758  
 12759  	// The details about the failure of a job.
 12760  	//
 12761  	// FailureDetails is a required field
 12762  	FailureDetails *FailureDetails `locationName:"failureDetails" type:"structure" required:"true"`
 12763  
 12764  	// The unique system-generated ID of the job that failed. This is the same ID
 12765  	// returned from PollForJobs.
 12766  	//
 12767  	// JobId is a required field
 12768  	JobId *string `locationName:"jobId" type:"string" required:"true"`
 12769  }
 12770  
 12771  // String returns the string representation.
 12772  //
 12773  // API parameter values that are decorated as "sensitive" in the API will not
 12774  // be included in the string output. The member name will be present, but the
 12775  // value will be replaced with "sensitive".
 12776  func (s PutJobFailureResultInput) String() string {
 12777  	return awsutil.Prettify(s)
 12778  }
 12779  
 12780  // GoString returns the string representation.
 12781  //
 12782  // API parameter values that are decorated as "sensitive" in the API will not
 12783  // be included in the string output. The member name will be present, but the
 12784  // value will be replaced with "sensitive".
 12785  func (s PutJobFailureResultInput) GoString() string {
 12786  	return s.String()
 12787  }
 12788  
 12789  // Validate inspects the fields of the type to determine if they are valid.
 12790  func (s *PutJobFailureResultInput) Validate() error {
 12791  	invalidParams := request.ErrInvalidParams{Context: "PutJobFailureResultInput"}
 12792  	if s.FailureDetails == nil {
 12793  		invalidParams.Add(request.NewErrParamRequired("FailureDetails"))
 12794  	}
 12795  	if s.JobId == nil {
 12796  		invalidParams.Add(request.NewErrParamRequired("JobId"))
 12797  	}
 12798  	if s.FailureDetails != nil {
 12799  		if err := s.FailureDetails.Validate(); err != nil {
 12800  			invalidParams.AddNested("FailureDetails", err.(request.ErrInvalidParams))
 12801  		}
 12802  	}
 12803  
 12804  	if invalidParams.Len() > 0 {
 12805  		return invalidParams
 12806  	}
 12807  	return nil
 12808  }
 12809  
 12810  // SetFailureDetails sets the FailureDetails field's value.
 12811  func (s *PutJobFailureResultInput) SetFailureDetails(v *FailureDetails) *PutJobFailureResultInput {
 12812  	s.FailureDetails = v
 12813  	return s
 12814  }
 12815  
 12816  // SetJobId sets the JobId field's value.
 12817  func (s *PutJobFailureResultInput) SetJobId(v string) *PutJobFailureResultInput {
 12818  	s.JobId = &v
 12819  	return s
 12820  }
 12821  
 12822  type PutJobFailureResultOutput struct {
 12823  	_ struct{} `type:"structure"`
 12824  }
 12825  
 12826  // String returns the string representation.
 12827  //
 12828  // API parameter values that are decorated as "sensitive" in the API will not
 12829  // be included in the string output. The member name will be present, but the
 12830  // value will be replaced with "sensitive".
 12831  func (s PutJobFailureResultOutput) String() string {
 12832  	return awsutil.Prettify(s)
 12833  }
 12834  
 12835  // GoString returns the string representation.
 12836  //
 12837  // API parameter values that are decorated as "sensitive" in the API will not
 12838  // be included in the string output. The member name will be present, but the
 12839  // value will be replaced with "sensitive".
 12840  func (s PutJobFailureResultOutput) GoString() string {
 12841  	return s.String()
 12842  }
 12843  
 12844  // Represents the input of a PutJobSuccessResult action.
 12845  type PutJobSuccessResultInput struct {
 12846  	_ struct{} `type:"structure"`
 12847  
 12848  	// A token generated by a job worker, such as an AWS CodeDeploy deployment ID,
 12849  	// that a successful job provides to identify a custom action in progress. Future
 12850  	// jobs use this token to identify the running instance of the action. It can
 12851  	// be reused to return more information about the progress of the custom action.
 12852  	// When the action is complete, no continuation token should be supplied.
 12853  	ContinuationToken *string `locationName:"continuationToken" min:"1" type:"string"`
 12854  
 12855  	// The ID of the current revision of the artifact successfully worked on by
 12856  	// the job.
 12857  	CurrentRevision *CurrentRevision `locationName:"currentRevision" type:"structure"`
 12858  
 12859  	// The execution details of the successful job, such as the actions taken by
 12860  	// the job worker.
 12861  	ExecutionDetails *ExecutionDetails `locationName:"executionDetails" type:"structure"`
 12862  
 12863  	// The unique system-generated ID of the job that succeeded. This is the same
 12864  	// ID returned from PollForJobs.
 12865  	//
 12866  	// JobId is a required field
 12867  	JobId *string `locationName:"jobId" type:"string" required:"true"`
 12868  
 12869  	// Key-value pairs produced as output by a job worker that can be made available
 12870  	// to a downstream action configuration. outputVariables can be included only
 12871  	// when there is no continuation token on the request.
 12872  	OutputVariables map[string]*string `locationName:"outputVariables" type:"map"`
 12873  }
 12874  
 12875  // String returns the string representation.
 12876  //
 12877  // API parameter values that are decorated as "sensitive" in the API will not
 12878  // be included in the string output. The member name will be present, but the
 12879  // value will be replaced with "sensitive".
 12880  func (s PutJobSuccessResultInput) String() string {
 12881  	return awsutil.Prettify(s)
 12882  }
 12883  
 12884  // GoString returns the string representation.
 12885  //
 12886  // API parameter values that are decorated as "sensitive" in the API will not
 12887  // be included in the string output. The member name will be present, but the
 12888  // value will be replaced with "sensitive".
 12889  func (s PutJobSuccessResultInput) GoString() string {
 12890  	return s.String()
 12891  }
 12892  
 12893  // Validate inspects the fields of the type to determine if they are valid.
 12894  func (s *PutJobSuccessResultInput) Validate() error {
 12895  	invalidParams := request.ErrInvalidParams{Context: "PutJobSuccessResultInput"}
 12896  	if s.ContinuationToken != nil && len(*s.ContinuationToken) < 1 {
 12897  		invalidParams.Add(request.NewErrParamMinLen("ContinuationToken", 1))
 12898  	}
 12899  	if s.JobId == nil {
 12900  		invalidParams.Add(request.NewErrParamRequired("JobId"))
 12901  	}
 12902  	if s.CurrentRevision != nil {
 12903  		if err := s.CurrentRevision.Validate(); err != nil {
 12904  			invalidParams.AddNested("CurrentRevision", err.(request.ErrInvalidParams))
 12905  		}
 12906  	}
 12907  	if s.ExecutionDetails != nil {
 12908  		if err := s.ExecutionDetails.Validate(); err != nil {
 12909  			invalidParams.AddNested("ExecutionDetails", err.(request.ErrInvalidParams))
 12910  		}
 12911  	}
 12912  
 12913  	if invalidParams.Len() > 0 {
 12914  		return invalidParams
 12915  	}
 12916  	return nil
 12917  }
 12918  
 12919  // SetContinuationToken sets the ContinuationToken field's value.
 12920  func (s *PutJobSuccessResultInput) SetContinuationToken(v string) *PutJobSuccessResultInput {
 12921  	s.ContinuationToken = &v
 12922  	return s
 12923  }
 12924  
 12925  // SetCurrentRevision sets the CurrentRevision field's value.
 12926  func (s *PutJobSuccessResultInput) SetCurrentRevision(v *CurrentRevision) *PutJobSuccessResultInput {
 12927  	s.CurrentRevision = v
 12928  	return s
 12929  }
 12930  
 12931  // SetExecutionDetails sets the ExecutionDetails field's value.
 12932  func (s *PutJobSuccessResultInput) SetExecutionDetails(v *ExecutionDetails) *PutJobSuccessResultInput {
 12933  	s.ExecutionDetails = v
 12934  	return s
 12935  }
 12936  
 12937  // SetJobId sets the JobId field's value.
 12938  func (s *PutJobSuccessResultInput) SetJobId(v string) *PutJobSuccessResultInput {
 12939  	s.JobId = &v
 12940  	return s
 12941  }
 12942  
 12943  // SetOutputVariables sets the OutputVariables field's value.
 12944  func (s *PutJobSuccessResultInput) SetOutputVariables(v map[string]*string) *PutJobSuccessResultInput {
 12945  	s.OutputVariables = v
 12946  	return s
 12947  }
 12948  
 12949  type PutJobSuccessResultOutput struct {
 12950  	_ struct{} `type:"structure"`
 12951  }
 12952  
 12953  // String returns the string representation.
 12954  //
 12955  // API parameter values that are decorated as "sensitive" in the API will not
 12956  // be included in the string output. The member name will be present, but the
 12957  // value will be replaced with "sensitive".
 12958  func (s PutJobSuccessResultOutput) String() string {
 12959  	return awsutil.Prettify(s)
 12960  }
 12961  
 12962  // GoString returns the string representation.
 12963  //
 12964  // API parameter values that are decorated as "sensitive" in the API will not
 12965  // be included in the string output. The member name will be present, but the
 12966  // value will be replaced with "sensitive".
 12967  func (s PutJobSuccessResultOutput) GoString() string {
 12968  	return s.String()
 12969  }
 12970  
 12971  // Represents the input of a PutThirdPartyJobFailureResult action.
 12972  type PutThirdPartyJobFailureResultInput struct {
 12973  	_ struct{} `type:"structure"`
 12974  
 12975  	// The clientToken portion of the clientId and clientToken pair used to verify
 12976  	// that the calling entity is allowed access to the job and its details.
 12977  	//
 12978  	// ClientToken is a required field
 12979  	ClientToken *string `locationName:"clientToken" min:"1" type:"string" required:"true"`
 12980  
 12981  	// Represents information about failure details.
 12982  	//
 12983  	// FailureDetails is a required field
 12984  	FailureDetails *FailureDetails `locationName:"failureDetails" type:"structure" required:"true"`
 12985  
 12986  	// The ID of the job that failed. This is the same ID returned from PollForThirdPartyJobs.
 12987  	//
 12988  	// JobId is a required field
 12989  	JobId *string `locationName:"jobId" min:"1" type:"string" required:"true"`
 12990  }
 12991  
 12992  // String returns the string representation.
 12993  //
 12994  // API parameter values that are decorated as "sensitive" in the API will not
 12995  // be included in the string output. The member name will be present, but the
 12996  // value will be replaced with "sensitive".
 12997  func (s PutThirdPartyJobFailureResultInput) String() string {
 12998  	return awsutil.Prettify(s)
 12999  }
 13000  
 13001  // GoString returns the string representation.
 13002  //
 13003  // API parameter values that are decorated as "sensitive" in the API will not
 13004  // be included in the string output. The member name will be present, but the
 13005  // value will be replaced with "sensitive".
 13006  func (s PutThirdPartyJobFailureResultInput) GoString() string {
 13007  	return s.String()
 13008  }
 13009  
 13010  // Validate inspects the fields of the type to determine if they are valid.
 13011  func (s *PutThirdPartyJobFailureResultInput) Validate() error {
 13012  	invalidParams := request.ErrInvalidParams{Context: "PutThirdPartyJobFailureResultInput"}
 13013  	if s.ClientToken == nil {
 13014  		invalidParams.Add(request.NewErrParamRequired("ClientToken"))
 13015  	}
 13016  	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
 13017  		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
 13018  	}
 13019  	if s.FailureDetails == nil {
 13020  		invalidParams.Add(request.NewErrParamRequired("FailureDetails"))
 13021  	}
 13022  	if s.JobId == nil {
 13023  		invalidParams.Add(request.NewErrParamRequired("JobId"))
 13024  	}
 13025  	if s.JobId != nil && len(*s.JobId) < 1 {
 13026  		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
 13027  	}
 13028  	if s.FailureDetails != nil {
 13029  		if err := s.FailureDetails.Validate(); err != nil {
 13030  			invalidParams.AddNested("FailureDetails", err.(request.ErrInvalidParams))
 13031  		}
 13032  	}
 13033  
 13034  	if invalidParams.Len() > 0 {
 13035  		return invalidParams
 13036  	}
 13037  	return nil
 13038  }
 13039  
 13040  // SetClientToken sets the ClientToken field's value.
 13041  func (s *PutThirdPartyJobFailureResultInput) SetClientToken(v string) *PutThirdPartyJobFailureResultInput {
 13042  	s.ClientToken = &v
 13043  	return s
 13044  }
 13045  
 13046  // SetFailureDetails sets the FailureDetails field's value.
 13047  func (s *PutThirdPartyJobFailureResultInput) SetFailureDetails(v *FailureDetails) *PutThirdPartyJobFailureResultInput {
 13048  	s.FailureDetails = v
 13049  	return s
 13050  }
 13051  
 13052  // SetJobId sets the JobId field's value.
 13053  func (s *PutThirdPartyJobFailureResultInput) SetJobId(v string) *PutThirdPartyJobFailureResultInput {
 13054  	s.JobId = &v
 13055  	return s
 13056  }
 13057  
 13058  type PutThirdPartyJobFailureResultOutput struct {
 13059  	_ struct{} `type:"structure"`
 13060  }
 13061  
 13062  // String returns the string representation.
 13063  //
 13064  // API parameter values that are decorated as "sensitive" in the API will not
 13065  // be included in the string output. The member name will be present, but the
 13066  // value will be replaced with "sensitive".
 13067  func (s PutThirdPartyJobFailureResultOutput) String() string {
 13068  	return awsutil.Prettify(s)
 13069  }
 13070  
 13071  // GoString returns the string representation.
 13072  //
 13073  // API parameter values that are decorated as "sensitive" in the API will not
 13074  // be included in the string output. The member name will be present, but the
 13075  // value will be replaced with "sensitive".
 13076  func (s PutThirdPartyJobFailureResultOutput) GoString() string {
 13077  	return s.String()
 13078  }
 13079  
 13080  // Represents the input of a PutThirdPartyJobSuccessResult action.
 13081  type PutThirdPartyJobSuccessResultInput struct {
 13082  	_ struct{} `type:"structure"`
 13083  
 13084  	// The clientToken portion of the clientId and clientToken pair used to verify
 13085  	// that the calling entity is allowed access to the job and its details.
 13086  	//
 13087  	// ClientToken is a required field
 13088  	ClientToken *string `locationName:"clientToken" min:"1" type:"string" required:"true"`
 13089  
 13090  	// A token generated by a job worker, such as an AWS CodeDeploy deployment ID,
 13091  	// that a successful job provides to identify a partner action in progress.
 13092  	// Future jobs use this token to identify the running instance of the action.
 13093  	// It can be reused to return more information about the progress of the partner
 13094  	// action. When the action is complete, no continuation token should be supplied.
 13095  	ContinuationToken *string `locationName:"continuationToken" min:"1" type:"string"`
 13096  
 13097  	// Represents information about a current revision.
 13098  	CurrentRevision *CurrentRevision `locationName:"currentRevision" type:"structure"`
 13099  
 13100  	// The details of the actions taken and results produced on an artifact as it
 13101  	// passes through stages in the pipeline.
 13102  	ExecutionDetails *ExecutionDetails `locationName:"executionDetails" type:"structure"`
 13103  
 13104  	// The ID of the job that successfully completed. This is the same ID returned
 13105  	// from PollForThirdPartyJobs.
 13106  	//
 13107  	// JobId is a required field
 13108  	JobId *string `locationName:"jobId" min:"1" type:"string" required:"true"`
 13109  }
 13110  
 13111  // String returns the string representation.
 13112  //
 13113  // API parameter values that are decorated as "sensitive" in the API will not
 13114  // be included in the string output. The member name will be present, but the
 13115  // value will be replaced with "sensitive".
 13116  func (s PutThirdPartyJobSuccessResultInput) String() string {
 13117  	return awsutil.Prettify(s)
 13118  }
 13119  
 13120  // GoString returns the string representation.
 13121  //
 13122  // API parameter values that are decorated as "sensitive" in the API will not
 13123  // be included in the string output. The member name will be present, but the
 13124  // value will be replaced with "sensitive".
 13125  func (s PutThirdPartyJobSuccessResultInput) GoString() string {
 13126  	return s.String()
 13127  }
 13128  
 13129  // Validate inspects the fields of the type to determine if they are valid.
 13130  func (s *PutThirdPartyJobSuccessResultInput) Validate() error {
 13131  	invalidParams := request.ErrInvalidParams{Context: "PutThirdPartyJobSuccessResultInput"}
 13132  	if s.ClientToken == nil {
 13133  		invalidParams.Add(request.NewErrParamRequired("ClientToken"))
 13134  	}
 13135  	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
 13136  		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
 13137  	}
 13138  	if s.ContinuationToken != nil && len(*s.ContinuationToken) < 1 {
 13139  		invalidParams.Add(request.NewErrParamMinLen("ContinuationToken", 1))
 13140  	}
 13141  	if s.JobId == nil {
 13142  		invalidParams.Add(request.NewErrParamRequired("JobId"))
 13143  	}
 13144  	if s.JobId != nil && len(*s.JobId) < 1 {
 13145  		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
 13146  	}
 13147  	if s.CurrentRevision != nil {
 13148  		if err := s.CurrentRevision.Validate(); err != nil {
 13149  			invalidParams.AddNested("CurrentRevision", err.(request.ErrInvalidParams))
 13150  		}
 13151  	}
 13152  	if s.ExecutionDetails != nil {
 13153  		if err := s.ExecutionDetails.Validate(); err != nil {
 13154  			invalidParams.AddNested("ExecutionDetails", err.(request.ErrInvalidParams))
 13155  		}
 13156  	}
 13157  
 13158  	if invalidParams.Len() > 0 {
 13159  		return invalidParams
 13160  	}
 13161  	return nil
 13162  }
 13163  
 13164  // SetClientToken sets the ClientToken field's value.
 13165  func (s *PutThirdPartyJobSuccessResultInput) SetClientToken(v string) *PutThirdPartyJobSuccessResultInput {
 13166  	s.ClientToken = &v
 13167  	return s
 13168  }
 13169  
 13170  // SetContinuationToken sets the ContinuationToken field's value.
 13171  func (s *PutThirdPartyJobSuccessResultInput) SetContinuationToken(v string) *PutThirdPartyJobSuccessResultInput {
 13172  	s.ContinuationToken = &v
 13173  	return s
 13174  }
 13175  
 13176  // SetCurrentRevision sets the CurrentRevision field's value.
 13177  func (s *PutThirdPartyJobSuccessResultInput) SetCurrentRevision(v *CurrentRevision) *PutThirdPartyJobSuccessResultInput {
 13178  	s.CurrentRevision = v
 13179  	return s
 13180  }
 13181  
 13182  // SetExecutionDetails sets the ExecutionDetails field's value.
 13183  func (s *PutThirdPartyJobSuccessResultInput) SetExecutionDetails(v *ExecutionDetails) *PutThirdPartyJobSuccessResultInput {
 13184  	s.ExecutionDetails = v
 13185  	return s
 13186  }
 13187  
 13188  // SetJobId sets the JobId field's value.
 13189  func (s *PutThirdPartyJobSuccessResultInput) SetJobId(v string) *PutThirdPartyJobSuccessResultInput {
 13190  	s.JobId = &v
 13191  	return s
 13192  }
 13193  
 13194  type PutThirdPartyJobSuccessResultOutput struct {
 13195  	_ struct{} `type:"structure"`
 13196  }
 13197  
 13198  // String returns the string representation.
 13199  //
 13200  // API parameter values that are decorated as "sensitive" in the API will not
 13201  // be included in the string output. The member name will be present, but the
 13202  // value will be replaced with "sensitive".
 13203  func (s PutThirdPartyJobSuccessResultOutput) String() string {
 13204  	return awsutil.Prettify(s)
 13205  }
 13206  
 13207  // GoString returns the string representation.
 13208  //
 13209  // API parameter values that are decorated as "sensitive" in the API will not
 13210  // be included in the string output. The member name will be present, but the
 13211  // value will be replaced with "sensitive".
 13212  func (s PutThirdPartyJobSuccessResultOutput) GoString() string {
 13213  	return s.String()
 13214  }
 13215  
 13216  type PutWebhookInput struct {
 13217  	_ struct{} `type:"structure"`
 13218  
 13219  	// The tags for the webhook.
 13220  	Tags []*Tag `locationName:"tags" type:"list"`
 13221  
 13222  	// The detail provided in an input file to create the webhook, such as the webhook
 13223  	// name, the pipeline name, and the action name. Give the webhook a unique name
 13224  	// that helps you identify it. You might name the webhook after the pipeline
 13225  	// and action it targets so that you can easily recognize what it's used for
 13226  	// later.
 13227  	//
 13228  	// Webhook is a required field
 13229  	Webhook *WebhookDefinition `locationName:"webhook" type:"structure" required:"true"`
 13230  }
 13231  
 13232  // String returns the string representation.
 13233  //
 13234  // API parameter values that are decorated as "sensitive" in the API will not
 13235  // be included in the string output. The member name will be present, but the
 13236  // value will be replaced with "sensitive".
 13237  func (s PutWebhookInput) String() string {
 13238  	return awsutil.Prettify(s)
 13239  }
 13240  
 13241  // GoString returns the string representation.
 13242  //
 13243  // API parameter values that are decorated as "sensitive" in the API will not
 13244  // be included in the string output. The member name will be present, but the
 13245  // value will be replaced with "sensitive".
 13246  func (s PutWebhookInput) GoString() string {
 13247  	return s.String()
 13248  }
 13249  
 13250  // Validate inspects the fields of the type to determine if they are valid.
 13251  func (s *PutWebhookInput) Validate() error {
 13252  	invalidParams := request.ErrInvalidParams{Context: "PutWebhookInput"}
 13253  	if s.Webhook == nil {
 13254  		invalidParams.Add(request.NewErrParamRequired("Webhook"))
 13255  	}
 13256  	if s.Tags != nil {
 13257  		for i, v := range s.Tags {
 13258  			if v == nil {
 13259  				continue
 13260  			}
 13261  			if err := v.Validate(); err != nil {
 13262  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
 13263  			}
 13264  		}
 13265  	}
 13266  	if s.Webhook != nil {
 13267  		if err := s.Webhook.Validate(); err != nil {
 13268  			invalidParams.AddNested("Webhook", err.(request.ErrInvalidParams))
 13269  		}
 13270  	}
 13271  
 13272  	if invalidParams.Len() > 0 {
 13273  		return invalidParams
 13274  	}
 13275  	return nil
 13276  }
 13277  
 13278  // SetTags sets the Tags field's value.
 13279  func (s *PutWebhookInput) SetTags(v []*Tag) *PutWebhookInput {
 13280  	s.Tags = v
 13281  	return s
 13282  }
 13283  
 13284  // SetWebhook sets the Webhook field's value.
 13285  func (s *PutWebhookInput) SetWebhook(v *WebhookDefinition) *PutWebhookInput {
 13286  	s.Webhook = v
 13287  	return s
 13288  }
 13289  
 13290  type PutWebhookOutput struct {
 13291  	_ struct{} `type:"structure"`
 13292  
 13293  	// The detail returned from creating the webhook, such as the webhook name,
 13294  	// webhook URL, and webhook ARN.
 13295  	Webhook *ListWebhookItem `locationName:"webhook" type:"structure"`
 13296  }
 13297  
 13298  // String returns the string representation.
 13299  //
 13300  // API parameter values that are decorated as "sensitive" in the API will not
 13301  // be included in the string output. The member name will be present, but the
 13302  // value will be replaced with "sensitive".
 13303  func (s PutWebhookOutput) String() string {
 13304  	return awsutil.Prettify(s)
 13305  }
 13306  
 13307  // GoString returns the string representation.
 13308  //
 13309  // API parameter values that are decorated as "sensitive" in the API will not
 13310  // be included in the string output. The member name will be present, but the
 13311  // value will be replaced with "sensitive".
 13312  func (s PutWebhookOutput) GoString() string {
 13313  	return s.String()
 13314  }
 13315  
 13316  // SetWebhook sets the Webhook field's value.
 13317  func (s *PutWebhookOutput) SetWebhook(v *ListWebhookItem) *PutWebhookOutput {
 13318  	s.Webhook = v
 13319  	return s
 13320  }
 13321  
 13322  type RegisterWebhookWithThirdPartyInput struct {
 13323  	_ struct{} `type:"structure"`
 13324  
 13325  	// The name of an existing webhook created with PutWebhook to register with
 13326  	// a supported third party.
 13327  	WebhookName *string `locationName:"webhookName" min:"1" type:"string"`
 13328  }
 13329  
 13330  // String returns the string representation.
 13331  //
 13332  // API parameter values that are decorated as "sensitive" in the API will not
 13333  // be included in the string output. The member name will be present, but the
 13334  // value will be replaced with "sensitive".
 13335  func (s RegisterWebhookWithThirdPartyInput) String() string {
 13336  	return awsutil.Prettify(s)
 13337  }
 13338  
 13339  // GoString returns the string representation.
 13340  //
 13341  // API parameter values that are decorated as "sensitive" in the API will not
 13342  // be included in the string output. The member name will be present, but the
 13343  // value will be replaced with "sensitive".
 13344  func (s RegisterWebhookWithThirdPartyInput) GoString() string {
 13345  	return s.String()
 13346  }
 13347  
 13348  // Validate inspects the fields of the type to determine if they are valid.
 13349  func (s *RegisterWebhookWithThirdPartyInput) Validate() error {
 13350  	invalidParams := request.ErrInvalidParams{Context: "RegisterWebhookWithThirdPartyInput"}
 13351  	if s.WebhookName != nil && len(*s.WebhookName) < 1 {
 13352  		invalidParams.Add(request.NewErrParamMinLen("WebhookName", 1))
 13353  	}
 13354  
 13355  	if invalidParams.Len() > 0 {
 13356  		return invalidParams
 13357  	}
 13358  	return nil
 13359  }
 13360  
 13361  // SetWebhookName sets the WebhookName field's value.
 13362  func (s *RegisterWebhookWithThirdPartyInput) SetWebhookName(v string) *RegisterWebhookWithThirdPartyInput {
 13363  	s.WebhookName = &v
 13364  	return s
 13365  }
 13366  
 13367  type RegisterWebhookWithThirdPartyOutput struct {
 13368  	_ struct{} `type:"structure"`
 13369  }
 13370  
 13371  // String returns the string representation.
 13372  //
 13373  // API parameter values that are decorated as "sensitive" in the API will not
 13374  // be included in the string output. The member name will be present, but the
 13375  // value will be replaced with "sensitive".
 13376  func (s RegisterWebhookWithThirdPartyOutput) String() string {
 13377  	return awsutil.Prettify(s)
 13378  }
 13379  
 13380  // GoString returns the string representation.
 13381  //
 13382  // API parameter values that are decorated as "sensitive" in the API will not
 13383  // be included in the string output. The member name will be present, but the
 13384  // value will be replaced with "sensitive".
 13385  func (s RegisterWebhookWithThirdPartyOutput) GoString() string {
 13386  	return s.String()
 13387  }
 13388  
 13389  // The request failed because of an unknown error, exception, or failure.
 13390  type RequestFailedException struct {
 13391  	_            struct{}                  `type:"structure"`
 13392  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 13393  
 13394  	Message_ *string `locationName:"message" min:"1" type:"string"`
 13395  }
 13396  
 13397  // String returns the string representation.
 13398  //
 13399  // API parameter values that are decorated as "sensitive" in the API will not
 13400  // be included in the string output. The member name will be present, but the
 13401  // value will be replaced with "sensitive".
 13402  func (s RequestFailedException) String() string {
 13403  	return awsutil.Prettify(s)
 13404  }
 13405  
 13406  // GoString returns the string representation.
 13407  //
 13408  // API parameter values that are decorated as "sensitive" in the API will not
 13409  // be included in the string output. The member name will be present, but the
 13410  // value will be replaced with "sensitive".
 13411  func (s RequestFailedException) GoString() string {
 13412  	return s.String()
 13413  }
 13414  
 13415  func newErrorRequestFailedException(v protocol.ResponseMetadata) error {
 13416  	return &RequestFailedException{
 13417  		RespMetadata: v,
 13418  	}
 13419  }
 13420  
 13421  // Code returns the exception type name.
 13422  func (s *RequestFailedException) Code() string {
 13423  	return "RequestFailedException"
 13424  }
 13425  
 13426  // Message returns the exception's message.
 13427  func (s *RequestFailedException) Message() string {
 13428  	if s.Message_ != nil {
 13429  		return *s.Message_
 13430  	}
 13431  	return ""
 13432  }
 13433  
 13434  // OrigErr always returns nil, satisfies awserr.Error interface.
 13435  func (s *RequestFailedException) OrigErr() error {
 13436  	return nil
 13437  }
 13438  
 13439  func (s *RequestFailedException) Error() string {
 13440  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 13441  }
 13442  
 13443  // Status code returns the HTTP status code for the request's response error.
 13444  func (s *RequestFailedException) StatusCode() int {
 13445  	return s.RespMetadata.StatusCode
 13446  }
 13447  
 13448  // RequestID returns the service's response RequestID for request.
 13449  func (s *RequestFailedException) RequestID() string {
 13450  	return s.RespMetadata.RequestID
 13451  }
 13452  
 13453  // The resource was specified in an invalid format.
 13454  type ResourceNotFoundException struct {
 13455  	_            struct{}                  `type:"structure"`
 13456  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 13457  
 13458  	Message_ *string `locationName:"message" type:"string"`
 13459  }
 13460  
 13461  // String returns the string representation.
 13462  //
 13463  // API parameter values that are decorated as "sensitive" in the API will not
 13464  // be included in the string output. The member name will be present, but the
 13465  // value will be replaced with "sensitive".
 13466  func (s ResourceNotFoundException) String() string {
 13467  	return awsutil.Prettify(s)
 13468  }
 13469  
 13470  // GoString returns the string representation.
 13471  //
 13472  // API parameter values that are decorated as "sensitive" in the API will not
 13473  // be included in the string output. The member name will be present, but the
 13474  // value will be replaced with "sensitive".
 13475  func (s ResourceNotFoundException) GoString() string {
 13476  	return s.String()
 13477  }
 13478  
 13479  func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error {
 13480  	return &ResourceNotFoundException{
 13481  		RespMetadata: v,
 13482  	}
 13483  }
 13484  
 13485  // Code returns the exception type name.
 13486  func (s *ResourceNotFoundException) Code() string {
 13487  	return "ResourceNotFoundException"
 13488  }
 13489  
 13490  // Message returns the exception's message.
 13491  func (s *ResourceNotFoundException) Message() string {
 13492  	if s.Message_ != nil {
 13493  		return *s.Message_
 13494  	}
 13495  	return ""
 13496  }
 13497  
 13498  // OrigErr always returns nil, satisfies awserr.Error interface.
 13499  func (s *ResourceNotFoundException) OrigErr() error {
 13500  	return nil
 13501  }
 13502  
 13503  func (s *ResourceNotFoundException) Error() string {
 13504  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 13505  }
 13506  
 13507  // Status code returns the HTTP status code for the request's response error.
 13508  func (s *ResourceNotFoundException) StatusCode() int {
 13509  	return s.RespMetadata.StatusCode
 13510  }
 13511  
 13512  // RequestID returns the service's response RequestID for request.
 13513  func (s *ResourceNotFoundException) RequestID() string {
 13514  	return s.RespMetadata.RequestID
 13515  }
 13516  
 13517  // Represents the input of a RetryStageExecution action.
 13518  type RetryStageExecutionInput struct {
 13519  	_ struct{} `type:"structure"`
 13520  
 13521  	// The ID of the pipeline execution in the failed stage to be retried. Use the
 13522  	// GetPipelineState action to retrieve the current pipelineExecutionId of the
 13523  	// failed stage
 13524  	//
 13525  	// PipelineExecutionId is a required field
 13526  	PipelineExecutionId *string `locationName:"pipelineExecutionId" type:"string" required:"true"`
 13527  
 13528  	// The name of the pipeline that contains the failed stage.
 13529  	//
 13530  	// PipelineName is a required field
 13531  	PipelineName *string `locationName:"pipelineName" min:"1" type:"string" required:"true"`
 13532  
 13533  	// The scope of the retry attempt. Currently, the only supported value is FAILED_ACTIONS.
 13534  	//
 13535  	// RetryMode is a required field
 13536  	RetryMode *string `locationName:"retryMode" type:"string" required:"true" enum:"StageRetryMode"`
 13537  
 13538  	// The name of the failed stage to be retried.
 13539  	//
 13540  	// StageName is a required field
 13541  	StageName *string `locationName:"stageName" min:"1" type:"string" required:"true"`
 13542  }
 13543  
 13544  // String returns the string representation.
 13545  //
 13546  // API parameter values that are decorated as "sensitive" in the API will not
 13547  // be included in the string output. The member name will be present, but the
 13548  // value will be replaced with "sensitive".
 13549  func (s RetryStageExecutionInput) String() string {
 13550  	return awsutil.Prettify(s)
 13551  }
 13552  
 13553  // GoString returns the string representation.
 13554  //
 13555  // API parameter values that are decorated as "sensitive" in the API will not
 13556  // be included in the string output. The member name will be present, but the
 13557  // value will be replaced with "sensitive".
 13558  func (s RetryStageExecutionInput) GoString() string {
 13559  	return s.String()
 13560  }
 13561  
 13562  // Validate inspects the fields of the type to determine if they are valid.
 13563  func (s *RetryStageExecutionInput) Validate() error {
 13564  	invalidParams := request.ErrInvalidParams{Context: "RetryStageExecutionInput"}
 13565  	if s.PipelineExecutionId == nil {
 13566  		invalidParams.Add(request.NewErrParamRequired("PipelineExecutionId"))
 13567  	}
 13568  	if s.PipelineName == nil {
 13569  		invalidParams.Add(request.NewErrParamRequired("PipelineName"))
 13570  	}
 13571  	if s.PipelineName != nil && len(*s.PipelineName) < 1 {
 13572  		invalidParams.Add(request.NewErrParamMinLen("PipelineName", 1))
 13573  	}
 13574  	if s.RetryMode == nil {
 13575  		invalidParams.Add(request.NewErrParamRequired("RetryMode"))
 13576  	}
 13577  	if s.StageName == nil {
 13578  		invalidParams.Add(request.NewErrParamRequired("StageName"))
 13579  	}
 13580  	if s.StageName != nil && len(*s.StageName) < 1 {
 13581  		invalidParams.Add(request.NewErrParamMinLen("StageName", 1))
 13582  	}
 13583  
 13584  	if invalidParams.Len() > 0 {
 13585  		return invalidParams
 13586  	}
 13587  	return nil
 13588  }
 13589  
 13590  // SetPipelineExecutionId sets the PipelineExecutionId field's value.
 13591  func (s *RetryStageExecutionInput) SetPipelineExecutionId(v string) *RetryStageExecutionInput {
 13592  	s.PipelineExecutionId = &v
 13593  	return s
 13594  }
 13595  
 13596  // SetPipelineName sets the PipelineName field's value.
 13597  func (s *RetryStageExecutionInput) SetPipelineName(v string) *RetryStageExecutionInput {
 13598  	s.PipelineName = &v
 13599  	return s
 13600  }
 13601  
 13602  // SetRetryMode sets the RetryMode field's value.
 13603  func (s *RetryStageExecutionInput) SetRetryMode(v string) *RetryStageExecutionInput {
 13604  	s.RetryMode = &v
 13605  	return s
 13606  }
 13607  
 13608  // SetStageName sets the StageName field's value.
 13609  func (s *RetryStageExecutionInput) SetStageName(v string) *RetryStageExecutionInput {
 13610  	s.StageName = &v
 13611  	return s
 13612  }
 13613  
 13614  // Represents the output of a RetryStageExecution action.
 13615  type RetryStageExecutionOutput struct {
 13616  	_ struct{} `type:"structure"`
 13617  
 13618  	// The ID of the current workflow execution in the failed stage.
 13619  	PipelineExecutionId *string `locationName:"pipelineExecutionId" type:"string"`
 13620  }
 13621  
 13622  // String returns the string representation.
 13623  //
 13624  // API parameter values that are decorated as "sensitive" in the API will not
 13625  // be included in the string output. The member name will be present, but the
 13626  // value will be replaced with "sensitive".
 13627  func (s RetryStageExecutionOutput) String() string {
 13628  	return awsutil.Prettify(s)
 13629  }
 13630  
 13631  // GoString returns the string representation.
 13632  //
 13633  // API parameter values that are decorated as "sensitive" in the API will not
 13634  // be included in the string output. The member name will be present, but the
 13635  // value will be replaced with "sensitive".
 13636  func (s RetryStageExecutionOutput) GoString() string {
 13637  	return s.String()
 13638  }
 13639  
 13640  // SetPipelineExecutionId sets the PipelineExecutionId field's value.
 13641  func (s *RetryStageExecutionOutput) SetPipelineExecutionId(v string) *RetryStageExecutionOutput {
 13642  	s.PipelineExecutionId = &v
 13643  	return s
 13644  }
 13645  
 13646  // The location of the S3 bucket that contains a revision.
 13647  type S3ArtifactLocation struct {
 13648  	_ struct{} `type:"structure"`
 13649  
 13650  	// The name of the S3 bucket.
 13651  	//
 13652  	// BucketName is a required field
 13653  	BucketName *string `locationName:"bucketName" type:"string" required:"true"`
 13654  
 13655  	// The key of the object in the S3 bucket, which uniquely identifies the object
 13656  	// in the bucket.
 13657  	//
 13658  	// ObjectKey is a required field
 13659  	ObjectKey *string `locationName:"objectKey" type:"string" required:"true"`
 13660  }
 13661  
 13662  // String returns the string representation.
 13663  //
 13664  // API parameter values that are decorated as "sensitive" in the API will not
 13665  // be included in the string output. The member name will be present, but the
 13666  // value will be replaced with "sensitive".
 13667  func (s S3ArtifactLocation) String() string {
 13668  	return awsutil.Prettify(s)
 13669  }
 13670  
 13671  // GoString returns the string representation.
 13672  //
 13673  // API parameter values that are decorated as "sensitive" in the API will not
 13674  // be included in the string output. The member name will be present, but the
 13675  // value will be replaced with "sensitive".
 13676  func (s S3ArtifactLocation) GoString() string {
 13677  	return s.String()
 13678  }
 13679  
 13680  // SetBucketName sets the BucketName field's value.
 13681  func (s *S3ArtifactLocation) SetBucketName(v string) *S3ArtifactLocation {
 13682  	s.BucketName = &v
 13683  	return s
 13684  }
 13685  
 13686  // SetObjectKey sets the ObjectKey field's value.
 13687  func (s *S3ArtifactLocation) SetObjectKey(v string) *S3ArtifactLocation {
 13688  	s.ObjectKey = &v
 13689  	return s
 13690  }
 13691  
 13692  // The Amazon S3 artifact location for an action's artifacts.
 13693  type S3Location struct {
 13694  	_ struct{} `type:"structure"`
 13695  
 13696  	// The Amazon S3 artifact bucket for an action's artifacts.
 13697  	Bucket *string `locationName:"bucket" min:"3" type:"string"`
 13698  
 13699  	// The artifact name.
 13700  	Key *string `locationName:"key" min:"1" type:"string"`
 13701  }
 13702  
 13703  // String returns the string representation.
 13704  //
 13705  // API parameter values that are decorated as "sensitive" in the API will not
 13706  // be included in the string output. The member name will be present, but the
 13707  // value will be replaced with "sensitive".
 13708  func (s S3Location) String() string {
 13709  	return awsutil.Prettify(s)
 13710  }
 13711  
 13712  // GoString returns the string representation.
 13713  //
 13714  // API parameter values that are decorated as "sensitive" in the API will not
 13715  // be included in the string output. The member name will be present, but the
 13716  // value will be replaced with "sensitive".
 13717  func (s S3Location) GoString() string {
 13718  	return s.String()
 13719  }
 13720  
 13721  // SetBucket sets the Bucket field's value.
 13722  func (s *S3Location) SetBucket(v string) *S3Location {
 13723  	s.Bucket = &v
 13724  	return s
 13725  }
 13726  
 13727  // SetKey sets the Key field's value.
 13728  func (s *S3Location) SetKey(v string) *S3Location {
 13729  	s.Key = &v
 13730  	return s
 13731  }
 13732  
 13733  // Information about the version (or revision) of a source artifact that initiated
 13734  // a pipeline execution.
 13735  type SourceRevision struct {
 13736  	_ struct{} `type:"structure"`
 13737  
 13738  	// The name of the action that processed the revision to the source artifact.
 13739  	//
 13740  	// ActionName is a required field
 13741  	ActionName *string `locationName:"actionName" min:"1" type:"string" required:"true"`
 13742  
 13743  	// The system-generated unique ID that identifies the revision number of the
 13744  	// artifact.
 13745  	RevisionId *string `locationName:"revisionId" min:"1" type:"string"`
 13746  
 13747  	// Summary information about the most recent revision of the artifact. For GitHub
 13748  	// and AWS CodeCommit repositories, the commit message. For Amazon S3 buckets
 13749  	// or actions, the user-provided content of a codepipeline-artifact-revision-summary
 13750  	// key specified in the object metadata.
 13751  	RevisionSummary *string `locationName:"revisionSummary" min:"1" type:"string"`
 13752  
 13753  	// The commit ID for the artifact revision. For artifacts stored in GitHub or
 13754  	// AWS CodeCommit repositories, the commit ID is linked to a commit details
 13755  	// page.
 13756  	RevisionUrl *string `locationName:"revisionUrl" min:"1" type:"string"`
 13757  }
 13758  
 13759  // String returns the string representation.
 13760  //
 13761  // API parameter values that are decorated as "sensitive" in the API will not
 13762  // be included in the string output. The member name will be present, but the
 13763  // value will be replaced with "sensitive".
 13764  func (s SourceRevision) String() string {
 13765  	return awsutil.Prettify(s)
 13766  }
 13767  
 13768  // GoString returns the string representation.
 13769  //
 13770  // API parameter values that are decorated as "sensitive" in the API will not
 13771  // be included in the string output. The member name will be present, but the
 13772  // value will be replaced with "sensitive".
 13773  func (s SourceRevision) GoString() string {
 13774  	return s.String()
 13775  }
 13776  
 13777  // SetActionName sets the ActionName field's value.
 13778  func (s *SourceRevision) SetActionName(v string) *SourceRevision {
 13779  	s.ActionName = &v
 13780  	return s
 13781  }
 13782  
 13783  // SetRevisionId sets the RevisionId field's value.
 13784  func (s *SourceRevision) SetRevisionId(v string) *SourceRevision {
 13785  	s.RevisionId = &v
 13786  	return s
 13787  }
 13788  
 13789  // SetRevisionSummary sets the RevisionSummary field's value.
 13790  func (s *SourceRevision) SetRevisionSummary(v string) *SourceRevision {
 13791  	s.RevisionSummary = &v
 13792  	return s
 13793  }
 13794  
 13795  // SetRevisionUrl sets the RevisionUrl field's value.
 13796  func (s *SourceRevision) SetRevisionUrl(v string) *SourceRevision {
 13797  	s.RevisionUrl = &v
 13798  	return s
 13799  }
 13800  
 13801  // Represents information about a stage to a job worker.
 13802  type StageContext struct {
 13803  	_ struct{} `type:"structure"`
 13804  
 13805  	// The name of the stage.
 13806  	Name *string `locationName:"name" min:"1" type:"string"`
 13807  }
 13808  
 13809  // String returns the string representation.
 13810  //
 13811  // API parameter values that are decorated as "sensitive" in the API will not
 13812  // be included in the string output. The member name will be present, but the
 13813  // value will be replaced with "sensitive".
 13814  func (s StageContext) String() string {
 13815  	return awsutil.Prettify(s)
 13816  }
 13817  
 13818  // GoString returns the string representation.
 13819  //
 13820  // API parameter values that are decorated as "sensitive" in the API will not
 13821  // be included in the string output. The member name will be present, but the
 13822  // value will be replaced with "sensitive".
 13823  func (s StageContext) GoString() string {
 13824  	return s.String()
 13825  }
 13826  
 13827  // SetName sets the Name field's value.
 13828  func (s *StageContext) SetName(v string) *StageContext {
 13829  	s.Name = &v
 13830  	return s
 13831  }
 13832  
 13833  // Represents information about a stage and its definition.
 13834  type StageDeclaration struct {
 13835  	_ struct{} `type:"structure"`
 13836  
 13837  	// The actions included in a stage.
 13838  	//
 13839  	// Actions is a required field
 13840  	Actions []*ActionDeclaration `locationName:"actions" type:"list" required:"true"`
 13841  
 13842  	// Reserved for future use.
 13843  	Blockers []*BlockerDeclaration `locationName:"blockers" type:"list"`
 13844  
 13845  	// The name of the stage.
 13846  	//
 13847  	// Name is a required field
 13848  	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
 13849  }
 13850  
 13851  // String returns the string representation.
 13852  //
 13853  // API parameter values that are decorated as "sensitive" in the API will not
 13854  // be included in the string output. The member name will be present, but the
 13855  // value will be replaced with "sensitive".
 13856  func (s StageDeclaration) String() string {
 13857  	return awsutil.Prettify(s)
 13858  }
 13859  
 13860  // GoString returns the string representation.
 13861  //
 13862  // API parameter values that are decorated as "sensitive" in the API will not
 13863  // be included in the string output. The member name will be present, but the
 13864  // value will be replaced with "sensitive".
 13865  func (s StageDeclaration) GoString() string {
 13866  	return s.String()
 13867  }
 13868  
 13869  // Validate inspects the fields of the type to determine if they are valid.
 13870  func (s *StageDeclaration) Validate() error {
 13871  	invalidParams := request.ErrInvalidParams{Context: "StageDeclaration"}
 13872  	if s.Actions == nil {
 13873  		invalidParams.Add(request.NewErrParamRequired("Actions"))
 13874  	}
 13875  	if s.Name == nil {
 13876  		invalidParams.Add(request.NewErrParamRequired("Name"))
 13877  	}
 13878  	if s.Name != nil && len(*s.Name) < 1 {
 13879  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
 13880  	}
 13881  	if s.Actions != nil {
 13882  		for i, v := range s.Actions {
 13883  			if v == nil {
 13884  				continue
 13885  			}
 13886  			if err := v.Validate(); err != nil {
 13887  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Actions", i), err.(request.ErrInvalidParams))
 13888  			}
 13889  		}
 13890  	}
 13891  	if s.Blockers != nil {
 13892  		for i, v := range s.Blockers {
 13893  			if v == nil {
 13894  				continue
 13895  			}
 13896  			if err := v.Validate(); err != nil {
 13897  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Blockers", i), err.(request.ErrInvalidParams))
 13898  			}
 13899  		}
 13900  	}
 13901  
 13902  	if invalidParams.Len() > 0 {
 13903  		return invalidParams
 13904  	}
 13905  	return nil
 13906  }
 13907  
 13908  // SetActions sets the Actions field's value.
 13909  func (s *StageDeclaration) SetActions(v []*ActionDeclaration) *StageDeclaration {
 13910  	s.Actions = v
 13911  	return s
 13912  }
 13913  
 13914  // SetBlockers sets the Blockers field's value.
 13915  func (s *StageDeclaration) SetBlockers(v []*BlockerDeclaration) *StageDeclaration {
 13916  	s.Blockers = v
 13917  	return s
 13918  }
 13919  
 13920  // SetName sets the Name field's value.
 13921  func (s *StageDeclaration) SetName(v string) *StageDeclaration {
 13922  	s.Name = &v
 13923  	return s
 13924  }
 13925  
 13926  // Represents information about the run of a stage.
 13927  type StageExecution struct {
 13928  	_ struct{} `type:"structure"`
 13929  
 13930  	// The ID of the pipeline execution associated with the stage.
 13931  	//
 13932  	// PipelineExecutionId is a required field
 13933  	PipelineExecutionId *string `locationName:"pipelineExecutionId" type:"string" required:"true"`
 13934  
 13935  	// The status of the stage, or for a completed stage, the last status of the
 13936  	// stage.
 13937  	//
 13938  	// A status of cancelled means that the pipeline’s definition was updated
 13939  	// before the stage execution could be completed.
 13940  	//
 13941  	// Status is a required field
 13942  	Status *string `locationName:"status" type:"string" required:"true" enum:"StageExecutionStatus"`
 13943  }
 13944  
 13945  // String returns the string representation.
 13946  //
 13947  // API parameter values that are decorated as "sensitive" in the API will not
 13948  // be included in the string output. The member name will be present, but the
 13949  // value will be replaced with "sensitive".
 13950  func (s StageExecution) String() string {
 13951  	return awsutil.Prettify(s)
 13952  }
 13953  
 13954  // GoString returns the string representation.
 13955  //
 13956  // API parameter values that are decorated as "sensitive" in the API will not
 13957  // be included in the string output. The member name will be present, but the
 13958  // value will be replaced with "sensitive".
 13959  func (s StageExecution) GoString() string {
 13960  	return s.String()
 13961  }
 13962  
 13963  // SetPipelineExecutionId sets the PipelineExecutionId field's value.
 13964  func (s *StageExecution) SetPipelineExecutionId(v string) *StageExecution {
 13965  	s.PipelineExecutionId = &v
 13966  	return s
 13967  }
 13968  
 13969  // SetStatus sets the Status field's value.
 13970  func (s *StageExecution) SetStatus(v string) *StageExecution {
 13971  	s.Status = &v
 13972  	return s
 13973  }
 13974  
 13975  // The stage was specified in an invalid format or cannot be found.
 13976  type StageNotFoundException struct {
 13977  	_            struct{}                  `type:"structure"`
 13978  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 13979  
 13980  	Message_ *string `locationName:"message" type:"string"`
 13981  }
 13982  
 13983  // String returns the string representation.
 13984  //
 13985  // API parameter values that are decorated as "sensitive" in the API will not
 13986  // be included in the string output. The member name will be present, but the
 13987  // value will be replaced with "sensitive".
 13988  func (s StageNotFoundException) String() string {
 13989  	return awsutil.Prettify(s)
 13990  }
 13991  
 13992  // GoString returns the string representation.
 13993  //
 13994  // API parameter values that are decorated as "sensitive" in the API will not
 13995  // be included in the string output. The member name will be present, but the
 13996  // value will be replaced with "sensitive".
 13997  func (s StageNotFoundException) GoString() string {
 13998  	return s.String()
 13999  }
 14000  
 14001  func newErrorStageNotFoundException(v protocol.ResponseMetadata) error {
 14002  	return &StageNotFoundException{
 14003  		RespMetadata: v,
 14004  	}
 14005  }
 14006  
 14007  // Code returns the exception type name.
 14008  func (s *StageNotFoundException) Code() string {
 14009  	return "StageNotFoundException"
 14010  }
 14011  
 14012  // Message returns the exception's message.
 14013  func (s *StageNotFoundException) Message() string {
 14014  	if s.Message_ != nil {
 14015  		return *s.Message_
 14016  	}
 14017  	return ""
 14018  }
 14019  
 14020  // OrigErr always returns nil, satisfies awserr.Error interface.
 14021  func (s *StageNotFoundException) OrigErr() error {
 14022  	return nil
 14023  }
 14024  
 14025  func (s *StageNotFoundException) Error() string {
 14026  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 14027  }
 14028  
 14029  // Status code returns the HTTP status code for the request's response error.
 14030  func (s *StageNotFoundException) StatusCode() int {
 14031  	return s.RespMetadata.StatusCode
 14032  }
 14033  
 14034  // RequestID returns the service's response RequestID for request.
 14035  func (s *StageNotFoundException) RequestID() string {
 14036  	return s.RespMetadata.RequestID
 14037  }
 14038  
 14039  // Unable to retry. The pipeline structure or stage state might have changed
 14040  // while actions awaited retry, or the stage contains no failed actions.
 14041  type StageNotRetryableException struct {
 14042  	_            struct{}                  `type:"structure"`
 14043  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 14044  
 14045  	Message_ *string `locationName:"message" type:"string"`
 14046  }
 14047  
 14048  // String returns the string representation.
 14049  //
 14050  // API parameter values that are decorated as "sensitive" in the API will not
 14051  // be included in the string output. The member name will be present, but the
 14052  // value will be replaced with "sensitive".
 14053  func (s StageNotRetryableException) String() string {
 14054  	return awsutil.Prettify(s)
 14055  }
 14056  
 14057  // GoString returns the string representation.
 14058  //
 14059  // API parameter values that are decorated as "sensitive" in the API will not
 14060  // be included in the string output. The member name will be present, but the
 14061  // value will be replaced with "sensitive".
 14062  func (s StageNotRetryableException) GoString() string {
 14063  	return s.String()
 14064  }
 14065  
 14066  func newErrorStageNotRetryableException(v protocol.ResponseMetadata) error {
 14067  	return &StageNotRetryableException{
 14068  		RespMetadata: v,
 14069  	}
 14070  }
 14071  
 14072  // Code returns the exception type name.
 14073  func (s *StageNotRetryableException) Code() string {
 14074  	return "StageNotRetryableException"
 14075  }
 14076  
 14077  // Message returns the exception's message.
 14078  func (s *StageNotRetryableException) Message() string {
 14079  	if s.Message_ != nil {
 14080  		return *s.Message_
 14081  	}
 14082  	return ""
 14083  }
 14084  
 14085  // OrigErr always returns nil, satisfies awserr.Error interface.
 14086  func (s *StageNotRetryableException) OrigErr() error {
 14087  	return nil
 14088  }
 14089  
 14090  func (s *StageNotRetryableException) Error() string {
 14091  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 14092  }
 14093  
 14094  // Status code returns the HTTP status code for the request's response error.
 14095  func (s *StageNotRetryableException) StatusCode() int {
 14096  	return s.RespMetadata.StatusCode
 14097  }
 14098  
 14099  // RequestID returns the service's response RequestID for request.
 14100  func (s *StageNotRetryableException) RequestID() string {
 14101  	return s.RespMetadata.RequestID
 14102  }
 14103  
 14104  // Represents information about the state of the stage.
 14105  type StageState struct {
 14106  	_ struct{} `type:"structure"`
 14107  
 14108  	// The state of the stage.
 14109  	ActionStates []*ActionState `locationName:"actionStates" type:"list"`
 14110  
 14111  	// Represents information about the run of a stage.
 14112  	InboundExecution *StageExecution `locationName:"inboundExecution" type:"structure"`
 14113  
 14114  	// The state of the inbound transition, which is either enabled or disabled.
 14115  	InboundTransitionState *TransitionState `locationName:"inboundTransitionState" type:"structure"`
 14116  
 14117  	// Information about the latest execution in the stage, including its ID and
 14118  	// status.
 14119  	LatestExecution *StageExecution `locationName:"latestExecution" type:"structure"`
 14120  
 14121  	// The name of the stage.
 14122  	StageName *string `locationName:"stageName" min:"1" type:"string"`
 14123  }
 14124  
 14125  // String returns the string representation.
 14126  //
 14127  // API parameter values that are decorated as "sensitive" in the API will not
 14128  // be included in the string output. The member name will be present, but the
 14129  // value will be replaced with "sensitive".
 14130  func (s StageState) String() string {
 14131  	return awsutil.Prettify(s)
 14132  }
 14133  
 14134  // GoString returns the string representation.
 14135  //
 14136  // API parameter values that are decorated as "sensitive" in the API will not
 14137  // be included in the string output. The member name will be present, but the
 14138  // value will be replaced with "sensitive".
 14139  func (s StageState) GoString() string {
 14140  	return s.String()
 14141  }
 14142  
 14143  // SetActionStates sets the ActionStates field's value.
 14144  func (s *StageState) SetActionStates(v []*ActionState) *StageState {
 14145  	s.ActionStates = v
 14146  	return s
 14147  }
 14148  
 14149  // SetInboundExecution sets the InboundExecution field's value.
 14150  func (s *StageState) SetInboundExecution(v *StageExecution) *StageState {
 14151  	s.InboundExecution = v
 14152  	return s
 14153  }
 14154  
 14155  // SetInboundTransitionState sets the InboundTransitionState field's value.
 14156  func (s *StageState) SetInboundTransitionState(v *TransitionState) *StageState {
 14157  	s.InboundTransitionState = v
 14158  	return s
 14159  }
 14160  
 14161  // SetLatestExecution sets the LatestExecution field's value.
 14162  func (s *StageState) SetLatestExecution(v *StageExecution) *StageState {
 14163  	s.LatestExecution = v
 14164  	return s
 14165  }
 14166  
 14167  // SetStageName sets the StageName field's value.
 14168  func (s *StageState) SetStageName(v string) *StageState {
 14169  	s.StageName = &v
 14170  	return s
 14171  }
 14172  
 14173  // Represents the input of a StartPipelineExecution action.
 14174  type StartPipelineExecutionInput struct {
 14175  	_ struct{} `type:"structure"`
 14176  
 14177  	// The system-generated unique ID used to identify a unique execution request.
 14178  	ClientRequestToken *string `locationName:"clientRequestToken" min:"1" type:"string" idempotencyToken:"true"`
 14179  
 14180  	// The name of the pipeline to start.
 14181  	//
 14182  	// Name is a required field
 14183  	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
 14184  }
 14185  
 14186  // String returns the string representation.
 14187  //
 14188  // API parameter values that are decorated as "sensitive" in the API will not
 14189  // be included in the string output. The member name will be present, but the
 14190  // value will be replaced with "sensitive".
 14191  func (s StartPipelineExecutionInput) String() string {
 14192  	return awsutil.Prettify(s)
 14193  }
 14194  
 14195  // GoString returns the string representation.
 14196  //
 14197  // API parameter values that are decorated as "sensitive" in the API will not
 14198  // be included in the string output. The member name will be present, but the
 14199  // value will be replaced with "sensitive".
 14200  func (s StartPipelineExecutionInput) GoString() string {
 14201  	return s.String()
 14202  }
 14203  
 14204  // Validate inspects the fields of the type to determine if they are valid.
 14205  func (s *StartPipelineExecutionInput) Validate() error {
 14206  	invalidParams := request.ErrInvalidParams{Context: "StartPipelineExecutionInput"}
 14207  	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 {
 14208  		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1))
 14209  	}
 14210  	if s.Name == nil {
 14211  		invalidParams.Add(request.NewErrParamRequired("Name"))
 14212  	}
 14213  	if s.Name != nil && len(*s.Name) < 1 {
 14214  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
 14215  	}
 14216  
 14217  	if invalidParams.Len() > 0 {
 14218  		return invalidParams
 14219  	}
 14220  	return nil
 14221  }
 14222  
 14223  // SetClientRequestToken sets the ClientRequestToken field's value.
 14224  func (s *StartPipelineExecutionInput) SetClientRequestToken(v string) *StartPipelineExecutionInput {
 14225  	s.ClientRequestToken = &v
 14226  	return s
 14227  }
 14228  
 14229  // SetName sets the Name field's value.
 14230  func (s *StartPipelineExecutionInput) SetName(v string) *StartPipelineExecutionInput {
 14231  	s.Name = &v
 14232  	return s
 14233  }
 14234  
 14235  // Represents the output of a StartPipelineExecution action.
 14236  type StartPipelineExecutionOutput struct {
 14237  	_ struct{} `type:"structure"`
 14238  
 14239  	// The unique system-generated ID of the pipeline execution that was started.
 14240  	PipelineExecutionId *string `locationName:"pipelineExecutionId" type:"string"`
 14241  }
 14242  
 14243  // String returns the string representation.
 14244  //
 14245  // API parameter values that are decorated as "sensitive" in the API will not
 14246  // be included in the string output. The member name will be present, but the
 14247  // value will be replaced with "sensitive".
 14248  func (s StartPipelineExecutionOutput) String() string {
 14249  	return awsutil.Prettify(s)
 14250  }
 14251  
 14252  // GoString returns the string representation.
 14253  //
 14254  // API parameter values that are decorated as "sensitive" in the API will not
 14255  // be included in the string output. The member name will be present, but the
 14256  // value will be replaced with "sensitive".
 14257  func (s StartPipelineExecutionOutput) GoString() string {
 14258  	return s.String()
 14259  }
 14260  
 14261  // SetPipelineExecutionId sets the PipelineExecutionId field's value.
 14262  func (s *StartPipelineExecutionOutput) SetPipelineExecutionId(v string) *StartPipelineExecutionOutput {
 14263  	s.PipelineExecutionId = &v
 14264  	return s
 14265  }
 14266  
 14267  // The interaction that stopped a pipeline execution.
 14268  type StopExecutionTrigger struct {
 14269  	_ struct{} `type:"structure"`
 14270  
 14271  	// The user-specified reason the pipeline was stopped.
 14272  	Reason *string `locationName:"reason" type:"string"`
 14273  }
 14274  
 14275  // String returns the string representation.
 14276  //
 14277  // API parameter values that are decorated as "sensitive" in the API will not
 14278  // be included in the string output. The member name will be present, but the
 14279  // value will be replaced with "sensitive".
 14280  func (s StopExecutionTrigger) String() string {
 14281  	return awsutil.Prettify(s)
 14282  }
 14283  
 14284  // GoString returns the string representation.
 14285  //
 14286  // API parameter values that are decorated as "sensitive" in the API will not
 14287  // be included in the string output. The member name will be present, but the
 14288  // value will be replaced with "sensitive".
 14289  func (s StopExecutionTrigger) GoString() string {
 14290  	return s.String()
 14291  }
 14292  
 14293  // SetReason sets the Reason field's value.
 14294  func (s *StopExecutionTrigger) SetReason(v string) *StopExecutionTrigger {
 14295  	s.Reason = &v
 14296  	return s
 14297  }
 14298  
 14299  type StopPipelineExecutionInput struct {
 14300  	_ struct{} `type:"structure"`
 14301  
 14302  	// Use this option to stop the pipeline execution by abandoning, rather than
 14303  	// finishing, in-progress actions.
 14304  	//
 14305  	// This option can lead to failed or out-of-sequence tasks.
 14306  	Abandon *bool `locationName:"abandon" type:"boolean"`
 14307  
 14308  	// The ID of the pipeline execution to be stopped in the current stage. Use
 14309  	// the GetPipelineState action to retrieve the current pipelineExecutionId.
 14310  	//
 14311  	// PipelineExecutionId is a required field
 14312  	PipelineExecutionId *string `locationName:"pipelineExecutionId" type:"string" required:"true"`
 14313  
 14314  	// The name of the pipeline to stop.
 14315  	//
 14316  	// PipelineName is a required field
 14317  	PipelineName *string `locationName:"pipelineName" min:"1" type:"string" required:"true"`
 14318  
 14319  	// Use this option to enter comments, such as the reason the pipeline was stopped.
 14320  	Reason *string `locationName:"reason" type:"string"`
 14321  }
 14322  
 14323  // String returns the string representation.
 14324  //
 14325  // API parameter values that are decorated as "sensitive" in the API will not
 14326  // be included in the string output. The member name will be present, but the
 14327  // value will be replaced with "sensitive".
 14328  func (s StopPipelineExecutionInput) String() string {
 14329  	return awsutil.Prettify(s)
 14330  }
 14331  
 14332  // GoString returns the string representation.
 14333  //
 14334  // API parameter values that are decorated as "sensitive" in the API will not
 14335  // be included in the string output. The member name will be present, but the
 14336  // value will be replaced with "sensitive".
 14337  func (s StopPipelineExecutionInput) GoString() string {
 14338  	return s.String()
 14339  }
 14340  
 14341  // Validate inspects the fields of the type to determine if they are valid.
 14342  func (s *StopPipelineExecutionInput) Validate() error {
 14343  	invalidParams := request.ErrInvalidParams{Context: "StopPipelineExecutionInput"}
 14344  	if s.PipelineExecutionId == nil {
 14345  		invalidParams.Add(request.NewErrParamRequired("PipelineExecutionId"))
 14346  	}
 14347  	if s.PipelineName == nil {
 14348  		invalidParams.Add(request.NewErrParamRequired("PipelineName"))
 14349  	}
 14350  	if s.PipelineName != nil && len(*s.PipelineName) < 1 {
 14351  		invalidParams.Add(request.NewErrParamMinLen("PipelineName", 1))
 14352  	}
 14353  
 14354  	if invalidParams.Len() > 0 {
 14355  		return invalidParams
 14356  	}
 14357  	return nil
 14358  }
 14359  
 14360  // SetAbandon sets the Abandon field's value.
 14361  func (s *StopPipelineExecutionInput) SetAbandon(v bool) *StopPipelineExecutionInput {
 14362  	s.Abandon = &v
 14363  	return s
 14364  }
 14365  
 14366  // SetPipelineExecutionId sets the PipelineExecutionId field's value.
 14367  func (s *StopPipelineExecutionInput) SetPipelineExecutionId(v string) *StopPipelineExecutionInput {
 14368  	s.PipelineExecutionId = &v
 14369  	return s
 14370  }
 14371  
 14372  // SetPipelineName sets the PipelineName field's value.
 14373  func (s *StopPipelineExecutionInput) SetPipelineName(v string) *StopPipelineExecutionInput {
 14374  	s.PipelineName = &v
 14375  	return s
 14376  }
 14377  
 14378  // SetReason sets the Reason field's value.
 14379  func (s *StopPipelineExecutionInput) SetReason(v string) *StopPipelineExecutionInput {
 14380  	s.Reason = &v
 14381  	return s
 14382  }
 14383  
 14384  type StopPipelineExecutionOutput struct {
 14385  	_ struct{} `type:"structure"`
 14386  
 14387  	// The unique system-generated ID of the pipeline execution that was stopped.
 14388  	PipelineExecutionId *string `locationName:"pipelineExecutionId" type:"string"`
 14389  }
 14390  
 14391  // String returns the string representation.
 14392  //
 14393  // API parameter values that are decorated as "sensitive" in the API will not
 14394  // be included in the string output. The member name will be present, but the
 14395  // value will be replaced with "sensitive".
 14396  func (s StopPipelineExecutionOutput) String() string {
 14397  	return awsutil.Prettify(s)
 14398  }
 14399  
 14400  // GoString returns the string representation.
 14401  //
 14402  // API parameter values that are decorated as "sensitive" in the API will not
 14403  // be included in the string output. The member name will be present, but the
 14404  // value will be replaced with "sensitive".
 14405  func (s StopPipelineExecutionOutput) GoString() string {
 14406  	return s.String()
 14407  }
 14408  
 14409  // SetPipelineExecutionId sets the PipelineExecutionId field's value.
 14410  func (s *StopPipelineExecutionOutput) SetPipelineExecutionId(v string) *StopPipelineExecutionOutput {
 14411  	s.PipelineExecutionId = &v
 14412  	return s
 14413  }
 14414  
 14415  // A tag is a key-value pair that is used to manage the resource.
 14416  type Tag struct {
 14417  	_ struct{} `type:"structure"`
 14418  
 14419  	// The tag's key.
 14420  	//
 14421  	// Key is a required field
 14422  	Key *string `locationName:"key" min:"1" type:"string" required:"true"`
 14423  
 14424  	// The tag's value.
 14425  	//
 14426  	// Value is a required field
 14427  	Value *string `locationName:"value" type:"string" required:"true"`
 14428  }
 14429  
 14430  // String returns the string representation.
 14431  //
 14432  // API parameter values that are decorated as "sensitive" in the API will not
 14433  // be included in the string output. The member name will be present, but the
 14434  // value will be replaced with "sensitive".
 14435  func (s Tag) String() string {
 14436  	return awsutil.Prettify(s)
 14437  }
 14438  
 14439  // GoString returns the string representation.
 14440  //
 14441  // API parameter values that are decorated as "sensitive" in the API will not
 14442  // be included in the string output. The member name will be present, but the
 14443  // value will be replaced with "sensitive".
 14444  func (s Tag) GoString() string {
 14445  	return s.String()
 14446  }
 14447  
 14448  // Validate inspects the fields of the type to determine if they are valid.
 14449  func (s *Tag) Validate() error {
 14450  	invalidParams := request.ErrInvalidParams{Context: "Tag"}
 14451  	if s.Key == nil {
 14452  		invalidParams.Add(request.NewErrParamRequired("Key"))
 14453  	}
 14454  	if s.Key != nil && len(*s.Key) < 1 {
 14455  		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
 14456  	}
 14457  	if s.Value == nil {
 14458  		invalidParams.Add(request.NewErrParamRequired("Value"))
 14459  	}
 14460  
 14461  	if invalidParams.Len() > 0 {
 14462  		return invalidParams
 14463  	}
 14464  	return nil
 14465  }
 14466  
 14467  // SetKey sets the Key field's value.
 14468  func (s *Tag) SetKey(v string) *Tag {
 14469  	s.Key = &v
 14470  	return s
 14471  }
 14472  
 14473  // SetValue sets the Value field's value.
 14474  func (s *Tag) SetValue(v string) *Tag {
 14475  	s.Value = &v
 14476  	return s
 14477  }
 14478  
 14479  type TagResourceInput struct {
 14480  	_ struct{} `type:"structure"`
 14481  
 14482  	// The Amazon Resource Name (ARN) of the resource you want to add tags to.
 14483  	//
 14484  	// ResourceArn is a required field
 14485  	ResourceArn *string `locationName:"resourceArn" type:"string" required:"true"`
 14486  
 14487  	// The tags you want to modify or add to the resource.
 14488  	//
 14489  	// Tags is a required field
 14490  	Tags []*Tag `locationName:"tags" type:"list" required:"true"`
 14491  }
 14492  
 14493  // String returns the string representation.
 14494  //
 14495  // API parameter values that are decorated as "sensitive" in the API will not
 14496  // be included in the string output. The member name will be present, but the
 14497  // value will be replaced with "sensitive".
 14498  func (s TagResourceInput) String() string {
 14499  	return awsutil.Prettify(s)
 14500  }
 14501  
 14502  // GoString returns the string representation.
 14503  //
 14504  // API parameter values that are decorated as "sensitive" in the API will not
 14505  // be included in the string output. The member name will be present, but the
 14506  // value will be replaced with "sensitive".
 14507  func (s TagResourceInput) GoString() string {
 14508  	return s.String()
 14509  }
 14510  
 14511  // Validate inspects the fields of the type to determine if they are valid.
 14512  func (s *TagResourceInput) Validate() error {
 14513  	invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"}
 14514  	if s.ResourceArn == nil {
 14515  		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
 14516  	}
 14517  	if s.Tags == nil {
 14518  		invalidParams.Add(request.NewErrParamRequired("Tags"))
 14519  	}
 14520  	if s.Tags != nil {
 14521  		for i, v := range s.Tags {
 14522  			if v == nil {
 14523  				continue
 14524  			}
 14525  			if err := v.Validate(); err != nil {
 14526  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
 14527  			}
 14528  		}
 14529  	}
 14530  
 14531  	if invalidParams.Len() > 0 {
 14532  		return invalidParams
 14533  	}
 14534  	return nil
 14535  }
 14536  
 14537  // SetResourceArn sets the ResourceArn field's value.
 14538  func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput {
 14539  	s.ResourceArn = &v
 14540  	return s
 14541  }
 14542  
 14543  // SetTags sets the Tags field's value.
 14544  func (s *TagResourceInput) SetTags(v []*Tag) *TagResourceInput {
 14545  	s.Tags = v
 14546  	return s
 14547  }
 14548  
 14549  type TagResourceOutput struct {
 14550  	_ struct{} `type:"structure"`
 14551  }
 14552  
 14553  // String returns the string representation.
 14554  //
 14555  // API parameter values that are decorated as "sensitive" in the API will not
 14556  // be included in the string output. The member name will be present, but the
 14557  // value will be replaced with "sensitive".
 14558  func (s TagResourceOutput) String() string {
 14559  	return awsutil.Prettify(s)
 14560  }
 14561  
 14562  // GoString returns the string representation.
 14563  //
 14564  // API parameter values that are decorated as "sensitive" in the API will not
 14565  // be included in the string output. The member name will be present, but the
 14566  // value will be replaced with "sensitive".
 14567  func (s TagResourceOutput) GoString() string {
 14568  	return s.String()
 14569  }
 14570  
 14571  // A response to a PollForThirdPartyJobs request returned by AWS CodePipeline
 14572  // when there is a job to be worked on by a partner action.
 14573  type ThirdPartyJob struct {
 14574  	_ struct{} `type:"structure"`
 14575  
 14576  	// The clientToken portion of the clientId and clientToken pair used to verify
 14577  	// that the calling entity is allowed access to the job and its details.
 14578  	ClientId *string `locationName:"clientId" type:"string"`
 14579  
 14580  	// The identifier used to identify the job in AWS CodePipeline.
 14581  	JobId *string `locationName:"jobId" type:"string"`
 14582  }
 14583  
 14584  // String returns the string representation.
 14585  //
 14586  // API parameter values that are decorated as "sensitive" in the API will not
 14587  // be included in the string output. The member name will be present, but the
 14588  // value will be replaced with "sensitive".
 14589  func (s ThirdPartyJob) String() string {
 14590  	return awsutil.Prettify(s)
 14591  }
 14592  
 14593  // GoString returns the string representation.
 14594  //
 14595  // API parameter values that are decorated as "sensitive" in the API will not
 14596  // be included in the string output. The member name will be present, but the
 14597  // value will be replaced with "sensitive".
 14598  func (s ThirdPartyJob) GoString() string {
 14599  	return s.String()
 14600  }
 14601  
 14602  // SetClientId sets the ClientId field's value.
 14603  func (s *ThirdPartyJob) SetClientId(v string) *ThirdPartyJob {
 14604  	s.ClientId = &v
 14605  	return s
 14606  }
 14607  
 14608  // SetJobId sets the JobId field's value.
 14609  func (s *ThirdPartyJob) SetJobId(v string) *ThirdPartyJob {
 14610  	s.JobId = &v
 14611  	return s
 14612  }
 14613  
 14614  // Represents information about the job data for a partner action.
 14615  type ThirdPartyJobData struct {
 14616  	_ struct{} `type:"structure"`
 14617  
 14618  	// Represents information about an action configuration.
 14619  	ActionConfiguration *ActionConfiguration `locationName:"actionConfiguration" type:"structure"`
 14620  
 14621  	// Represents information about an action type.
 14622  	ActionTypeId *ActionTypeId `locationName:"actionTypeId" type:"structure"`
 14623  
 14624  	// Represents an AWS session credentials object. These credentials are temporary
 14625  	// credentials that are issued by AWS Secure Token Service (STS). They can be
 14626  	// used to access input and output artifacts in the S3 bucket used to store
 14627  	// artifact for the pipeline in AWS CodePipeline.
 14628  	//
 14629  	// ArtifactCredentials is a sensitive parameter and its value will be
 14630  	// replaced with "sensitive" in string returned by ThirdPartyJobData's
 14631  	// String and GoString methods.
 14632  	ArtifactCredentials *AWSSessionCredentials `locationName:"artifactCredentials" type:"structure" sensitive:"true"`
 14633  
 14634  	// A system-generated token, such as a AWS CodeDeploy deployment ID, that a
 14635  	// job requires to continue the job asynchronously.
 14636  	ContinuationToken *string `locationName:"continuationToken" min:"1" type:"string"`
 14637  
 14638  	// The encryption key used to encrypt and decrypt data in the artifact store
 14639  	// for the pipeline, such as an AWS Key Management Service (AWS KMS) key. This
 14640  	// is optional and might not be present.
 14641  	EncryptionKey *EncryptionKey `locationName:"encryptionKey" type:"structure"`
 14642  
 14643  	// The name of the artifact that is worked on by the action, if any. This name
 14644  	// might be system-generated, such as "MyApp", or it might be defined by the
 14645  	// user when the action is created. The input artifact name must match the name
 14646  	// of an output artifact generated by an action in an earlier action or stage
 14647  	// of the pipeline.
 14648  	InputArtifacts []*Artifact `locationName:"inputArtifacts" type:"list"`
 14649  
 14650  	// The name of the artifact that is the result of the action, if any. This name
 14651  	// might be system-generated, such as "MyBuiltApp", or it might be defined by
 14652  	// the user when the action is created.
 14653  	OutputArtifacts []*Artifact `locationName:"outputArtifacts" type:"list"`
 14654  
 14655  	// Represents information about a pipeline to a job worker.
 14656  	//
 14657  	// Does not include pipelineArn and pipelineExecutionId for ThirdParty jobs.
 14658  	PipelineContext *PipelineContext `locationName:"pipelineContext" type:"structure"`
 14659  }
 14660  
 14661  // String returns the string representation.
 14662  //
 14663  // API parameter values that are decorated as "sensitive" in the API will not
 14664  // be included in the string output. The member name will be present, but the
 14665  // value will be replaced with "sensitive".
 14666  func (s ThirdPartyJobData) String() string {
 14667  	return awsutil.Prettify(s)
 14668  }
 14669  
 14670  // GoString returns the string representation.
 14671  //
 14672  // API parameter values that are decorated as "sensitive" in the API will not
 14673  // be included in the string output. The member name will be present, but the
 14674  // value will be replaced with "sensitive".
 14675  func (s ThirdPartyJobData) GoString() string {
 14676  	return s.String()
 14677  }
 14678  
 14679  // SetActionConfiguration sets the ActionConfiguration field's value.
 14680  func (s *ThirdPartyJobData) SetActionConfiguration(v *ActionConfiguration) *ThirdPartyJobData {
 14681  	s.ActionConfiguration = v
 14682  	return s
 14683  }
 14684  
 14685  // SetActionTypeId sets the ActionTypeId field's value.
 14686  func (s *ThirdPartyJobData) SetActionTypeId(v *ActionTypeId) *ThirdPartyJobData {
 14687  	s.ActionTypeId = v
 14688  	return s
 14689  }
 14690  
 14691  // SetArtifactCredentials sets the ArtifactCredentials field's value.
 14692  func (s *ThirdPartyJobData) SetArtifactCredentials(v *AWSSessionCredentials) *ThirdPartyJobData {
 14693  	s.ArtifactCredentials = v
 14694  	return s
 14695  }
 14696  
 14697  // SetContinuationToken sets the ContinuationToken field's value.
 14698  func (s *ThirdPartyJobData) SetContinuationToken(v string) *ThirdPartyJobData {
 14699  	s.ContinuationToken = &v
 14700  	return s
 14701  }
 14702  
 14703  // SetEncryptionKey sets the EncryptionKey field's value.
 14704  func (s *ThirdPartyJobData) SetEncryptionKey(v *EncryptionKey) *ThirdPartyJobData {
 14705  	s.EncryptionKey = v
 14706  	return s
 14707  }
 14708  
 14709  // SetInputArtifacts sets the InputArtifacts field's value.
 14710  func (s *ThirdPartyJobData) SetInputArtifacts(v []*Artifact) *ThirdPartyJobData {
 14711  	s.InputArtifacts = v
 14712  	return s
 14713  }
 14714  
 14715  // SetOutputArtifacts sets the OutputArtifacts field's value.
 14716  func (s *ThirdPartyJobData) SetOutputArtifacts(v []*Artifact) *ThirdPartyJobData {
 14717  	s.OutputArtifacts = v
 14718  	return s
 14719  }
 14720  
 14721  // SetPipelineContext sets the PipelineContext field's value.
 14722  func (s *ThirdPartyJobData) SetPipelineContext(v *PipelineContext) *ThirdPartyJobData {
 14723  	s.PipelineContext = v
 14724  	return s
 14725  }
 14726  
 14727  // The details of a job sent in response to a GetThirdPartyJobDetails request.
 14728  type ThirdPartyJobDetails struct {
 14729  	_ struct{} `type:"structure"`
 14730  
 14731  	// The data to be returned by the third party job worker.
 14732  	Data *ThirdPartyJobData `locationName:"data" type:"structure"`
 14733  
 14734  	// The identifier used to identify the job details in AWS CodePipeline.
 14735  	Id *string `locationName:"id" min:"1" type:"string"`
 14736  
 14737  	// A system-generated random number that AWS CodePipeline uses to ensure that
 14738  	// the job is being worked on by only one job worker. Use this number in an
 14739  	// AcknowledgeThirdPartyJob request.
 14740  	Nonce *string `locationName:"nonce" min:"1" type:"string"`
 14741  }
 14742  
 14743  // String returns the string representation.
 14744  //
 14745  // API parameter values that are decorated as "sensitive" in the API will not
 14746  // be included in the string output. The member name will be present, but the
 14747  // value will be replaced with "sensitive".
 14748  func (s ThirdPartyJobDetails) String() string {
 14749  	return awsutil.Prettify(s)
 14750  }
 14751  
 14752  // GoString returns the string representation.
 14753  //
 14754  // API parameter values that are decorated as "sensitive" in the API will not
 14755  // be included in the string output. The member name will be present, but the
 14756  // value will be replaced with "sensitive".
 14757  func (s ThirdPartyJobDetails) GoString() string {
 14758  	return s.String()
 14759  }
 14760  
 14761  // SetData sets the Data field's value.
 14762  func (s *ThirdPartyJobDetails) SetData(v *ThirdPartyJobData) *ThirdPartyJobDetails {
 14763  	s.Data = v
 14764  	return s
 14765  }
 14766  
 14767  // SetId sets the Id field's value.
 14768  func (s *ThirdPartyJobDetails) SetId(v string) *ThirdPartyJobDetails {
 14769  	s.Id = &v
 14770  	return s
 14771  }
 14772  
 14773  // SetNonce sets the Nonce field's value.
 14774  func (s *ThirdPartyJobDetails) SetNonce(v string) *ThirdPartyJobDetails {
 14775  	s.Nonce = &v
 14776  	return s
 14777  }
 14778  
 14779  // The tags limit for a resource has been exceeded.
 14780  type TooManyTagsException struct {
 14781  	_            struct{}                  `type:"structure"`
 14782  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 14783  
 14784  	Message_ *string `locationName:"message" min:"1" type:"string"`
 14785  }
 14786  
 14787  // String returns the string representation.
 14788  //
 14789  // API parameter values that are decorated as "sensitive" in the API will not
 14790  // be included in the string output. The member name will be present, but the
 14791  // value will be replaced with "sensitive".
 14792  func (s TooManyTagsException) String() string {
 14793  	return awsutil.Prettify(s)
 14794  }
 14795  
 14796  // GoString returns the string representation.
 14797  //
 14798  // API parameter values that are decorated as "sensitive" in the API will not
 14799  // be included in the string output. The member name will be present, but the
 14800  // value will be replaced with "sensitive".
 14801  func (s TooManyTagsException) GoString() string {
 14802  	return s.String()
 14803  }
 14804  
 14805  func newErrorTooManyTagsException(v protocol.ResponseMetadata) error {
 14806  	return &TooManyTagsException{
 14807  		RespMetadata: v,
 14808  	}
 14809  }
 14810  
 14811  // Code returns the exception type name.
 14812  func (s *TooManyTagsException) Code() string {
 14813  	return "TooManyTagsException"
 14814  }
 14815  
 14816  // Message returns the exception's message.
 14817  func (s *TooManyTagsException) Message() string {
 14818  	if s.Message_ != nil {
 14819  		return *s.Message_
 14820  	}
 14821  	return ""
 14822  }
 14823  
 14824  // OrigErr always returns nil, satisfies awserr.Error interface.
 14825  func (s *TooManyTagsException) OrigErr() error {
 14826  	return nil
 14827  }
 14828  
 14829  func (s *TooManyTagsException) Error() string {
 14830  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 14831  }
 14832  
 14833  // Status code returns the HTTP status code for the request's response error.
 14834  func (s *TooManyTagsException) StatusCode() int {
 14835  	return s.RespMetadata.StatusCode
 14836  }
 14837  
 14838  // RequestID returns the service's response RequestID for request.
 14839  func (s *TooManyTagsException) RequestID() string {
 14840  	return s.RespMetadata.RequestID
 14841  }
 14842  
 14843  // Represents information about the state of transitions between one stage and
 14844  // another stage.
 14845  type TransitionState struct {
 14846  	_ struct{} `type:"structure"`
 14847  
 14848  	// The user-specified reason why the transition between two stages of a pipeline
 14849  	// was disabled.
 14850  	DisabledReason *string `locationName:"disabledReason" min:"1" type:"string"`
 14851  
 14852  	// Whether the transition between stages is enabled (true) or disabled (false).
 14853  	Enabled *bool `locationName:"enabled" type:"boolean"`
 14854  
 14855  	// The timestamp when the transition state was last changed.
 14856  	LastChangedAt *time.Time `locationName:"lastChangedAt" type:"timestamp"`
 14857  
 14858  	// The ID of the user who last changed the transition state.
 14859  	LastChangedBy *string `locationName:"lastChangedBy" type:"string"`
 14860  }
 14861  
 14862  // String returns the string representation.
 14863  //
 14864  // API parameter values that are decorated as "sensitive" in the API will not
 14865  // be included in the string output. The member name will be present, but the
 14866  // value will be replaced with "sensitive".
 14867  func (s TransitionState) String() string {
 14868  	return awsutil.Prettify(s)
 14869  }
 14870  
 14871  // GoString returns the string representation.
 14872  //
 14873  // API parameter values that are decorated as "sensitive" in the API will not
 14874  // be included in the string output. The member name will be present, but the
 14875  // value will be replaced with "sensitive".
 14876  func (s TransitionState) GoString() string {
 14877  	return s.String()
 14878  }
 14879  
 14880  // SetDisabledReason sets the DisabledReason field's value.
 14881  func (s *TransitionState) SetDisabledReason(v string) *TransitionState {
 14882  	s.DisabledReason = &v
 14883  	return s
 14884  }
 14885  
 14886  // SetEnabled sets the Enabled field's value.
 14887  func (s *TransitionState) SetEnabled(v bool) *TransitionState {
 14888  	s.Enabled = &v
 14889  	return s
 14890  }
 14891  
 14892  // SetLastChangedAt sets the LastChangedAt field's value.
 14893  func (s *TransitionState) SetLastChangedAt(v time.Time) *TransitionState {
 14894  	s.LastChangedAt = &v
 14895  	return s
 14896  }
 14897  
 14898  // SetLastChangedBy sets the LastChangedBy field's value.
 14899  func (s *TransitionState) SetLastChangedBy(v string) *TransitionState {
 14900  	s.LastChangedBy = &v
 14901  	return s
 14902  }
 14903  
 14904  type UntagResourceInput struct {
 14905  	_ struct{} `type:"structure"`
 14906  
 14907  	// The Amazon Resource Name (ARN) of the resource to remove tags from.
 14908  	//
 14909  	// ResourceArn is a required field
 14910  	ResourceArn *string `locationName:"resourceArn" type:"string" required:"true"`
 14911  
 14912  	// The list of keys for the tags to be removed from the resource.
 14913  	//
 14914  	// TagKeys is a required field
 14915  	TagKeys []*string `locationName:"tagKeys" type:"list" required:"true"`
 14916  }
 14917  
 14918  // String returns the string representation.
 14919  //
 14920  // API parameter values that are decorated as "sensitive" in the API will not
 14921  // be included in the string output. The member name will be present, but the
 14922  // value will be replaced with "sensitive".
 14923  func (s UntagResourceInput) String() string {
 14924  	return awsutil.Prettify(s)
 14925  }
 14926  
 14927  // GoString returns the string representation.
 14928  //
 14929  // API parameter values that are decorated as "sensitive" in the API will not
 14930  // be included in the string output. The member name will be present, but the
 14931  // value will be replaced with "sensitive".
 14932  func (s UntagResourceInput) GoString() string {
 14933  	return s.String()
 14934  }
 14935  
 14936  // Validate inspects the fields of the type to determine if they are valid.
 14937  func (s *UntagResourceInput) Validate() error {
 14938  	invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"}
 14939  	if s.ResourceArn == nil {
 14940  		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
 14941  	}
 14942  	if s.TagKeys == nil {
 14943  		invalidParams.Add(request.NewErrParamRequired("TagKeys"))
 14944  	}
 14945  
 14946  	if invalidParams.Len() > 0 {
 14947  		return invalidParams
 14948  	}
 14949  	return nil
 14950  }
 14951  
 14952  // SetResourceArn sets the ResourceArn field's value.
 14953  func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput {
 14954  	s.ResourceArn = &v
 14955  	return s
 14956  }
 14957  
 14958  // SetTagKeys sets the TagKeys field's value.
 14959  func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput {
 14960  	s.TagKeys = v
 14961  	return s
 14962  }
 14963  
 14964  type UntagResourceOutput struct {
 14965  	_ struct{} `type:"structure"`
 14966  }
 14967  
 14968  // String returns the string representation.
 14969  //
 14970  // API parameter values that are decorated as "sensitive" in the API will not
 14971  // be included in the string output. The member name will be present, but the
 14972  // value will be replaced with "sensitive".
 14973  func (s UntagResourceOutput) String() string {
 14974  	return awsutil.Prettify(s)
 14975  }
 14976  
 14977  // GoString returns the string representation.
 14978  //
 14979  // API parameter values that are decorated as "sensitive" in the API will not
 14980  // be included in the string output. The member name will be present, but the
 14981  // value will be replaced with "sensitive".
 14982  func (s UntagResourceOutput) GoString() string {
 14983  	return s.String()
 14984  }
 14985  
 14986  type UpdateActionTypeInput struct {
 14987  	_ struct{} `type:"structure"`
 14988  
 14989  	// The action type definition for the action type to be updated.
 14990  	//
 14991  	// ActionType is a required field
 14992  	ActionType *ActionTypeDeclaration `locationName:"actionType" type:"structure" required:"true"`
 14993  }
 14994  
 14995  // String returns the string representation.
 14996  //
 14997  // API parameter values that are decorated as "sensitive" in the API will not
 14998  // be included in the string output. The member name will be present, but the
 14999  // value will be replaced with "sensitive".
 15000  func (s UpdateActionTypeInput) String() string {
 15001  	return awsutil.Prettify(s)
 15002  }
 15003  
 15004  // GoString returns the string representation.
 15005  //
 15006  // API parameter values that are decorated as "sensitive" in the API will not
 15007  // be included in the string output. The member name will be present, but the
 15008  // value will be replaced with "sensitive".
 15009  func (s UpdateActionTypeInput) GoString() string {
 15010  	return s.String()
 15011  }
 15012  
 15013  // Validate inspects the fields of the type to determine if they are valid.
 15014  func (s *UpdateActionTypeInput) Validate() error {
 15015  	invalidParams := request.ErrInvalidParams{Context: "UpdateActionTypeInput"}
 15016  	if s.ActionType == nil {
 15017  		invalidParams.Add(request.NewErrParamRequired("ActionType"))
 15018  	}
 15019  	if s.ActionType != nil {
 15020  		if err := s.ActionType.Validate(); err != nil {
 15021  			invalidParams.AddNested("ActionType", err.(request.ErrInvalidParams))
 15022  		}
 15023  	}
 15024  
 15025  	if invalidParams.Len() > 0 {
 15026  		return invalidParams
 15027  	}
 15028  	return nil
 15029  }
 15030  
 15031  // SetActionType sets the ActionType field's value.
 15032  func (s *UpdateActionTypeInput) SetActionType(v *ActionTypeDeclaration) *UpdateActionTypeInput {
 15033  	s.ActionType = v
 15034  	return s
 15035  }
 15036  
 15037  type UpdateActionTypeOutput struct {
 15038  	_ struct{} `type:"structure"`
 15039  }
 15040  
 15041  // String returns the string representation.
 15042  //
 15043  // API parameter values that are decorated as "sensitive" in the API will not
 15044  // be included in the string output. The member name will be present, but the
 15045  // value will be replaced with "sensitive".
 15046  func (s UpdateActionTypeOutput) String() string {
 15047  	return awsutil.Prettify(s)
 15048  }
 15049  
 15050  // GoString returns the string representation.
 15051  //
 15052  // API parameter values that are decorated as "sensitive" in the API will not
 15053  // be included in the string output. The member name will be present, but the
 15054  // value will be replaced with "sensitive".
 15055  func (s UpdateActionTypeOutput) GoString() string {
 15056  	return s.String()
 15057  }
 15058  
 15059  // Represents the input of an UpdatePipeline action.
 15060  type UpdatePipelineInput struct {
 15061  	_ struct{} `type:"structure"`
 15062  
 15063  	// The name of the pipeline to be updated.
 15064  	//
 15065  	// Pipeline is a required field
 15066  	Pipeline *PipelineDeclaration `locationName:"pipeline" type:"structure" required:"true"`
 15067  }
 15068  
 15069  // String returns the string representation.
 15070  //
 15071  // API parameter values that are decorated as "sensitive" in the API will not
 15072  // be included in the string output. The member name will be present, but the
 15073  // value will be replaced with "sensitive".
 15074  func (s UpdatePipelineInput) String() string {
 15075  	return awsutil.Prettify(s)
 15076  }
 15077  
 15078  // GoString returns the string representation.
 15079  //
 15080  // API parameter values that are decorated as "sensitive" in the API will not
 15081  // be included in the string output. The member name will be present, but the
 15082  // value will be replaced with "sensitive".
 15083  func (s UpdatePipelineInput) GoString() string {
 15084  	return s.String()
 15085  }
 15086  
 15087  // Validate inspects the fields of the type to determine if they are valid.
 15088  func (s *UpdatePipelineInput) Validate() error {
 15089  	invalidParams := request.ErrInvalidParams{Context: "UpdatePipelineInput"}
 15090  	if s.Pipeline == nil {
 15091  		invalidParams.Add(request.NewErrParamRequired("Pipeline"))
 15092  	}
 15093  	if s.Pipeline != nil {
 15094  		if err := s.Pipeline.Validate(); err != nil {
 15095  			invalidParams.AddNested("Pipeline", err.(request.ErrInvalidParams))
 15096  		}
 15097  	}
 15098  
 15099  	if invalidParams.Len() > 0 {
 15100  		return invalidParams
 15101  	}
 15102  	return nil
 15103  }
 15104  
 15105  // SetPipeline sets the Pipeline field's value.
 15106  func (s *UpdatePipelineInput) SetPipeline(v *PipelineDeclaration) *UpdatePipelineInput {
 15107  	s.Pipeline = v
 15108  	return s
 15109  }
 15110  
 15111  // Represents the output of an UpdatePipeline action.
 15112  type UpdatePipelineOutput struct {
 15113  	_ struct{} `type:"structure"`
 15114  
 15115  	// The structure of the updated pipeline.
 15116  	Pipeline *PipelineDeclaration `locationName:"pipeline" type:"structure"`
 15117  }
 15118  
 15119  // String returns the string representation.
 15120  //
 15121  // API parameter values that are decorated as "sensitive" in the API will not
 15122  // be included in the string output. The member name will be present, but the
 15123  // value will be replaced with "sensitive".
 15124  func (s UpdatePipelineOutput) String() string {
 15125  	return awsutil.Prettify(s)
 15126  }
 15127  
 15128  // GoString returns the string representation.
 15129  //
 15130  // API parameter values that are decorated as "sensitive" in the API will not
 15131  // be included in the string output. The member name will be present, but the
 15132  // value will be replaced with "sensitive".
 15133  func (s UpdatePipelineOutput) GoString() string {
 15134  	return s.String()
 15135  }
 15136  
 15137  // SetPipeline sets the Pipeline field's value.
 15138  func (s *UpdatePipelineOutput) SetPipeline(v *PipelineDeclaration) *UpdatePipelineOutput {
 15139  	s.Pipeline = v
 15140  	return s
 15141  }
 15142  
 15143  // The validation was specified in an invalid format.
 15144  type ValidationException struct {
 15145  	_            struct{}                  `type:"structure"`
 15146  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 15147  
 15148  	Message_ *string `locationName:"message" type:"string"`
 15149  }
 15150  
 15151  // String returns the string representation.
 15152  //
 15153  // API parameter values that are decorated as "sensitive" in the API will not
 15154  // be included in the string output. The member name will be present, but the
 15155  // value will be replaced with "sensitive".
 15156  func (s ValidationException) String() string {
 15157  	return awsutil.Prettify(s)
 15158  }
 15159  
 15160  // GoString returns the string representation.
 15161  //
 15162  // API parameter values that are decorated as "sensitive" in the API will not
 15163  // be included in the string output. The member name will be present, but the
 15164  // value will be replaced with "sensitive".
 15165  func (s ValidationException) GoString() string {
 15166  	return s.String()
 15167  }
 15168  
 15169  func newErrorValidationException(v protocol.ResponseMetadata) error {
 15170  	return &ValidationException{
 15171  		RespMetadata: v,
 15172  	}
 15173  }
 15174  
 15175  // Code returns the exception type name.
 15176  func (s *ValidationException) Code() string {
 15177  	return "ValidationException"
 15178  }
 15179  
 15180  // Message returns the exception's message.
 15181  func (s *ValidationException) Message() string {
 15182  	if s.Message_ != nil {
 15183  		return *s.Message_
 15184  	}
 15185  	return ""
 15186  }
 15187  
 15188  // OrigErr always returns nil, satisfies awserr.Error interface.
 15189  func (s *ValidationException) OrigErr() error {
 15190  	return nil
 15191  }
 15192  
 15193  func (s *ValidationException) Error() string {
 15194  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 15195  }
 15196  
 15197  // Status code returns the HTTP status code for the request's response error.
 15198  func (s *ValidationException) StatusCode() int {
 15199  	return s.RespMetadata.StatusCode
 15200  }
 15201  
 15202  // RequestID returns the service's response RequestID for request.
 15203  func (s *ValidationException) RequestID() string {
 15204  	return s.RespMetadata.RequestID
 15205  }
 15206  
 15207  // The authentication applied to incoming webhook trigger requests.
 15208  type WebhookAuthConfiguration struct {
 15209  	_ struct{} `type:"structure"`
 15210  
 15211  	// The property used to configure acceptance of webhooks in an IP address range.
 15212  	// For IP, only the AllowedIPRange property must be set. This property must
 15213  	// be set to a valid CIDR range.
 15214  	AllowedIPRange *string `min:"1" type:"string"`
 15215  
 15216  	// The property used to configure GitHub authentication. For GITHUB_HMAC, only
 15217  	// the SecretToken property must be set.
 15218  	SecretToken *string `min:"1" type:"string"`
 15219  }
 15220  
 15221  // String returns the string representation.
 15222  //
 15223  // API parameter values that are decorated as "sensitive" in the API will not
 15224  // be included in the string output. The member name will be present, but the
 15225  // value will be replaced with "sensitive".
 15226  func (s WebhookAuthConfiguration) String() string {
 15227  	return awsutil.Prettify(s)
 15228  }
 15229  
 15230  // GoString returns the string representation.
 15231  //
 15232  // API parameter values that are decorated as "sensitive" in the API will not
 15233  // be included in the string output. The member name will be present, but the
 15234  // value will be replaced with "sensitive".
 15235  func (s WebhookAuthConfiguration) GoString() string {
 15236  	return s.String()
 15237  }
 15238  
 15239  // Validate inspects the fields of the type to determine if they are valid.
 15240  func (s *WebhookAuthConfiguration) Validate() error {
 15241  	invalidParams := request.ErrInvalidParams{Context: "WebhookAuthConfiguration"}
 15242  	if s.AllowedIPRange != nil && len(*s.AllowedIPRange) < 1 {
 15243  		invalidParams.Add(request.NewErrParamMinLen("AllowedIPRange", 1))
 15244  	}
 15245  	if s.SecretToken != nil && len(*s.SecretToken) < 1 {
 15246  		invalidParams.Add(request.NewErrParamMinLen("SecretToken", 1))
 15247  	}
 15248  
 15249  	if invalidParams.Len() > 0 {
 15250  		return invalidParams
 15251  	}
 15252  	return nil
 15253  }
 15254  
 15255  // SetAllowedIPRange sets the AllowedIPRange field's value.
 15256  func (s *WebhookAuthConfiguration) SetAllowedIPRange(v string) *WebhookAuthConfiguration {
 15257  	s.AllowedIPRange = &v
 15258  	return s
 15259  }
 15260  
 15261  // SetSecretToken sets the SecretToken field's value.
 15262  func (s *WebhookAuthConfiguration) SetSecretToken(v string) *WebhookAuthConfiguration {
 15263  	s.SecretToken = &v
 15264  	return s
 15265  }
 15266  
 15267  // Represents information about a webhook and its definition.
 15268  type WebhookDefinition struct {
 15269  	_ struct{} `type:"structure"`
 15270  
 15271  	// Supported options are GITHUB_HMAC, IP, and UNAUTHENTICATED.
 15272  	//
 15273  	//    * For information about the authentication scheme implemented by GITHUB_HMAC,
 15274  	//    see Securing your webhooks (https://developer.github.com/webhooks/securing/)
 15275  	//    on the GitHub Developer website.
 15276  	//
 15277  	//    * IP rejects webhooks trigger requests unless they originate from an IP
 15278  	//    address in the IP range whitelisted in the authentication configuration.
 15279  	//
 15280  	//    * UNAUTHENTICATED accepts all webhook trigger requests regardless of origin.
 15281  	//
 15282  	// Authentication is a required field
 15283  	Authentication *string `locationName:"authentication" type:"string" required:"true" enum:"WebhookAuthenticationType"`
 15284  
 15285  	// Properties that configure the authentication applied to incoming webhook
 15286  	// trigger requests. The required properties depend on the authentication type.
 15287  	// For GITHUB_HMAC, only the SecretToken property must be set. For IP, only
 15288  	// the AllowedIPRange property must be set to a valid CIDR range. For UNAUTHENTICATED,
 15289  	// no properties can be set.
 15290  	//
 15291  	// AuthenticationConfiguration is a required field
 15292  	AuthenticationConfiguration *WebhookAuthConfiguration `locationName:"authenticationConfiguration" type:"structure" required:"true"`
 15293  
 15294  	// A list of rules applied to the body/payload sent in the POST request to a
 15295  	// webhook URL. All defined rules must pass for the request to be accepted and
 15296  	// the pipeline started.
 15297  	//
 15298  	// Filters is a required field
 15299  	Filters []*WebhookFilterRule `locationName:"filters" type:"list" required:"true"`
 15300  
 15301  	// The name of the webhook.
 15302  	//
 15303  	// Name is a required field
 15304  	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
 15305  
 15306  	// The name of the action in a pipeline you want to connect to the webhook.
 15307  	// The action must be from the source (first) stage of the pipeline.
 15308  	//
 15309  	// TargetAction is a required field
 15310  	TargetAction *string `locationName:"targetAction" min:"1" type:"string" required:"true"`
 15311  
 15312  	// The name of the pipeline you want to connect to the webhook.
 15313  	//
 15314  	// TargetPipeline is a required field
 15315  	TargetPipeline *string `locationName:"targetPipeline" min:"1" type:"string" required:"true"`
 15316  }
 15317  
 15318  // String returns the string representation.
 15319  //
 15320  // API parameter values that are decorated as "sensitive" in the API will not
 15321  // be included in the string output. The member name will be present, but the
 15322  // value will be replaced with "sensitive".
 15323  func (s WebhookDefinition) String() string {
 15324  	return awsutil.Prettify(s)
 15325  }
 15326  
 15327  // GoString returns the string representation.
 15328  //
 15329  // API parameter values that are decorated as "sensitive" in the API will not
 15330  // be included in the string output. The member name will be present, but the
 15331  // value will be replaced with "sensitive".
 15332  func (s WebhookDefinition) GoString() string {
 15333  	return s.String()
 15334  }
 15335  
 15336  // Validate inspects the fields of the type to determine if they are valid.
 15337  func (s *WebhookDefinition) Validate() error {
 15338  	invalidParams := request.ErrInvalidParams{Context: "WebhookDefinition"}
 15339  	if s.Authentication == nil {
 15340  		invalidParams.Add(request.NewErrParamRequired("Authentication"))
 15341  	}
 15342  	if s.AuthenticationConfiguration == nil {
 15343  		invalidParams.Add(request.NewErrParamRequired("AuthenticationConfiguration"))
 15344  	}
 15345  	if s.Filters == nil {
 15346  		invalidParams.Add(request.NewErrParamRequired("Filters"))
 15347  	}
 15348  	if s.Name == nil {
 15349  		invalidParams.Add(request.NewErrParamRequired("Name"))
 15350  	}
 15351  	if s.Name != nil && len(*s.Name) < 1 {
 15352  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
 15353  	}
 15354  	if s.TargetAction == nil {
 15355  		invalidParams.Add(request.NewErrParamRequired("TargetAction"))
 15356  	}
 15357  	if s.TargetAction != nil && len(*s.TargetAction) < 1 {
 15358  		invalidParams.Add(request.NewErrParamMinLen("TargetAction", 1))
 15359  	}
 15360  	if s.TargetPipeline == nil {
 15361  		invalidParams.Add(request.NewErrParamRequired("TargetPipeline"))
 15362  	}
 15363  	if s.TargetPipeline != nil && len(*s.TargetPipeline) < 1 {
 15364  		invalidParams.Add(request.NewErrParamMinLen("TargetPipeline", 1))
 15365  	}
 15366  	if s.AuthenticationConfiguration != nil {
 15367  		if err := s.AuthenticationConfiguration.Validate(); err != nil {
 15368  			invalidParams.AddNested("AuthenticationConfiguration", err.(request.ErrInvalidParams))
 15369  		}
 15370  	}
 15371  	if s.Filters != nil {
 15372  		for i, v := range s.Filters {
 15373  			if v == nil {
 15374  				continue
 15375  			}
 15376  			if err := v.Validate(); err != nil {
 15377  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
 15378  			}
 15379  		}
 15380  	}
 15381  
 15382  	if invalidParams.Len() > 0 {
 15383  		return invalidParams
 15384  	}
 15385  	return nil
 15386  }
 15387  
 15388  // SetAuthentication sets the Authentication field's value.
 15389  func (s *WebhookDefinition) SetAuthentication(v string) *WebhookDefinition {
 15390  	s.Authentication = &v
 15391  	return s
 15392  }
 15393  
 15394  // SetAuthenticationConfiguration sets the AuthenticationConfiguration field's value.
 15395  func (s *WebhookDefinition) SetAuthenticationConfiguration(v *WebhookAuthConfiguration) *WebhookDefinition {
 15396  	s.AuthenticationConfiguration = v
 15397  	return s
 15398  }
 15399  
 15400  // SetFilters sets the Filters field's value.
 15401  func (s *WebhookDefinition) SetFilters(v []*WebhookFilterRule) *WebhookDefinition {
 15402  	s.Filters = v
 15403  	return s
 15404  }
 15405  
 15406  // SetName sets the Name field's value.
 15407  func (s *WebhookDefinition) SetName(v string) *WebhookDefinition {
 15408  	s.Name = &v
 15409  	return s
 15410  }
 15411  
 15412  // SetTargetAction sets the TargetAction field's value.
 15413  func (s *WebhookDefinition) SetTargetAction(v string) *WebhookDefinition {
 15414  	s.TargetAction = &v
 15415  	return s
 15416  }
 15417  
 15418  // SetTargetPipeline sets the TargetPipeline field's value.
 15419  func (s *WebhookDefinition) SetTargetPipeline(v string) *WebhookDefinition {
 15420  	s.TargetPipeline = &v
 15421  	return s
 15422  }
 15423  
 15424  // The event criteria that specify when a webhook notification is sent to your
 15425  // URL.
 15426  type WebhookFilterRule struct {
 15427  	_ struct{} `type:"structure"`
 15428  
 15429  	// A JsonPath expression that is applied to the body/payload of the webhook.
 15430  	// The value selected by the JsonPath expression must match the value specified
 15431  	// in the MatchEquals field. Otherwise, the request is ignored. For more information,
 15432  	// see Java JsonPath implementation (https://github.com/json-path/JsonPath)
 15433  	// in GitHub.
 15434  	//
 15435  	// JsonPath is a required field
 15436  	JsonPath *string `locationName:"jsonPath" min:"1" type:"string" required:"true"`
 15437  
 15438  	// The value selected by the JsonPath expression must match what is supplied
 15439  	// in the MatchEquals field. Otherwise, the request is ignored. Properties from
 15440  	// the target action configuration can be included as placeholders in this value
 15441  	// by surrounding the action configuration key with curly brackets. For example,
 15442  	// if the value supplied here is "refs/heads/{Branch}" and the target action
 15443  	// has an action configuration property called "Branch" with a value of "master",
 15444  	// the MatchEquals value is evaluated as "refs/heads/master". For a list of
 15445  	// action configuration properties for built-in action types, see Pipeline Structure
 15446  	// Reference Action Requirements (https://docs.aws.amazon.com/codepipeline/latest/userguide/reference-pipeline-structure.html#action-requirements).
 15447  	MatchEquals *string `locationName:"matchEquals" min:"1" type:"string"`
 15448  }
 15449  
 15450  // String returns the string representation.
 15451  //
 15452  // API parameter values that are decorated as "sensitive" in the API will not
 15453  // be included in the string output. The member name will be present, but the
 15454  // value will be replaced with "sensitive".
 15455  func (s WebhookFilterRule) String() string {
 15456  	return awsutil.Prettify(s)
 15457  }
 15458  
 15459  // GoString returns the string representation.
 15460  //
 15461  // API parameter values that are decorated as "sensitive" in the API will not
 15462  // be included in the string output. The member name will be present, but the
 15463  // value will be replaced with "sensitive".
 15464  func (s WebhookFilterRule) GoString() string {
 15465  	return s.String()
 15466  }
 15467  
 15468  // Validate inspects the fields of the type to determine if they are valid.
 15469  func (s *WebhookFilterRule) Validate() error {
 15470  	invalidParams := request.ErrInvalidParams{Context: "WebhookFilterRule"}
 15471  	if s.JsonPath == nil {
 15472  		invalidParams.Add(request.NewErrParamRequired("JsonPath"))
 15473  	}
 15474  	if s.JsonPath != nil && len(*s.JsonPath) < 1 {
 15475  		invalidParams.Add(request.NewErrParamMinLen("JsonPath", 1))
 15476  	}
 15477  	if s.MatchEquals != nil && len(*s.MatchEquals) < 1 {
 15478  		invalidParams.Add(request.NewErrParamMinLen("MatchEquals", 1))
 15479  	}
 15480  
 15481  	if invalidParams.Len() > 0 {
 15482  		return invalidParams
 15483  	}
 15484  	return nil
 15485  }
 15486  
 15487  // SetJsonPath sets the JsonPath field's value.
 15488  func (s *WebhookFilterRule) SetJsonPath(v string) *WebhookFilterRule {
 15489  	s.JsonPath = &v
 15490  	return s
 15491  }
 15492  
 15493  // SetMatchEquals sets the MatchEquals field's value.
 15494  func (s *WebhookFilterRule) SetMatchEquals(v string) *WebhookFilterRule {
 15495  	s.MatchEquals = &v
 15496  	return s
 15497  }
 15498  
 15499  // The specified webhook was entered in an invalid format or cannot be found.
 15500  type WebhookNotFoundException struct {
 15501  	_            struct{}                  `type:"structure"`
 15502  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 15503  
 15504  	Message_ *string `locationName:"message" type:"string"`
 15505  }
 15506  
 15507  // String returns the string representation.
 15508  //
 15509  // API parameter values that are decorated as "sensitive" in the API will not
 15510  // be included in the string output. The member name will be present, but the
 15511  // value will be replaced with "sensitive".
 15512  func (s WebhookNotFoundException) String() string {
 15513  	return awsutil.Prettify(s)
 15514  }
 15515  
 15516  // GoString returns the string representation.
 15517  //
 15518  // API parameter values that are decorated as "sensitive" in the API will not
 15519  // be included in the string output. The member name will be present, but the
 15520  // value will be replaced with "sensitive".
 15521  func (s WebhookNotFoundException) GoString() string {
 15522  	return s.String()
 15523  }
 15524  
 15525  func newErrorWebhookNotFoundException(v protocol.ResponseMetadata) error {
 15526  	return &WebhookNotFoundException{
 15527  		RespMetadata: v,
 15528  	}
 15529  }
 15530  
 15531  // Code returns the exception type name.
 15532  func (s *WebhookNotFoundException) Code() string {
 15533  	return "WebhookNotFoundException"
 15534  }
 15535  
 15536  // Message returns the exception's message.
 15537  func (s *WebhookNotFoundException) Message() string {
 15538  	if s.Message_ != nil {
 15539  		return *s.Message_
 15540  	}
 15541  	return ""
 15542  }
 15543  
 15544  // OrigErr always returns nil, satisfies awserr.Error interface.
 15545  func (s *WebhookNotFoundException) OrigErr() error {
 15546  	return nil
 15547  }
 15548  
 15549  func (s *WebhookNotFoundException) Error() string {
 15550  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 15551  }
 15552  
 15553  // Status code returns the HTTP status code for the request's response error.
 15554  func (s *WebhookNotFoundException) StatusCode() int {
 15555  	return s.RespMetadata.StatusCode
 15556  }
 15557  
 15558  // RequestID returns the service's response RequestID for request.
 15559  func (s *WebhookNotFoundException) RequestID() string {
 15560  	return s.RespMetadata.RequestID
 15561  }
 15562  
 15563  const (
 15564  	// ActionCategorySource is a ActionCategory enum value
 15565  	ActionCategorySource = "Source"
 15566  
 15567  	// ActionCategoryBuild is a ActionCategory enum value
 15568  	ActionCategoryBuild = "Build"
 15569  
 15570  	// ActionCategoryDeploy is a ActionCategory enum value
 15571  	ActionCategoryDeploy = "Deploy"
 15572  
 15573  	// ActionCategoryTest is a ActionCategory enum value
 15574  	ActionCategoryTest = "Test"
 15575  
 15576  	// ActionCategoryInvoke is a ActionCategory enum value
 15577  	ActionCategoryInvoke = "Invoke"
 15578  
 15579  	// ActionCategoryApproval is a ActionCategory enum value
 15580  	ActionCategoryApproval = "Approval"
 15581  )
 15582  
 15583  // ActionCategory_Values returns all elements of the ActionCategory enum
 15584  func ActionCategory_Values() []string {
 15585  	return []string{
 15586  		ActionCategorySource,
 15587  		ActionCategoryBuild,
 15588  		ActionCategoryDeploy,
 15589  		ActionCategoryTest,
 15590  		ActionCategoryInvoke,
 15591  		ActionCategoryApproval,
 15592  	}
 15593  }
 15594  
 15595  const (
 15596  	// ActionConfigurationPropertyTypeString is a ActionConfigurationPropertyType enum value
 15597  	ActionConfigurationPropertyTypeString = "String"
 15598  
 15599  	// ActionConfigurationPropertyTypeNumber is a ActionConfigurationPropertyType enum value
 15600  	ActionConfigurationPropertyTypeNumber = "Number"
 15601  
 15602  	// ActionConfigurationPropertyTypeBoolean is a ActionConfigurationPropertyType enum value
 15603  	ActionConfigurationPropertyTypeBoolean = "Boolean"
 15604  )
 15605  
 15606  // ActionConfigurationPropertyType_Values returns all elements of the ActionConfigurationPropertyType enum
 15607  func ActionConfigurationPropertyType_Values() []string {
 15608  	return []string{
 15609  		ActionConfigurationPropertyTypeString,
 15610  		ActionConfigurationPropertyTypeNumber,
 15611  		ActionConfigurationPropertyTypeBoolean,
 15612  	}
 15613  }
 15614  
 15615  const (
 15616  	// ActionExecutionStatusInProgress is a ActionExecutionStatus enum value
 15617  	ActionExecutionStatusInProgress = "InProgress"
 15618  
 15619  	// ActionExecutionStatusAbandoned is a ActionExecutionStatus enum value
 15620  	ActionExecutionStatusAbandoned = "Abandoned"
 15621  
 15622  	// ActionExecutionStatusSucceeded is a ActionExecutionStatus enum value
 15623  	ActionExecutionStatusSucceeded = "Succeeded"
 15624  
 15625  	// ActionExecutionStatusFailed is a ActionExecutionStatus enum value
 15626  	ActionExecutionStatusFailed = "Failed"
 15627  )
 15628  
 15629  // ActionExecutionStatus_Values returns all elements of the ActionExecutionStatus enum
 15630  func ActionExecutionStatus_Values() []string {
 15631  	return []string{
 15632  		ActionExecutionStatusInProgress,
 15633  		ActionExecutionStatusAbandoned,
 15634  		ActionExecutionStatusSucceeded,
 15635  		ActionExecutionStatusFailed,
 15636  	}
 15637  }
 15638  
 15639  const (
 15640  	// ActionOwnerAws is a ActionOwner enum value
 15641  	ActionOwnerAws = "AWS"
 15642  
 15643  	// ActionOwnerThirdParty is a ActionOwner enum value
 15644  	ActionOwnerThirdParty = "ThirdParty"
 15645  
 15646  	// ActionOwnerCustom is a ActionOwner enum value
 15647  	ActionOwnerCustom = "Custom"
 15648  )
 15649  
 15650  // ActionOwner_Values returns all elements of the ActionOwner enum
 15651  func ActionOwner_Values() []string {
 15652  	return []string{
 15653  		ActionOwnerAws,
 15654  		ActionOwnerThirdParty,
 15655  		ActionOwnerCustom,
 15656  	}
 15657  }
 15658  
 15659  const (
 15660  	// ApprovalStatusApproved is a ApprovalStatus enum value
 15661  	ApprovalStatusApproved = "Approved"
 15662  
 15663  	// ApprovalStatusRejected is a ApprovalStatus enum value
 15664  	ApprovalStatusRejected = "Rejected"
 15665  )
 15666  
 15667  // ApprovalStatus_Values returns all elements of the ApprovalStatus enum
 15668  func ApprovalStatus_Values() []string {
 15669  	return []string{
 15670  		ApprovalStatusApproved,
 15671  		ApprovalStatusRejected,
 15672  	}
 15673  }
 15674  
 15675  const (
 15676  	// ArtifactLocationTypeS3 is a ArtifactLocationType enum value
 15677  	ArtifactLocationTypeS3 = "S3"
 15678  )
 15679  
 15680  // ArtifactLocationType_Values returns all elements of the ArtifactLocationType enum
 15681  func ArtifactLocationType_Values() []string {
 15682  	return []string{
 15683  		ArtifactLocationTypeS3,
 15684  	}
 15685  }
 15686  
 15687  const (
 15688  	// ArtifactStoreTypeS3 is a ArtifactStoreType enum value
 15689  	ArtifactStoreTypeS3 = "S3"
 15690  )
 15691  
 15692  // ArtifactStoreType_Values returns all elements of the ArtifactStoreType enum
 15693  func ArtifactStoreType_Values() []string {
 15694  	return []string{
 15695  		ArtifactStoreTypeS3,
 15696  	}
 15697  }
 15698  
 15699  const (
 15700  	// BlockerTypeSchedule is a BlockerType enum value
 15701  	BlockerTypeSchedule = "Schedule"
 15702  )
 15703  
 15704  // BlockerType_Values returns all elements of the BlockerType enum
 15705  func BlockerType_Values() []string {
 15706  	return []string{
 15707  		BlockerTypeSchedule,
 15708  	}
 15709  }
 15710  
 15711  const (
 15712  	// EncryptionKeyTypeKms is a EncryptionKeyType enum value
 15713  	EncryptionKeyTypeKms = "KMS"
 15714  )
 15715  
 15716  // EncryptionKeyType_Values returns all elements of the EncryptionKeyType enum
 15717  func EncryptionKeyType_Values() []string {
 15718  	return []string{
 15719  		EncryptionKeyTypeKms,
 15720  	}
 15721  }
 15722  
 15723  const (
 15724  	// ExecutorTypeJobWorker is a ExecutorType enum value
 15725  	ExecutorTypeJobWorker = "JobWorker"
 15726  
 15727  	// ExecutorTypeLambda is a ExecutorType enum value
 15728  	ExecutorTypeLambda = "Lambda"
 15729  )
 15730  
 15731  // ExecutorType_Values returns all elements of the ExecutorType enum
 15732  func ExecutorType_Values() []string {
 15733  	return []string{
 15734  		ExecutorTypeJobWorker,
 15735  		ExecutorTypeLambda,
 15736  	}
 15737  }
 15738  
 15739  const (
 15740  	// FailureTypeJobFailed is a FailureType enum value
 15741  	FailureTypeJobFailed = "JobFailed"
 15742  
 15743  	// FailureTypeConfigurationError is a FailureType enum value
 15744  	FailureTypeConfigurationError = "ConfigurationError"
 15745  
 15746  	// FailureTypePermissionError is a FailureType enum value
 15747  	FailureTypePermissionError = "PermissionError"
 15748  
 15749  	// FailureTypeRevisionOutOfSync is a FailureType enum value
 15750  	FailureTypeRevisionOutOfSync = "RevisionOutOfSync"
 15751  
 15752  	// FailureTypeRevisionUnavailable is a FailureType enum value
 15753  	FailureTypeRevisionUnavailable = "RevisionUnavailable"
 15754  
 15755  	// FailureTypeSystemUnavailable is a FailureType enum value
 15756  	FailureTypeSystemUnavailable = "SystemUnavailable"
 15757  )
 15758  
 15759  // FailureType_Values returns all elements of the FailureType enum
 15760  func FailureType_Values() []string {
 15761  	return []string{
 15762  		FailureTypeJobFailed,
 15763  		FailureTypeConfigurationError,
 15764  		FailureTypePermissionError,
 15765  		FailureTypeRevisionOutOfSync,
 15766  		FailureTypeRevisionUnavailable,
 15767  		FailureTypeSystemUnavailable,
 15768  	}
 15769  }
 15770  
 15771  const (
 15772  	// JobStatusCreated is a JobStatus enum value
 15773  	JobStatusCreated = "Created"
 15774  
 15775  	// JobStatusQueued is a JobStatus enum value
 15776  	JobStatusQueued = "Queued"
 15777  
 15778  	// JobStatusDispatched is a JobStatus enum value
 15779  	JobStatusDispatched = "Dispatched"
 15780  
 15781  	// JobStatusInProgress is a JobStatus enum value
 15782  	JobStatusInProgress = "InProgress"
 15783  
 15784  	// JobStatusTimedOut is a JobStatus enum value
 15785  	JobStatusTimedOut = "TimedOut"
 15786  
 15787  	// JobStatusSucceeded is a JobStatus enum value
 15788  	JobStatusSucceeded = "Succeeded"
 15789  
 15790  	// JobStatusFailed is a JobStatus enum value
 15791  	JobStatusFailed = "Failed"
 15792  )
 15793  
 15794  // JobStatus_Values returns all elements of the JobStatus enum
 15795  func JobStatus_Values() []string {
 15796  	return []string{
 15797  		JobStatusCreated,
 15798  		JobStatusQueued,
 15799  		JobStatusDispatched,
 15800  		JobStatusInProgress,
 15801  		JobStatusTimedOut,
 15802  		JobStatusSucceeded,
 15803  		JobStatusFailed,
 15804  	}
 15805  }
 15806  
 15807  const (
 15808  	// PipelineExecutionStatusCancelled is a PipelineExecutionStatus enum value
 15809  	PipelineExecutionStatusCancelled = "Cancelled"
 15810  
 15811  	// PipelineExecutionStatusInProgress is a PipelineExecutionStatus enum value
 15812  	PipelineExecutionStatusInProgress = "InProgress"
 15813  
 15814  	// PipelineExecutionStatusStopped is a PipelineExecutionStatus enum value
 15815  	PipelineExecutionStatusStopped = "Stopped"
 15816  
 15817  	// PipelineExecutionStatusStopping is a PipelineExecutionStatus enum value
 15818  	PipelineExecutionStatusStopping = "Stopping"
 15819  
 15820  	// PipelineExecutionStatusSucceeded is a PipelineExecutionStatus enum value
 15821  	PipelineExecutionStatusSucceeded = "Succeeded"
 15822  
 15823  	// PipelineExecutionStatusSuperseded is a PipelineExecutionStatus enum value
 15824  	PipelineExecutionStatusSuperseded = "Superseded"
 15825  
 15826  	// PipelineExecutionStatusFailed is a PipelineExecutionStatus enum value
 15827  	PipelineExecutionStatusFailed = "Failed"
 15828  )
 15829  
 15830  // PipelineExecutionStatus_Values returns all elements of the PipelineExecutionStatus enum
 15831  func PipelineExecutionStatus_Values() []string {
 15832  	return []string{
 15833  		PipelineExecutionStatusCancelled,
 15834  		PipelineExecutionStatusInProgress,
 15835  		PipelineExecutionStatusStopped,
 15836  		PipelineExecutionStatusStopping,
 15837  		PipelineExecutionStatusSucceeded,
 15838  		PipelineExecutionStatusSuperseded,
 15839  		PipelineExecutionStatusFailed,
 15840  	}
 15841  }
 15842  
 15843  const (
 15844  	// StageExecutionStatusCancelled is a StageExecutionStatus enum value
 15845  	StageExecutionStatusCancelled = "Cancelled"
 15846  
 15847  	// StageExecutionStatusInProgress is a StageExecutionStatus enum value
 15848  	StageExecutionStatusInProgress = "InProgress"
 15849  
 15850  	// StageExecutionStatusFailed is a StageExecutionStatus enum value
 15851  	StageExecutionStatusFailed = "Failed"
 15852  
 15853  	// StageExecutionStatusStopped is a StageExecutionStatus enum value
 15854  	StageExecutionStatusStopped = "Stopped"
 15855  
 15856  	// StageExecutionStatusStopping is a StageExecutionStatus enum value
 15857  	StageExecutionStatusStopping = "Stopping"
 15858  
 15859  	// StageExecutionStatusSucceeded is a StageExecutionStatus enum value
 15860  	StageExecutionStatusSucceeded = "Succeeded"
 15861  )
 15862  
 15863  // StageExecutionStatus_Values returns all elements of the StageExecutionStatus enum
 15864  func StageExecutionStatus_Values() []string {
 15865  	return []string{
 15866  		StageExecutionStatusCancelled,
 15867  		StageExecutionStatusInProgress,
 15868  		StageExecutionStatusFailed,
 15869  		StageExecutionStatusStopped,
 15870  		StageExecutionStatusStopping,
 15871  		StageExecutionStatusSucceeded,
 15872  	}
 15873  }
 15874  
 15875  const (
 15876  	// StageRetryModeFailedActions is a StageRetryMode enum value
 15877  	StageRetryModeFailedActions = "FAILED_ACTIONS"
 15878  )
 15879  
 15880  // StageRetryMode_Values returns all elements of the StageRetryMode enum
 15881  func StageRetryMode_Values() []string {
 15882  	return []string{
 15883  		StageRetryModeFailedActions,
 15884  	}
 15885  }
 15886  
 15887  const (
 15888  	// StageTransitionTypeInbound is a StageTransitionType enum value
 15889  	StageTransitionTypeInbound = "Inbound"
 15890  
 15891  	// StageTransitionTypeOutbound is a StageTransitionType enum value
 15892  	StageTransitionTypeOutbound = "Outbound"
 15893  )
 15894  
 15895  // StageTransitionType_Values returns all elements of the StageTransitionType enum
 15896  func StageTransitionType_Values() []string {
 15897  	return []string{
 15898  		StageTransitionTypeInbound,
 15899  		StageTransitionTypeOutbound,
 15900  	}
 15901  }
 15902  
 15903  const (
 15904  	// TriggerTypeCreatePipeline is a TriggerType enum value
 15905  	TriggerTypeCreatePipeline = "CreatePipeline"
 15906  
 15907  	// TriggerTypeStartPipelineExecution is a TriggerType enum value
 15908  	TriggerTypeStartPipelineExecution = "StartPipelineExecution"
 15909  
 15910  	// TriggerTypePollForSourceChanges is a TriggerType enum value
 15911  	TriggerTypePollForSourceChanges = "PollForSourceChanges"
 15912  
 15913  	// TriggerTypeWebhook is a TriggerType enum value
 15914  	TriggerTypeWebhook = "Webhook"
 15915  
 15916  	// TriggerTypeCloudWatchEvent is a TriggerType enum value
 15917  	TriggerTypeCloudWatchEvent = "CloudWatchEvent"
 15918  
 15919  	// TriggerTypePutActionRevision is a TriggerType enum value
 15920  	TriggerTypePutActionRevision = "PutActionRevision"
 15921  )
 15922  
 15923  // TriggerType_Values returns all elements of the TriggerType enum
 15924  func TriggerType_Values() []string {
 15925  	return []string{
 15926  		TriggerTypeCreatePipeline,
 15927  		TriggerTypeStartPipelineExecution,
 15928  		TriggerTypePollForSourceChanges,
 15929  		TriggerTypeWebhook,
 15930  		TriggerTypeCloudWatchEvent,
 15931  		TriggerTypePutActionRevision,
 15932  	}
 15933  }
 15934  
 15935  const (
 15936  	// WebhookAuthenticationTypeGithubHmac is a WebhookAuthenticationType enum value
 15937  	WebhookAuthenticationTypeGithubHmac = "GITHUB_HMAC"
 15938  
 15939  	// WebhookAuthenticationTypeIp is a WebhookAuthenticationType enum value
 15940  	WebhookAuthenticationTypeIp = "IP"
 15941  
 15942  	// WebhookAuthenticationTypeUnauthenticated is a WebhookAuthenticationType enum value
 15943  	WebhookAuthenticationTypeUnauthenticated = "UNAUTHENTICATED"
 15944  )
 15945  
 15946  // WebhookAuthenticationType_Values returns all elements of the WebhookAuthenticationType enum
 15947  func WebhookAuthenticationType_Values() []string {
 15948  	return []string{
 15949  		WebhookAuthenticationTypeGithubHmac,
 15950  		WebhookAuthenticationTypeIp,
 15951  		WebhookAuthenticationTypeUnauthenticated,
 15952  	}
 15953  }