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

     1  // Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
     2  
     3  package elasticbeanstalk
     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/query"
    14  )
    15  
    16  const opAbortEnvironmentUpdate = "AbortEnvironmentUpdate"
    17  
    18  // AbortEnvironmentUpdateRequest generates a "aws/request.Request" representing the
    19  // client's request for the AbortEnvironmentUpdate 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 AbortEnvironmentUpdate for more information on using the AbortEnvironmentUpdate
    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 AbortEnvironmentUpdateRequest method.
    34  //    req, resp := client.AbortEnvironmentUpdateRequest(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/elasticbeanstalk-2010-12-01/AbortEnvironmentUpdate
    42  func (c *ElasticBeanstalk) AbortEnvironmentUpdateRequest(input *AbortEnvironmentUpdateInput) (req *request.Request, output *AbortEnvironmentUpdateOutput) {
    43  	op := &request.Operation{
    44  		Name:       opAbortEnvironmentUpdate,
    45  		HTTPMethod: "POST",
    46  		HTTPPath:   "/",
    47  	}
    48  
    49  	if input == nil {
    50  		input = &AbortEnvironmentUpdateInput{}
    51  	}
    52  
    53  	output = &AbortEnvironmentUpdateOutput{}
    54  	req = c.newRequest(op, input, output)
    55  	req.Handlers.Unmarshal.Swap(query.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
    56  	return
    57  }
    58  
    59  // AbortEnvironmentUpdate API operation for AWS Elastic Beanstalk.
    60  //
    61  // Cancels in-progress environment configuration update or application version
    62  // deployment.
    63  //
    64  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
    65  // with awserr.Error's Code and Message methods to get detailed information about
    66  // the error.
    67  //
    68  // See the AWS API reference guide for AWS Elastic Beanstalk's
    69  // API operation AbortEnvironmentUpdate for usage and error information.
    70  //
    71  // Returned Error Codes:
    72  //   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
    73  //   The specified account does not have sufficient privileges for one or more
    74  //   AWS services.
    75  //
    76  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/AbortEnvironmentUpdate
    77  func (c *ElasticBeanstalk) AbortEnvironmentUpdate(input *AbortEnvironmentUpdateInput) (*AbortEnvironmentUpdateOutput, error) {
    78  	req, out := c.AbortEnvironmentUpdateRequest(input)
    79  	return out, req.Send()
    80  }
    81  
    82  // AbortEnvironmentUpdateWithContext is the same as AbortEnvironmentUpdate with the addition of
    83  // the ability to pass a context and additional request options.
    84  //
    85  // See AbortEnvironmentUpdate for details on how to use this API operation.
    86  //
    87  // The context must be non-nil and will be used for request cancellation. If
    88  // the context is nil a panic will occur. In the future the SDK may create
    89  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
    90  // for more information on using Contexts.
    91  func (c *ElasticBeanstalk) AbortEnvironmentUpdateWithContext(ctx aws.Context, input *AbortEnvironmentUpdateInput, opts ...request.Option) (*AbortEnvironmentUpdateOutput, error) {
    92  	req, out := c.AbortEnvironmentUpdateRequest(input)
    93  	req.SetContext(ctx)
    94  	req.ApplyOptions(opts...)
    95  	return out, req.Send()
    96  }
    97  
    98  const opApplyEnvironmentManagedAction = "ApplyEnvironmentManagedAction"
    99  
   100  // ApplyEnvironmentManagedActionRequest generates a "aws/request.Request" representing the
   101  // client's request for the ApplyEnvironmentManagedAction operation. The "output" return
   102  // value will be populated with the request's response once the request completes
   103  // successfully.
   104  //
   105  // Use "Send" method on the returned Request to send the API call to the service.
   106  // the "output" return value is not valid until after Send returns without error.
   107  //
   108  // See ApplyEnvironmentManagedAction for more information on using the ApplyEnvironmentManagedAction
   109  // API call, and error handling.
   110  //
   111  // This method is useful when you want to inject custom logic or configuration
   112  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   113  //
   114  //
   115  //    // Example sending a request using the ApplyEnvironmentManagedActionRequest method.
   116  //    req, resp := client.ApplyEnvironmentManagedActionRequest(params)
   117  //
   118  //    err := req.Send()
   119  //    if err == nil { // resp is now filled
   120  //        fmt.Println(resp)
   121  //    }
   122  //
   123  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ApplyEnvironmentManagedAction
   124  func (c *ElasticBeanstalk) ApplyEnvironmentManagedActionRequest(input *ApplyEnvironmentManagedActionInput) (req *request.Request, output *ApplyEnvironmentManagedActionOutput) {
   125  	op := &request.Operation{
   126  		Name:       opApplyEnvironmentManagedAction,
   127  		HTTPMethod: "POST",
   128  		HTTPPath:   "/",
   129  	}
   130  
   131  	if input == nil {
   132  		input = &ApplyEnvironmentManagedActionInput{}
   133  	}
   134  
   135  	output = &ApplyEnvironmentManagedActionOutput{}
   136  	req = c.newRequest(op, input, output)
   137  	return
   138  }
   139  
   140  // ApplyEnvironmentManagedAction API operation for AWS Elastic Beanstalk.
   141  //
   142  // Applies a scheduled managed action immediately. A managed action can be applied
   143  // only if its status is Scheduled. Get the status and action ID of a managed
   144  // action with DescribeEnvironmentManagedActions.
   145  //
   146  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   147  // with awserr.Error's Code and Message methods to get detailed information about
   148  // the error.
   149  //
   150  // See the AWS API reference guide for AWS Elastic Beanstalk's
   151  // API operation ApplyEnvironmentManagedAction for usage and error information.
   152  //
   153  // Returned Error Codes:
   154  //   * ErrCodeServiceException "ElasticBeanstalkServiceException"
   155  //   A generic service exception has occurred.
   156  //
   157  //   * ErrCodeManagedActionInvalidStateException "ManagedActionInvalidStateException"
   158  //   Cannot modify the managed action in its current state.
   159  //
   160  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ApplyEnvironmentManagedAction
   161  func (c *ElasticBeanstalk) ApplyEnvironmentManagedAction(input *ApplyEnvironmentManagedActionInput) (*ApplyEnvironmentManagedActionOutput, error) {
   162  	req, out := c.ApplyEnvironmentManagedActionRequest(input)
   163  	return out, req.Send()
   164  }
   165  
   166  // ApplyEnvironmentManagedActionWithContext is the same as ApplyEnvironmentManagedAction with the addition of
   167  // the ability to pass a context and additional request options.
   168  //
   169  // See ApplyEnvironmentManagedAction for details on how to use this API operation.
   170  //
   171  // The context must be non-nil and will be used for request cancellation. If
   172  // the context is nil a panic will occur. In the future the SDK may create
   173  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   174  // for more information on using Contexts.
   175  func (c *ElasticBeanstalk) ApplyEnvironmentManagedActionWithContext(ctx aws.Context, input *ApplyEnvironmentManagedActionInput, opts ...request.Option) (*ApplyEnvironmentManagedActionOutput, error) {
   176  	req, out := c.ApplyEnvironmentManagedActionRequest(input)
   177  	req.SetContext(ctx)
   178  	req.ApplyOptions(opts...)
   179  	return out, req.Send()
   180  }
   181  
   182  const opAssociateEnvironmentOperationsRole = "AssociateEnvironmentOperationsRole"
   183  
   184  // AssociateEnvironmentOperationsRoleRequest generates a "aws/request.Request" representing the
   185  // client's request for the AssociateEnvironmentOperationsRole operation. The "output" return
   186  // value will be populated with the request's response once the request completes
   187  // successfully.
   188  //
   189  // Use "Send" method on the returned Request to send the API call to the service.
   190  // the "output" return value is not valid until after Send returns without error.
   191  //
   192  // See AssociateEnvironmentOperationsRole for more information on using the AssociateEnvironmentOperationsRole
   193  // API call, and error handling.
   194  //
   195  // This method is useful when you want to inject custom logic or configuration
   196  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   197  //
   198  //
   199  //    // Example sending a request using the AssociateEnvironmentOperationsRoleRequest method.
   200  //    req, resp := client.AssociateEnvironmentOperationsRoleRequest(params)
   201  //
   202  //    err := req.Send()
   203  //    if err == nil { // resp is now filled
   204  //        fmt.Println(resp)
   205  //    }
   206  //
   207  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/AssociateEnvironmentOperationsRole
   208  func (c *ElasticBeanstalk) AssociateEnvironmentOperationsRoleRequest(input *AssociateEnvironmentOperationsRoleInput) (req *request.Request, output *AssociateEnvironmentOperationsRoleOutput) {
   209  	op := &request.Operation{
   210  		Name:       opAssociateEnvironmentOperationsRole,
   211  		HTTPMethod: "POST",
   212  		HTTPPath:   "/",
   213  	}
   214  
   215  	if input == nil {
   216  		input = &AssociateEnvironmentOperationsRoleInput{}
   217  	}
   218  
   219  	output = &AssociateEnvironmentOperationsRoleOutput{}
   220  	req = c.newRequest(op, input, output)
   221  	req.Handlers.Unmarshal.Swap(query.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
   222  	return
   223  }
   224  
   225  // AssociateEnvironmentOperationsRole API operation for AWS Elastic Beanstalk.
   226  //
   227  // Add or change the operations role used by an environment. After this call
   228  // is made, Elastic Beanstalk uses the associated operations role for permissions
   229  // to downstream services during subsequent calls acting on this environment.
   230  // For more information, see Operations roles (https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/iam-operationsrole.html)
   231  // in the AWS Elastic Beanstalk Developer Guide.
   232  //
   233  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   234  // with awserr.Error's Code and Message methods to get detailed information about
   235  // the error.
   236  //
   237  // See the AWS API reference guide for AWS Elastic Beanstalk's
   238  // API operation AssociateEnvironmentOperationsRole for usage and error information.
   239  //
   240  // Returned Error Codes:
   241  //   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
   242  //   The specified account does not have sufficient privileges for one or more
   243  //   AWS services.
   244  //
   245  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/AssociateEnvironmentOperationsRole
   246  func (c *ElasticBeanstalk) AssociateEnvironmentOperationsRole(input *AssociateEnvironmentOperationsRoleInput) (*AssociateEnvironmentOperationsRoleOutput, error) {
   247  	req, out := c.AssociateEnvironmentOperationsRoleRequest(input)
   248  	return out, req.Send()
   249  }
   250  
   251  // AssociateEnvironmentOperationsRoleWithContext is the same as AssociateEnvironmentOperationsRole with the addition of
   252  // the ability to pass a context and additional request options.
   253  //
   254  // See AssociateEnvironmentOperationsRole for details on how to use this API operation.
   255  //
   256  // The context must be non-nil and will be used for request cancellation. If
   257  // the context is nil a panic will occur. In the future the SDK may create
   258  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   259  // for more information on using Contexts.
   260  func (c *ElasticBeanstalk) AssociateEnvironmentOperationsRoleWithContext(ctx aws.Context, input *AssociateEnvironmentOperationsRoleInput, opts ...request.Option) (*AssociateEnvironmentOperationsRoleOutput, error) {
   261  	req, out := c.AssociateEnvironmentOperationsRoleRequest(input)
   262  	req.SetContext(ctx)
   263  	req.ApplyOptions(opts...)
   264  	return out, req.Send()
   265  }
   266  
   267  const opCheckDNSAvailability = "CheckDNSAvailability"
   268  
   269  // CheckDNSAvailabilityRequest generates a "aws/request.Request" representing the
   270  // client's request for the CheckDNSAvailability operation. The "output" return
   271  // value will be populated with the request's response once the request completes
   272  // successfully.
   273  //
   274  // Use "Send" method on the returned Request to send the API call to the service.
   275  // the "output" return value is not valid until after Send returns without error.
   276  //
   277  // See CheckDNSAvailability for more information on using the CheckDNSAvailability
   278  // API call, and error handling.
   279  //
   280  // This method is useful when you want to inject custom logic or configuration
   281  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   282  //
   283  //
   284  //    // Example sending a request using the CheckDNSAvailabilityRequest method.
   285  //    req, resp := client.CheckDNSAvailabilityRequest(params)
   286  //
   287  //    err := req.Send()
   288  //    if err == nil { // resp is now filled
   289  //        fmt.Println(resp)
   290  //    }
   291  //
   292  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/CheckDNSAvailability
   293  func (c *ElasticBeanstalk) CheckDNSAvailabilityRequest(input *CheckDNSAvailabilityInput) (req *request.Request, output *CheckDNSAvailabilityOutput) {
   294  	op := &request.Operation{
   295  		Name:       opCheckDNSAvailability,
   296  		HTTPMethod: "POST",
   297  		HTTPPath:   "/",
   298  	}
   299  
   300  	if input == nil {
   301  		input = &CheckDNSAvailabilityInput{}
   302  	}
   303  
   304  	output = &CheckDNSAvailabilityOutput{}
   305  	req = c.newRequest(op, input, output)
   306  	return
   307  }
   308  
   309  // CheckDNSAvailability API operation for AWS Elastic Beanstalk.
   310  //
   311  // Checks if the specified CNAME is available.
   312  //
   313  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   314  // with awserr.Error's Code and Message methods to get detailed information about
   315  // the error.
   316  //
   317  // See the AWS API reference guide for AWS Elastic Beanstalk's
   318  // API operation CheckDNSAvailability for usage and error information.
   319  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/CheckDNSAvailability
   320  func (c *ElasticBeanstalk) CheckDNSAvailability(input *CheckDNSAvailabilityInput) (*CheckDNSAvailabilityOutput, error) {
   321  	req, out := c.CheckDNSAvailabilityRequest(input)
   322  	return out, req.Send()
   323  }
   324  
   325  // CheckDNSAvailabilityWithContext is the same as CheckDNSAvailability with the addition of
   326  // the ability to pass a context and additional request options.
   327  //
   328  // See CheckDNSAvailability for details on how to use this API operation.
   329  //
   330  // The context must be non-nil and will be used for request cancellation. If
   331  // the context is nil a panic will occur. In the future the SDK may create
   332  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   333  // for more information on using Contexts.
   334  func (c *ElasticBeanstalk) CheckDNSAvailabilityWithContext(ctx aws.Context, input *CheckDNSAvailabilityInput, opts ...request.Option) (*CheckDNSAvailabilityOutput, error) {
   335  	req, out := c.CheckDNSAvailabilityRequest(input)
   336  	req.SetContext(ctx)
   337  	req.ApplyOptions(opts...)
   338  	return out, req.Send()
   339  }
   340  
   341  const opComposeEnvironments = "ComposeEnvironments"
   342  
   343  // ComposeEnvironmentsRequest generates a "aws/request.Request" representing the
   344  // client's request for the ComposeEnvironments operation. The "output" return
   345  // value will be populated with the request's response once the request completes
   346  // successfully.
   347  //
   348  // Use "Send" method on the returned Request to send the API call to the service.
   349  // the "output" return value is not valid until after Send returns without error.
   350  //
   351  // See ComposeEnvironments for more information on using the ComposeEnvironments
   352  // API call, and error handling.
   353  //
   354  // This method is useful when you want to inject custom logic or configuration
   355  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   356  //
   357  //
   358  //    // Example sending a request using the ComposeEnvironmentsRequest method.
   359  //    req, resp := client.ComposeEnvironmentsRequest(params)
   360  //
   361  //    err := req.Send()
   362  //    if err == nil { // resp is now filled
   363  //        fmt.Println(resp)
   364  //    }
   365  //
   366  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ComposeEnvironments
   367  func (c *ElasticBeanstalk) ComposeEnvironmentsRequest(input *ComposeEnvironmentsInput) (req *request.Request, output *EnvironmentDescriptionsMessage) {
   368  	op := &request.Operation{
   369  		Name:       opComposeEnvironments,
   370  		HTTPMethod: "POST",
   371  		HTTPPath:   "/",
   372  	}
   373  
   374  	if input == nil {
   375  		input = &ComposeEnvironmentsInput{}
   376  	}
   377  
   378  	output = &EnvironmentDescriptionsMessage{}
   379  	req = c.newRequest(op, input, output)
   380  	return
   381  }
   382  
   383  // ComposeEnvironments API operation for AWS Elastic Beanstalk.
   384  //
   385  // Create or update a group of environments that each run a separate component
   386  // of a single application. Takes a list of version labels that specify application
   387  // source bundles for each of the environments to create or update. The name
   388  // of each environment and other required information must be included in the
   389  // source bundles in an environment manifest named env.yaml. See Compose Environments
   390  // (https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/environment-mgmt-compose.html)
   391  // for details.
   392  //
   393  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   394  // with awserr.Error's Code and Message methods to get detailed information about
   395  // the error.
   396  //
   397  // See the AWS API reference guide for AWS Elastic Beanstalk's
   398  // API operation ComposeEnvironments for usage and error information.
   399  //
   400  // Returned Error Codes:
   401  //   * ErrCodeTooManyEnvironmentsException "TooManyEnvironmentsException"
   402  //   The specified account has reached its limit of environments.
   403  //
   404  //   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
   405  //   The specified account does not have sufficient privileges for one or more
   406  //   AWS services.
   407  //
   408  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ComposeEnvironments
   409  func (c *ElasticBeanstalk) ComposeEnvironments(input *ComposeEnvironmentsInput) (*EnvironmentDescriptionsMessage, error) {
   410  	req, out := c.ComposeEnvironmentsRequest(input)
   411  	return out, req.Send()
   412  }
   413  
   414  // ComposeEnvironmentsWithContext is the same as ComposeEnvironments with the addition of
   415  // the ability to pass a context and additional request options.
   416  //
   417  // See ComposeEnvironments for details on how to use this API operation.
   418  //
   419  // The context must be non-nil and will be used for request cancellation. If
   420  // the context is nil a panic will occur. In the future the SDK may create
   421  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   422  // for more information on using Contexts.
   423  func (c *ElasticBeanstalk) ComposeEnvironmentsWithContext(ctx aws.Context, input *ComposeEnvironmentsInput, opts ...request.Option) (*EnvironmentDescriptionsMessage, error) {
   424  	req, out := c.ComposeEnvironmentsRequest(input)
   425  	req.SetContext(ctx)
   426  	req.ApplyOptions(opts...)
   427  	return out, req.Send()
   428  }
   429  
   430  const opCreateApplication = "CreateApplication"
   431  
   432  // CreateApplicationRequest generates a "aws/request.Request" representing the
   433  // client's request for the CreateApplication operation. The "output" return
   434  // value will be populated with the request's response once the request completes
   435  // successfully.
   436  //
   437  // Use "Send" method on the returned Request to send the API call to the service.
   438  // the "output" return value is not valid until after Send returns without error.
   439  //
   440  // See CreateApplication for more information on using the CreateApplication
   441  // API call, and error handling.
   442  //
   443  // This method is useful when you want to inject custom logic or configuration
   444  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   445  //
   446  //
   447  //    // Example sending a request using the CreateApplicationRequest method.
   448  //    req, resp := client.CreateApplicationRequest(params)
   449  //
   450  //    err := req.Send()
   451  //    if err == nil { // resp is now filled
   452  //        fmt.Println(resp)
   453  //    }
   454  //
   455  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/CreateApplication
   456  func (c *ElasticBeanstalk) CreateApplicationRequest(input *CreateApplicationInput) (req *request.Request, output *ApplicationDescriptionMessage) {
   457  	op := &request.Operation{
   458  		Name:       opCreateApplication,
   459  		HTTPMethod: "POST",
   460  		HTTPPath:   "/",
   461  	}
   462  
   463  	if input == nil {
   464  		input = &CreateApplicationInput{}
   465  	}
   466  
   467  	output = &ApplicationDescriptionMessage{}
   468  	req = c.newRequest(op, input, output)
   469  	return
   470  }
   471  
   472  // CreateApplication API operation for AWS Elastic Beanstalk.
   473  //
   474  // Creates an application that has one configuration template named default
   475  // and no application versions.
   476  //
   477  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   478  // with awserr.Error's Code and Message methods to get detailed information about
   479  // the error.
   480  //
   481  // See the AWS API reference guide for AWS Elastic Beanstalk's
   482  // API operation CreateApplication for usage and error information.
   483  //
   484  // Returned Error Codes:
   485  //   * ErrCodeTooManyApplicationsException "TooManyApplicationsException"
   486  //   The specified account has reached its limit of applications.
   487  //
   488  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/CreateApplication
   489  func (c *ElasticBeanstalk) CreateApplication(input *CreateApplicationInput) (*ApplicationDescriptionMessage, error) {
   490  	req, out := c.CreateApplicationRequest(input)
   491  	return out, req.Send()
   492  }
   493  
   494  // CreateApplicationWithContext is the same as CreateApplication with the addition of
   495  // the ability to pass a context and additional request options.
   496  //
   497  // See CreateApplication for details on how to use this API operation.
   498  //
   499  // The context must be non-nil and will be used for request cancellation. If
   500  // the context is nil a panic will occur. In the future the SDK may create
   501  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   502  // for more information on using Contexts.
   503  func (c *ElasticBeanstalk) CreateApplicationWithContext(ctx aws.Context, input *CreateApplicationInput, opts ...request.Option) (*ApplicationDescriptionMessage, error) {
   504  	req, out := c.CreateApplicationRequest(input)
   505  	req.SetContext(ctx)
   506  	req.ApplyOptions(opts...)
   507  	return out, req.Send()
   508  }
   509  
   510  const opCreateApplicationVersion = "CreateApplicationVersion"
   511  
   512  // CreateApplicationVersionRequest generates a "aws/request.Request" representing the
   513  // client's request for the CreateApplicationVersion operation. The "output" return
   514  // value will be populated with the request's response once the request completes
   515  // successfully.
   516  //
   517  // Use "Send" method on the returned Request to send the API call to the service.
   518  // the "output" return value is not valid until after Send returns without error.
   519  //
   520  // See CreateApplicationVersion for more information on using the CreateApplicationVersion
   521  // API call, and error handling.
   522  //
   523  // This method is useful when you want to inject custom logic or configuration
   524  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   525  //
   526  //
   527  //    // Example sending a request using the CreateApplicationVersionRequest method.
   528  //    req, resp := client.CreateApplicationVersionRequest(params)
   529  //
   530  //    err := req.Send()
   531  //    if err == nil { // resp is now filled
   532  //        fmt.Println(resp)
   533  //    }
   534  //
   535  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/CreateApplicationVersion
   536  func (c *ElasticBeanstalk) CreateApplicationVersionRequest(input *CreateApplicationVersionInput) (req *request.Request, output *ApplicationVersionDescriptionMessage) {
   537  	op := &request.Operation{
   538  		Name:       opCreateApplicationVersion,
   539  		HTTPMethod: "POST",
   540  		HTTPPath:   "/",
   541  	}
   542  
   543  	if input == nil {
   544  		input = &CreateApplicationVersionInput{}
   545  	}
   546  
   547  	output = &ApplicationVersionDescriptionMessage{}
   548  	req = c.newRequest(op, input, output)
   549  	return
   550  }
   551  
   552  // CreateApplicationVersion API operation for AWS Elastic Beanstalk.
   553  //
   554  // Creates an application version for the specified application. You can create
   555  // an application version from a source bundle in Amazon S3, a commit in AWS
   556  // CodeCommit, or the output of an AWS CodeBuild build as follows:
   557  //
   558  // Specify a commit in an AWS CodeCommit repository with SourceBuildInformation.
   559  //
   560  // Specify a build in an AWS CodeBuild with SourceBuildInformation and BuildConfiguration.
   561  //
   562  // Specify a source bundle in S3 with SourceBundle
   563  //
   564  // Omit both SourceBuildInformation and SourceBundle to use the default sample
   565  // application.
   566  //
   567  // After you create an application version with a specified Amazon S3 bucket
   568  // and key location, you can't change that Amazon S3 location. If you change
   569  // the Amazon S3 location, you receive an exception when you attempt to launch
   570  // an environment from the application version.
   571  //
   572  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   573  // with awserr.Error's Code and Message methods to get detailed information about
   574  // the error.
   575  //
   576  // See the AWS API reference guide for AWS Elastic Beanstalk's
   577  // API operation CreateApplicationVersion for usage and error information.
   578  //
   579  // Returned Error Codes:
   580  //   * ErrCodeTooManyApplicationsException "TooManyApplicationsException"
   581  //   The specified account has reached its limit of applications.
   582  //
   583  //   * ErrCodeTooManyApplicationVersionsException "TooManyApplicationVersionsException"
   584  //   The specified account has reached its limit of application versions.
   585  //
   586  //   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
   587  //   The specified account does not have sufficient privileges for one or more
   588  //   AWS services.
   589  //
   590  //   * ErrCodeS3LocationNotInServiceRegionException "S3LocationNotInServiceRegionException"
   591  //   The specified S3 bucket does not belong to the S3 region in which the service
   592  //   is running. The following regions are supported:
   593  //
   594  //      * IAD/us-east-1
   595  //
   596  //      * PDX/us-west-2
   597  //
   598  //      * DUB/eu-west-1
   599  //
   600  //   * ErrCodeCodeBuildNotInServiceRegionException "CodeBuildNotInServiceRegionException"
   601  //   AWS CodeBuild is not available in the specified region.
   602  //
   603  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/CreateApplicationVersion
   604  func (c *ElasticBeanstalk) CreateApplicationVersion(input *CreateApplicationVersionInput) (*ApplicationVersionDescriptionMessage, error) {
   605  	req, out := c.CreateApplicationVersionRequest(input)
   606  	return out, req.Send()
   607  }
   608  
   609  // CreateApplicationVersionWithContext is the same as CreateApplicationVersion with the addition of
   610  // the ability to pass a context and additional request options.
   611  //
   612  // See CreateApplicationVersion for details on how to use this API operation.
   613  //
   614  // The context must be non-nil and will be used for request cancellation. If
   615  // the context is nil a panic will occur. In the future the SDK may create
   616  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   617  // for more information on using Contexts.
   618  func (c *ElasticBeanstalk) CreateApplicationVersionWithContext(ctx aws.Context, input *CreateApplicationVersionInput, opts ...request.Option) (*ApplicationVersionDescriptionMessage, error) {
   619  	req, out := c.CreateApplicationVersionRequest(input)
   620  	req.SetContext(ctx)
   621  	req.ApplyOptions(opts...)
   622  	return out, req.Send()
   623  }
   624  
   625  const opCreateConfigurationTemplate = "CreateConfigurationTemplate"
   626  
   627  // CreateConfigurationTemplateRequest generates a "aws/request.Request" representing the
   628  // client's request for the CreateConfigurationTemplate operation. The "output" return
   629  // value will be populated with the request's response once the request completes
   630  // successfully.
   631  //
   632  // Use "Send" method on the returned Request to send the API call to the service.
   633  // the "output" return value is not valid until after Send returns without error.
   634  //
   635  // See CreateConfigurationTemplate for more information on using the CreateConfigurationTemplate
   636  // API call, and error handling.
   637  //
   638  // This method is useful when you want to inject custom logic or configuration
   639  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   640  //
   641  //
   642  //    // Example sending a request using the CreateConfigurationTemplateRequest method.
   643  //    req, resp := client.CreateConfigurationTemplateRequest(params)
   644  //
   645  //    err := req.Send()
   646  //    if err == nil { // resp is now filled
   647  //        fmt.Println(resp)
   648  //    }
   649  //
   650  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/CreateConfigurationTemplate
   651  func (c *ElasticBeanstalk) CreateConfigurationTemplateRequest(input *CreateConfigurationTemplateInput) (req *request.Request, output *ConfigurationSettingsDescription) {
   652  	op := &request.Operation{
   653  		Name:       opCreateConfigurationTemplate,
   654  		HTTPMethod: "POST",
   655  		HTTPPath:   "/",
   656  	}
   657  
   658  	if input == nil {
   659  		input = &CreateConfigurationTemplateInput{}
   660  	}
   661  
   662  	output = &ConfigurationSettingsDescription{}
   663  	req = c.newRequest(op, input, output)
   664  	return
   665  }
   666  
   667  // CreateConfigurationTemplate API operation for AWS Elastic Beanstalk.
   668  //
   669  // Creates an AWS Elastic Beanstalk configuration template, associated with
   670  // a specific Elastic Beanstalk application. You define application configuration
   671  // settings in a configuration template. You can then use the configuration
   672  // template to deploy different versions of the application with the same configuration
   673  // settings.
   674  //
   675  // Templates aren't associated with any environment. The EnvironmentName response
   676  // element is always null.
   677  //
   678  // Related Topics
   679  //
   680  //    * DescribeConfigurationOptions
   681  //
   682  //    * DescribeConfigurationSettings
   683  //
   684  //    * ListAvailableSolutionStacks
   685  //
   686  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   687  // with awserr.Error's Code and Message methods to get detailed information about
   688  // the error.
   689  //
   690  // See the AWS API reference guide for AWS Elastic Beanstalk's
   691  // API operation CreateConfigurationTemplate for usage and error information.
   692  //
   693  // Returned Error Codes:
   694  //   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
   695  //   The specified account does not have sufficient privileges for one or more
   696  //   AWS services.
   697  //
   698  //   * ErrCodeTooManyBucketsException "TooManyBucketsException"
   699  //   The specified account has reached its limit of Amazon S3 buckets.
   700  //
   701  //   * ErrCodeTooManyConfigurationTemplatesException "TooManyConfigurationTemplatesException"
   702  //   The specified account has reached its limit of configuration templates.
   703  //
   704  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/CreateConfigurationTemplate
   705  func (c *ElasticBeanstalk) CreateConfigurationTemplate(input *CreateConfigurationTemplateInput) (*ConfigurationSettingsDescription, error) {
   706  	req, out := c.CreateConfigurationTemplateRequest(input)
   707  	return out, req.Send()
   708  }
   709  
   710  // CreateConfigurationTemplateWithContext is the same as CreateConfigurationTemplate with the addition of
   711  // the ability to pass a context and additional request options.
   712  //
   713  // See CreateConfigurationTemplate for details on how to use this API operation.
   714  //
   715  // The context must be non-nil and will be used for request cancellation. If
   716  // the context is nil a panic will occur. In the future the SDK may create
   717  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   718  // for more information on using Contexts.
   719  func (c *ElasticBeanstalk) CreateConfigurationTemplateWithContext(ctx aws.Context, input *CreateConfigurationTemplateInput, opts ...request.Option) (*ConfigurationSettingsDescription, error) {
   720  	req, out := c.CreateConfigurationTemplateRequest(input)
   721  	req.SetContext(ctx)
   722  	req.ApplyOptions(opts...)
   723  	return out, req.Send()
   724  }
   725  
   726  const opCreateEnvironment = "CreateEnvironment"
   727  
   728  // CreateEnvironmentRequest generates a "aws/request.Request" representing the
   729  // client's request for the CreateEnvironment operation. The "output" return
   730  // value will be populated with the request's response once the request completes
   731  // successfully.
   732  //
   733  // Use "Send" method on the returned Request to send the API call to the service.
   734  // the "output" return value is not valid until after Send returns without error.
   735  //
   736  // See CreateEnvironment for more information on using the CreateEnvironment
   737  // API call, and error handling.
   738  //
   739  // This method is useful when you want to inject custom logic or configuration
   740  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   741  //
   742  //
   743  //    // Example sending a request using the CreateEnvironmentRequest method.
   744  //    req, resp := client.CreateEnvironmentRequest(params)
   745  //
   746  //    err := req.Send()
   747  //    if err == nil { // resp is now filled
   748  //        fmt.Println(resp)
   749  //    }
   750  //
   751  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/CreateEnvironment
   752  func (c *ElasticBeanstalk) CreateEnvironmentRequest(input *CreateEnvironmentInput) (req *request.Request, output *EnvironmentDescription) {
   753  	op := &request.Operation{
   754  		Name:       opCreateEnvironment,
   755  		HTTPMethod: "POST",
   756  		HTTPPath:   "/",
   757  	}
   758  
   759  	if input == nil {
   760  		input = &CreateEnvironmentInput{}
   761  	}
   762  
   763  	output = &EnvironmentDescription{}
   764  	req = c.newRequest(op, input, output)
   765  	return
   766  }
   767  
   768  // CreateEnvironment API operation for AWS Elastic Beanstalk.
   769  //
   770  // Launches an AWS Elastic Beanstalk environment for the specified application
   771  // using the specified configuration.
   772  //
   773  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   774  // with awserr.Error's Code and Message methods to get detailed information about
   775  // the error.
   776  //
   777  // See the AWS API reference guide for AWS Elastic Beanstalk's
   778  // API operation CreateEnvironment for usage and error information.
   779  //
   780  // Returned Error Codes:
   781  //   * ErrCodeTooManyEnvironmentsException "TooManyEnvironmentsException"
   782  //   The specified account has reached its limit of environments.
   783  //
   784  //   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
   785  //   The specified account does not have sufficient privileges for one or more
   786  //   AWS services.
   787  //
   788  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/CreateEnvironment
   789  func (c *ElasticBeanstalk) CreateEnvironment(input *CreateEnvironmentInput) (*EnvironmentDescription, error) {
   790  	req, out := c.CreateEnvironmentRequest(input)
   791  	return out, req.Send()
   792  }
   793  
   794  // CreateEnvironmentWithContext is the same as CreateEnvironment with the addition of
   795  // the ability to pass a context and additional request options.
   796  //
   797  // See CreateEnvironment for details on how to use this API operation.
   798  //
   799  // The context must be non-nil and will be used for request cancellation. If
   800  // the context is nil a panic will occur. In the future the SDK may create
   801  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   802  // for more information on using Contexts.
   803  func (c *ElasticBeanstalk) CreateEnvironmentWithContext(ctx aws.Context, input *CreateEnvironmentInput, opts ...request.Option) (*EnvironmentDescription, error) {
   804  	req, out := c.CreateEnvironmentRequest(input)
   805  	req.SetContext(ctx)
   806  	req.ApplyOptions(opts...)
   807  	return out, req.Send()
   808  }
   809  
   810  const opCreatePlatformVersion = "CreatePlatformVersion"
   811  
   812  // CreatePlatformVersionRequest generates a "aws/request.Request" representing the
   813  // client's request for the CreatePlatformVersion operation. The "output" return
   814  // value will be populated with the request's response once the request completes
   815  // successfully.
   816  //
   817  // Use "Send" method on the returned Request to send the API call to the service.
   818  // the "output" return value is not valid until after Send returns without error.
   819  //
   820  // See CreatePlatformVersion for more information on using the CreatePlatformVersion
   821  // API call, and error handling.
   822  //
   823  // This method is useful when you want to inject custom logic or configuration
   824  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   825  //
   826  //
   827  //    // Example sending a request using the CreatePlatformVersionRequest method.
   828  //    req, resp := client.CreatePlatformVersionRequest(params)
   829  //
   830  //    err := req.Send()
   831  //    if err == nil { // resp is now filled
   832  //        fmt.Println(resp)
   833  //    }
   834  //
   835  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/CreatePlatformVersion
   836  func (c *ElasticBeanstalk) CreatePlatformVersionRequest(input *CreatePlatformVersionInput) (req *request.Request, output *CreatePlatformVersionOutput) {
   837  	op := &request.Operation{
   838  		Name:       opCreatePlatformVersion,
   839  		HTTPMethod: "POST",
   840  		HTTPPath:   "/",
   841  	}
   842  
   843  	if input == nil {
   844  		input = &CreatePlatformVersionInput{}
   845  	}
   846  
   847  	output = &CreatePlatformVersionOutput{}
   848  	req = c.newRequest(op, input, output)
   849  	return
   850  }
   851  
   852  // CreatePlatformVersion API operation for AWS Elastic Beanstalk.
   853  //
   854  // Create a new version of your custom platform.
   855  //
   856  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   857  // with awserr.Error's Code and Message methods to get detailed information about
   858  // the error.
   859  //
   860  // See the AWS API reference guide for AWS Elastic Beanstalk's
   861  // API operation CreatePlatformVersion for usage and error information.
   862  //
   863  // Returned Error Codes:
   864  //   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
   865  //   The specified account does not have sufficient privileges for one or more
   866  //   AWS services.
   867  //
   868  //   * ErrCodeServiceException "ElasticBeanstalkServiceException"
   869  //   A generic service exception has occurred.
   870  //
   871  //   * ErrCodeTooManyPlatformsException "TooManyPlatformsException"
   872  //   You have exceeded the maximum number of allowed platforms associated with
   873  //   the account.
   874  //
   875  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/CreatePlatformVersion
   876  func (c *ElasticBeanstalk) CreatePlatformVersion(input *CreatePlatformVersionInput) (*CreatePlatformVersionOutput, error) {
   877  	req, out := c.CreatePlatformVersionRequest(input)
   878  	return out, req.Send()
   879  }
   880  
   881  // CreatePlatformVersionWithContext is the same as CreatePlatformVersion with the addition of
   882  // the ability to pass a context and additional request options.
   883  //
   884  // See CreatePlatformVersion for details on how to use this API operation.
   885  //
   886  // The context must be non-nil and will be used for request cancellation. If
   887  // the context is nil a panic will occur. In the future the SDK may create
   888  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   889  // for more information on using Contexts.
   890  func (c *ElasticBeanstalk) CreatePlatformVersionWithContext(ctx aws.Context, input *CreatePlatformVersionInput, opts ...request.Option) (*CreatePlatformVersionOutput, error) {
   891  	req, out := c.CreatePlatformVersionRequest(input)
   892  	req.SetContext(ctx)
   893  	req.ApplyOptions(opts...)
   894  	return out, req.Send()
   895  }
   896  
   897  const opCreateStorageLocation = "CreateStorageLocation"
   898  
   899  // CreateStorageLocationRequest generates a "aws/request.Request" representing the
   900  // client's request for the CreateStorageLocation operation. The "output" return
   901  // value will be populated with the request's response once the request completes
   902  // successfully.
   903  //
   904  // Use "Send" method on the returned Request to send the API call to the service.
   905  // the "output" return value is not valid until after Send returns without error.
   906  //
   907  // See CreateStorageLocation for more information on using the CreateStorageLocation
   908  // API call, and error handling.
   909  //
   910  // This method is useful when you want to inject custom logic or configuration
   911  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   912  //
   913  //
   914  //    // Example sending a request using the CreateStorageLocationRequest method.
   915  //    req, resp := client.CreateStorageLocationRequest(params)
   916  //
   917  //    err := req.Send()
   918  //    if err == nil { // resp is now filled
   919  //        fmt.Println(resp)
   920  //    }
   921  //
   922  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/CreateStorageLocation
   923  func (c *ElasticBeanstalk) CreateStorageLocationRequest(input *CreateStorageLocationInput) (req *request.Request, output *CreateStorageLocationOutput) {
   924  	op := &request.Operation{
   925  		Name:       opCreateStorageLocation,
   926  		HTTPMethod: "POST",
   927  		HTTPPath:   "/",
   928  	}
   929  
   930  	if input == nil {
   931  		input = &CreateStorageLocationInput{}
   932  	}
   933  
   934  	output = &CreateStorageLocationOutput{}
   935  	req = c.newRequest(op, input, output)
   936  	return
   937  }
   938  
   939  // CreateStorageLocation API operation for AWS Elastic Beanstalk.
   940  //
   941  // Creates a bucket in Amazon S3 to store application versions, logs, and other
   942  // files used by Elastic Beanstalk environments. The Elastic Beanstalk console
   943  // and EB CLI call this API the first time you create an environment in a region.
   944  // If the storage location already exists, CreateStorageLocation still returns
   945  // the bucket name but does not create a new bucket.
   946  //
   947  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   948  // with awserr.Error's Code and Message methods to get detailed information about
   949  // the error.
   950  //
   951  // See the AWS API reference guide for AWS Elastic Beanstalk's
   952  // API operation CreateStorageLocation for usage and error information.
   953  //
   954  // Returned Error Codes:
   955  //   * ErrCodeTooManyBucketsException "TooManyBucketsException"
   956  //   The specified account has reached its limit of Amazon S3 buckets.
   957  //
   958  //   * ErrCodeS3SubscriptionRequiredException "S3SubscriptionRequiredException"
   959  //   The specified account does not have a subscription to Amazon S3.
   960  //
   961  //   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
   962  //   The specified account does not have sufficient privileges for one or more
   963  //   AWS services.
   964  //
   965  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/CreateStorageLocation
   966  func (c *ElasticBeanstalk) CreateStorageLocation(input *CreateStorageLocationInput) (*CreateStorageLocationOutput, error) {
   967  	req, out := c.CreateStorageLocationRequest(input)
   968  	return out, req.Send()
   969  }
   970  
   971  // CreateStorageLocationWithContext is the same as CreateStorageLocation with the addition of
   972  // the ability to pass a context and additional request options.
   973  //
   974  // See CreateStorageLocation for details on how to use this API operation.
   975  //
   976  // The context must be non-nil and will be used for request cancellation. If
   977  // the context is nil a panic will occur. In the future the SDK may create
   978  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   979  // for more information on using Contexts.
   980  func (c *ElasticBeanstalk) CreateStorageLocationWithContext(ctx aws.Context, input *CreateStorageLocationInput, opts ...request.Option) (*CreateStorageLocationOutput, error) {
   981  	req, out := c.CreateStorageLocationRequest(input)
   982  	req.SetContext(ctx)
   983  	req.ApplyOptions(opts...)
   984  	return out, req.Send()
   985  }
   986  
   987  const opDeleteApplication = "DeleteApplication"
   988  
   989  // DeleteApplicationRequest generates a "aws/request.Request" representing the
   990  // client's request for the DeleteApplication operation. The "output" return
   991  // value will be populated with the request's response once the request completes
   992  // successfully.
   993  //
   994  // Use "Send" method on the returned Request to send the API call to the service.
   995  // the "output" return value is not valid until after Send returns without error.
   996  //
   997  // See DeleteApplication for more information on using the DeleteApplication
   998  // API call, and error handling.
   999  //
  1000  // This method is useful when you want to inject custom logic or configuration
  1001  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1002  //
  1003  //
  1004  //    // Example sending a request using the DeleteApplicationRequest method.
  1005  //    req, resp := client.DeleteApplicationRequest(params)
  1006  //
  1007  //    err := req.Send()
  1008  //    if err == nil { // resp is now filled
  1009  //        fmt.Println(resp)
  1010  //    }
  1011  //
  1012  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DeleteApplication
  1013  func (c *ElasticBeanstalk) DeleteApplicationRequest(input *DeleteApplicationInput) (req *request.Request, output *DeleteApplicationOutput) {
  1014  	op := &request.Operation{
  1015  		Name:       opDeleteApplication,
  1016  		HTTPMethod: "POST",
  1017  		HTTPPath:   "/",
  1018  	}
  1019  
  1020  	if input == nil {
  1021  		input = &DeleteApplicationInput{}
  1022  	}
  1023  
  1024  	output = &DeleteApplicationOutput{}
  1025  	req = c.newRequest(op, input, output)
  1026  	req.Handlers.Unmarshal.Swap(query.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1027  	return
  1028  }
  1029  
  1030  // DeleteApplication API operation for AWS Elastic Beanstalk.
  1031  //
  1032  // Deletes the specified application along with all associated versions and
  1033  // configurations. The application versions will not be deleted from your Amazon
  1034  // S3 bucket.
  1035  //
  1036  // You cannot delete an application that has a running environment.
  1037  //
  1038  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1039  // with awserr.Error's Code and Message methods to get detailed information about
  1040  // the error.
  1041  //
  1042  // See the AWS API reference guide for AWS Elastic Beanstalk's
  1043  // API operation DeleteApplication for usage and error information.
  1044  //
  1045  // Returned Error Codes:
  1046  //   * ErrCodeOperationInProgressException "OperationInProgressFailure"
  1047  //   Unable to perform the specified operation because another operation that
  1048  //   effects an element in this activity is already in progress.
  1049  //
  1050  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DeleteApplication
  1051  func (c *ElasticBeanstalk) DeleteApplication(input *DeleteApplicationInput) (*DeleteApplicationOutput, error) {
  1052  	req, out := c.DeleteApplicationRequest(input)
  1053  	return out, req.Send()
  1054  }
  1055  
  1056  // DeleteApplicationWithContext is the same as DeleteApplication with the addition of
  1057  // the ability to pass a context and additional request options.
  1058  //
  1059  // See DeleteApplication for details on how to use this API operation.
  1060  //
  1061  // The context must be non-nil and will be used for request cancellation. If
  1062  // the context is nil a panic will occur. In the future the SDK may create
  1063  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1064  // for more information on using Contexts.
  1065  func (c *ElasticBeanstalk) DeleteApplicationWithContext(ctx aws.Context, input *DeleteApplicationInput, opts ...request.Option) (*DeleteApplicationOutput, error) {
  1066  	req, out := c.DeleteApplicationRequest(input)
  1067  	req.SetContext(ctx)
  1068  	req.ApplyOptions(opts...)
  1069  	return out, req.Send()
  1070  }
  1071  
  1072  const opDeleteApplicationVersion = "DeleteApplicationVersion"
  1073  
  1074  // DeleteApplicationVersionRequest generates a "aws/request.Request" representing the
  1075  // client's request for the DeleteApplicationVersion operation. The "output" return
  1076  // value will be populated with the request's response once the request completes
  1077  // successfully.
  1078  //
  1079  // Use "Send" method on the returned Request to send the API call to the service.
  1080  // the "output" return value is not valid until after Send returns without error.
  1081  //
  1082  // See DeleteApplicationVersion for more information on using the DeleteApplicationVersion
  1083  // API call, and error handling.
  1084  //
  1085  // This method is useful when you want to inject custom logic or configuration
  1086  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1087  //
  1088  //
  1089  //    // Example sending a request using the DeleteApplicationVersionRequest method.
  1090  //    req, resp := client.DeleteApplicationVersionRequest(params)
  1091  //
  1092  //    err := req.Send()
  1093  //    if err == nil { // resp is now filled
  1094  //        fmt.Println(resp)
  1095  //    }
  1096  //
  1097  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DeleteApplicationVersion
  1098  func (c *ElasticBeanstalk) DeleteApplicationVersionRequest(input *DeleteApplicationVersionInput) (req *request.Request, output *DeleteApplicationVersionOutput) {
  1099  	op := &request.Operation{
  1100  		Name:       opDeleteApplicationVersion,
  1101  		HTTPMethod: "POST",
  1102  		HTTPPath:   "/",
  1103  	}
  1104  
  1105  	if input == nil {
  1106  		input = &DeleteApplicationVersionInput{}
  1107  	}
  1108  
  1109  	output = &DeleteApplicationVersionOutput{}
  1110  	req = c.newRequest(op, input, output)
  1111  	req.Handlers.Unmarshal.Swap(query.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1112  	return
  1113  }
  1114  
  1115  // DeleteApplicationVersion API operation for AWS Elastic Beanstalk.
  1116  //
  1117  // Deletes the specified version from the specified application.
  1118  //
  1119  // You cannot delete an application version that is associated with a running
  1120  // environment.
  1121  //
  1122  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1123  // with awserr.Error's Code and Message methods to get detailed information about
  1124  // the error.
  1125  //
  1126  // See the AWS API reference guide for AWS Elastic Beanstalk's
  1127  // API operation DeleteApplicationVersion for usage and error information.
  1128  //
  1129  // Returned Error Codes:
  1130  //   * ErrCodeSourceBundleDeletionException "SourceBundleDeletionFailure"
  1131  //   Unable to delete the Amazon S3 source bundle associated with the application
  1132  //   version. The application version was deleted successfully.
  1133  //
  1134  //   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
  1135  //   The specified account does not have sufficient privileges for one or more
  1136  //   AWS services.
  1137  //
  1138  //   * ErrCodeOperationInProgressException "OperationInProgressFailure"
  1139  //   Unable to perform the specified operation because another operation that
  1140  //   effects an element in this activity is already in progress.
  1141  //
  1142  //   * ErrCodeS3LocationNotInServiceRegionException "S3LocationNotInServiceRegionException"
  1143  //   The specified S3 bucket does not belong to the S3 region in which the service
  1144  //   is running. The following regions are supported:
  1145  //
  1146  //      * IAD/us-east-1
  1147  //
  1148  //      * PDX/us-west-2
  1149  //
  1150  //      * DUB/eu-west-1
  1151  //
  1152  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DeleteApplicationVersion
  1153  func (c *ElasticBeanstalk) DeleteApplicationVersion(input *DeleteApplicationVersionInput) (*DeleteApplicationVersionOutput, error) {
  1154  	req, out := c.DeleteApplicationVersionRequest(input)
  1155  	return out, req.Send()
  1156  }
  1157  
  1158  // DeleteApplicationVersionWithContext is the same as DeleteApplicationVersion with the addition of
  1159  // the ability to pass a context and additional request options.
  1160  //
  1161  // See DeleteApplicationVersion for details on how to use this API operation.
  1162  //
  1163  // The context must be non-nil and will be used for request cancellation. If
  1164  // the context is nil a panic will occur. In the future the SDK may create
  1165  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1166  // for more information on using Contexts.
  1167  func (c *ElasticBeanstalk) DeleteApplicationVersionWithContext(ctx aws.Context, input *DeleteApplicationVersionInput, opts ...request.Option) (*DeleteApplicationVersionOutput, error) {
  1168  	req, out := c.DeleteApplicationVersionRequest(input)
  1169  	req.SetContext(ctx)
  1170  	req.ApplyOptions(opts...)
  1171  	return out, req.Send()
  1172  }
  1173  
  1174  const opDeleteConfigurationTemplate = "DeleteConfigurationTemplate"
  1175  
  1176  // DeleteConfigurationTemplateRequest generates a "aws/request.Request" representing the
  1177  // client's request for the DeleteConfigurationTemplate operation. The "output" return
  1178  // value will be populated with the request's response once the request completes
  1179  // successfully.
  1180  //
  1181  // Use "Send" method on the returned Request to send the API call to the service.
  1182  // the "output" return value is not valid until after Send returns without error.
  1183  //
  1184  // See DeleteConfigurationTemplate for more information on using the DeleteConfigurationTemplate
  1185  // API call, and error handling.
  1186  //
  1187  // This method is useful when you want to inject custom logic or configuration
  1188  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1189  //
  1190  //
  1191  //    // Example sending a request using the DeleteConfigurationTemplateRequest method.
  1192  //    req, resp := client.DeleteConfigurationTemplateRequest(params)
  1193  //
  1194  //    err := req.Send()
  1195  //    if err == nil { // resp is now filled
  1196  //        fmt.Println(resp)
  1197  //    }
  1198  //
  1199  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DeleteConfigurationTemplate
  1200  func (c *ElasticBeanstalk) DeleteConfigurationTemplateRequest(input *DeleteConfigurationTemplateInput) (req *request.Request, output *DeleteConfigurationTemplateOutput) {
  1201  	op := &request.Operation{
  1202  		Name:       opDeleteConfigurationTemplate,
  1203  		HTTPMethod: "POST",
  1204  		HTTPPath:   "/",
  1205  	}
  1206  
  1207  	if input == nil {
  1208  		input = &DeleteConfigurationTemplateInput{}
  1209  	}
  1210  
  1211  	output = &DeleteConfigurationTemplateOutput{}
  1212  	req = c.newRequest(op, input, output)
  1213  	req.Handlers.Unmarshal.Swap(query.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1214  	return
  1215  }
  1216  
  1217  // DeleteConfigurationTemplate API operation for AWS Elastic Beanstalk.
  1218  //
  1219  // Deletes the specified configuration template.
  1220  //
  1221  // When you launch an environment using a configuration template, the environment
  1222  // gets a copy of the template. You can delete or modify the environment's copy
  1223  // of the template without affecting the running environment.
  1224  //
  1225  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1226  // with awserr.Error's Code and Message methods to get detailed information about
  1227  // the error.
  1228  //
  1229  // See the AWS API reference guide for AWS Elastic Beanstalk's
  1230  // API operation DeleteConfigurationTemplate for usage and error information.
  1231  //
  1232  // Returned Error Codes:
  1233  //   * ErrCodeOperationInProgressException "OperationInProgressFailure"
  1234  //   Unable to perform the specified operation because another operation that
  1235  //   effects an element in this activity is already in progress.
  1236  //
  1237  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DeleteConfigurationTemplate
  1238  func (c *ElasticBeanstalk) DeleteConfigurationTemplate(input *DeleteConfigurationTemplateInput) (*DeleteConfigurationTemplateOutput, error) {
  1239  	req, out := c.DeleteConfigurationTemplateRequest(input)
  1240  	return out, req.Send()
  1241  }
  1242  
  1243  // DeleteConfigurationTemplateWithContext is the same as DeleteConfigurationTemplate with the addition of
  1244  // the ability to pass a context and additional request options.
  1245  //
  1246  // See DeleteConfigurationTemplate 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 *ElasticBeanstalk) DeleteConfigurationTemplateWithContext(ctx aws.Context, input *DeleteConfigurationTemplateInput, opts ...request.Option) (*DeleteConfigurationTemplateOutput, error) {
  1253  	req, out := c.DeleteConfigurationTemplateRequest(input)
  1254  	req.SetContext(ctx)
  1255  	req.ApplyOptions(opts...)
  1256  	return out, req.Send()
  1257  }
  1258  
  1259  const opDeleteEnvironmentConfiguration = "DeleteEnvironmentConfiguration"
  1260  
  1261  // DeleteEnvironmentConfigurationRequest generates a "aws/request.Request" representing the
  1262  // client's request for the DeleteEnvironmentConfiguration 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 DeleteEnvironmentConfiguration for more information on using the DeleteEnvironmentConfiguration
  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 DeleteEnvironmentConfigurationRequest method.
  1277  //    req, resp := client.DeleteEnvironmentConfigurationRequest(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/elasticbeanstalk-2010-12-01/DeleteEnvironmentConfiguration
  1285  func (c *ElasticBeanstalk) DeleteEnvironmentConfigurationRequest(input *DeleteEnvironmentConfigurationInput) (req *request.Request, output *DeleteEnvironmentConfigurationOutput) {
  1286  	op := &request.Operation{
  1287  		Name:       opDeleteEnvironmentConfiguration,
  1288  		HTTPMethod: "POST",
  1289  		HTTPPath:   "/",
  1290  	}
  1291  
  1292  	if input == nil {
  1293  		input = &DeleteEnvironmentConfigurationInput{}
  1294  	}
  1295  
  1296  	output = &DeleteEnvironmentConfigurationOutput{}
  1297  	req = c.newRequest(op, input, output)
  1298  	req.Handlers.Unmarshal.Swap(query.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1299  	return
  1300  }
  1301  
  1302  // DeleteEnvironmentConfiguration API operation for AWS Elastic Beanstalk.
  1303  //
  1304  // Deletes the draft configuration associated with the running environment.
  1305  //
  1306  // Updating a running environment with any configuration changes creates a draft
  1307  // configuration set. You can get the draft configuration using DescribeConfigurationSettings
  1308  // while the update is in progress or if the update fails. The DeploymentStatus
  1309  // for the draft configuration indicates whether the deployment is in process
  1310  // or has failed. The draft configuration remains in existence until it is deleted
  1311  // with this action.
  1312  //
  1313  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1314  // with awserr.Error's Code and Message methods to get detailed information about
  1315  // the error.
  1316  //
  1317  // See the AWS API reference guide for AWS Elastic Beanstalk's
  1318  // API operation DeleteEnvironmentConfiguration for usage and error information.
  1319  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DeleteEnvironmentConfiguration
  1320  func (c *ElasticBeanstalk) DeleteEnvironmentConfiguration(input *DeleteEnvironmentConfigurationInput) (*DeleteEnvironmentConfigurationOutput, error) {
  1321  	req, out := c.DeleteEnvironmentConfigurationRequest(input)
  1322  	return out, req.Send()
  1323  }
  1324  
  1325  // DeleteEnvironmentConfigurationWithContext is the same as DeleteEnvironmentConfiguration with the addition of
  1326  // the ability to pass a context and additional request options.
  1327  //
  1328  // See DeleteEnvironmentConfiguration for details on how to use this API operation.
  1329  //
  1330  // The context must be non-nil and will be used for request cancellation. If
  1331  // the context is nil a panic will occur. In the future the SDK may create
  1332  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1333  // for more information on using Contexts.
  1334  func (c *ElasticBeanstalk) DeleteEnvironmentConfigurationWithContext(ctx aws.Context, input *DeleteEnvironmentConfigurationInput, opts ...request.Option) (*DeleteEnvironmentConfigurationOutput, error) {
  1335  	req, out := c.DeleteEnvironmentConfigurationRequest(input)
  1336  	req.SetContext(ctx)
  1337  	req.ApplyOptions(opts...)
  1338  	return out, req.Send()
  1339  }
  1340  
  1341  const opDeletePlatformVersion = "DeletePlatformVersion"
  1342  
  1343  // DeletePlatformVersionRequest generates a "aws/request.Request" representing the
  1344  // client's request for the DeletePlatformVersion operation. The "output" return
  1345  // value will be populated with the request's response once the request completes
  1346  // successfully.
  1347  //
  1348  // Use "Send" method on the returned Request to send the API call to the service.
  1349  // the "output" return value is not valid until after Send returns without error.
  1350  //
  1351  // See DeletePlatformVersion for more information on using the DeletePlatformVersion
  1352  // API call, and error handling.
  1353  //
  1354  // This method is useful when you want to inject custom logic or configuration
  1355  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1356  //
  1357  //
  1358  //    // Example sending a request using the DeletePlatformVersionRequest method.
  1359  //    req, resp := client.DeletePlatformVersionRequest(params)
  1360  //
  1361  //    err := req.Send()
  1362  //    if err == nil { // resp is now filled
  1363  //        fmt.Println(resp)
  1364  //    }
  1365  //
  1366  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DeletePlatformVersion
  1367  func (c *ElasticBeanstalk) DeletePlatformVersionRequest(input *DeletePlatformVersionInput) (req *request.Request, output *DeletePlatformVersionOutput) {
  1368  	op := &request.Operation{
  1369  		Name:       opDeletePlatformVersion,
  1370  		HTTPMethod: "POST",
  1371  		HTTPPath:   "/",
  1372  	}
  1373  
  1374  	if input == nil {
  1375  		input = &DeletePlatformVersionInput{}
  1376  	}
  1377  
  1378  	output = &DeletePlatformVersionOutput{}
  1379  	req = c.newRequest(op, input, output)
  1380  	return
  1381  }
  1382  
  1383  // DeletePlatformVersion API operation for AWS Elastic Beanstalk.
  1384  //
  1385  // Deletes the specified version of a custom platform.
  1386  //
  1387  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1388  // with awserr.Error's Code and Message methods to get detailed information about
  1389  // the error.
  1390  //
  1391  // See the AWS API reference guide for AWS Elastic Beanstalk's
  1392  // API operation DeletePlatformVersion for usage and error information.
  1393  //
  1394  // Returned Error Codes:
  1395  //   * ErrCodeOperationInProgressException "OperationInProgressFailure"
  1396  //   Unable to perform the specified operation because another operation that
  1397  //   effects an element in this activity is already in progress.
  1398  //
  1399  //   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
  1400  //   The specified account does not have sufficient privileges for one or more
  1401  //   AWS services.
  1402  //
  1403  //   * ErrCodeServiceException "ElasticBeanstalkServiceException"
  1404  //   A generic service exception has occurred.
  1405  //
  1406  //   * ErrCodePlatformVersionStillReferencedException "PlatformVersionStillReferencedException"
  1407  //   You cannot delete the platform version because there are still environments
  1408  //   running on it.
  1409  //
  1410  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DeletePlatformVersion
  1411  func (c *ElasticBeanstalk) DeletePlatformVersion(input *DeletePlatformVersionInput) (*DeletePlatformVersionOutput, error) {
  1412  	req, out := c.DeletePlatformVersionRequest(input)
  1413  	return out, req.Send()
  1414  }
  1415  
  1416  // DeletePlatformVersionWithContext is the same as DeletePlatformVersion with the addition of
  1417  // the ability to pass a context and additional request options.
  1418  //
  1419  // See DeletePlatformVersion for details on how to use this API operation.
  1420  //
  1421  // The context must be non-nil and will be used for request cancellation. If
  1422  // the context is nil a panic will occur. In the future the SDK may create
  1423  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1424  // for more information on using Contexts.
  1425  func (c *ElasticBeanstalk) DeletePlatformVersionWithContext(ctx aws.Context, input *DeletePlatformVersionInput, opts ...request.Option) (*DeletePlatformVersionOutput, error) {
  1426  	req, out := c.DeletePlatformVersionRequest(input)
  1427  	req.SetContext(ctx)
  1428  	req.ApplyOptions(opts...)
  1429  	return out, req.Send()
  1430  }
  1431  
  1432  const opDescribeAccountAttributes = "DescribeAccountAttributes"
  1433  
  1434  // DescribeAccountAttributesRequest generates a "aws/request.Request" representing the
  1435  // client's request for the DescribeAccountAttributes operation. The "output" return
  1436  // value will be populated with the request's response once the request completes
  1437  // successfully.
  1438  //
  1439  // Use "Send" method on the returned Request to send the API call to the service.
  1440  // the "output" return value is not valid until after Send returns without error.
  1441  //
  1442  // See DescribeAccountAttributes for more information on using the DescribeAccountAttributes
  1443  // API call, and error handling.
  1444  //
  1445  // This method is useful when you want to inject custom logic or configuration
  1446  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1447  //
  1448  //
  1449  //    // Example sending a request using the DescribeAccountAttributesRequest method.
  1450  //    req, resp := client.DescribeAccountAttributesRequest(params)
  1451  //
  1452  //    err := req.Send()
  1453  //    if err == nil { // resp is now filled
  1454  //        fmt.Println(resp)
  1455  //    }
  1456  //
  1457  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeAccountAttributes
  1458  func (c *ElasticBeanstalk) DescribeAccountAttributesRequest(input *DescribeAccountAttributesInput) (req *request.Request, output *DescribeAccountAttributesOutput) {
  1459  	op := &request.Operation{
  1460  		Name:       opDescribeAccountAttributes,
  1461  		HTTPMethod: "POST",
  1462  		HTTPPath:   "/",
  1463  	}
  1464  
  1465  	if input == nil {
  1466  		input = &DescribeAccountAttributesInput{}
  1467  	}
  1468  
  1469  	output = &DescribeAccountAttributesOutput{}
  1470  	req = c.newRequest(op, input, output)
  1471  	return
  1472  }
  1473  
  1474  // DescribeAccountAttributes API operation for AWS Elastic Beanstalk.
  1475  //
  1476  // Returns attributes related to AWS Elastic Beanstalk that are associated with
  1477  // the calling AWS account.
  1478  //
  1479  // The result currently has one set of attributes—resource quotas.
  1480  //
  1481  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1482  // with awserr.Error's Code and Message methods to get detailed information about
  1483  // the error.
  1484  //
  1485  // See the AWS API reference guide for AWS Elastic Beanstalk's
  1486  // API operation DescribeAccountAttributes for usage and error information.
  1487  //
  1488  // Returned Error Codes:
  1489  //   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
  1490  //   The specified account does not have sufficient privileges for one or more
  1491  //   AWS services.
  1492  //
  1493  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeAccountAttributes
  1494  func (c *ElasticBeanstalk) DescribeAccountAttributes(input *DescribeAccountAttributesInput) (*DescribeAccountAttributesOutput, error) {
  1495  	req, out := c.DescribeAccountAttributesRequest(input)
  1496  	return out, req.Send()
  1497  }
  1498  
  1499  // DescribeAccountAttributesWithContext is the same as DescribeAccountAttributes with the addition of
  1500  // the ability to pass a context and additional request options.
  1501  //
  1502  // See DescribeAccountAttributes for details on how to use this API operation.
  1503  //
  1504  // The context must be non-nil and will be used for request cancellation. If
  1505  // the context is nil a panic will occur. In the future the SDK may create
  1506  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1507  // for more information on using Contexts.
  1508  func (c *ElasticBeanstalk) DescribeAccountAttributesWithContext(ctx aws.Context, input *DescribeAccountAttributesInput, opts ...request.Option) (*DescribeAccountAttributesOutput, error) {
  1509  	req, out := c.DescribeAccountAttributesRequest(input)
  1510  	req.SetContext(ctx)
  1511  	req.ApplyOptions(opts...)
  1512  	return out, req.Send()
  1513  }
  1514  
  1515  const opDescribeApplicationVersions = "DescribeApplicationVersions"
  1516  
  1517  // DescribeApplicationVersionsRequest generates a "aws/request.Request" representing the
  1518  // client's request for the DescribeApplicationVersions operation. The "output" return
  1519  // value will be populated with the request's response once the request completes
  1520  // successfully.
  1521  //
  1522  // Use "Send" method on the returned Request to send the API call to the service.
  1523  // the "output" return value is not valid until after Send returns without error.
  1524  //
  1525  // See DescribeApplicationVersions for more information on using the DescribeApplicationVersions
  1526  // API call, and error handling.
  1527  //
  1528  // This method is useful when you want to inject custom logic or configuration
  1529  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1530  //
  1531  //
  1532  //    // Example sending a request using the DescribeApplicationVersionsRequest method.
  1533  //    req, resp := client.DescribeApplicationVersionsRequest(params)
  1534  //
  1535  //    err := req.Send()
  1536  //    if err == nil { // resp is now filled
  1537  //        fmt.Println(resp)
  1538  //    }
  1539  //
  1540  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeApplicationVersions
  1541  func (c *ElasticBeanstalk) DescribeApplicationVersionsRequest(input *DescribeApplicationVersionsInput) (req *request.Request, output *DescribeApplicationVersionsOutput) {
  1542  	op := &request.Operation{
  1543  		Name:       opDescribeApplicationVersions,
  1544  		HTTPMethod: "POST",
  1545  		HTTPPath:   "/",
  1546  	}
  1547  
  1548  	if input == nil {
  1549  		input = &DescribeApplicationVersionsInput{}
  1550  	}
  1551  
  1552  	output = &DescribeApplicationVersionsOutput{}
  1553  	req = c.newRequest(op, input, output)
  1554  	return
  1555  }
  1556  
  1557  // DescribeApplicationVersions API operation for AWS Elastic Beanstalk.
  1558  //
  1559  // Retrieve a list of application versions.
  1560  //
  1561  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1562  // with awserr.Error's Code and Message methods to get detailed information about
  1563  // the error.
  1564  //
  1565  // See the AWS API reference guide for AWS Elastic Beanstalk's
  1566  // API operation DescribeApplicationVersions for usage and error information.
  1567  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeApplicationVersions
  1568  func (c *ElasticBeanstalk) DescribeApplicationVersions(input *DescribeApplicationVersionsInput) (*DescribeApplicationVersionsOutput, error) {
  1569  	req, out := c.DescribeApplicationVersionsRequest(input)
  1570  	return out, req.Send()
  1571  }
  1572  
  1573  // DescribeApplicationVersionsWithContext is the same as DescribeApplicationVersions with the addition of
  1574  // the ability to pass a context and additional request options.
  1575  //
  1576  // See DescribeApplicationVersions for details on how to use this API operation.
  1577  //
  1578  // The context must be non-nil and will be used for request cancellation. If
  1579  // the context is nil a panic will occur. In the future the SDK may create
  1580  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1581  // for more information on using Contexts.
  1582  func (c *ElasticBeanstalk) DescribeApplicationVersionsWithContext(ctx aws.Context, input *DescribeApplicationVersionsInput, opts ...request.Option) (*DescribeApplicationVersionsOutput, error) {
  1583  	req, out := c.DescribeApplicationVersionsRequest(input)
  1584  	req.SetContext(ctx)
  1585  	req.ApplyOptions(opts...)
  1586  	return out, req.Send()
  1587  }
  1588  
  1589  const opDescribeApplications = "DescribeApplications"
  1590  
  1591  // DescribeApplicationsRequest generates a "aws/request.Request" representing the
  1592  // client's request for the DescribeApplications operation. The "output" return
  1593  // value will be populated with the request's response once the request completes
  1594  // successfully.
  1595  //
  1596  // Use "Send" method on the returned Request to send the API call to the service.
  1597  // the "output" return value is not valid until after Send returns without error.
  1598  //
  1599  // See DescribeApplications for more information on using the DescribeApplications
  1600  // API call, and error handling.
  1601  //
  1602  // This method is useful when you want to inject custom logic or configuration
  1603  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1604  //
  1605  //
  1606  //    // Example sending a request using the DescribeApplicationsRequest method.
  1607  //    req, resp := client.DescribeApplicationsRequest(params)
  1608  //
  1609  //    err := req.Send()
  1610  //    if err == nil { // resp is now filled
  1611  //        fmt.Println(resp)
  1612  //    }
  1613  //
  1614  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeApplications
  1615  func (c *ElasticBeanstalk) DescribeApplicationsRequest(input *DescribeApplicationsInput) (req *request.Request, output *DescribeApplicationsOutput) {
  1616  	op := &request.Operation{
  1617  		Name:       opDescribeApplications,
  1618  		HTTPMethod: "POST",
  1619  		HTTPPath:   "/",
  1620  	}
  1621  
  1622  	if input == nil {
  1623  		input = &DescribeApplicationsInput{}
  1624  	}
  1625  
  1626  	output = &DescribeApplicationsOutput{}
  1627  	req = c.newRequest(op, input, output)
  1628  	return
  1629  }
  1630  
  1631  // DescribeApplications API operation for AWS Elastic Beanstalk.
  1632  //
  1633  // Returns the descriptions of existing applications.
  1634  //
  1635  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1636  // with awserr.Error's Code and Message methods to get detailed information about
  1637  // the error.
  1638  //
  1639  // See the AWS API reference guide for AWS Elastic Beanstalk's
  1640  // API operation DescribeApplications for usage and error information.
  1641  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeApplications
  1642  func (c *ElasticBeanstalk) DescribeApplications(input *DescribeApplicationsInput) (*DescribeApplicationsOutput, error) {
  1643  	req, out := c.DescribeApplicationsRequest(input)
  1644  	return out, req.Send()
  1645  }
  1646  
  1647  // DescribeApplicationsWithContext is the same as DescribeApplications with the addition of
  1648  // the ability to pass a context and additional request options.
  1649  //
  1650  // See DescribeApplications for details on how to use this API operation.
  1651  //
  1652  // The context must be non-nil and will be used for request cancellation. If
  1653  // the context is nil a panic will occur. In the future the SDK may create
  1654  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1655  // for more information on using Contexts.
  1656  func (c *ElasticBeanstalk) DescribeApplicationsWithContext(ctx aws.Context, input *DescribeApplicationsInput, opts ...request.Option) (*DescribeApplicationsOutput, error) {
  1657  	req, out := c.DescribeApplicationsRequest(input)
  1658  	req.SetContext(ctx)
  1659  	req.ApplyOptions(opts...)
  1660  	return out, req.Send()
  1661  }
  1662  
  1663  const opDescribeConfigurationOptions = "DescribeConfigurationOptions"
  1664  
  1665  // DescribeConfigurationOptionsRequest generates a "aws/request.Request" representing the
  1666  // client's request for the DescribeConfigurationOptions operation. The "output" return
  1667  // value will be populated with the request's response once the request completes
  1668  // successfully.
  1669  //
  1670  // Use "Send" method on the returned Request to send the API call to the service.
  1671  // the "output" return value is not valid until after Send returns without error.
  1672  //
  1673  // See DescribeConfigurationOptions for more information on using the DescribeConfigurationOptions
  1674  // API call, and error handling.
  1675  //
  1676  // This method is useful when you want to inject custom logic or configuration
  1677  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1678  //
  1679  //
  1680  //    // Example sending a request using the DescribeConfigurationOptionsRequest method.
  1681  //    req, resp := client.DescribeConfigurationOptionsRequest(params)
  1682  //
  1683  //    err := req.Send()
  1684  //    if err == nil { // resp is now filled
  1685  //        fmt.Println(resp)
  1686  //    }
  1687  //
  1688  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeConfigurationOptions
  1689  func (c *ElasticBeanstalk) DescribeConfigurationOptionsRequest(input *DescribeConfigurationOptionsInput) (req *request.Request, output *DescribeConfigurationOptionsOutput) {
  1690  	op := &request.Operation{
  1691  		Name:       opDescribeConfigurationOptions,
  1692  		HTTPMethod: "POST",
  1693  		HTTPPath:   "/",
  1694  	}
  1695  
  1696  	if input == nil {
  1697  		input = &DescribeConfigurationOptionsInput{}
  1698  	}
  1699  
  1700  	output = &DescribeConfigurationOptionsOutput{}
  1701  	req = c.newRequest(op, input, output)
  1702  	return
  1703  }
  1704  
  1705  // DescribeConfigurationOptions API operation for AWS Elastic Beanstalk.
  1706  //
  1707  // Describes the configuration options that are used in a particular configuration
  1708  // template or environment, or that a specified solution stack defines. The
  1709  // description includes the values the options, their default values, and an
  1710  // indication of the required action on a running environment if an option value
  1711  // is changed.
  1712  //
  1713  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1714  // with awserr.Error's Code and Message methods to get detailed information about
  1715  // the error.
  1716  //
  1717  // See the AWS API reference guide for AWS Elastic Beanstalk's
  1718  // API operation DescribeConfigurationOptions for usage and error information.
  1719  //
  1720  // Returned Error Codes:
  1721  //   * ErrCodeTooManyBucketsException "TooManyBucketsException"
  1722  //   The specified account has reached its limit of Amazon S3 buckets.
  1723  //
  1724  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeConfigurationOptions
  1725  func (c *ElasticBeanstalk) DescribeConfigurationOptions(input *DescribeConfigurationOptionsInput) (*DescribeConfigurationOptionsOutput, error) {
  1726  	req, out := c.DescribeConfigurationOptionsRequest(input)
  1727  	return out, req.Send()
  1728  }
  1729  
  1730  // DescribeConfigurationOptionsWithContext is the same as DescribeConfigurationOptions with the addition of
  1731  // the ability to pass a context and additional request options.
  1732  //
  1733  // See DescribeConfigurationOptions for details on how to use this API operation.
  1734  //
  1735  // The context must be non-nil and will be used for request cancellation. If
  1736  // the context is nil a panic will occur. In the future the SDK may create
  1737  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1738  // for more information on using Contexts.
  1739  func (c *ElasticBeanstalk) DescribeConfigurationOptionsWithContext(ctx aws.Context, input *DescribeConfigurationOptionsInput, opts ...request.Option) (*DescribeConfigurationOptionsOutput, error) {
  1740  	req, out := c.DescribeConfigurationOptionsRequest(input)
  1741  	req.SetContext(ctx)
  1742  	req.ApplyOptions(opts...)
  1743  	return out, req.Send()
  1744  }
  1745  
  1746  const opDescribeConfigurationSettings = "DescribeConfigurationSettings"
  1747  
  1748  // DescribeConfigurationSettingsRequest generates a "aws/request.Request" representing the
  1749  // client's request for the DescribeConfigurationSettings operation. The "output" return
  1750  // value will be populated with the request's response once the request completes
  1751  // successfully.
  1752  //
  1753  // Use "Send" method on the returned Request to send the API call to the service.
  1754  // the "output" return value is not valid until after Send returns without error.
  1755  //
  1756  // See DescribeConfigurationSettings for more information on using the DescribeConfigurationSettings
  1757  // API call, and error handling.
  1758  //
  1759  // This method is useful when you want to inject custom logic or configuration
  1760  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1761  //
  1762  //
  1763  //    // Example sending a request using the DescribeConfigurationSettingsRequest method.
  1764  //    req, resp := client.DescribeConfigurationSettingsRequest(params)
  1765  //
  1766  //    err := req.Send()
  1767  //    if err == nil { // resp is now filled
  1768  //        fmt.Println(resp)
  1769  //    }
  1770  //
  1771  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeConfigurationSettings
  1772  func (c *ElasticBeanstalk) DescribeConfigurationSettingsRequest(input *DescribeConfigurationSettingsInput) (req *request.Request, output *DescribeConfigurationSettingsOutput) {
  1773  	op := &request.Operation{
  1774  		Name:       opDescribeConfigurationSettings,
  1775  		HTTPMethod: "POST",
  1776  		HTTPPath:   "/",
  1777  	}
  1778  
  1779  	if input == nil {
  1780  		input = &DescribeConfigurationSettingsInput{}
  1781  	}
  1782  
  1783  	output = &DescribeConfigurationSettingsOutput{}
  1784  	req = c.newRequest(op, input, output)
  1785  	return
  1786  }
  1787  
  1788  // DescribeConfigurationSettings API operation for AWS Elastic Beanstalk.
  1789  //
  1790  // Returns a description of the settings for the specified configuration set,
  1791  // that is, either a configuration template or the configuration set associated
  1792  // with a running environment.
  1793  //
  1794  // When describing the settings for the configuration set associated with a
  1795  // running environment, it is possible to receive two sets of setting descriptions.
  1796  // One is the deployed configuration set, and the other is a draft configuration
  1797  // of an environment that is either in the process of deployment or that failed
  1798  // to deploy.
  1799  //
  1800  // Related Topics
  1801  //
  1802  //    * DeleteEnvironmentConfiguration
  1803  //
  1804  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1805  // with awserr.Error's Code and Message methods to get detailed information about
  1806  // the error.
  1807  //
  1808  // See the AWS API reference guide for AWS Elastic Beanstalk's
  1809  // API operation DescribeConfigurationSettings for usage and error information.
  1810  //
  1811  // Returned Error Codes:
  1812  //   * ErrCodeTooManyBucketsException "TooManyBucketsException"
  1813  //   The specified account has reached its limit of Amazon S3 buckets.
  1814  //
  1815  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeConfigurationSettings
  1816  func (c *ElasticBeanstalk) DescribeConfigurationSettings(input *DescribeConfigurationSettingsInput) (*DescribeConfigurationSettingsOutput, error) {
  1817  	req, out := c.DescribeConfigurationSettingsRequest(input)
  1818  	return out, req.Send()
  1819  }
  1820  
  1821  // DescribeConfigurationSettingsWithContext is the same as DescribeConfigurationSettings with the addition of
  1822  // the ability to pass a context and additional request options.
  1823  //
  1824  // See DescribeConfigurationSettings for details on how to use this API operation.
  1825  //
  1826  // The context must be non-nil and will be used for request cancellation. If
  1827  // the context is nil a panic will occur. In the future the SDK may create
  1828  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1829  // for more information on using Contexts.
  1830  func (c *ElasticBeanstalk) DescribeConfigurationSettingsWithContext(ctx aws.Context, input *DescribeConfigurationSettingsInput, opts ...request.Option) (*DescribeConfigurationSettingsOutput, error) {
  1831  	req, out := c.DescribeConfigurationSettingsRequest(input)
  1832  	req.SetContext(ctx)
  1833  	req.ApplyOptions(opts...)
  1834  	return out, req.Send()
  1835  }
  1836  
  1837  const opDescribeEnvironmentHealth = "DescribeEnvironmentHealth"
  1838  
  1839  // DescribeEnvironmentHealthRequest generates a "aws/request.Request" representing the
  1840  // client's request for the DescribeEnvironmentHealth operation. The "output" return
  1841  // value will be populated with the request's response once the request completes
  1842  // successfully.
  1843  //
  1844  // Use "Send" method on the returned Request to send the API call to the service.
  1845  // the "output" return value is not valid until after Send returns without error.
  1846  //
  1847  // See DescribeEnvironmentHealth for more information on using the DescribeEnvironmentHealth
  1848  // API call, and error handling.
  1849  //
  1850  // This method is useful when you want to inject custom logic or configuration
  1851  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1852  //
  1853  //
  1854  //    // Example sending a request using the DescribeEnvironmentHealthRequest method.
  1855  //    req, resp := client.DescribeEnvironmentHealthRequest(params)
  1856  //
  1857  //    err := req.Send()
  1858  //    if err == nil { // resp is now filled
  1859  //        fmt.Println(resp)
  1860  //    }
  1861  //
  1862  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeEnvironmentHealth
  1863  func (c *ElasticBeanstalk) DescribeEnvironmentHealthRequest(input *DescribeEnvironmentHealthInput) (req *request.Request, output *DescribeEnvironmentHealthOutput) {
  1864  	op := &request.Operation{
  1865  		Name:       opDescribeEnvironmentHealth,
  1866  		HTTPMethod: "POST",
  1867  		HTTPPath:   "/",
  1868  	}
  1869  
  1870  	if input == nil {
  1871  		input = &DescribeEnvironmentHealthInput{}
  1872  	}
  1873  
  1874  	output = &DescribeEnvironmentHealthOutput{}
  1875  	req = c.newRequest(op, input, output)
  1876  	return
  1877  }
  1878  
  1879  // DescribeEnvironmentHealth API operation for AWS Elastic Beanstalk.
  1880  //
  1881  // Returns information about the overall health of the specified environment.
  1882  // The DescribeEnvironmentHealth operation is only available with AWS Elastic
  1883  // Beanstalk Enhanced Health.
  1884  //
  1885  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1886  // with awserr.Error's Code and Message methods to get detailed information about
  1887  // the error.
  1888  //
  1889  // See the AWS API reference guide for AWS Elastic Beanstalk's
  1890  // API operation DescribeEnvironmentHealth for usage and error information.
  1891  //
  1892  // Returned Error Codes:
  1893  //   * ErrCodeInvalidRequestException "InvalidRequestException"
  1894  //   One or more input parameters is not valid. Please correct the input parameters
  1895  //   and try the operation again.
  1896  //
  1897  //   * ErrCodeServiceException "ElasticBeanstalkServiceException"
  1898  //   A generic service exception has occurred.
  1899  //
  1900  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeEnvironmentHealth
  1901  func (c *ElasticBeanstalk) DescribeEnvironmentHealth(input *DescribeEnvironmentHealthInput) (*DescribeEnvironmentHealthOutput, error) {
  1902  	req, out := c.DescribeEnvironmentHealthRequest(input)
  1903  	return out, req.Send()
  1904  }
  1905  
  1906  // DescribeEnvironmentHealthWithContext is the same as DescribeEnvironmentHealth with the addition of
  1907  // the ability to pass a context and additional request options.
  1908  //
  1909  // See DescribeEnvironmentHealth for details on how to use this API operation.
  1910  //
  1911  // The context must be non-nil and will be used for request cancellation. If
  1912  // the context is nil a panic will occur. In the future the SDK may create
  1913  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1914  // for more information on using Contexts.
  1915  func (c *ElasticBeanstalk) DescribeEnvironmentHealthWithContext(ctx aws.Context, input *DescribeEnvironmentHealthInput, opts ...request.Option) (*DescribeEnvironmentHealthOutput, error) {
  1916  	req, out := c.DescribeEnvironmentHealthRequest(input)
  1917  	req.SetContext(ctx)
  1918  	req.ApplyOptions(opts...)
  1919  	return out, req.Send()
  1920  }
  1921  
  1922  const opDescribeEnvironmentManagedActionHistory = "DescribeEnvironmentManagedActionHistory"
  1923  
  1924  // DescribeEnvironmentManagedActionHistoryRequest generates a "aws/request.Request" representing the
  1925  // client's request for the DescribeEnvironmentManagedActionHistory operation. The "output" return
  1926  // value will be populated with the request's response once the request completes
  1927  // successfully.
  1928  //
  1929  // Use "Send" method on the returned Request to send the API call to the service.
  1930  // the "output" return value is not valid until after Send returns without error.
  1931  //
  1932  // See DescribeEnvironmentManagedActionHistory for more information on using the DescribeEnvironmentManagedActionHistory
  1933  // API call, and error handling.
  1934  //
  1935  // This method is useful when you want to inject custom logic or configuration
  1936  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1937  //
  1938  //
  1939  //    // Example sending a request using the DescribeEnvironmentManagedActionHistoryRequest method.
  1940  //    req, resp := client.DescribeEnvironmentManagedActionHistoryRequest(params)
  1941  //
  1942  //    err := req.Send()
  1943  //    if err == nil { // resp is now filled
  1944  //        fmt.Println(resp)
  1945  //    }
  1946  //
  1947  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeEnvironmentManagedActionHistory
  1948  func (c *ElasticBeanstalk) DescribeEnvironmentManagedActionHistoryRequest(input *DescribeEnvironmentManagedActionHistoryInput) (req *request.Request, output *DescribeEnvironmentManagedActionHistoryOutput) {
  1949  	op := &request.Operation{
  1950  		Name:       opDescribeEnvironmentManagedActionHistory,
  1951  		HTTPMethod: "POST",
  1952  		HTTPPath:   "/",
  1953  		Paginator: &request.Paginator{
  1954  			InputTokens:     []string{"NextToken"},
  1955  			OutputTokens:    []string{"NextToken"},
  1956  			LimitToken:      "MaxItems",
  1957  			TruncationToken: "",
  1958  		},
  1959  	}
  1960  
  1961  	if input == nil {
  1962  		input = &DescribeEnvironmentManagedActionHistoryInput{}
  1963  	}
  1964  
  1965  	output = &DescribeEnvironmentManagedActionHistoryOutput{}
  1966  	req = c.newRequest(op, input, output)
  1967  	return
  1968  }
  1969  
  1970  // DescribeEnvironmentManagedActionHistory API operation for AWS Elastic Beanstalk.
  1971  //
  1972  // Lists an environment's completed and failed managed actions.
  1973  //
  1974  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1975  // with awserr.Error's Code and Message methods to get detailed information about
  1976  // the error.
  1977  //
  1978  // See the AWS API reference guide for AWS Elastic Beanstalk's
  1979  // API operation DescribeEnvironmentManagedActionHistory for usage and error information.
  1980  //
  1981  // Returned Error Codes:
  1982  //   * ErrCodeServiceException "ElasticBeanstalkServiceException"
  1983  //   A generic service exception has occurred.
  1984  //
  1985  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeEnvironmentManagedActionHistory
  1986  func (c *ElasticBeanstalk) DescribeEnvironmentManagedActionHistory(input *DescribeEnvironmentManagedActionHistoryInput) (*DescribeEnvironmentManagedActionHistoryOutput, error) {
  1987  	req, out := c.DescribeEnvironmentManagedActionHistoryRequest(input)
  1988  	return out, req.Send()
  1989  }
  1990  
  1991  // DescribeEnvironmentManagedActionHistoryWithContext is the same as DescribeEnvironmentManagedActionHistory with the addition of
  1992  // the ability to pass a context and additional request options.
  1993  //
  1994  // See DescribeEnvironmentManagedActionHistory for details on how to use this API operation.
  1995  //
  1996  // The context must be non-nil and will be used for request cancellation. If
  1997  // the context is nil a panic will occur. In the future the SDK may create
  1998  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1999  // for more information on using Contexts.
  2000  func (c *ElasticBeanstalk) DescribeEnvironmentManagedActionHistoryWithContext(ctx aws.Context, input *DescribeEnvironmentManagedActionHistoryInput, opts ...request.Option) (*DescribeEnvironmentManagedActionHistoryOutput, error) {
  2001  	req, out := c.DescribeEnvironmentManagedActionHistoryRequest(input)
  2002  	req.SetContext(ctx)
  2003  	req.ApplyOptions(opts...)
  2004  	return out, req.Send()
  2005  }
  2006  
  2007  // DescribeEnvironmentManagedActionHistoryPages iterates over the pages of a DescribeEnvironmentManagedActionHistory operation,
  2008  // calling the "fn" function with the response data for each page. To stop
  2009  // iterating, return false from the fn function.
  2010  //
  2011  // See DescribeEnvironmentManagedActionHistory method for more information on how to use this operation.
  2012  //
  2013  // Note: This operation can generate multiple requests to a service.
  2014  //
  2015  //    // Example iterating over at most 3 pages of a DescribeEnvironmentManagedActionHistory operation.
  2016  //    pageNum := 0
  2017  //    err := client.DescribeEnvironmentManagedActionHistoryPages(params,
  2018  //        func(page *elasticbeanstalk.DescribeEnvironmentManagedActionHistoryOutput, lastPage bool) bool {
  2019  //            pageNum++
  2020  //            fmt.Println(page)
  2021  //            return pageNum <= 3
  2022  //        })
  2023  //
  2024  func (c *ElasticBeanstalk) DescribeEnvironmentManagedActionHistoryPages(input *DescribeEnvironmentManagedActionHistoryInput, fn func(*DescribeEnvironmentManagedActionHistoryOutput, bool) bool) error {
  2025  	return c.DescribeEnvironmentManagedActionHistoryPagesWithContext(aws.BackgroundContext(), input, fn)
  2026  }
  2027  
  2028  // DescribeEnvironmentManagedActionHistoryPagesWithContext same as DescribeEnvironmentManagedActionHistoryPages except
  2029  // it takes a Context and allows setting request options on the pages.
  2030  //
  2031  // The context must be non-nil and will be used for request cancellation. If
  2032  // the context is nil a panic will occur. In the future the SDK may create
  2033  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2034  // for more information on using Contexts.
  2035  func (c *ElasticBeanstalk) DescribeEnvironmentManagedActionHistoryPagesWithContext(ctx aws.Context, input *DescribeEnvironmentManagedActionHistoryInput, fn func(*DescribeEnvironmentManagedActionHistoryOutput, bool) bool, opts ...request.Option) error {
  2036  	p := request.Pagination{
  2037  		NewRequest: func() (*request.Request, error) {
  2038  			var inCpy *DescribeEnvironmentManagedActionHistoryInput
  2039  			if input != nil {
  2040  				tmp := *input
  2041  				inCpy = &tmp
  2042  			}
  2043  			req, _ := c.DescribeEnvironmentManagedActionHistoryRequest(inCpy)
  2044  			req.SetContext(ctx)
  2045  			req.ApplyOptions(opts...)
  2046  			return req, nil
  2047  		},
  2048  	}
  2049  
  2050  	for p.Next() {
  2051  		if !fn(p.Page().(*DescribeEnvironmentManagedActionHistoryOutput), !p.HasNextPage()) {
  2052  			break
  2053  		}
  2054  	}
  2055  
  2056  	return p.Err()
  2057  }
  2058  
  2059  const opDescribeEnvironmentManagedActions = "DescribeEnvironmentManagedActions"
  2060  
  2061  // DescribeEnvironmentManagedActionsRequest generates a "aws/request.Request" representing the
  2062  // client's request for the DescribeEnvironmentManagedActions operation. The "output" return
  2063  // value will be populated with the request's response once the request completes
  2064  // successfully.
  2065  //
  2066  // Use "Send" method on the returned Request to send the API call to the service.
  2067  // the "output" return value is not valid until after Send returns without error.
  2068  //
  2069  // See DescribeEnvironmentManagedActions for more information on using the DescribeEnvironmentManagedActions
  2070  // API call, and error handling.
  2071  //
  2072  // This method is useful when you want to inject custom logic or configuration
  2073  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2074  //
  2075  //
  2076  //    // Example sending a request using the DescribeEnvironmentManagedActionsRequest method.
  2077  //    req, resp := client.DescribeEnvironmentManagedActionsRequest(params)
  2078  //
  2079  //    err := req.Send()
  2080  //    if err == nil { // resp is now filled
  2081  //        fmt.Println(resp)
  2082  //    }
  2083  //
  2084  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeEnvironmentManagedActions
  2085  func (c *ElasticBeanstalk) DescribeEnvironmentManagedActionsRequest(input *DescribeEnvironmentManagedActionsInput) (req *request.Request, output *DescribeEnvironmentManagedActionsOutput) {
  2086  	op := &request.Operation{
  2087  		Name:       opDescribeEnvironmentManagedActions,
  2088  		HTTPMethod: "POST",
  2089  		HTTPPath:   "/",
  2090  	}
  2091  
  2092  	if input == nil {
  2093  		input = &DescribeEnvironmentManagedActionsInput{}
  2094  	}
  2095  
  2096  	output = &DescribeEnvironmentManagedActionsOutput{}
  2097  	req = c.newRequest(op, input, output)
  2098  	return
  2099  }
  2100  
  2101  // DescribeEnvironmentManagedActions API operation for AWS Elastic Beanstalk.
  2102  //
  2103  // Lists an environment's upcoming and in-progress managed actions.
  2104  //
  2105  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2106  // with awserr.Error's Code and Message methods to get detailed information about
  2107  // the error.
  2108  //
  2109  // See the AWS API reference guide for AWS Elastic Beanstalk's
  2110  // API operation DescribeEnvironmentManagedActions for usage and error information.
  2111  //
  2112  // Returned Error Codes:
  2113  //   * ErrCodeServiceException "ElasticBeanstalkServiceException"
  2114  //   A generic service exception has occurred.
  2115  //
  2116  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeEnvironmentManagedActions
  2117  func (c *ElasticBeanstalk) DescribeEnvironmentManagedActions(input *DescribeEnvironmentManagedActionsInput) (*DescribeEnvironmentManagedActionsOutput, error) {
  2118  	req, out := c.DescribeEnvironmentManagedActionsRequest(input)
  2119  	return out, req.Send()
  2120  }
  2121  
  2122  // DescribeEnvironmentManagedActionsWithContext is the same as DescribeEnvironmentManagedActions with the addition of
  2123  // the ability to pass a context and additional request options.
  2124  //
  2125  // See DescribeEnvironmentManagedActions for details on how to use this API operation.
  2126  //
  2127  // The context must be non-nil and will be used for request cancellation. If
  2128  // the context is nil a panic will occur. In the future the SDK may create
  2129  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2130  // for more information on using Contexts.
  2131  func (c *ElasticBeanstalk) DescribeEnvironmentManagedActionsWithContext(ctx aws.Context, input *DescribeEnvironmentManagedActionsInput, opts ...request.Option) (*DescribeEnvironmentManagedActionsOutput, error) {
  2132  	req, out := c.DescribeEnvironmentManagedActionsRequest(input)
  2133  	req.SetContext(ctx)
  2134  	req.ApplyOptions(opts...)
  2135  	return out, req.Send()
  2136  }
  2137  
  2138  const opDescribeEnvironmentResources = "DescribeEnvironmentResources"
  2139  
  2140  // DescribeEnvironmentResourcesRequest generates a "aws/request.Request" representing the
  2141  // client's request for the DescribeEnvironmentResources operation. The "output" return
  2142  // value will be populated with the request's response once the request completes
  2143  // successfully.
  2144  //
  2145  // Use "Send" method on the returned Request to send the API call to the service.
  2146  // the "output" return value is not valid until after Send returns without error.
  2147  //
  2148  // See DescribeEnvironmentResources for more information on using the DescribeEnvironmentResources
  2149  // API call, and error handling.
  2150  //
  2151  // This method is useful when you want to inject custom logic or configuration
  2152  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2153  //
  2154  //
  2155  //    // Example sending a request using the DescribeEnvironmentResourcesRequest method.
  2156  //    req, resp := client.DescribeEnvironmentResourcesRequest(params)
  2157  //
  2158  //    err := req.Send()
  2159  //    if err == nil { // resp is now filled
  2160  //        fmt.Println(resp)
  2161  //    }
  2162  //
  2163  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeEnvironmentResources
  2164  func (c *ElasticBeanstalk) DescribeEnvironmentResourcesRequest(input *DescribeEnvironmentResourcesInput) (req *request.Request, output *DescribeEnvironmentResourcesOutput) {
  2165  	op := &request.Operation{
  2166  		Name:       opDescribeEnvironmentResources,
  2167  		HTTPMethod: "POST",
  2168  		HTTPPath:   "/",
  2169  	}
  2170  
  2171  	if input == nil {
  2172  		input = &DescribeEnvironmentResourcesInput{}
  2173  	}
  2174  
  2175  	output = &DescribeEnvironmentResourcesOutput{}
  2176  	req = c.newRequest(op, input, output)
  2177  	return
  2178  }
  2179  
  2180  // DescribeEnvironmentResources API operation for AWS Elastic Beanstalk.
  2181  //
  2182  // Returns AWS resources for this environment.
  2183  //
  2184  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2185  // with awserr.Error's Code and Message methods to get detailed information about
  2186  // the error.
  2187  //
  2188  // See the AWS API reference guide for AWS Elastic Beanstalk's
  2189  // API operation DescribeEnvironmentResources for usage and error information.
  2190  //
  2191  // Returned Error Codes:
  2192  //   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
  2193  //   The specified account does not have sufficient privileges for one or more
  2194  //   AWS services.
  2195  //
  2196  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeEnvironmentResources
  2197  func (c *ElasticBeanstalk) DescribeEnvironmentResources(input *DescribeEnvironmentResourcesInput) (*DescribeEnvironmentResourcesOutput, error) {
  2198  	req, out := c.DescribeEnvironmentResourcesRequest(input)
  2199  	return out, req.Send()
  2200  }
  2201  
  2202  // DescribeEnvironmentResourcesWithContext is the same as DescribeEnvironmentResources with the addition of
  2203  // the ability to pass a context and additional request options.
  2204  //
  2205  // See DescribeEnvironmentResources for details on how to use this API operation.
  2206  //
  2207  // The context must be non-nil and will be used for request cancellation. If
  2208  // the context is nil a panic will occur. In the future the SDK may create
  2209  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2210  // for more information on using Contexts.
  2211  func (c *ElasticBeanstalk) DescribeEnvironmentResourcesWithContext(ctx aws.Context, input *DescribeEnvironmentResourcesInput, opts ...request.Option) (*DescribeEnvironmentResourcesOutput, error) {
  2212  	req, out := c.DescribeEnvironmentResourcesRequest(input)
  2213  	req.SetContext(ctx)
  2214  	req.ApplyOptions(opts...)
  2215  	return out, req.Send()
  2216  }
  2217  
  2218  const opDescribeEnvironments = "DescribeEnvironments"
  2219  
  2220  // DescribeEnvironmentsRequest generates a "aws/request.Request" representing the
  2221  // client's request for the DescribeEnvironments operation. The "output" return
  2222  // value will be populated with the request's response once the request completes
  2223  // successfully.
  2224  //
  2225  // Use "Send" method on the returned Request to send the API call to the service.
  2226  // the "output" return value is not valid until after Send returns without error.
  2227  //
  2228  // See DescribeEnvironments for more information on using the DescribeEnvironments
  2229  // API call, and error handling.
  2230  //
  2231  // This method is useful when you want to inject custom logic or configuration
  2232  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2233  //
  2234  //
  2235  //    // Example sending a request using the DescribeEnvironmentsRequest method.
  2236  //    req, resp := client.DescribeEnvironmentsRequest(params)
  2237  //
  2238  //    err := req.Send()
  2239  //    if err == nil { // resp is now filled
  2240  //        fmt.Println(resp)
  2241  //    }
  2242  //
  2243  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeEnvironments
  2244  func (c *ElasticBeanstalk) DescribeEnvironmentsRequest(input *DescribeEnvironmentsInput) (req *request.Request, output *EnvironmentDescriptionsMessage) {
  2245  	op := &request.Operation{
  2246  		Name:       opDescribeEnvironments,
  2247  		HTTPMethod: "POST",
  2248  		HTTPPath:   "/",
  2249  	}
  2250  
  2251  	if input == nil {
  2252  		input = &DescribeEnvironmentsInput{}
  2253  	}
  2254  
  2255  	output = &EnvironmentDescriptionsMessage{}
  2256  	req = c.newRequest(op, input, output)
  2257  	return
  2258  }
  2259  
  2260  // DescribeEnvironments API operation for AWS Elastic Beanstalk.
  2261  //
  2262  // Returns descriptions for existing environments.
  2263  //
  2264  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2265  // with awserr.Error's Code and Message methods to get detailed information about
  2266  // the error.
  2267  //
  2268  // See the AWS API reference guide for AWS Elastic Beanstalk's
  2269  // API operation DescribeEnvironments for usage and error information.
  2270  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeEnvironments
  2271  func (c *ElasticBeanstalk) DescribeEnvironments(input *DescribeEnvironmentsInput) (*EnvironmentDescriptionsMessage, error) {
  2272  	req, out := c.DescribeEnvironmentsRequest(input)
  2273  	return out, req.Send()
  2274  }
  2275  
  2276  // DescribeEnvironmentsWithContext is the same as DescribeEnvironments with the addition of
  2277  // the ability to pass a context and additional request options.
  2278  //
  2279  // See DescribeEnvironments for details on how to use this API operation.
  2280  //
  2281  // The context must be non-nil and will be used for request cancellation. If
  2282  // the context is nil a panic will occur. In the future the SDK may create
  2283  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2284  // for more information on using Contexts.
  2285  func (c *ElasticBeanstalk) DescribeEnvironmentsWithContext(ctx aws.Context, input *DescribeEnvironmentsInput, opts ...request.Option) (*EnvironmentDescriptionsMessage, error) {
  2286  	req, out := c.DescribeEnvironmentsRequest(input)
  2287  	req.SetContext(ctx)
  2288  	req.ApplyOptions(opts...)
  2289  	return out, req.Send()
  2290  }
  2291  
  2292  const opDescribeEvents = "DescribeEvents"
  2293  
  2294  // DescribeEventsRequest generates a "aws/request.Request" representing the
  2295  // client's request for the DescribeEvents operation. The "output" return
  2296  // value will be populated with the request's response once the request completes
  2297  // successfully.
  2298  //
  2299  // Use "Send" method on the returned Request to send the API call to the service.
  2300  // the "output" return value is not valid until after Send returns without error.
  2301  //
  2302  // See DescribeEvents for more information on using the DescribeEvents
  2303  // API call, and error handling.
  2304  //
  2305  // This method is useful when you want to inject custom logic or configuration
  2306  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2307  //
  2308  //
  2309  //    // Example sending a request using the DescribeEventsRequest method.
  2310  //    req, resp := client.DescribeEventsRequest(params)
  2311  //
  2312  //    err := req.Send()
  2313  //    if err == nil { // resp is now filled
  2314  //        fmt.Println(resp)
  2315  //    }
  2316  //
  2317  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeEvents
  2318  func (c *ElasticBeanstalk) DescribeEventsRequest(input *DescribeEventsInput) (req *request.Request, output *DescribeEventsOutput) {
  2319  	op := &request.Operation{
  2320  		Name:       opDescribeEvents,
  2321  		HTTPMethod: "POST",
  2322  		HTTPPath:   "/",
  2323  		Paginator: &request.Paginator{
  2324  			InputTokens:     []string{"NextToken"},
  2325  			OutputTokens:    []string{"NextToken"},
  2326  			LimitToken:      "MaxRecords",
  2327  			TruncationToken: "",
  2328  		},
  2329  	}
  2330  
  2331  	if input == nil {
  2332  		input = &DescribeEventsInput{}
  2333  	}
  2334  
  2335  	output = &DescribeEventsOutput{}
  2336  	req = c.newRequest(op, input, output)
  2337  	return
  2338  }
  2339  
  2340  // DescribeEvents API operation for AWS Elastic Beanstalk.
  2341  //
  2342  // Returns list of event descriptions matching criteria up to the last 6 weeks.
  2343  //
  2344  // This action returns the most recent 1,000 events from the specified NextToken.
  2345  //
  2346  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2347  // with awserr.Error's Code and Message methods to get detailed information about
  2348  // the error.
  2349  //
  2350  // See the AWS API reference guide for AWS Elastic Beanstalk's
  2351  // API operation DescribeEvents for usage and error information.
  2352  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeEvents
  2353  func (c *ElasticBeanstalk) DescribeEvents(input *DescribeEventsInput) (*DescribeEventsOutput, error) {
  2354  	req, out := c.DescribeEventsRequest(input)
  2355  	return out, req.Send()
  2356  }
  2357  
  2358  // DescribeEventsWithContext is the same as DescribeEvents with the addition of
  2359  // the ability to pass a context and additional request options.
  2360  //
  2361  // See DescribeEvents for details on how to use this API operation.
  2362  //
  2363  // The context must be non-nil and will be used for request cancellation. If
  2364  // the context is nil a panic will occur. In the future the SDK may create
  2365  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2366  // for more information on using Contexts.
  2367  func (c *ElasticBeanstalk) DescribeEventsWithContext(ctx aws.Context, input *DescribeEventsInput, opts ...request.Option) (*DescribeEventsOutput, error) {
  2368  	req, out := c.DescribeEventsRequest(input)
  2369  	req.SetContext(ctx)
  2370  	req.ApplyOptions(opts...)
  2371  	return out, req.Send()
  2372  }
  2373  
  2374  // DescribeEventsPages iterates over the pages of a DescribeEvents operation,
  2375  // calling the "fn" function with the response data for each page. To stop
  2376  // iterating, return false from the fn function.
  2377  //
  2378  // See DescribeEvents method for more information on how to use this operation.
  2379  //
  2380  // Note: This operation can generate multiple requests to a service.
  2381  //
  2382  //    // Example iterating over at most 3 pages of a DescribeEvents operation.
  2383  //    pageNum := 0
  2384  //    err := client.DescribeEventsPages(params,
  2385  //        func(page *elasticbeanstalk.DescribeEventsOutput, lastPage bool) bool {
  2386  //            pageNum++
  2387  //            fmt.Println(page)
  2388  //            return pageNum <= 3
  2389  //        })
  2390  //
  2391  func (c *ElasticBeanstalk) DescribeEventsPages(input *DescribeEventsInput, fn func(*DescribeEventsOutput, bool) bool) error {
  2392  	return c.DescribeEventsPagesWithContext(aws.BackgroundContext(), input, fn)
  2393  }
  2394  
  2395  // DescribeEventsPagesWithContext same as DescribeEventsPages except
  2396  // it takes a Context and allows setting request options on the pages.
  2397  //
  2398  // The context must be non-nil and will be used for request cancellation. If
  2399  // the context is nil a panic will occur. In the future the SDK may create
  2400  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2401  // for more information on using Contexts.
  2402  func (c *ElasticBeanstalk) DescribeEventsPagesWithContext(ctx aws.Context, input *DescribeEventsInput, fn func(*DescribeEventsOutput, bool) bool, opts ...request.Option) error {
  2403  	p := request.Pagination{
  2404  		NewRequest: func() (*request.Request, error) {
  2405  			var inCpy *DescribeEventsInput
  2406  			if input != nil {
  2407  				tmp := *input
  2408  				inCpy = &tmp
  2409  			}
  2410  			req, _ := c.DescribeEventsRequest(inCpy)
  2411  			req.SetContext(ctx)
  2412  			req.ApplyOptions(opts...)
  2413  			return req, nil
  2414  		},
  2415  	}
  2416  
  2417  	for p.Next() {
  2418  		if !fn(p.Page().(*DescribeEventsOutput), !p.HasNextPage()) {
  2419  			break
  2420  		}
  2421  	}
  2422  
  2423  	return p.Err()
  2424  }
  2425  
  2426  const opDescribeInstancesHealth = "DescribeInstancesHealth"
  2427  
  2428  // DescribeInstancesHealthRequest generates a "aws/request.Request" representing the
  2429  // client's request for the DescribeInstancesHealth operation. The "output" return
  2430  // value will be populated with the request's response once the request completes
  2431  // successfully.
  2432  //
  2433  // Use "Send" method on the returned Request to send the API call to the service.
  2434  // the "output" return value is not valid until after Send returns without error.
  2435  //
  2436  // See DescribeInstancesHealth for more information on using the DescribeInstancesHealth
  2437  // API call, and error handling.
  2438  //
  2439  // This method is useful when you want to inject custom logic or configuration
  2440  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2441  //
  2442  //
  2443  //    // Example sending a request using the DescribeInstancesHealthRequest method.
  2444  //    req, resp := client.DescribeInstancesHealthRequest(params)
  2445  //
  2446  //    err := req.Send()
  2447  //    if err == nil { // resp is now filled
  2448  //        fmt.Println(resp)
  2449  //    }
  2450  //
  2451  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeInstancesHealth
  2452  func (c *ElasticBeanstalk) DescribeInstancesHealthRequest(input *DescribeInstancesHealthInput) (req *request.Request, output *DescribeInstancesHealthOutput) {
  2453  	op := &request.Operation{
  2454  		Name:       opDescribeInstancesHealth,
  2455  		HTTPMethod: "POST",
  2456  		HTTPPath:   "/",
  2457  	}
  2458  
  2459  	if input == nil {
  2460  		input = &DescribeInstancesHealthInput{}
  2461  	}
  2462  
  2463  	output = &DescribeInstancesHealthOutput{}
  2464  	req = c.newRequest(op, input, output)
  2465  	return
  2466  }
  2467  
  2468  // DescribeInstancesHealth API operation for AWS Elastic Beanstalk.
  2469  //
  2470  // Retrieves detailed information about the health of instances in your AWS
  2471  // Elastic Beanstalk. This operation requires enhanced health reporting (https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/health-enhanced.html).
  2472  //
  2473  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2474  // with awserr.Error's Code and Message methods to get detailed information about
  2475  // the error.
  2476  //
  2477  // See the AWS API reference guide for AWS Elastic Beanstalk's
  2478  // API operation DescribeInstancesHealth for usage and error information.
  2479  //
  2480  // Returned Error Codes:
  2481  //   * ErrCodeInvalidRequestException "InvalidRequestException"
  2482  //   One or more input parameters is not valid. Please correct the input parameters
  2483  //   and try the operation again.
  2484  //
  2485  //   * ErrCodeServiceException "ElasticBeanstalkServiceException"
  2486  //   A generic service exception has occurred.
  2487  //
  2488  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeInstancesHealth
  2489  func (c *ElasticBeanstalk) DescribeInstancesHealth(input *DescribeInstancesHealthInput) (*DescribeInstancesHealthOutput, error) {
  2490  	req, out := c.DescribeInstancesHealthRequest(input)
  2491  	return out, req.Send()
  2492  }
  2493  
  2494  // DescribeInstancesHealthWithContext is the same as DescribeInstancesHealth with the addition of
  2495  // the ability to pass a context and additional request options.
  2496  //
  2497  // See DescribeInstancesHealth for details on how to use this API operation.
  2498  //
  2499  // The context must be non-nil and will be used for request cancellation. If
  2500  // the context is nil a panic will occur. In the future the SDK may create
  2501  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2502  // for more information on using Contexts.
  2503  func (c *ElasticBeanstalk) DescribeInstancesHealthWithContext(ctx aws.Context, input *DescribeInstancesHealthInput, opts ...request.Option) (*DescribeInstancesHealthOutput, error) {
  2504  	req, out := c.DescribeInstancesHealthRequest(input)
  2505  	req.SetContext(ctx)
  2506  	req.ApplyOptions(opts...)
  2507  	return out, req.Send()
  2508  }
  2509  
  2510  const opDescribePlatformVersion = "DescribePlatformVersion"
  2511  
  2512  // DescribePlatformVersionRequest generates a "aws/request.Request" representing the
  2513  // client's request for the DescribePlatformVersion operation. The "output" return
  2514  // value will be populated with the request's response once the request completes
  2515  // successfully.
  2516  //
  2517  // Use "Send" method on the returned Request to send the API call to the service.
  2518  // the "output" return value is not valid until after Send returns without error.
  2519  //
  2520  // See DescribePlatformVersion for more information on using the DescribePlatformVersion
  2521  // API call, and error handling.
  2522  //
  2523  // This method is useful when you want to inject custom logic or configuration
  2524  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2525  //
  2526  //
  2527  //    // Example sending a request using the DescribePlatformVersionRequest method.
  2528  //    req, resp := client.DescribePlatformVersionRequest(params)
  2529  //
  2530  //    err := req.Send()
  2531  //    if err == nil { // resp is now filled
  2532  //        fmt.Println(resp)
  2533  //    }
  2534  //
  2535  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribePlatformVersion
  2536  func (c *ElasticBeanstalk) DescribePlatformVersionRequest(input *DescribePlatformVersionInput) (req *request.Request, output *DescribePlatformVersionOutput) {
  2537  	op := &request.Operation{
  2538  		Name:       opDescribePlatformVersion,
  2539  		HTTPMethod: "POST",
  2540  		HTTPPath:   "/",
  2541  	}
  2542  
  2543  	if input == nil {
  2544  		input = &DescribePlatformVersionInput{}
  2545  	}
  2546  
  2547  	output = &DescribePlatformVersionOutput{}
  2548  	req = c.newRequest(op, input, output)
  2549  	return
  2550  }
  2551  
  2552  // DescribePlatformVersion API operation for AWS Elastic Beanstalk.
  2553  //
  2554  // Describes a platform version. Provides full details. Compare to ListPlatformVersions,
  2555  // which provides summary information about a list of platform versions.
  2556  //
  2557  // For definitions of platform version and other platform-related terms, see
  2558  // AWS Elastic Beanstalk Platforms Glossary (https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/platforms-glossary.html).
  2559  //
  2560  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2561  // with awserr.Error's Code and Message methods to get detailed information about
  2562  // the error.
  2563  //
  2564  // See the AWS API reference guide for AWS Elastic Beanstalk's
  2565  // API operation DescribePlatformVersion for usage and error information.
  2566  //
  2567  // Returned Error Codes:
  2568  //   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
  2569  //   The specified account does not have sufficient privileges for one or more
  2570  //   AWS services.
  2571  //
  2572  //   * ErrCodeServiceException "ElasticBeanstalkServiceException"
  2573  //   A generic service exception has occurred.
  2574  //
  2575  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribePlatformVersion
  2576  func (c *ElasticBeanstalk) DescribePlatformVersion(input *DescribePlatformVersionInput) (*DescribePlatformVersionOutput, error) {
  2577  	req, out := c.DescribePlatformVersionRequest(input)
  2578  	return out, req.Send()
  2579  }
  2580  
  2581  // DescribePlatformVersionWithContext is the same as DescribePlatformVersion with the addition of
  2582  // the ability to pass a context and additional request options.
  2583  //
  2584  // See DescribePlatformVersion for details on how to use this API operation.
  2585  //
  2586  // The context must be non-nil and will be used for request cancellation. If
  2587  // the context is nil a panic will occur. In the future the SDK may create
  2588  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2589  // for more information on using Contexts.
  2590  func (c *ElasticBeanstalk) DescribePlatformVersionWithContext(ctx aws.Context, input *DescribePlatformVersionInput, opts ...request.Option) (*DescribePlatformVersionOutput, error) {
  2591  	req, out := c.DescribePlatformVersionRequest(input)
  2592  	req.SetContext(ctx)
  2593  	req.ApplyOptions(opts...)
  2594  	return out, req.Send()
  2595  }
  2596  
  2597  const opDisassociateEnvironmentOperationsRole = "DisassociateEnvironmentOperationsRole"
  2598  
  2599  // DisassociateEnvironmentOperationsRoleRequest generates a "aws/request.Request" representing the
  2600  // client's request for the DisassociateEnvironmentOperationsRole operation. The "output" return
  2601  // value will be populated with the request's response once the request completes
  2602  // successfully.
  2603  //
  2604  // Use "Send" method on the returned Request to send the API call to the service.
  2605  // the "output" return value is not valid until after Send returns without error.
  2606  //
  2607  // See DisassociateEnvironmentOperationsRole for more information on using the DisassociateEnvironmentOperationsRole
  2608  // API call, and error handling.
  2609  //
  2610  // This method is useful when you want to inject custom logic or configuration
  2611  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2612  //
  2613  //
  2614  //    // Example sending a request using the DisassociateEnvironmentOperationsRoleRequest method.
  2615  //    req, resp := client.DisassociateEnvironmentOperationsRoleRequest(params)
  2616  //
  2617  //    err := req.Send()
  2618  //    if err == nil { // resp is now filled
  2619  //        fmt.Println(resp)
  2620  //    }
  2621  //
  2622  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DisassociateEnvironmentOperationsRole
  2623  func (c *ElasticBeanstalk) DisassociateEnvironmentOperationsRoleRequest(input *DisassociateEnvironmentOperationsRoleInput) (req *request.Request, output *DisassociateEnvironmentOperationsRoleOutput) {
  2624  	op := &request.Operation{
  2625  		Name:       opDisassociateEnvironmentOperationsRole,
  2626  		HTTPMethod: "POST",
  2627  		HTTPPath:   "/",
  2628  	}
  2629  
  2630  	if input == nil {
  2631  		input = &DisassociateEnvironmentOperationsRoleInput{}
  2632  	}
  2633  
  2634  	output = &DisassociateEnvironmentOperationsRoleOutput{}
  2635  	req = c.newRequest(op, input, output)
  2636  	req.Handlers.Unmarshal.Swap(query.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2637  	return
  2638  }
  2639  
  2640  // DisassociateEnvironmentOperationsRole API operation for AWS Elastic Beanstalk.
  2641  //
  2642  // Disassociate the operations role from an environment. After this call is
  2643  // made, Elastic Beanstalk uses the caller's permissions for permissions to
  2644  // downstream services during subsequent calls acting on this environment. For
  2645  // more information, see Operations roles (https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/iam-operationsrole.html)
  2646  // in the AWS Elastic Beanstalk Developer Guide.
  2647  //
  2648  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2649  // with awserr.Error's Code and Message methods to get detailed information about
  2650  // the error.
  2651  //
  2652  // See the AWS API reference guide for AWS Elastic Beanstalk's
  2653  // API operation DisassociateEnvironmentOperationsRole for usage and error information.
  2654  //
  2655  // Returned Error Codes:
  2656  //   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
  2657  //   The specified account does not have sufficient privileges for one or more
  2658  //   AWS services.
  2659  //
  2660  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DisassociateEnvironmentOperationsRole
  2661  func (c *ElasticBeanstalk) DisassociateEnvironmentOperationsRole(input *DisassociateEnvironmentOperationsRoleInput) (*DisassociateEnvironmentOperationsRoleOutput, error) {
  2662  	req, out := c.DisassociateEnvironmentOperationsRoleRequest(input)
  2663  	return out, req.Send()
  2664  }
  2665  
  2666  // DisassociateEnvironmentOperationsRoleWithContext is the same as DisassociateEnvironmentOperationsRole with the addition of
  2667  // the ability to pass a context and additional request options.
  2668  //
  2669  // See DisassociateEnvironmentOperationsRole for details on how to use this API operation.
  2670  //
  2671  // The context must be non-nil and will be used for request cancellation. If
  2672  // the context is nil a panic will occur. In the future the SDK may create
  2673  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2674  // for more information on using Contexts.
  2675  func (c *ElasticBeanstalk) DisassociateEnvironmentOperationsRoleWithContext(ctx aws.Context, input *DisassociateEnvironmentOperationsRoleInput, opts ...request.Option) (*DisassociateEnvironmentOperationsRoleOutput, error) {
  2676  	req, out := c.DisassociateEnvironmentOperationsRoleRequest(input)
  2677  	req.SetContext(ctx)
  2678  	req.ApplyOptions(opts...)
  2679  	return out, req.Send()
  2680  }
  2681  
  2682  const opListAvailableSolutionStacks = "ListAvailableSolutionStacks"
  2683  
  2684  // ListAvailableSolutionStacksRequest generates a "aws/request.Request" representing the
  2685  // client's request for the ListAvailableSolutionStacks operation. The "output" return
  2686  // value will be populated with the request's response once the request completes
  2687  // successfully.
  2688  //
  2689  // Use "Send" method on the returned Request to send the API call to the service.
  2690  // the "output" return value is not valid until after Send returns without error.
  2691  //
  2692  // See ListAvailableSolutionStacks for more information on using the ListAvailableSolutionStacks
  2693  // API call, and error handling.
  2694  //
  2695  // This method is useful when you want to inject custom logic or configuration
  2696  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2697  //
  2698  //
  2699  //    // Example sending a request using the ListAvailableSolutionStacksRequest method.
  2700  //    req, resp := client.ListAvailableSolutionStacksRequest(params)
  2701  //
  2702  //    err := req.Send()
  2703  //    if err == nil { // resp is now filled
  2704  //        fmt.Println(resp)
  2705  //    }
  2706  //
  2707  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ListAvailableSolutionStacks
  2708  func (c *ElasticBeanstalk) ListAvailableSolutionStacksRequest(input *ListAvailableSolutionStacksInput) (req *request.Request, output *ListAvailableSolutionStacksOutput) {
  2709  	op := &request.Operation{
  2710  		Name:       opListAvailableSolutionStacks,
  2711  		HTTPMethod: "POST",
  2712  		HTTPPath:   "/",
  2713  	}
  2714  
  2715  	if input == nil {
  2716  		input = &ListAvailableSolutionStacksInput{}
  2717  	}
  2718  
  2719  	output = &ListAvailableSolutionStacksOutput{}
  2720  	req = c.newRequest(op, input, output)
  2721  	return
  2722  }
  2723  
  2724  // ListAvailableSolutionStacks API operation for AWS Elastic Beanstalk.
  2725  //
  2726  // Returns a list of the available solution stack names, with the public version
  2727  // first and then in reverse chronological order.
  2728  //
  2729  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2730  // with awserr.Error's Code and Message methods to get detailed information about
  2731  // the error.
  2732  //
  2733  // See the AWS API reference guide for AWS Elastic Beanstalk's
  2734  // API operation ListAvailableSolutionStacks for usage and error information.
  2735  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ListAvailableSolutionStacks
  2736  func (c *ElasticBeanstalk) ListAvailableSolutionStacks(input *ListAvailableSolutionStacksInput) (*ListAvailableSolutionStacksOutput, error) {
  2737  	req, out := c.ListAvailableSolutionStacksRequest(input)
  2738  	return out, req.Send()
  2739  }
  2740  
  2741  // ListAvailableSolutionStacksWithContext is the same as ListAvailableSolutionStacks with the addition of
  2742  // the ability to pass a context and additional request options.
  2743  //
  2744  // See ListAvailableSolutionStacks for details on how to use this API operation.
  2745  //
  2746  // The context must be non-nil and will be used for request cancellation. If
  2747  // the context is nil a panic will occur. In the future the SDK may create
  2748  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2749  // for more information on using Contexts.
  2750  func (c *ElasticBeanstalk) ListAvailableSolutionStacksWithContext(ctx aws.Context, input *ListAvailableSolutionStacksInput, opts ...request.Option) (*ListAvailableSolutionStacksOutput, error) {
  2751  	req, out := c.ListAvailableSolutionStacksRequest(input)
  2752  	req.SetContext(ctx)
  2753  	req.ApplyOptions(opts...)
  2754  	return out, req.Send()
  2755  }
  2756  
  2757  const opListPlatformBranches = "ListPlatformBranches"
  2758  
  2759  // ListPlatformBranchesRequest generates a "aws/request.Request" representing the
  2760  // client's request for the ListPlatformBranches operation. The "output" return
  2761  // value will be populated with the request's response once the request completes
  2762  // successfully.
  2763  //
  2764  // Use "Send" method on the returned Request to send the API call to the service.
  2765  // the "output" return value is not valid until after Send returns without error.
  2766  //
  2767  // See ListPlatformBranches for more information on using the ListPlatformBranches
  2768  // API call, and error handling.
  2769  //
  2770  // This method is useful when you want to inject custom logic or configuration
  2771  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2772  //
  2773  //
  2774  //    // Example sending a request using the ListPlatformBranchesRequest method.
  2775  //    req, resp := client.ListPlatformBranchesRequest(params)
  2776  //
  2777  //    err := req.Send()
  2778  //    if err == nil { // resp is now filled
  2779  //        fmt.Println(resp)
  2780  //    }
  2781  //
  2782  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ListPlatformBranches
  2783  func (c *ElasticBeanstalk) ListPlatformBranchesRequest(input *ListPlatformBranchesInput) (req *request.Request, output *ListPlatformBranchesOutput) {
  2784  	op := &request.Operation{
  2785  		Name:       opListPlatformBranches,
  2786  		HTTPMethod: "POST",
  2787  		HTTPPath:   "/",
  2788  		Paginator: &request.Paginator{
  2789  			InputTokens:     []string{"NextToken"},
  2790  			OutputTokens:    []string{"NextToken"},
  2791  			LimitToken:      "MaxRecords",
  2792  			TruncationToken: "",
  2793  		},
  2794  	}
  2795  
  2796  	if input == nil {
  2797  		input = &ListPlatformBranchesInput{}
  2798  	}
  2799  
  2800  	output = &ListPlatformBranchesOutput{}
  2801  	req = c.newRequest(op, input, output)
  2802  	return
  2803  }
  2804  
  2805  // ListPlatformBranches API operation for AWS Elastic Beanstalk.
  2806  //
  2807  // Lists the platform branches available for your account in an AWS Region.
  2808  // Provides summary information about each platform branch.
  2809  //
  2810  // For definitions of platform branch and other platform-related terms, see
  2811  // AWS Elastic Beanstalk Platforms Glossary (https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/platforms-glossary.html).
  2812  //
  2813  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2814  // with awserr.Error's Code and Message methods to get detailed information about
  2815  // the error.
  2816  //
  2817  // See the AWS API reference guide for AWS Elastic Beanstalk's
  2818  // API operation ListPlatformBranches for usage and error information.
  2819  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ListPlatformBranches
  2820  func (c *ElasticBeanstalk) ListPlatformBranches(input *ListPlatformBranchesInput) (*ListPlatformBranchesOutput, error) {
  2821  	req, out := c.ListPlatformBranchesRequest(input)
  2822  	return out, req.Send()
  2823  }
  2824  
  2825  // ListPlatformBranchesWithContext is the same as ListPlatformBranches with the addition of
  2826  // the ability to pass a context and additional request options.
  2827  //
  2828  // See ListPlatformBranches 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 *ElasticBeanstalk) ListPlatformBranchesWithContext(ctx aws.Context, input *ListPlatformBranchesInput, opts ...request.Option) (*ListPlatformBranchesOutput, error) {
  2835  	req, out := c.ListPlatformBranchesRequest(input)
  2836  	req.SetContext(ctx)
  2837  	req.ApplyOptions(opts...)
  2838  	return out, req.Send()
  2839  }
  2840  
  2841  // ListPlatformBranchesPages iterates over the pages of a ListPlatformBranches operation,
  2842  // calling the "fn" function with the response data for each page. To stop
  2843  // iterating, return false from the fn function.
  2844  //
  2845  // See ListPlatformBranches method for more information on how to use this operation.
  2846  //
  2847  // Note: This operation can generate multiple requests to a service.
  2848  //
  2849  //    // Example iterating over at most 3 pages of a ListPlatformBranches operation.
  2850  //    pageNum := 0
  2851  //    err := client.ListPlatformBranchesPages(params,
  2852  //        func(page *elasticbeanstalk.ListPlatformBranchesOutput, lastPage bool) bool {
  2853  //            pageNum++
  2854  //            fmt.Println(page)
  2855  //            return pageNum <= 3
  2856  //        })
  2857  //
  2858  func (c *ElasticBeanstalk) ListPlatformBranchesPages(input *ListPlatformBranchesInput, fn func(*ListPlatformBranchesOutput, bool) bool) error {
  2859  	return c.ListPlatformBranchesPagesWithContext(aws.BackgroundContext(), input, fn)
  2860  }
  2861  
  2862  // ListPlatformBranchesPagesWithContext same as ListPlatformBranchesPages except
  2863  // it takes a Context and allows setting request options on the pages.
  2864  //
  2865  // The context must be non-nil and will be used for request cancellation. If
  2866  // the context is nil a panic will occur. In the future the SDK may create
  2867  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2868  // for more information on using Contexts.
  2869  func (c *ElasticBeanstalk) ListPlatformBranchesPagesWithContext(ctx aws.Context, input *ListPlatformBranchesInput, fn func(*ListPlatformBranchesOutput, bool) bool, opts ...request.Option) error {
  2870  	p := request.Pagination{
  2871  		NewRequest: func() (*request.Request, error) {
  2872  			var inCpy *ListPlatformBranchesInput
  2873  			if input != nil {
  2874  				tmp := *input
  2875  				inCpy = &tmp
  2876  			}
  2877  			req, _ := c.ListPlatformBranchesRequest(inCpy)
  2878  			req.SetContext(ctx)
  2879  			req.ApplyOptions(opts...)
  2880  			return req, nil
  2881  		},
  2882  	}
  2883  
  2884  	for p.Next() {
  2885  		if !fn(p.Page().(*ListPlatformBranchesOutput), !p.HasNextPage()) {
  2886  			break
  2887  		}
  2888  	}
  2889  
  2890  	return p.Err()
  2891  }
  2892  
  2893  const opListPlatformVersions = "ListPlatformVersions"
  2894  
  2895  // ListPlatformVersionsRequest generates a "aws/request.Request" representing the
  2896  // client's request for the ListPlatformVersions operation. The "output" return
  2897  // value will be populated with the request's response once the request completes
  2898  // successfully.
  2899  //
  2900  // Use "Send" method on the returned Request to send the API call to the service.
  2901  // the "output" return value is not valid until after Send returns without error.
  2902  //
  2903  // See ListPlatformVersions for more information on using the ListPlatformVersions
  2904  // API call, and error handling.
  2905  //
  2906  // This method is useful when you want to inject custom logic or configuration
  2907  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2908  //
  2909  //
  2910  //    // Example sending a request using the ListPlatformVersionsRequest method.
  2911  //    req, resp := client.ListPlatformVersionsRequest(params)
  2912  //
  2913  //    err := req.Send()
  2914  //    if err == nil { // resp is now filled
  2915  //        fmt.Println(resp)
  2916  //    }
  2917  //
  2918  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ListPlatformVersions
  2919  func (c *ElasticBeanstalk) ListPlatformVersionsRequest(input *ListPlatformVersionsInput) (req *request.Request, output *ListPlatformVersionsOutput) {
  2920  	op := &request.Operation{
  2921  		Name:       opListPlatformVersions,
  2922  		HTTPMethod: "POST",
  2923  		HTTPPath:   "/",
  2924  		Paginator: &request.Paginator{
  2925  			InputTokens:     []string{"NextToken"},
  2926  			OutputTokens:    []string{"NextToken"},
  2927  			LimitToken:      "MaxRecords",
  2928  			TruncationToken: "",
  2929  		},
  2930  	}
  2931  
  2932  	if input == nil {
  2933  		input = &ListPlatformVersionsInput{}
  2934  	}
  2935  
  2936  	output = &ListPlatformVersionsOutput{}
  2937  	req = c.newRequest(op, input, output)
  2938  	return
  2939  }
  2940  
  2941  // ListPlatformVersions API operation for AWS Elastic Beanstalk.
  2942  //
  2943  // Lists the platform versions available for your account in an AWS Region.
  2944  // Provides summary information about each platform version. Compare to DescribePlatformVersion,
  2945  // which provides full details about a single platform version.
  2946  //
  2947  // For definitions of platform version and other platform-related terms, see
  2948  // AWS Elastic Beanstalk Platforms Glossary (https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/platforms-glossary.html).
  2949  //
  2950  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2951  // with awserr.Error's Code and Message methods to get detailed information about
  2952  // the error.
  2953  //
  2954  // See the AWS API reference guide for AWS Elastic Beanstalk's
  2955  // API operation ListPlatformVersions for usage and error information.
  2956  //
  2957  // Returned Error Codes:
  2958  //   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
  2959  //   The specified account does not have sufficient privileges for one or more
  2960  //   AWS services.
  2961  //
  2962  //   * ErrCodeServiceException "ElasticBeanstalkServiceException"
  2963  //   A generic service exception has occurred.
  2964  //
  2965  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ListPlatformVersions
  2966  func (c *ElasticBeanstalk) ListPlatformVersions(input *ListPlatformVersionsInput) (*ListPlatformVersionsOutput, error) {
  2967  	req, out := c.ListPlatformVersionsRequest(input)
  2968  	return out, req.Send()
  2969  }
  2970  
  2971  // ListPlatformVersionsWithContext is the same as ListPlatformVersions with the addition of
  2972  // the ability to pass a context and additional request options.
  2973  //
  2974  // See ListPlatformVersions for details on how to use this API operation.
  2975  //
  2976  // The context must be non-nil and will be used for request cancellation. If
  2977  // the context is nil a panic will occur. In the future the SDK may create
  2978  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2979  // for more information on using Contexts.
  2980  func (c *ElasticBeanstalk) ListPlatformVersionsWithContext(ctx aws.Context, input *ListPlatformVersionsInput, opts ...request.Option) (*ListPlatformVersionsOutput, error) {
  2981  	req, out := c.ListPlatformVersionsRequest(input)
  2982  	req.SetContext(ctx)
  2983  	req.ApplyOptions(opts...)
  2984  	return out, req.Send()
  2985  }
  2986  
  2987  // ListPlatformVersionsPages iterates over the pages of a ListPlatformVersions operation,
  2988  // calling the "fn" function with the response data for each page. To stop
  2989  // iterating, return false from the fn function.
  2990  //
  2991  // See ListPlatformVersions method for more information on how to use this operation.
  2992  //
  2993  // Note: This operation can generate multiple requests to a service.
  2994  //
  2995  //    // Example iterating over at most 3 pages of a ListPlatformVersions operation.
  2996  //    pageNum := 0
  2997  //    err := client.ListPlatformVersionsPages(params,
  2998  //        func(page *elasticbeanstalk.ListPlatformVersionsOutput, lastPage bool) bool {
  2999  //            pageNum++
  3000  //            fmt.Println(page)
  3001  //            return pageNum <= 3
  3002  //        })
  3003  //
  3004  func (c *ElasticBeanstalk) ListPlatformVersionsPages(input *ListPlatformVersionsInput, fn func(*ListPlatformVersionsOutput, bool) bool) error {
  3005  	return c.ListPlatformVersionsPagesWithContext(aws.BackgroundContext(), input, fn)
  3006  }
  3007  
  3008  // ListPlatformVersionsPagesWithContext same as ListPlatformVersionsPages except
  3009  // it takes a Context and allows setting request options on the pages.
  3010  //
  3011  // The context must be non-nil and will be used for request cancellation. If
  3012  // the context is nil a panic will occur. In the future the SDK may create
  3013  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3014  // for more information on using Contexts.
  3015  func (c *ElasticBeanstalk) ListPlatformVersionsPagesWithContext(ctx aws.Context, input *ListPlatformVersionsInput, fn func(*ListPlatformVersionsOutput, bool) bool, opts ...request.Option) error {
  3016  	p := request.Pagination{
  3017  		NewRequest: func() (*request.Request, error) {
  3018  			var inCpy *ListPlatformVersionsInput
  3019  			if input != nil {
  3020  				tmp := *input
  3021  				inCpy = &tmp
  3022  			}
  3023  			req, _ := c.ListPlatformVersionsRequest(inCpy)
  3024  			req.SetContext(ctx)
  3025  			req.ApplyOptions(opts...)
  3026  			return req, nil
  3027  		},
  3028  	}
  3029  
  3030  	for p.Next() {
  3031  		if !fn(p.Page().(*ListPlatformVersionsOutput), !p.HasNextPage()) {
  3032  			break
  3033  		}
  3034  	}
  3035  
  3036  	return p.Err()
  3037  }
  3038  
  3039  const opListTagsForResource = "ListTagsForResource"
  3040  
  3041  // ListTagsForResourceRequest generates a "aws/request.Request" representing the
  3042  // client's request for the ListTagsForResource operation. The "output" return
  3043  // value will be populated with the request's response once the request completes
  3044  // successfully.
  3045  //
  3046  // Use "Send" method on the returned Request to send the API call to the service.
  3047  // the "output" return value is not valid until after Send returns without error.
  3048  //
  3049  // See ListTagsForResource for more information on using the ListTagsForResource
  3050  // API call, and error handling.
  3051  //
  3052  // This method is useful when you want to inject custom logic or configuration
  3053  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3054  //
  3055  //
  3056  //    // Example sending a request using the ListTagsForResourceRequest method.
  3057  //    req, resp := client.ListTagsForResourceRequest(params)
  3058  //
  3059  //    err := req.Send()
  3060  //    if err == nil { // resp is now filled
  3061  //        fmt.Println(resp)
  3062  //    }
  3063  //
  3064  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ListTagsForResource
  3065  func (c *ElasticBeanstalk) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) {
  3066  	op := &request.Operation{
  3067  		Name:       opListTagsForResource,
  3068  		HTTPMethod: "POST",
  3069  		HTTPPath:   "/",
  3070  	}
  3071  
  3072  	if input == nil {
  3073  		input = &ListTagsForResourceInput{}
  3074  	}
  3075  
  3076  	output = &ListTagsForResourceOutput{}
  3077  	req = c.newRequest(op, input, output)
  3078  	return
  3079  }
  3080  
  3081  // ListTagsForResource API operation for AWS Elastic Beanstalk.
  3082  //
  3083  // Return the tags applied to an AWS Elastic Beanstalk resource. The response
  3084  // contains a list of tag key-value pairs.
  3085  //
  3086  // Elastic Beanstalk supports tagging of all of its resources. For details about
  3087  // resource tagging, see Tagging Application Resources (https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/applications-tagging-resources.html).
  3088  //
  3089  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3090  // with awserr.Error's Code and Message methods to get detailed information about
  3091  // the error.
  3092  //
  3093  // See the AWS API reference guide for AWS Elastic Beanstalk's
  3094  // API operation ListTagsForResource for usage and error information.
  3095  //
  3096  // Returned Error Codes:
  3097  //   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
  3098  //   The specified account does not have sufficient privileges for one or more
  3099  //   AWS services.
  3100  //
  3101  //   * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  3102  //   A resource doesn't exist for the specified Amazon Resource Name (ARN).
  3103  //
  3104  //   * ErrCodeResourceTypeNotSupportedException "ResourceTypeNotSupportedException"
  3105  //   The type of the specified Amazon Resource Name (ARN) isn't supported for
  3106  //   this operation.
  3107  //
  3108  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ListTagsForResource
  3109  func (c *ElasticBeanstalk) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) {
  3110  	req, out := c.ListTagsForResourceRequest(input)
  3111  	return out, req.Send()
  3112  }
  3113  
  3114  // ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of
  3115  // the ability to pass a context and additional request options.
  3116  //
  3117  // See ListTagsForResource for details on how to use this API operation.
  3118  //
  3119  // The context must be non-nil and will be used for request cancellation. If
  3120  // the context is nil a panic will occur. In the future the SDK may create
  3121  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3122  // for more information on using Contexts.
  3123  func (c *ElasticBeanstalk) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) {
  3124  	req, out := c.ListTagsForResourceRequest(input)
  3125  	req.SetContext(ctx)
  3126  	req.ApplyOptions(opts...)
  3127  	return out, req.Send()
  3128  }
  3129  
  3130  const opRebuildEnvironment = "RebuildEnvironment"
  3131  
  3132  // RebuildEnvironmentRequest generates a "aws/request.Request" representing the
  3133  // client's request for the RebuildEnvironment operation. The "output" return
  3134  // value will be populated with the request's response once the request completes
  3135  // successfully.
  3136  //
  3137  // Use "Send" method on the returned Request to send the API call to the service.
  3138  // the "output" return value is not valid until after Send returns without error.
  3139  //
  3140  // See RebuildEnvironment for more information on using the RebuildEnvironment
  3141  // API call, and error handling.
  3142  //
  3143  // This method is useful when you want to inject custom logic or configuration
  3144  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3145  //
  3146  //
  3147  //    // Example sending a request using the RebuildEnvironmentRequest method.
  3148  //    req, resp := client.RebuildEnvironmentRequest(params)
  3149  //
  3150  //    err := req.Send()
  3151  //    if err == nil { // resp is now filled
  3152  //        fmt.Println(resp)
  3153  //    }
  3154  //
  3155  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/RebuildEnvironment
  3156  func (c *ElasticBeanstalk) RebuildEnvironmentRequest(input *RebuildEnvironmentInput) (req *request.Request, output *RebuildEnvironmentOutput) {
  3157  	op := &request.Operation{
  3158  		Name:       opRebuildEnvironment,
  3159  		HTTPMethod: "POST",
  3160  		HTTPPath:   "/",
  3161  	}
  3162  
  3163  	if input == nil {
  3164  		input = &RebuildEnvironmentInput{}
  3165  	}
  3166  
  3167  	output = &RebuildEnvironmentOutput{}
  3168  	req = c.newRequest(op, input, output)
  3169  	req.Handlers.Unmarshal.Swap(query.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  3170  	return
  3171  }
  3172  
  3173  // RebuildEnvironment API operation for AWS Elastic Beanstalk.
  3174  //
  3175  // Deletes and recreates all of the AWS resources (for example: the Auto Scaling
  3176  // group, load balancer, etc.) for a specified environment and forces a restart.
  3177  //
  3178  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3179  // with awserr.Error's Code and Message methods to get detailed information about
  3180  // the error.
  3181  //
  3182  // See the AWS API reference guide for AWS Elastic Beanstalk's
  3183  // API operation RebuildEnvironment for usage and error information.
  3184  //
  3185  // Returned Error Codes:
  3186  //   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
  3187  //   The specified account does not have sufficient privileges for one or more
  3188  //   AWS services.
  3189  //
  3190  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/RebuildEnvironment
  3191  func (c *ElasticBeanstalk) RebuildEnvironment(input *RebuildEnvironmentInput) (*RebuildEnvironmentOutput, error) {
  3192  	req, out := c.RebuildEnvironmentRequest(input)
  3193  	return out, req.Send()
  3194  }
  3195  
  3196  // RebuildEnvironmentWithContext is the same as RebuildEnvironment with the addition of
  3197  // the ability to pass a context and additional request options.
  3198  //
  3199  // See RebuildEnvironment for details on how to use this API operation.
  3200  //
  3201  // The context must be non-nil and will be used for request cancellation. If
  3202  // the context is nil a panic will occur. In the future the SDK may create
  3203  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3204  // for more information on using Contexts.
  3205  func (c *ElasticBeanstalk) RebuildEnvironmentWithContext(ctx aws.Context, input *RebuildEnvironmentInput, opts ...request.Option) (*RebuildEnvironmentOutput, error) {
  3206  	req, out := c.RebuildEnvironmentRequest(input)
  3207  	req.SetContext(ctx)
  3208  	req.ApplyOptions(opts...)
  3209  	return out, req.Send()
  3210  }
  3211  
  3212  const opRequestEnvironmentInfo = "RequestEnvironmentInfo"
  3213  
  3214  // RequestEnvironmentInfoRequest generates a "aws/request.Request" representing the
  3215  // client's request for the RequestEnvironmentInfo operation. The "output" return
  3216  // value will be populated with the request's response once the request completes
  3217  // successfully.
  3218  //
  3219  // Use "Send" method on the returned Request to send the API call to the service.
  3220  // the "output" return value is not valid until after Send returns without error.
  3221  //
  3222  // See RequestEnvironmentInfo for more information on using the RequestEnvironmentInfo
  3223  // API call, and error handling.
  3224  //
  3225  // This method is useful when you want to inject custom logic or configuration
  3226  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3227  //
  3228  //
  3229  //    // Example sending a request using the RequestEnvironmentInfoRequest method.
  3230  //    req, resp := client.RequestEnvironmentInfoRequest(params)
  3231  //
  3232  //    err := req.Send()
  3233  //    if err == nil { // resp is now filled
  3234  //        fmt.Println(resp)
  3235  //    }
  3236  //
  3237  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/RequestEnvironmentInfo
  3238  func (c *ElasticBeanstalk) RequestEnvironmentInfoRequest(input *RequestEnvironmentInfoInput) (req *request.Request, output *RequestEnvironmentInfoOutput) {
  3239  	op := &request.Operation{
  3240  		Name:       opRequestEnvironmentInfo,
  3241  		HTTPMethod: "POST",
  3242  		HTTPPath:   "/",
  3243  	}
  3244  
  3245  	if input == nil {
  3246  		input = &RequestEnvironmentInfoInput{}
  3247  	}
  3248  
  3249  	output = &RequestEnvironmentInfoOutput{}
  3250  	req = c.newRequest(op, input, output)
  3251  	req.Handlers.Unmarshal.Swap(query.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  3252  	return
  3253  }
  3254  
  3255  // RequestEnvironmentInfo API operation for AWS Elastic Beanstalk.
  3256  //
  3257  // Initiates a request to compile the specified type of information of the deployed
  3258  // environment.
  3259  //
  3260  // Setting the InfoType to tail compiles the last lines from the application
  3261  // server log files of every Amazon EC2 instance in your environment.
  3262  //
  3263  // Setting the InfoType to bundle compresses the application server log files
  3264  // for every Amazon EC2 instance into a .zip file. Legacy and .NET containers
  3265  // do not support bundle logs.
  3266  //
  3267  // Use RetrieveEnvironmentInfo to obtain the set of logs.
  3268  //
  3269  // Related Topics
  3270  //
  3271  //    * RetrieveEnvironmentInfo
  3272  //
  3273  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3274  // with awserr.Error's Code and Message methods to get detailed information about
  3275  // the error.
  3276  //
  3277  // See the AWS API reference guide for AWS Elastic Beanstalk's
  3278  // API operation RequestEnvironmentInfo for usage and error information.
  3279  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/RequestEnvironmentInfo
  3280  func (c *ElasticBeanstalk) RequestEnvironmentInfo(input *RequestEnvironmentInfoInput) (*RequestEnvironmentInfoOutput, error) {
  3281  	req, out := c.RequestEnvironmentInfoRequest(input)
  3282  	return out, req.Send()
  3283  }
  3284  
  3285  // RequestEnvironmentInfoWithContext is the same as RequestEnvironmentInfo with the addition of
  3286  // the ability to pass a context and additional request options.
  3287  //
  3288  // See RequestEnvironmentInfo for details on how to use this API operation.
  3289  //
  3290  // The context must be non-nil and will be used for request cancellation. If
  3291  // the context is nil a panic will occur. In the future the SDK may create
  3292  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3293  // for more information on using Contexts.
  3294  func (c *ElasticBeanstalk) RequestEnvironmentInfoWithContext(ctx aws.Context, input *RequestEnvironmentInfoInput, opts ...request.Option) (*RequestEnvironmentInfoOutput, error) {
  3295  	req, out := c.RequestEnvironmentInfoRequest(input)
  3296  	req.SetContext(ctx)
  3297  	req.ApplyOptions(opts...)
  3298  	return out, req.Send()
  3299  }
  3300  
  3301  const opRestartAppServer = "RestartAppServer"
  3302  
  3303  // RestartAppServerRequest generates a "aws/request.Request" representing the
  3304  // client's request for the RestartAppServer operation. The "output" return
  3305  // value will be populated with the request's response once the request completes
  3306  // successfully.
  3307  //
  3308  // Use "Send" method on the returned Request to send the API call to the service.
  3309  // the "output" return value is not valid until after Send returns without error.
  3310  //
  3311  // See RestartAppServer for more information on using the RestartAppServer
  3312  // API call, and error handling.
  3313  //
  3314  // This method is useful when you want to inject custom logic or configuration
  3315  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3316  //
  3317  //
  3318  //    // Example sending a request using the RestartAppServerRequest method.
  3319  //    req, resp := client.RestartAppServerRequest(params)
  3320  //
  3321  //    err := req.Send()
  3322  //    if err == nil { // resp is now filled
  3323  //        fmt.Println(resp)
  3324  //    }
  3325  //
  3326  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/RestartAppServer
  3327  func (c *ElasticBeanstalk) RestartAppServerRequest(input *RestartAppServerInput) (req *request.Request, output *RestartAppServerOutput) {
  3328  	op := &request.Operation{
  3329  		Name:       opRestartAppServer,
  3330  		HTTPMethod: "POST",
  3331  		HTTPPath:   "/",
  3332  	}
  3333  
  3334  	if input == nil {
  3335  		input = &RestartAppServerInput{}
  3336  	}
  3337  
  3338  	output = &RestartAppServerOutput{}
  3339  	req = c.newRequest(op, input, output)
  3340  	req.Handlers.Unmarshal.Swap(query.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  3341  	return
  3342  }
  3343  
  3344  // RestartAppServer API operation for AWS Elastic Beanstalk.
  3345  //
  3346  // Causes the environment to restart the application container server running
  3347  // on each Amazon EC2 instance.
  3348  //
  3349  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3350  // with awserr.Error's Code and Message methods to get detailed information about
  3351  // the error.
  3352  //
  3353  // See the AWS API reference guide for AWS Elastic Beanstalk's
  3354  // API operation RestartAppServer for usage and error information.
  3355  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/RestartAppServer
  3356  func (c *ElasticBeanstalk) RestartAppServer(input *RestartAppServerInput) (*RestartAppServerOutput, error) {
  3357  	req, out := c.RestartAppServerRequest(input)
  3358  	return out, req.Send()
  3359  }
  3360  
  3361  // RestartAppServerWithContext is the same as RestartAppServer with the addition of
  3362  // the ability to pass a context and additional request options.
  3363  //
  3364  // See RestartAppServer for details on how to use this API operation.
  3365  //
  3366  // The context must be non-nil and will be used for request cancellation. If
  3367  // the context is nil a panic will occur. In the future the SDK may create
  3368  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3369  // for more information on using Contexts.
  3370  func (c *ElasticBeanstalk) RestartAppServerWithContext(ctx aws.Context, input *RestartAppServerInput, opts ...request.Option) (*RestartAppServerOutput, error) {
  3371  	req, out := c.RestartAppServerRequest(input)
  3372  	req.SetContext(ctx)
  3373  	req.ApplyOptions(opts...)
  3374  	return out, req.Send()
  3375  }
  3376  
  3377  const opRetrieveEnvironmentInfo = "RetrieveEnvironmentInfo"
  3378  
  3379  // RetrieveEnvironmentInfoRequest generates a "aws/request.Request" representing the
  3380  // client's request for the RetrieveEnvironmentInfo operation. The "output" return
  3381  // value will be populated with the request's response once the request completes
  3382  // successfully.
  3383  //
  3384  // Use "Send" method on the returned Request to send the API call to the service.
  3385  // the "output" return value is not valid until after Send returns without error.
  3386  //
  3387  // See RetrieveEnvironmentInfo for more information on using the RetrieveEnvironmentInfo
  3388  // API call, and error handling.
  3389  //
  3390  // This method is useful when you want to inject custom logic or configuration
  3391  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3392  //
  3393  //
  3394  //    // Example sending a request using the RetrieveEnvironmentInfoRequest method.
  3395  //    req, resp := client.RetrieveEnvironmentInfoRequest(params)
  3396  //
  3397  //    err := req.Send()
  3398  //    if err == nil { // resp is now filled
  3399  //        fmt.Println(resp)
  3400  //    }
  3401  //
  3402  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/RetrieveEnvironmentInfo
  3403  func (c *ElasticBeanstalk) RetrieveEnvironmentInfoRequest(input *RetrieveEnvironmentInfoInput) (req *request.Request, output *RetrieveEnvironmentInfoOutput) {
  3404  	op := &request.Operation{
  3405  		Name:       opRetrieveEnvironmentInfo,
  3406  		HTTPMethod: "POST",
  3407  		HTTPPath:   "/",
  3408  	}
  3409  
  3410  	if input == nil {
  3411  		input = &RetrieveEnvironmentInfoInput{}
  3412  	}
  3413  
  3414  	output = &RetrieveEnvironmentInfoOutput{}
  3415  	req = c.newRequest(op, input, output)
  3416  	return
  3417  }
  3418  
  3419  // RetrieveEnvironmentInfo API operation for AWS Elastic Beanstalk.
  3420  //
  3421  // Retrieves the compiled information from a RequestEnvironmentInfo request.
  3422  //
  3423  // Related Topics
  3424  //
  3425  //    * RequestEnvironmentInfo
  3426  //
  3427  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3428  // with awserr.Error's Code and Message methods to get detailed information about
  3429  // the error.
  3430  //
  3431  // See the AWS API reference guide for AWS Elastic Beanstalk's
  3432  // API operation RetrieveEnvironmentInfo for usage and error information.
  3433  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/RetrieveEnvironmentInfo
  3434  func (c *ElasticBeanstalk) RetrieveEnvironmentInfo(input *RetrieveEnvironmentInfoInput) (*RetrieveEnvironmentInfoOutput, error) {
  3435  	req, out := c.RetrieveEnvironmentInfoRequest(input)
  3436  	return out, req.Send()
  3437  }
  3438  
  3439  // RetrieveEnvironmentInfoWithContext is the same as RetrieveEnvironmentInfo with the addition of
  3440  // the ability to pass a context and additional request options.
  3441  //
  3442  // See RetrieveEnvironmentInfo for details on how to use this API operation.
  3443  //
  3444  // The context must be non-nil and will be used for request cancellation. If
  3445  // the context is nil a panic will occur. In the future the SDK may create
  3446  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3447  // for more information on using Contexts.
  3448  func (c *ElasticBeanstalk) RetrieveEnvironmentInfoWithContext(ctx aws.Context, input *RetrieveEnvironmentInfoInput, opts ...request.Option) (*RetrieveEnvironmentInfoOutput, error) {
  3449  	req, out := c.RetrieveEnvironmentInfoRequest(input)
  3450  	req.SetContext(ctx)
  3451  	req.ApplyOptions(opts...)
  3452  	return out, req.Send()
  3453  }
  3454  
  3455  const opSwapEnvironmentCNAMEs = "SwapEnvironmentCNAMEs"
  3456  
  3457  // SwapEnvironmentCNAMEsRequest generates a "aws/request.Request" representing the
  3458  // client's request for the SwapEnvironmentCNAMEs operation. The "output" return
  3459  // value will be populated with the request's response once the request completes
  3460  // successfully.
  3461  //
  3462  // Use "Send" method on the returned Request to send the API call to the service.
  3463  // the "output" return value is not valid until after Send returns without error.
  3464  //
  3465  // See SwapEnvironmentCNAMEs for more information on using the SwapEnvironmentCNAMEs
  3466  // API call, and error handling.
  3467  //
  3468  // This method is useful when you want to inject custom logic or configuration
  3469  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3470  //
  3471  //
  3472  //    // Example sending a request using the SwapEnvironmentCNAMEsRequest method.
  3473  //    req, resp := client.SwapEnvironmentCNAMEsRequest(params)
  3474  //
  3475  //    err := req.Send()
  3476  //    if err == nil { // resp is now filled
  3477  //        fmt.Println(resp)
  3478  //    }
  3479  //
  3480  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/SwapEnvironmentCNAMEs
  3481  func (c *ElasticBeanstalk) SwapEnvironmentCNAMEsRequest(input *SwapEnvironmentCNAMEsInput) (req *request.Request, output *SwapEnvironmentCNAMEsOutput) {
  3482  	op := &request.Operation{
  3483  		Name:       opSwapEnvironmentCNAMEs,
  3484  		HTTPMethod: "POST",
  3485  		HTTPPath:   "/",
  3486  	}
  3487  
  3488  	if input == nil {
  3489  		input = &SwapEnvironmentCNAMEsInput{}
  3490  	}
  3491  
  3492  	output = &SwapEnvironmentCNAMEsOutput{}
  3493  	req = c.newRequest(op, input, output)
  3494  	req.Handlers.Unmarshal.Swap(query.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  3495  	return
  3496  }
  3497  
  3498  // SwapEnvironmentCNAMEs API operation for AWS Elastic Beanstalk.
  3499  //
  3500  // Swaps the CNAMEs of two environments.
  3501  //
  3502  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3503  // with awserr.Error's Code and Message methods to get detailed information about
  3504  // the error.
  3505  //
  3506  // See the AWS API reference guide for AWS Elastic Beanstalk's
  3507  // API operation SwapEnvironmentCNAMEs for usage and error information.
  3508  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/SwapEnvironmentCNAMEs
  3509  func (c *ElasticBeanstalk) SwapEnvironmentCNAMEs(input *SwapEnvironmentCNAMEsInput) (*SwapEnvironmentCNAMEsOutput, error) {
  3510  	req, out := c.SwapEnvironmentCNAMEsRequest(input)
  3511  	return out, req.Send()
  3512  }
  3513  
  3514  // SwapEnvironmentCNAMEsWithContext is the same as SwapEnvironmentCNAMEs with the addition of
  3515  // the ability to pass a context and additional request options.
  3516  //
  3517  // See SwapEnvironmentCNAMEs for details on how to use this API operation.
  3518  //
  3519  // The context must be non-nil and will be used for request cancellation. If
  3520  // the context is nil a panic will occur. In the future the SDK may create
  3521  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3522  // for more information on using Contexts.
  3523  func (c *ElasticBeanstalk) SwapEnvironmentCNAMEsWithContext(ctx aws.Context, input *SwapEnvironmentCNAMEsInput, opts ...request.Option) (*SwapEnvironmentCNAMEsOutput, error) {
  3524  	req, out := c.SwapEnvironmentCNAMEsRequest(input)
  3525  	req.SetContext(ctx)
  3526  	req.ApplyOptions(opts...)
  3527  	return out, req.Send()
  3528  }
  3529  
  3530  const opTerminateEnvironment = "TerminateEnvironment"
  3531  
  3532  // TerminateEnvironmentRequest generates a "aws/request.Request" representing the
  3533  // client's request for the TerminateEnvironment operation. The "output" return
  3534  // value will be populated with the request's response once the request completes
  3535  // successfully.
  3536  //
  3537  // Use "Send" method on the returned Request to send the API call to the service.
  3538  // the "output" return value is not valid until after Send returns without error.
  3539  //
  3540  // See TerminateEnvironment for more information on using the TerminateEnvironment
  3541  // API call, and error handling.
  3542  //
  3543  // This method is useful when you want to inject custom logic or configuration
  3544  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3545  //
  3546  //
  3547  //    // Example sending a request using the TerminateEnvironmentRequest method.
  3548  //    req, resp := client.TerminateEnvironmentRequest(params)
  3549  //
  3550  //    err := req.Send()
  3551  //    if err == nil { // resp is now filled
  3552  //        fmt.Println(resp)
  3553  //    }
  3554  //
  3555  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/TerminateEnvironment
  3556  func (c *ElasticBeanstalk) TerminateEnvironmentRequest(input *TerminateEnvironmentInput) (req *request.Request, output *EnvironmentDescription) {
  3557  	op := &request.Operation{
  3558  		Name:       opTerminateEnvironment,
  3559  		HTTPMethod: "POST",
  3560  		HTTPPath:   "/",
  3561  	}
  3562  
  3563  	if input == nil {
  3564  		input = &TerminateEnvironmentInput{}
  3565  	}
  3566  
  3567  	output = &EnvironmentDescription{}
  3568  	req = c.newRequest(op, input, output)
  3569  	return
  3570  }
  3571  
  3572  // TerminateEnvironment API operation for AWS Elastic Beanstalk.
  3573  //
  3574  // Terminates the specified environment.
  3575  //
  3576  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3577  // with awserr.Error's Code and Message methods to get detailed information about
  3578  // the error.
  3579  //
  3580  // See the AWS API reference guide for AWS Elastic Beanstalk's
  3581  // API operation TerminateEnvironment for usage and error information.
  3582  //
  3583  // Returned Error Codes:
  3584  //   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
  3585  //   The specified account does not have sufficient privileges for one or more
  3586  //   AWS services.
  3587  //
  3588  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/TerminateEnvironment
  3589  func (c *ElasticBeanstalk) TerminateEnvironment(input *TerminateEnvironmentInput) (*EnvironmentDescription, error) {
  3590  	req, out := c.TerminateEnvironmentRequest(input)
  3591  	return out, req.Send()
  3592  }
  3593  
  3594  // TerminateEnvironmentWithContext is the same as TerminateEnvironment with the addition of
  3595  // the ability to pass a context and additional request options.
  3596  //
  3597  // See TerminateEnvironment for details on how to use this API operation.
  3598  //
  3599  // The context must be non-nil and will be used for request cancellation. If
  3600  // the context is nil a panic will occur. In the future the SDK may create
  3601  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3602  // for more information on using Contexts.
  3603  func (c *ElasticBeanstalk) TerminateEnvironmentWithContext(ctx aws.Context, input *TerminateEnvironmentInput, opts ...request.Option) (*EnvironmentDescription, error) {
  3604  	req, out := c.TerminateEnvironmentRequest(input)
  3605  	req.SetContext(ctx)
  3606  	req.ApplyOptions(opts...)
  3607  	return out, req.Send()
  3608  }
  3609  
  3610  const opUpdateApplication = "UpdateApplication"
  3611  
  3612  // UpdateApplicationRequest generates a "aws/request.Request" representing the
  3613  // client's request for the UpdateApplication operation. The "output" return
  3614  // value will be populated with the request's response once the request completes
  3615  // successfully.
  3616  //
  3617  // Use "Send" method on the returned Request to send the API call to the service.
  3618  // the "output" return value is not valid until after Send returns without error.
  3619  //
  3620  // See UpdateApplication for more information on using the UpdateApplication
  3621  // API call, and error handling.
  3622  //
  3623  // This method is useful when you want to inject custom logic or configuration
  3624  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3625  //
  3626  //
  3627  //    // Example sending a request using the UpdateApplicationRequest method.
  3628  //    req, resp := client.UpdateApplicationRequest(params)
  3629  //
  3630  //    err := req.Send()
  3631  //    if err == nil { // resp is now filled
  3632  //        fmt.Println(resp)
  3633  //    }
  3634  //
  3635  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/UpdateApplication
  3636  func (c *ElasticBeanstalk) UpdateApplicationRequest(input *UpdateApplicationInput) (req *request.Request, output *ApplicationDescriptionMessage) {
  3637  	op := &request.Operation{
  3638  		Name:       opUpdateApplication,
  3639  		HTTPMethod: "POST",
  3640  		HTTPPath:   "/",
  3641  	}
  3642  
  3643  	if input == nil {
  3644  		input = &UpdateApplicationInput{}
  3645  	}
  3646  
  3647  	output = &ApplicationDescriptionMessage{}
  3648  	req = c.newRequest(op, input, output)
  3649  	return
  3650  }
  3651  
  3652  // UpdateApplication API operation for AWS Elastic Beanstalk.
  3653  //
  3654  // Updates the specified application to have the specified properties.
  3655  //
  3656  // If a property (for example, description) is not provided, the value remains
  3657  // unchanged. To clear these properties, specify an empty string.
  3658  //
  3659  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3660  // with awserr.Error's Code and Message methods to get detailed information about
  3661  // the error.
  3662  //
  3663  // See the AWS API reference guide for AWS Elastic Beanstalk's
  3664  // API operation UpdateApplication for usage and error information.
  3665  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/UpdateApplication
  3666  func (c *ElasticBeanstalk) UpdateApplication(input *UpdateApplicationInput) (*ApplicationDescriptionMessage, error) {
  3667  	req, out := c.UpdateApplicationRequest(input)
  3668  	return out, req.Send()
  3669  }
  3670  
  3671  // UpdateApplicationWithContext is the same as UpdateApplication with the addition of
  3672  // the ability to pass a context and additional request options.
  3673  //
  3674  // See UpdateApplication for details on how to use this API operation.
  3675  //
  3676  // The context must be non-nil and will be used for request cancellation. If
  3677  // the context is nil a panic will occur. In the future the SDK may create
  3678  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3679  // for more information on using Contexts.
  3680  func (c *ElasticBeanstalk) UpdateApplicationWithContext(ctx aws.Context, input *UpdateApplicationInput, opts ...request.Option) (*ApplicationDescriptionMessage, error) {
  3681  	req, out := c.UpdateApplicationRequest(input)
  3682  	req.SetContext(ctx)
  3683  	req.ApplyOptions(opts...)
  3684  	return out, req.Send()
  3685  }
  3686  
  3687  const opUpdateApplicationResourceLifecycle = "UpdateApplicationResourceLifecycle"
  3688  
  3689  // UpdateApplicationResourceLifecycleRequest generates a "aws/request.Request" representing the
  3690  // client's request for the UpdateApplicationResourceLifecycle operation. The "output" return
  3691  // value will be populated with the request's response once the request completes
  3692  // successfully.
  3693  //
  3694  // Use "Send" method on the returned Request to send the API call to the service.
  3695  // the "output" return value is not valid until after Send returns without error.
  3696  //
  3697  // See UpdateApplicationResourceLifecycle for more information on using the UpdateApplicationResourceLifecycle
  3698  // API call, and error handling.
  3699  //
  3700  // This method is useful when you want to inject custom logic or configuration
  3701  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3702  //
  3703  //
  3704  //    // Example sending a request using the UpdateApplicationResourceLifecycleRequest method.
  3705  //    req, resp := client.UpdateApplicationResourceLifecycleRequest(params)
  3706  //
  3707  //    err := req.Send()
  3708  //    if err == nil { // resp is now filled
  3709  //        fmt.Println(resp)
  3710  //    }
  3711  //
  3712  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/UpdateApplicationResourceLifecycle
  3713  func (c *ElasticBeanstalk) UpdateApplicationResourceLifecycleRequest(input *UpdateApplicationResourceLifecycleInput) (req *request.Request, output *UpdateApplicationResourceLifecycleOutput) {
  3714  	op := &request.Operation{
  3715  		Name:       opUpdateApplicationResourceLifecycle,
  3716  		HTTPMethod: "POST",
  3717  		HTTPPath:   "/",
  3718  	}
  3719  
  3720  	if input == nil {
  3721  		input = &UpdateApplicationResourceLifecycleInput{}
  3722  	}
  3723  
  3724  	output = &UpdateApplicationResourceLifecycleOutput{}
  3725  	req = c.newRequest(op, input, output)
  3726  	return
  3727  }
  3728  
  3729  // UpdateApplicationResourceLifecycle API operation for AWS Elastic Beanstalk.
  3730  //
  3731  // Modifies lifecycle settings for an application.
  3732  //
  3733  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3734  // with awserr.Error's Code and Message methods to get detailed information about
  3735  // the error.
  3736  //
  3737  // See the AWS API reference guide for AWS Elastic Beanstalk's
  3738  // API operation UpdateApplicationResourceLifecycle for usage and error information.
  3739  //
  3740  // Returned Error Codes:
  3741  //   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
  3742  //   The specified account does not have sufficient privileges for one or more
  3743  //   AWS services.
  3744  //
  3745  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/UpdateApplicationResourceLifecycle
  3746  func (c *ElasticBeanstalk) UpdateApplicationResourceLifecycle(input *UpdateApplicationResourceLifecycleInput) (*UpdateApplicationResourceLifecycleOutput, error) {
  3747  	req, out := c.UpdateApplicationResourceLifecycleRequest(input)
  3748  	return out, req.Send()
  3749  }
  3750  
  3751  // UpdateApplicationResourceLifecycleWithContext is the same as UpdateApplicationResourceLifecycle with the addition of
  3752  // the ability to pass a context and additional request options.
  3753  //
  3754  // See UpdateApplicationResourceLifecycle for details on how to use this API operation.
  3755  //
  3756  // The context must be non-nil and will be used for request cancellation. If
  3757  // the context is nil a panic will occur. In the future the SDK may create
  3758  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3759  // for more information on using Contexts.
  3760  func (c *ElasticBeanstalk) UpdateApplicationResourceLifecycleWithContext(ctx aws.Context, input *UpdateApplicationResourceLifecycleInput, opts ...request.Option) (*UpdateApplicationResourceLifecycleOutput, error) {
  3761  	req, out := c.UpdateApplicationResourceLifecycleRequest(input)
  3762  	req.SetContext(ctx)
  3763  	req.ApplyOptions(opts...)
  3764  	return out, req.Send()
  3765  }
  3766  
  3767  const opUpdateApplicationVersion = "UpdateApplicationVersion"
  3768  
  3769  // UpdateApplicationVersionRequest generates a "aws/request.Request" representing the
  3770  // client's request for the UpdateApplicationVersion operation. The "output" return
  3771  // value will be populated with the request's response once the request completes
  3772  // successfully.
  3773  //
  3774  // Use "Send" method on the returned Request to send the API call to the service.
  3775  // the "output" return value is not valid until after Send returns without error.
  3776  //
  3777  // See UpdateApplicationVersion for more information on using the UpdateApplicationVersion
  3778  // API call, and error handling.
  3779  //
  3780  // This method is useful when you want to inject custom logic or configuration
  3781  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3782  //
  3783  //
  3784  //    // Example sending a request using the UpdateApplicationVersionRequest method.
  3785  //    req, resp := client.UpdateApplicationVersionRequest(params)
  3786  //
  3787  //    err := req.Send()
  3788  //    if err == nil { // resp is now filled
  3789  //        fmt.Println(resp)
  3790  //    }
  3791  //
  3792  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/UpdateApplicationVersion
  3793  func (c *ElasticBeanstalk) UpdateApplicationVersionRequest(input *UpdateApplicationVersionInput) (req *request.Request, output *ApplicationVersionDescriptionMessage) {
  3794  	op := &request.Operation{
  3795  		Name:       opUpdateApplicationVersion,
  3796  		HTTPMethod: "POST",
  3797  		HTTPPath:   "/",
  3798  	}
  3799  
  3800  	if input == nil {
  3801  		input = &UpdateApplicationVersionInput{}
  3802  	}
  3803  
  3804  	output = &ApplicationVersionDescriptionMessage{}
  3805  	req = c.newRequest(op, input, output)
  3806  	return
  3807  }
  3808  
  3809  // UpdateApplicationVersion API operation for AWS Elastic Beanstalk.
  3810  //
  3811  // Updates the specified application version to have the specified properties.
  3812  //
  3813  // If a property (for example, description) is not provided, the value remains
  3814  // unchanged. To clear properties, specify an empty string.
  3815  //
  3816  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3817  // with awserr.Error's Code and Message methods to get detailed information about
  3818  // the error.
  3819  //
  3820  // See the AWS API reference guide for AWS Elastic Beanstalk's
  3821  // API operation UpdateApplicationVersion for usage and error information.
  3822  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/UpdateApplicationVersion
  3823  func (c *ElasticBeanstalk) UpdateApplicationVersion(input *UpdateApplicationVersionInput) (*ApplicationVersionDescriptionMessage, error) {
  3824  	req, out := c.UpdateApplicationVersionRequest(input)
  3825  	return out, req.Send()
  3826  }
  3827  
  3828  // UpdateApplicationVersionWithContext is the same as UpdateApplicationVersion with the addition of
  3829  // the ability to pass a context and additional request options.
  3830  //
  3831  // See UpdateApplicationVersion for details on how to use this API operation.
  3832  //
  3833  // The context must be non-nil and will be used for request cancellation. If
  3834  // the context is nil a panic will occur. In the future the SDK may create
  3835  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3836  // for more information on using Contexts.
  3837  func (c *ElasticBeanstalk) UpdateApplicationVersionWithContext(ctx aws.Context, input *UpdateApplicationVersionInput, opts ...request.Option) (*ApplicationVersionDescriptionMessage, error) {
  3838  	req, out := c.UpdateApplicationVersionRequest(input)
  3839  	req.SetContext(ctx)
  3840  	req.ApplyOptions(opts...)
  3841  	return out, req.Send()
  3842  }
  3843  
  3844  const opUpdateConfigurationTemplate = "UpdateConfigurationTemplate"
  3845  
  3846  // UpdateConfigurationTemplateRequest generates a "aws/request.Request" representing the
  3847  // client's request for the UpdateConfigurationTemplate operation. The "output" return
  3848  // value will be populated with the request's response once the request completes
  3849  // successfully.
  3850  //
  3851  // Use "Send" method on the returned Request to send the API call to the service.
  3852  // the "output" return value is not valid until after Send returns without error.
  3853  //
  3854  // See UpdateConfigurationTemplate for more information on using the UpdateConfigurationTemplate
  3855  // API call, and error handling.
  3856  //
  3857  // This method is useful when you want to inject custom logic or configuration
  3858  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3859  //
  3860  //
  3861  //    // Example sending a request using the UpdateConfigurationTemplateRequest method.
  3862  //    req, resp := client.UpdateConfigurationTemplateRequest(params)
  3863  //
  3864  //    err := req.Send()
  3865  //    if err == nil { // resp is now filled
  3866  //        fmt.Println(resp)
  3867  //    }
  3868  //
  3869  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/UpdateConfigurationTemplate
  3870  func (c *ElasticBeanstalk) UpdateConfigurationTemplateRequest(input *UpdateConfigurationTemplateInput) (req *request.Request, output *ConfigurationSettingsDescription) {
  3871  	op := &request.Operation{
  3872  		Name:       opUpdateConfigurationTemplate,
  3873  		HTTPMethod: "POST",
  3874  		HTTPPath:   "/",
  3875  	}
  3876  
  3877  	if input == nil {
  3878  		input = &UpdateConfigurationTemplateInput{}
  3879  	}
  3880  
  3881  	output = &ConfigurationSettingsDescription{}
  3882  	req = c.newRequest(op, input, output)
  3883  	return
  3884  }
  3885  
  3886  // UpdateConfigurationTemplate API operation for AWS Elastic Beanstalk.
  3887  //
  3888  // Updates the specified configuration template to have the specified properties
  3889  // or configuration option values.
  3890  //
  3891  // If a property (for example, ApplicationName) is not provided, its value remains
  3892  // unchanged. To clear such properties, specify an empty string.
  3893  //
  3894  // Related Topics
  3895  //
  3896  //    * DescribeConfigurationOptions
  3897  //
  3898  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3899  // with awserr.Error's Code and Message methods to get detailed information about
  3900  // the error.
  3901  //
  3902  // See the AWS API reference guide for AWS Elastic Beanstalk's
  3903  // API operation UpdateConfigurationTemplate for usage and error information.
  3904  //
  3905  // Returned Error Codes:
  3906  //   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
  3907  //   The specified account does not have sufficient privileges for one or more
  3908  //   AWS services.
  3909  //
  3910  //   * ErrCodeTooManyBucketsException "TooManyBucketsException"
  3911  //   The specified account has reached its limit of Amazon S3 buckets.
  3912  //
  3913  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/UpdateConfigurationTemplate
  3914  func (c *ElasticBeanstalk) UpdateConfigurationTemplate(input *UpdateConfigurationTemplateInput) (*ConfigurationSettingsDescription, error) {
  3915  	req, out := c.UpdateConfigurationTemplateRequest(input)
  3916  	return out, req.Send()
  3917  }
  3918  
  3919  // UpdateConfigurationTemplateWithContext is the same as UpdateConfigurationTemplate with the addition of
  3920  // the ability to pass a context and additional request options.
  3921  //
  3922  // See UpdateConfigurationTemplate for details on how to use this API operation.
  3923  //
  3924  // The context must be non-nil and will be used for request cancellation. If
  3925  // the context is nil a panic will occur. In the future the SDK may create
  3926  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3927  // for more information on using Contexts.
  3928  func (c *ElasticBeanstalk) UpdateConfigurationTemplateWithContext(ctx aws.Context, input *UpdateConfigurationTemplateInput, opts ...request.Option) (*ConfigurationSettingsDescription, error) {
  3929  	req, out := c.UpdateConfigurationTemplateRequest(input)
  3930  	req.SetContext(ctx)
  3931  	req.ApplyOptions(opts...)
  3932  	return out, req.Send()
  3933  }
  3934  
  3935  const opUpdateEnvironment = "UpdateEnvironment"
  3936  
  3937  // UpdateEnvironmentRequest generates a "aws/request.Request" representing the
  3938  // client's request for the UpdateEnvironment operation. The "output" return
  3939  // value will be populated with the request's response once the request completes
  3940  // successfully.
  3941  //
  3942  // Use "Send" method on the returned Request to send the API call to the service.
  3943  // the "output" return value is not valid until after Send returns without error.
  3944  //
  3945  // See UpdateEnvironment for more information on using the UpdateEnvironment
  3946  // API call, and error handling.
  3947  //
  3948  // This method is useful when you want to inject custom logic or configuration
  3949  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3950  //
  3951  //
  3952  //    // Example sending a request using the UpdateEnvironmentRequest method.
  3953  //    req, resp := client.UpdateEnvironmentRequest(params)
  3954  //
  3955  //    err := req.Send()
  3956  //    if err == nil { // resp is now filled
  3957  //        fmt.Println(resp)
  3958  //    }
  3959  //
  3960  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/UpdateEnvironment
  3961  func (c *ElasticBeanstalk) UpdateEnvironmentRequest(input *UpdateEnvironmentInput) (req *request.Request, output *EnvironmentDescription) {
  3962  	op := &request.Operation{
  3963  		Name:       opUpdateEnvironment,
  3964  		HTTPMethod: "POST",
  3965  		HTTPPath:   "/",
  3966  	}
  3967  
  3968  	if input == nil {
  3969  		input = &UpdateEnvironmentInput{}
  3970  	}
  3971  
  3972  	output = &EnvironmentDescription{}
  3973  	req = c.newRequest(op, input, output)
  3974  	return
  3975  }
  3976  
  3977  // UpdateEnvironment API operation for AWS Elastic Beanstalk.
  3978  //
  3979  // Updates the environment description, deploys a new application version, updates
  3980  // the configuration settings to an entirely new configuration template, or
  3981  // updates select configuration option values in the running environment.
  3982  //
  3983  // Attempting to update both the release and configuration is not allowed and
  3984  // AWS Elastic Beanstalk returns an InvalidParameterCombination error.
  3985  //
  3986  // When updating the configuration settings to a new template or individual
  3987  // settings, a draft configuration is created and DescribeConfigurationSettings
  3988  // for this environment returns two setting descriptions with different DeploymentStatus
  3989  // values.
  3990  //
  3991  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3992  // with awserr.Error's Code and Message methods to get detailed information about
  3993  // the error.
  3994  //
  3995  // See the AWS API reference guide for AWS Elastic Beanstalk's
  3996  // API operation UpdateEnvironment for usage and error information.
  3997  //
  3998  // Returned Error Codes:
  3999  //   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
  4000  //   The specified account does not have sufficient privileges for one or more
  4001  //   AWS services.
  4002  //
  4003  //   * ErrCodeTooManyBucketsException "TooManyBucketsException"
  4004  //   The specified account has reached its limit of Amazon S3 buckets.
  4005  //
  4006  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/UpdateEnvironment
  4007  func (c *ElasticBeanstalk) UpdateEnvironment(input *UpdateEnvironmentInput) (*EnvironmentDescription, error) {
  4008  	req, out := c.UpdateEnvironmentRequest(input)
  4009  	return out, req.Send()
  4010  }
  4011  
  4012  // UpdateEnvironmentWithContext is the same as UpdateEnvironment with the addition of
  4013  // the ability to pass a context and additional request options.
  4014  //
  4015  // See UpdateEnvironment for details on how to use this API operation.
  4016  //
  4017  // The context must be non-nil and will be used for request cancellation. If
  4018  // the context is nil a panic will occur. In the future the SDK may create
  4019  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4020  // for more information on using Contexts.
  4021  func (c *ElasticBeanstalk) UpdateEnvironmentWithContext(ctx aws.Context, input *UpdateEnvironmentInput, opts ...request.Option) (*EnvironmentDescription, error) {
  4022  	req, out := c.UpdateEnvironmentRequest(input)
  4023  	req.SetContext(ctx)
  4024  	req.ApplyOptions(opts...)
  4025  	return out, req.Send()
  4026  }
  4027  
  4028  const opUpdateTagsForResource = "UpdateTagsForResource"
  4029  
  4030  // UpdateTagsForResourceRequest generates a "aws/request.Request" representing the
  4031  // client's request for the UpdateTagsForResource operation. The "output" return
  4032  // value will be populated with the request's response once the request completes
  4033  // successfully.
  4034  //
  4035  // Use "Send" method on the returned Request to send the API call to the service.
  4036  // the "output" return value is not valid until after Send returns without error.
  4037  //
  4038  // See UpdateTagsForResource for more information on using the UpdateTagsForResource
  4039  // API call, and error handling.
  4040  //
  4041  // This method is useful when you want to inject custom logic or configuration
  4042  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4043  //
  4044  //
  4045  //    // Example sending a request using the UpdateTagsForResourceRequest method.
  4046  //    req, resp := client.UpdateTagsForResourceRequest(params)
  4047  //
  4048  //    err := req.Send()
  4049  //    if err == nil { // resp is now filled
  4050  //        fmt.Println(resp)
  4051  //    }
  4052  //
  4053  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/UpdateTagsForResource
  4054  func (c *ElasticBeanstalk) UpdateTagsForResourceRequest(input *UpdateTagsForResourceInput) (req *request.Request, output *UpdateTagsForResourceOutput) {
  4055  	op := &request.Operation{
  4056  		Name:       opUpdateTagsForResource,
  4057  		HTTPMethod: "POST",
  4058  		HTTPPath:   "/",
  4059  	}
  4060  
  4061  	if input == nil {
  4062  		input = &UpdateTagsForResourceInput{}
  4063  	}
  4064  
  4065  	output = &UpdateTagsForResourceOutput{}
  4066  	req = c.newRequest(op, input, output)
  4067  	req.Handlers.Unmarshal.Swap(query.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  4068  	return
  4069  }
  4070  
  4071  // UpdateTagsForResource API operation for AWS Elastic Beanstalk.
  4072  //
  4073  // Update the list of tags applied to an AWS Elastic Beanstalk resource. Two
  4074  // lists can be passed: TagsToAdd for tags to add or update, and TagsToRemove.
  4075  //
  4076  // Elastic Beanstalk supports tagging of all of its resources. For details about
  4077  // resource tagging, see Tagging Application Resources (https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/applications-tagging-resources.html).
  4078  //
  4079  // If you create a custom IAM user policy to control permission to this operation,
  4080  // specify one of the following two virtual actions (or both) instead of the
  4081  // API operation name:
  4082  //
  4083  // elasticbeanstalk:AddTags
  4084  //
  4085  // Controls permission to call UpdateTagsForResource and pass a list of tags
  4086  // to add in the TagsToAdd parameter.
  4087  //
  4088  // elasticbeanstalk:RemoveTags
  4089  //
  4090  // Controls permission to call UpdateTagsForResource and pass a list of tag
  4091  // keys to remove in the TagsToRemove parameter.
  4092  //
  4093  // For details about creating a custom user policy, see Creating a Custom User
  4094  // Policy (https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/AWSHowTo.iam.managed-policies.html#AWSHowTo.iam.policies).
  4095  //
  4096  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4097  // with awserr.Error's Code and Message methods to get detailed information about
  4098  // the error.
  4099  //
  4100  // See the AWS API reference guide for AWS Elastic Beanstalk's
  4101  // API operation UpdateTagsForResource for usage and error information.
  4102  //
  4103  // Returned Error Codes:
  4104  //   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
  4105  //   The specified account does not have sufficient privileges for one or more
  4106  //   AWS services.
  4107  //
  4108  //   * ErrCodeOperationInProgressException "OperationInProgressFailure"
  4109  //   Unable to perform the specified operation because another operation that
  4110  //   effects an element in this activity is already in progress.
  4111  //
  4112  //   * ErrCodeTooManyTagsException "TooManyTagsException"
  4113  //   The number of tags in the resource would exceed the number of tags that each
  4114  //   resource can have.
  4115  //
  4116  //   To calculate this, the operation considers both the number of tags the resource
  4117  //   already has and the tags this operation would add if it succeeded.
  4118  //
  4119  //   * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  4120  //   A resource doesn't exist for the specified Amazon Resource Name (ARN).
  4121  //
  4122  //   * ErrCodeResourceTypeNotSupportedException "ResourceTypeNotSupportedException"
  4123  //   The type of the specified Amazon Resource Name (ARN) isn't supported for
  4124  //   this operation.
  4125  //
  4126  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/UpdateTagsForResource
  4127  func (c *ElasticBeanstalk) UpdateTagsForResource(input *UpdateTagsForResourceInput) (*UpdateTagsForResourceOutput, error) {
  4128  	req, out := c.UpdateTagsForResourceRequest(input)
  4129  	return out, req.Send()
  4130  }
  4131  
  4132  // UpdateTagsForResourceWithContext is the same as UpdateTagsForResource with the addition of
  4133  // the ability to pass a context and additional request options.
  4134  //
  4135  // See UpdateTagsForResource for details on how to use this API operation.
  4136  //
  4137  // The context must be non-nil and will be used for request cancellation. If
  4138  // the context is nil a panic will occur. In the future the SDK may create
  4139  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4140  // for more information on using Contexts.
  4141  func (c *ElasticBeanstalk) UpdateTagsForResourceWithContext(ctx aws.Context, input *UpdateTagsForResourceInput, opts ...request.Option) (*UpdateTagsForResourceOutput, error) {
  4142  	req, out := c.UpdateTagsForResourceRequest(input)
  4143  	req.SetContext(ctx)
  4144  	req.ApplyOptions(opts...)
  4145  	return out, req.Send()
  4146  }
  4147  
  4148  const opValidateConfigurationSettings = "ValidateConfigurationSettings"
  4149  
  4150  // ValidateConfigurationSettingsRequest generates a "aws/request.Request" representing the
  4151  // client's request for the ValidateConfigurationSettings operation. The "output" return
  4152  // value will be populated with the request's response once the request completes
  4153  // successfully.
  4154  //
  4155  // Use "Send" method on the returned Request to send the API call to the service.
  4156  // the "output" return value is not valid until after Send returns without error.
  4157  //
  4158  // See ValidateConfigurationSettings for more information on using the ValidateConfigurationSettings
  4159  // API call, and error handling.
  4160  //
  4161  // This method is useful when you want to inject custom logic or configuration
  4162  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4163  //
  4164  //
  4165  //    // Example sending a request using the ValidateConfigurationSettingsRequest method.
  4166  //    req, resp := client.ValidateConfigurationSettingsRequest(params)
  4167  //
  4168  //    err := req.Send()
  4169  //    if err == nil { // resp is now filled
  4170  //        fmt.Println(resp)
  4171  //    }
  4172  //
  4173  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ValidateConfigurationSettings
  4174  func (c *ElasticBeanstalk) ValidateConfigurationSettingsRequest(input *ValidateConfigurationSettingsInput) (req *request.Request, output *ValidateConfigurationSettingsOutput) {
  4175  	op := &request.Operation{
  4176  		Name:       opValidateConfigurationSettings,
  4177  		HTTPMethod: "POST",
  4178  		HTTPPath:   "/",
  4179  	}
  4180  
  4181  	if input == nil {
  4182  		input = &ValidateConfigurationSettingsInput{}
  4183  	}
  4184  
  4185  	output = &ValidateConfigurationSettingsOutput{}
  4186  	req = c.newRequest(op, input, output)
  4187  	return
  4188  }
  4189  
  4190  // ValidateConfigurationSettings API operation for AWS Elastic Beanstalk.
  4191  //
  4192  // Takes a set of configuration settings and either a configuration template
  4193  // or environment, and determines whether those values are valid.
  4194  //
  4195  // This action returns a list of messages indicating any errors or warnings
  4196  // associated with the selection of option values.
  4197  //
  4198  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4199  // with awserr.Error's Code and Message methods to get detailed information about
  4200  // the error.
  4201  //
  4202  // See the AWS API reference guide for AWS Elastic Beanstalk's
  4203  // API operation ValidateConfigurationSettings for usage and error information.
  4204  //
  4205  // Returned Error Codes:
  4206  //   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
  4207  //   The specified account does not have sufficient privileges for one or more
  4208  //   AWS services.
  4209  //
  4210  //   * ErrCodeTooManyBucketsException "TooManyBucketsException"
  4211  //   The specified account has reached its limit of Amazon S3 buckets.
  4212  //
  4213  // See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ValidateConfigurationSettings
  4214  func (c *ElasticBeanstalk) ValidateConfigurationSettings(input *ValidateConfigurationSettingsInput) (*ValidateConfigurationSettingsOutput, error) {
  4215  	req, out := c.ValidateConfigurationSettingsRequest(input)
  4216  	return out, req.Send()
  4217  }
  4218  
  4219  // ValidateConfigurationSettingsWithContext is the same as ValidateConfigurationSettings with the addition of
  4220  // the ability to pass a context and additional request options.
  4221  //
  4222  // See ValidateConfigurationSettings for details on how to use this API operation.
  4223  //
  4224  // The context must be non-nil and will be used for request cancellation. If
  4225  // the context is nil a panic will occur. In the future the SDK may create
  4226  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4227  // for more information on using Contexts.
  4228  func (c *ElasticBeanstalk) ValidateConfigurationSettingsWithContext(ctx aws.Context, input *ValidateConfigurationSettingsInput, opts ...request.Option) (*ValidateConfigurationSettingsOutput, error) {
  4229  	req, out := c.ValidateConfigurationSettingsRequest(input)
  4230  	req.SetContext(ctx)
  4231  	req.ApplyOptions(opts...)
  4232  	return out, req.Send()
  4233  }
  4234  
  4235  type AbortEnvironmentUpdateInput struct {
  4236  	_ struct{} `type:"structure"`
  4237  
  4238  	// This specifies the ID of the environment with the in-progress update that
  4239  	// you want to cancel.
  4240  	EnvironmentId *string `type:"string"`
  4241  
  4242  	// This specifies the name of the environment with the in-progress update that
  4243  	// you want to cancel.
  4244  	EnvironmentName *string `min:"4" type:"string"`
  4245  }
  4246  
  4247  // String returns the string representation.
  4248  //
  4249  // API parameter values that are decorated as "sensitive" in the API will not
  4250  // be included in the string output. The member name will be present, but the
  4251  // value will be replaced with "sensitive".
  4252  func (s AbortEnvironmentUpdateInput) String() string {
  4253  	return awsutil.Prettify(s)
  4254  }
  4255  
  4256  // GoString returns the string representation.
  4257  //
  4258  // API parameter values that are decorated as "sensitive" in the API will not
  4259  // be included in the string output. The member name will be present, but the
  4260  // value will be replaced with "sensitive".
  4261  func (s AbortEnvironmentUpdateInput) GoString() string {
  4262  	return s.String()
  4263  }
  4264  
  4265  // Validate inspects the fields of the type to determine if they are valid.
  4266  func (s *AbortEnvironmentUpdateInput) Validate() error {
  4267  	invalidParams := request.ErrInvalidParams{Context: "AbortEnvironmentUpdateInput"}
  4268  	if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 {
  4269  		invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4))
  4270  	}
  4271  
  4272  	if invalidParams.Len() > 0 {
  4273  		return invalidParams
  4274  	}
  4275  	return nil
  4276  }
  4277  
  4278  // SetEnvironmentId sets the EnvironmentId field's value.
  4279  func (s *AbortEnvironmentUpdateInput) SetEnvironmentId(v string) *AbortEnvironmentUpdateInput {
  4280  	s.EnvironmentId = &v
  4281  	return s
  4282  }
  4283  
  4284  // SetEnvironmentName sets the EnvironmentName field's value.
  4285  func (s *AbortEnvironmentUpdateInput) SetEnvironmentName(v string) *AbortEnvironmentUpdateInput {
  4286  	s.EnvironmentName = &v
  4287  	return s
  4288  }
  4289  
  4290  type AbortEnvironmentUpdateOutput struct {
  4291  	_ struct{} `type:"structure"`
  4292  }
  4293  
  4294  // String returns the string representation.
  4295  //
  4296  // API parameter values that are decorated as "sensitive" in the API will not
  4297  // be included in the string output. The member name will be present, but the
  4298  // value will be replaced with "sensitive".
  4299  func (s AbortEnvironmentUpdateOutput) String() string {
  4300  	return awsutil.Prettify(s)
  4301  }
  4302  
  4303  // GoString returns the string representation.
  4304  //
  4305  // API parameter values that are decorated as "sensitive" in the API will not
  4306  // be included in the string output. The member name will be present, but the
  4307  // value will be replaced with "sensitive".
  4308  func (s AbortEnvironmentUpdateOutput) GoString() string {
  4309  	return s.String()
  4310  }
  4311  
  4312  // Describes the properties of an application.
  4313  type ApplicationDescription struct {
  4314  	_ struct{} `type:"structure"`
  4315  
  4316  	// The Amazon Resource Name (ARN) of the application.
  4317  	ApplicationArn *string `type:"string"`
  4318  
  4319  	// The name of the application.
  4320  	ApplicationName *string `min:"1" type:"string"`
  4321  
  4322  	// The names of the configuration templates associated with this application.
  4323  	ConfigurationTemplates []*string `type:"list"`
  4324  
  4325  	// The date when the application was created.
  4326  	DateCreated *time.Time `type:"timestamp"`
  4327  
  4328  	// The date when the application was last modified.
  4329  	DateUpdated *time.Time `type:"timestamp"`
  4330  
  4331  	// User-defined description of the application.
  4332  	Description *string `type:"string"`
  4333  
  4334  	// The lifecycle settings for the application.
  4335  	ResourceLifecycleConfig *ApplicationResourceLifecycleConfig `type:"structure"`
  4336  
  4337  	// The names of the versions for this application.
  4338  	Versions []*string `type:"list"`
  4339  }
  4340  
  4341  // String returns the string representation.
  4342  //
  4343  // API parameter values that are decorated as "sensitive" in the API will not
  4344  // be included in the string output. The member name will be present, but the
  4345  // value will be replaced with "sensitive".
  4346  func (s ApplicationDescription) String() string {
  4347  	return awsutil.Prettify(s)
  4348  }
  4349  
  4350  // GoString returns the string representation.
  4351  //
  4352  // API parameter values that are decorated as "sensitive" in the API will not
  4353  // be included in the string output. The member name will be present, but the
  4354  // value will be replaced with "sensitive".
  4355  func (s ApplicationDescription) GoString() string {
  4356  	return s.String()
  4357  }
  4358  
  4359  // SetApplicationArn sets the ApplicationArn field's value.
  4360  func (s *ApplicationDescription) SetApplicationArn(v string) *ApplicationDescription {
  4361  	s.ApplicationArn = &v
  4362  	return s
  4363  }
  4364  
  4365  // SetApplicationName sets the ApplicationName field's value.
  4366  func (s *ApplicationDescription) SetApplicationName(v string) *ApplicationDescription {
  4367  	s.ApplicationName = &v
  4368  	return s
  4369  }
  4370  
  4371  // SetConfigurationTemplates sets the ConfigurationTemplates field's value.
  4372  func (s *ApplicationDescription) SetConfigurationTemplates(v []*string) *ApplicationDescription {
  4373  	s.ConfigurationTemplates = v
  4374  	return s
  4375  }
  4376  
  4377  // SetDateCreated sets the DateCreated field's value.
  4378  func (s *ApplicationDescription) SetDateCreated(v time.Time) *ApplicationDescription {
  4379  	s.DateCreated = &v
  4380  	return s
  4381  }
  4382  
  4383  // SetDateUpdated sets the DateUpdated field's value.
  4384  func (s *ApplicationDescription) SetDateUpdated(v time.Time) *ApplicationDescription {
  4385  	s.DateUpdated = &v
  4386  	return s
  4387  }
  4388  
  4389  // SetDescription sets the Description field's value.
  4390  func (s *ApplicationDescription) SetDescription(v string) *ApplicationDescription {
  4391  	s.Description = &v
  4392  	return s
  4393  }
  4394  
  4395  // SetResourceLifecycleConfig sets the ResourceLifecycleConfig field's value.
  4396  func (s *ApplicationDescription) SetResourceLifecycleConfig(v *ApplicationResourceLifecycleConfig) *ApplicationDescription {
  4397  	s.ResourceLifecycleConfig = v
  4398  	return s
  4399  }
  4400  
  4401  // SetVersions sets the Versions field's value.
  4402  func (s *ApplicationDescription) SetVersions(v []*string) *ApplicationDescription {
  4403  	s.Versions = v
  4404  	return s
  4405  }
  4406  
  4407  // Result message containing a single description of an application.
  4408  type ApplicationDescriptionMessage struct {
  4409  	_ struct{} `type:"structure"`
  4410  
  4411  	// The ApplicationDescription of the application.
  4412  	Application *ApplicationDescription `type:"structure"`
  4413  }
  4414  
  4415  // String returns the string representation.
  4416  //
  4417  // API parameter values that are decorated as "sensitive" in the API will not
  4418  // be included in the string output. The member name will be present, but the
  4419  // value will be replaced with "sensitive".
  4420  func (s ApplicationDescriptionMessage) String() string {
  4421  	return awsutil.Prettify(s)
  4422  }
  4423  
  4424  // GoString returns the string representation.
  4425  //
  4426  // API parameter values that are decorated as "sensitive" in the API will not
  4427  // be included in the string output. The member name will be present, but the
  4428  // value will be replaced with "sensitive".
  4429  func (s ApplicationDescriptionMessage) GoString() string {
  4430  	return s.String()
  4431  }
  4432  
  4433  // SetApplication sets the Application field's value.
  4434  func (s *ApplicationDescriptionMessage) SetApplication(v *ApplicationDescription) *ApplicationDescriptionMessage {
  4435  	s.Application = v
  4436  	return s
  4437  }
  4438  
  4439  // Application request metrics for an AWS Elastic Beanstalk environment.
  4440  type ApplicationMetrics struct {
  4441  	_ struct{} `type:"structure"`
  4442  
  4443  	// The amount of time that the metrics cover (usually 10 seconds). For example,
  4444  	// you might have 5 requests (request_count) within the most recent time slice
  4445  	// of 10 seconds (duration).
  4446  	Duration *int64 `type:"integer"`
  4447  
  4448  	// Represents the average latency for the slowest X percent of requests over
  4449  	// the last 10 seconds. Latencies are in seconds with one millisecond resolution.
  4450  	Latency *Latency `type:"structure"`
  4451  
  4452  	// Average number of requests handled by the web server per second over the
  4453  	// last 10 seconds.
  4454  	RequestCount *int64 `type:"integer"`
  4455  
  4456  	// Represents the percentage of requests over the last 10 seconds that resulted
  4457  	// in each type of status code response.
  4458  	StatusCodes *StatusCodes `type:"structure"`
  4459  }
  4460  
  4461  // String returns the string representation.
  4462  //
  4463  // API parameter values that are decorated as "sensitive" in the API will not
  4464  // be included in the string output. The member name will be present, but the
  4465  // value will be replaced with "sensitive".
  4466  func (s ApplicationMetrics) String() string {
  4467  	return awsutil.Prettify(s)
  4468  }
  4469  
  4470  // GoString returns the string representation.
  4471  //
  4472  // API parameter values that are decorated as "sensitive" in the API will not
  4473  // be included in the string output. The member name will be present, but the
  4474  // value will be replaced with "sensitive".
  4475  func (s ApplicationMetrics) GoString() string {
  4476  	return s.String()
  4477  }
  4478  
  4479  // SetDuration sets the Duration field's value.
  4480  func (s *ApplicationMetrics) SetDuration(v int64) *ApplicationMetrics {
  4481  	s.Duration = &v
  4482  	return s
  4483  }
  4484  
  4485  // SetLatency sets the Latency field's value.
  4486  func (s *ApplicationMetrics) SetLatency(v *Latency) *ApplicationMetrics {
  4487  	s.Latency = v
  4488  	return s
  4489  }
  4490  
  4491  // SetRequestCount sets the RequestCount field's value.
  4492  func (s *ApplicationMetrics) SetRequestCount(v int64) *ApplicationMetrics {
  4493  	s.RequestCount = &v
  4494  	return s
  4495  }
  4496  
  4497  // SetStatusCodes sets the StatusCodes field's value.
  4498  func (s *ApplicationMetrics) SetStatusCodes(v *StatusCodes) *ApplicationMetrics {
  4499  	s.StatusCodes = v
  4500  	return s
  4501  }
  4502  
  4503  // The resource lifecycle configuration for an application. Defines lifecycle
  4504  // settings for resources that belong to the application, and the service role
  4505  // that AWS Elastic Beanstalk assumes in order to apply lifecycle settings.
  4506  // The version lifecycle configuration defines lifecycle settings for application
  4507  // versions.
  4508  type ApplicationResourceLifecycleConfig struct {
  4509  	_ struct{} `type:"structure"`
  4510  
  4511  	// The ARN of an IAM service role that Elastic Beanstalk has permission to assume.
  4512  	//
  4513  	// The ServiceRole property is required the first time that you provide a VersionLifecycleConfig
  4514  	// for the application in one of the supporting calls (CreateApplication or
  4515  	// UpdateApplicationResourceLifecycle). After you provide it once, in either
  4516  	// one of the calls, Elastic Beanstalk persists the Service Role with the application,
  4517  	// and you don't need to specify it again in subsequent UpdateApplicationResourceLifecycle
  4518  	// calls. You can, however, specify it in subsequent calls to change the Service
  4519  	// Role to another value.
  4520  	ServiceRole *string `type:"string"`
  4521  
  4522  	// Defines lifecycle settings for application versions.
  4523  	VersionLifecycleConfig *ApplicationVersionLifecycleConfig `type:"structure"`
  4524  }
  4525  
  4526  // String returns the string representation.
  4527  //
  4528  // API parameter values that are decorated as "sensitive" in the API will not
  4529  // be included in the string output. The member name will be present, but the
  4530  // value will be replaced with "sensitive".
  4531  func (s ApplicationResourceLifecycleConfig) String() string {
  4532  	return awsutil.Prettify(s)
  4533  }
  4534  
  4535  // GoString returns the string representation.
  4536  //
  4537  // API parameter values that are decorated as "sensitive" in the API will not
  4538  // be included in the string output. The member name will be present, but the
  4539  // value will be replaced with "sensitive".
  4540  func (s ApplicationResourceLifecycleConfig) GoString() string {
  4541  	return s.String()
  4542  }
  4543  
  4544  // Validate inspects the fields of the type to determine if they are valid.
  4545  func (s *ApplicationResourceLifecycleConfig) Validate() error {
  4546  	invalidParams := request.ErrInvalidParams{Context: "ApplicationResourceLifecycleConfig"}
  4547  	if s.VersionLifecycleConfig != nil {
  4548  		if err := s.VersionLifecycleConfig.Validate(); err != nil {
  4549  			invalidParams.AddNested("VersionLifecycleConfig", err.(request.ErrInvalidParams))
  4550  		}
  4551  	}
  4552  
  4553  	if invalidParams.Len() > 0 {
  4554  		return invalidParams
  4555  	}
  4556  	return nil
  4557  }
  4558  
  4559  // SetServiceRole sets the ServiceRole field's value.
  4560  func (s *ApplicationResourceLifecycleConfig) SetServiceRole(v string) *ApplicationResourceLifecycleConfig {
  4561  	s.ServiceRole = &v
  4562  	return s
  4563  }
  4564  
  4565  // SetVersionLifecycleConfig sets the VersionLifecycleConfig field's value.
  4566  func (s *ApplicationResourceLifecycleConfig) SetVersionLifecycleConfig(v *ApplicationVersionLifecycleConfig) *ApplicationResourceLifecycleConfig {
  4567  	s.VersionLifecycleConfig = v
  4568  	return s
  4569  }
  4570  
  4571  // Describes the properties of an application version.
  4572  type ApplicationVersionDescription struct {
  4573  	_ struct{} `type:"structure"`
  4574  
  4575  	// The name of the application to which the application version belongs.
  4576  	ApplicationName *string `min:"1" type:"string"`
  4577  
  4578  	// The Amazon Resource Name (ARN) of the application version.
  4579  	ApplicationVersionArn *string `type:"string"`
  4580  
  4581  	// Reference to the artifact from the AWS CodeBuild build.
  4582  	BuildArn *string `type:"string"`
  4583  
  4584  	// The creation date of the application version.
  4585  	DateCreated *time.Time `type:"timestamp"`
  4586  
  4587  	// The last modified date of the application version.
  4588  	DateUpdated *time.Time `type:"timestamp"`
  4589  
  4590  	// The description of the application version.
  4591  	Description *string `type:"string"`
  4592  
  4593  	// If the version's source code was retrieved from AWS CodeCommit, the location
  4594  	// of the source code for the application version.
  4595  	SourceBuildInformation *SourceBuildInformation `type:"structure"`
  4596  
  4597  	// The storage location of the application version's source bundle in Amazon
  4598  	// S3.
  4599  	SourceBundle *S3Location `type:"structure"`
  4600  
  4601  	// The processing status of the application version. Reflects the state of the
  4602  	// application version during its creation. Many of the values are only applicable
  4603  	// if you specified True for the Process parameter of the CreateApplicationVersion
  4604  	// action. The following list describes the possible values.
  4605  	//
  4606  	//    * Unprocessed – Application version wasn't pre-processed or validated.
  4607  	//    Elastic Beanstalk will validate configuration files during deployment
  4608  	//    of the application version to an environment.
  4609  	//
  4610  	//    * Processing – Elastic Beanstalk is currently processing the application
  4611  	//    version.
  4612  	//
  4613  	//    * Building – Application version is currently undergoing an AWS CodeBuild
  4614  	//    build.
  4615  	//
  4616  	//    * Processed – Elastic Beanstalk was successfully pre-processed and validated.
  4617  	//
  4618  	//    * Failed – Either the AWS CodeBuild build failed or configuration files
  4619  	//    didn't pass validation. This application version isn't usable.
  4620  	Status *string `type:"string" enum:"ApplicationVersionStatus"`
  4621  
  4622  	// A unique identifier for the application version.
  4623  	VersionLabel *string `min:"1" type:"string"`
  4624  }
  4625  
  4626  // String returns the string representation.
  4627  //
  4628  // API parameter values that are decorated as "sensitive" in the API will not
  4629  // be included in the string output. The member name will be present, but the
  4630  // value will be replaced with "sensitive".
  4631  func (s ApplicationVersionDescription) String() string {
  4632  	return awsutil.Prettify(s)
  4633  }
  4634  
  4635  // GoString returns the string representation.
  4636  //
  4637  // API parameter values that are decorated as "sensitive" in the API will not
  4638  // be included in the string output. The member name will be present, but the
  4639  // value will be replaced with "sensitive".
  4640  func (s ApplicationVersionDescription) GoString() string {
  4641  	return s.String()
  4642  }
  4643  
  4644  // SetApplicationName sets the ApplicationName field's value.
  4645  func (s *ApplicationVersionDescription) SetApplicationName(v string) *ApplicationVersionDescription {
  4646  	s.ApplicationName = &v
  4647  	return s
  4648  }
  4649  
  4650  // SetApplicationVersionArn sets the ApplicationVersionArn field's value.
  4651  func (s *ApplicationVersionDescription) SetApplicationVersionArn(v string) *ApplicationVersionDescription {
  4652  	s.ApplicationVersionArn = &v
  4653  	return s
  4654  }
  4655  
  4656  // SetBuildArn sets the BuildArn field's value.
  4657  func (s *ApplicationVersionDescription) SetBuildArn(v string) *ApplicationVersionDescription {
  4658  	s.BuildArn = &v
  4659  	return s
  4660  }
  4661  
  4662  // SetDateCreated sets the DateCreated field's value.
  4663  func (s *ApplicationVersionDescription) SetDateCreated(v time.Time) *ApplicationVersionDescription {
  4664  	s.DateCreated = &v
  4665  	return s
  4666  }
  4667  
  4668  // SetDateUpdated sets the DateUpdated field's value.
  4669  func (s *ApplicationVersionDescription) SetDateUpdated(v time.Time) *ApplicationVersionDescription {
  4670  	s.DateUpdated = &v
  4671  	return s
  4672  }
  4673  
  4674  // SetDescription sets the Description field's value.
  4675  func (s *ApplicationVersionDescription) SetDescription(v string) *ApplicationVersionDescription {
  4676  	s.Description = &v
  4677  	return s
  4678  }
  4679  
  4680  // SetSourceBuildInformation sets the SourceBuildInformation field's value.
  4681  func (s *ApplicationVersionDescription) SetSourceBuildInformation(v *SourceBuildInformation) *ApplicationVersionDescription {
  4682  	s.SourceBuildInformation = v
  4683  	return s
  4684  }
  4685  
  4686  // SetSourceBundle sets the SourceBundle field's value.
  4687  func (s *ApplicationVersionDescription) SetSourceBundle(v *S3Location) *ApplicationVersionDescription {
  4688  	s.SourceBundle = v
  4689  	return s
  4690  }
  4691  
  4692  // SetStatus sets the Status field's value.
  4693  func (s *ApplicationVersionDescription) SetStatus(v string) *ApplicationVersionDescription {
  4694  	s.Status = &v
  4695  	return s
  4696  }
  4697  
  4698  // SetVersionLabel sets the VersionLabel field's value.
  4699  func (s *ApplicationVersionDescription) SetVersionLabel(v string) *ApplicationVersionDescription {
  4700  	s.VersionLabel = &v
  4701  	return s
  4702  }
  4703  
  4704  // Result message wrapping a single description of an application version.
  4705  type ApplicationVersionDescriptionMessage struct {
  4706  	_ struct{} `type:"structure"`
  4707  
  4708  	// The ApplicationVersionDescription of the application version.
  4709  	ApplicationVersion *ApplicationVersionDescription `type:"structure"`
  4710  }
  4711  
  4712  // String returns the string representation.
  4713  //
  4714  // API parameter values that are decorated as "sensitive" in the API will not
  4715  // be included in the string output. The member name will be present, but the
  4716  // value will be replaced with "sensitive".
  4717  func (s ApplicationVersionDescriptionMessage) String() string {
  4718  	return awsutil.Prettify(s)
  4719  }
  4720  
  4721  // GoString returns the string representation.
  4722  //
  4723  // API parameter values that are decorated as "sensitive" in the API will not
  4724  // be included in the string output. The member name will be present, but the
  4725  // value will be replaced with "sensitive".
  4726  func (s ApplicationVersionDescriptionMessage) GoString() string {
  4727  	return s.String()
  4728  }
  4729  
  4730  // SetApplicationVersion sets the ApplicationVersion field's value.
  4731  func (s *ApplicationVersionDescriptionMessage) SetApplicationVersion(v *ApplicationVersionDescription) *ApplicationVersionDescriptionMessage {
  4732  	s.ApplicationVersion = v
  4733  	return s
  4734  }
  4735  
  4736  // The application version lifecycle settings for an application. Defines the
  4737  // rules that Elastic Beanstalk applies to an application's versions in order
  4738  // to avoid hitting the per-region limit for application versions.
  4739  //
  4740  // When Elastic Beanstalk deletes an application version from its database,
  4741  // you can no longer deploy that version to an environment. The source bundle
  4742  // remains in S3 unless you configure the rule to delete it.
  4743  type ApplicationVersionLifecycleConfig struct {
  4744  	_ struct{} `type:"structure"`
  4745  
  4746  	// Specify a max age rule to restrict the length of time that application versions
  4747  	// are retained for an application.
  4748  	MaxAgeRule *MaxAgeRule `type:"structure"`
  4749  
  4750  	// Specify a max count rule to restrict the number of application versions that
  4751  	// are retained for an application.
  4752  	MaxCountRule *MaxCountRule `type:"structure"`
  4753  }
  4754  
  4755  // String returns the string representation.
  4756  //
  4757  // API parameter values that are decorated as "sensitive" in the API will not
  4758  // be included in the string output. The member name will be present, but the
  4759  // value will be replaced with "sensitive".
  4760  func (s ApplicationVersionLifecycleConfig) String() string {
  4761  	return awsutil.Prettify(s)
  4762  }
  4763  
  4764  // GoString returns the string representation.
  4765  //
  4766  // API parameter values that are decorated as "sensitive" in the API will not
  4767  // be included in the string output. The member name will be present, but the
  4768  // value will be replaced with "sensitive".
  4769  func (s ApplicationVersionLifecycleConfig) GoString() string {
  4770  	return s.String()
  4771  }
  4772  
  4773  // Validate inspects the fields of the type to determine if they are valid.
  4774  func (s *ApplicationVersionLifecycleConfig) Validate() error {
  4775  	invalidParams := request.ErrInvalidParams{Context: "ApplicationVersionLifecycleConfig"}
  4776  	if s.MaxAgeRule != nil {
  4777  		if err := s.MaxAgeRule.Validate(); err != nil {
  4778  			invalidParams.AddNested("MaxAgeRule", err.(request.ErrInvalidParams))
  4779  		}
  4780  	}
  4781  	if s.MaxCountRule != nil {
  4782  		if err := s.MaxCountRule.Validate(); err != nil {
  4783  			invalidParams.AddNested("MaxCountRule", err.(request.ErrInvalidParams))
  4784  		}
  4785  	}
  4786  
  4787  	if invalidParams.Len() > 0 {
  4788  		return invalidParams
  4789  	}
  4790  	return nil
  4791  }
  4792  
  4793  // SetMaxAgeRule sets the MaxAgeRule field's value.
  4794  func (s *ApplicationVersionLifecycleConfig) SetMaxAgeRule(v *MaxAgeRule) *ApplicationVersionLifecycleConfig {
  4795  	s.MaxAgeRule = v
  4796  	return s
  4797  }
  4798  
  4799  // SetMaxCountRule sets the MaxCountRule field's value.
  4800  func (s *ApplicationVersionLifecycleConfig) SetMaxCountRule(v *MaxCountRule) *ApplicationVersionLifecycleConfig {
  4801  	s.MaxCountRule = v
  4802  	return s
  4803  }
  4804  
  4805  // Request to execute a scheduled managed action immediately.
  4806  type ApplyEnvironmentManagedActionInput struct {
  4807  	_ struct{} `type:"structure"`
  4808  
  4809  	// The action ID of the scheduled managed action to execute.
  4810  	//
  4811  	// ActionId is a required field
  4812  	ActionId *string `type:"string" required:"true"`
  4813  
  4814  	// The environment ID of the target environment.
  4815  	EnvironmentId *string `type:"string"`
  4816  
  4817  	// The name of the target environment.
  4818  	EnvironmentName *string `type:"string"`
  4819  }
  4820  
  4821  // String returns the string representation.
  4822  //
  4823  // API parameter values that are decorated as "sensitive" in the API will not
  4824  // be included in the string output. The member name will be present, but the
  4825  // value will be replaced with "sensitive".
  4826  func (s ApplyEnvironmentManagedActionInput) String() string {
  4827  	return awsutil.Prettify(s)
  4828  }
  4829  
  4830  // GoString returns the string representation.
  4831  //
  4832  // API parameter values that are decorated as "sensitive" in the API will not
  4833  // be included in the string output. The member name will be present, but the
  4834  // value will be replaced with "sensitive".
  4835  func (s ApplyEnvironmentManagedActionInput) GoString() string {
  4836  	return s.String()
  4837  }
  4838  
  4839  // Validate inspects the fields of the type to determine if they are valid.
  4840  func (s *ApplyEnvironmentManagedActionInput) Validate() error {
  4841  	invalidParams := request.ErrInvalidParams{Context: "ApplyEnvironmentManagedActionInput"}
  4842  	if s.ActionId == nil {
  4843  		invalidParams.Add(request.NewErrParamRequired("ActionId"))
  4844  	}
  4845  
  4846  	if invalidParams.Len() > 0 {
  4847  		return invalidParams
  4848  	}
  4849  	return nil
  4850  }
  4851  
  4852  // SetActionId sets the ActionId field's value.
  4853  func (s *ApplyEnvironmentManagedActionInput) SetActionId(v string) *ApplyEnvironmentManagedActionInput {
  4854  	s.ActionId = &v
  4855  	return s
  4856  }
  4857  
  4858  // SetEnvironmentId sets the EnvironmentId field's value.
  4859  func (s *ApplyEnvironmentManagedActionInput) SetEnvironmentId(v string) *ApplyEnvironmentManagedActionInput {
  4860  	s.EnvironmentId = &v
  4861  	return s
  4862  }
  4863  
  4864  // SetEnvironmentName sets the EnvironmentName field's value.
  4865  func (s *ApplyEnvironmentManagedActionInput) SetEnvironmentName(v string) *ApplyEnvironmentManagedActionInput {
  4866  	s.EnvironmentName = &v
  4867  	return s
  4868  }
  4869  
  4870  // The result message containing information about the managed action.
  4871  type ApplyEnvironmentManagedActionOutput struct {
  4872  	_ struct{} `type:"structure"`
  4873  
  4874  	// A description of the managed action.
  4875  	ActionDescription *string `type:"string"`
  4876  
  4877  	// The action ID of the managed action.
  4878  	ActionId *string `type:"string"`
  4879  
  4880  	// The type of managed action.
  4881  	ActionType *string `type:"string" enum:"ActionType"`
  4882  
  4883  	// The status of the managed action.
  4884  	Status *string `type:"string"`
  4885  }
  4886  
  4887  // String returns the string representation.
  4888  //
  4889  // API parameter values that are decorated as "sensitive" in the API will not
  4890  // be included in the string output. The member name will be present, but the
  4891  // value will be replaced with "sensitive".
  4892  func (s ApplyEnvironmentManagedActionOutput) String() string {
  4893  	return awsutil.Prettify(s)
  4894  }
  4895  
  4896  // GoString returns the string representation.
  4897  //
  4898  // API parameter values that are decorated as "sensitive" in the API will not
  4899  // be included in the string output. The member name will be present, but the
  4900  // value will be replaced with "sensitive".
  4901  func (s ApplyEnvironmentManagedActionOutput) GoString() string {
  4902  	return s.String()
  4903  }
  4904  
  4905  // SetActionDescription sets the ActionDescription field's value.
  4906  func (s *ApplyEnvironmentManagedActionOutput) SetActionDescription(v string) *ApplyEnvironmentManagedActionOutput {
  4907  	s.ActionDescription = &v
  4908  	return s
  4909  }
  4910  
  4911  // SetActionId sets the ActionId field's value.
  4912  func (s *ApplyEnvironmentManagedActionOutput) SetActionId(v string) *ApplyEnvironmentManagedActionOutput {
  4913  	s.ActionId = &v
  4914  	return s
  4915  }
  4916  
  4917  // SetActionType sets the ActionType field's value.
  4918  func (s *ApplyEnvironmentManagedActionOutput) SetActionType(v string) *ApplyEnvironmentManagedActionOutput {
  4919  	s.ActionType = &v
  4920  	return s
  4921  }
  4922  
  4923  // SetStatus sets the Status field's value.
  4924  func (s *ApplyEnvironmentManagedActionOutput) SetStatus(v string) *ApplyEnvironmentManagedActionOutput {
  4925  	s.Status = &v
  4926  	return s
  4927  }
  4928  
  4929  // Request to add or change the operations role used by an environment.
  4930  type AssociateEnvironmentOperationsRoleInput struct {
  4931  	_ struct{} `type:"structure"`
  4932  
  4933  	// The name of the environment to which to set the operations role.
  4934  	//
  4935  	// EnvironmentName is a required field
  4936  	EnvironmentName *string `min:"4" type:"string" required:"true"`
  4937  
  4938  	// The Amazon Resource Name (ARN) of an existing IAM role to be used as the
  4939  	// environment's operations role.
  4940  	//
  4941  	// OperationsRole is a required field
  4942  	OperationsRole *string `min:"1" type:"string" required:"true"`
  4943  }
  4944  
  4945  // String returns the string representation.
  4946  //
  4947  // API parameter values that are decorated as "sensitive" in the API will not
  4948  // be included in the string output. The member name will be present, but the
  4949  // value will be replaced with "sensitive".
  4950  func (s AssociateEnvironmentOperationsRoleInput) String() string {
  4951  	return awsutil.Prettify(s)
  4952  }
  4953  
  4954  // GoString returns the string representation.
  4955  //
  4956  // API parameter values that are decorated as "sensitive" in the API will not
  4957  // be included in the string output. The member name will be present, but the
  4958  // value will be replaced with "sensitive".
  4959  func (s AssociateEnvironmentOperationsRoleInput) GoString() string {
  4960  	return s.String()
  4961  }
  4962  
  4963  // Validate inspects the fields of the type to determine if they are valid.
  4964  func (s *AssociateEnvironmentOperationsRoleInput) Validate() error {
  4965  	invalidParams := request.ErrInvalidParams{Context: "AssociateEnvironmentOperationsRoleInput"}
  4966  	if s.EnvironmentName == nil {
  4967  		invalidParams.Add(request.NewErrParamRequired("EnvironmentName"))
  4968  	}
  4969  	if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 {
  4970  		invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4))
  4971  	}
  4972  	if s.OperationsRole == nil {
  4973  		invalidParams.Add(request.NewErrParamRequired("OperationsRole"))
  4974  	}
  4975  	if s.OperationsRole != nil && len(*s.OperationsRole) < 1 {
  4976  		invalidParams.Add(request.NewErrParamMinLen("OperationsRole", 1))
  4977  	}
  4978  
  4979  	if invalidParams.Len() > 0 {
  4980  		return invalidParams
  4981  	}
  4982  	return nil
  4983  }
  4984  
  4985  // SetEnvironmentName sets the EnvironmentName field's value.
  4986  func (s *AssociateEnvironmentOperationsRoleInput) SetEnvironmentName(v string) *AssociateEnvironmentOperationsRoleInput {
  4987  	s.EnvironmentName = &v
  4988  	return s
  4989  }
  4990  
  4991  // SetOperationsRole sets the OperationsRole field's value.
  4992  func (s *AssociateEnvironmentOperationsRoleInput) SetOperationsRole(v string) *AssociateEnvironmentOperationsRoleInput {
  4993  	s.OperationsRole = &v
  4994  	return s
  4995  }
  4996  
  4997  type AssociateEnvironmentOperationsRoleOutput struct {
  4998  	_ struct{} `type:"structure"`
  4999  }
  5000  
  5001  // String returns the string representation.
  5002  //
  5003  // API parameter values that are decorated as "sensitive" in the API will not
  5004  // be included in the string output. The member name will be present, but the
  5005  // value will be replaced with "sensitive".
  5006  func (s AssociateEnvironmentOperationsRoleOutput) String() string {
  5007  	return awsutil.Prettify(s)
  5008  }
  5009  
  5010  // GoString returns the string representation.
  5011  //
  5012  // API parameter values that are decorated as "sensitive" in the API will not
  5013  // be included in the string output. The member name will be present, but the
  5014  // value will be replaced with "sensitive".
  5015  func (s AssociateEnvironmentOperationsRoleOutput) GoString() string {
  5016  	return s.String()
  5017  }
  5018  
  5019  // Describes an Auto Scaling launch configuration.
  5020  type AutoScalingGroup struct {
  5021  	_ struct{} `type:"structure"`
  5022  
  5023  	// The name of the AutoScalingGroup .
  5024  	Name *string `type:"string"`
  5025  }
  5026  
  5027  // String returns the string representation.
  5028  //
  5029  // API parameter values that are decorated as "sensitive" in the API will not
  5030  // be included in the string output. The member name will be present, but the
  5031  // value will be replaced with "sensitive".
  5032  func (s AutoScalingGroup) String() string {
  5033  	return awsutil.Prettify(s)
  5034  }
  5035  
  5036  // GoString returns the string representation.
  5037  //
  5038  // API parameter values that are decorated as "sensitive" in the API will not
  5039  // be included in the string output. The member name will be present, but the
  5040  // value will be replaced with "sensitive".
  5041  func (s AutoScalingGroup) GoString() string {
  5042  	return s.String()
  5043  }
  5044  
  5045  // SetName sets the Name field's value.
  5046  func (s *AutoScalingGroup) SetName(v string) *AutoScalingGroup {
  5047  	s.Name = &v
  5048  	return s
  5049  }
  5050  
  5051  // Settings for an AWS CodeBuild build.
  5052  type BuildConfiguration struct {
  5053  	_ struct{} `type:"structure"`
  5054  
  5055  	// The name of the artifact of the CodeBuild build. If provided, Elastic Beanstalk
  5056  	// stores the build artifact in the S3 location S3-bucket/resources/application-name/codebuild/codebuild-version-label-artifact-name.zip.
  5057  	// If not provided, Elastic Beanstalk stores the build artifact in the S3 location
  5058  	// S3-bucket/resources/application-name/codebuild/codebuild-version-label.zip.
  5059  	ArtifactName *string `type:"string"`
  5060  
  5061  	// The Amazon Resource Name (ARN) of the AWS Identity and Access Management
  5062  	// (IAM) role that enables AWS CodeBuild to interact with dependent AWS services
  5063  	// on behalf of the AWS account.
  5064  	//
  5065  	// CodeBuildServiceRole is a required field
  5066  	CodeBuildServiceRole *string `type:"string" required:"true"`
  5067  
  5068  	// Information about the compute resources the build project will use.
  5069  	//
  5070  	//    * BUILD_GENERAL1_SMALL: Use up to 3 GB memory and 2 vCPUs for builds
  5071  	//
  5072  	//    * BUILD_GENERAL1_MEDIUM: Use up to 7 GB memory and 4 vCPUs for builds
  5073  	//
  5074  	//    * BUILD_GENERAL1_LARGE: Use up to 15 GB memory and 8 vCPUs for builds
  5075  	ComputeType *string `type:"string" enum:"ComputeType"`
  5076  
  5077  	// The ID of the Docker image to use for this build project.
  5078  	//
  5079  	// Image is a required field
  5080  	Image *string `type:"string" required:"true"`
  5081  
  5082  	// How long in minutes, from 5 to 480 (8 hours), for AWS CodeBuild to wait until
  5083  	// timing out any related build that does not get marked as completed. The default
  5084  	// is 60 minutes.
  5085  	TimeoutInMinutes *int64 `type:"integer"`
  5086  }
  5087  
  5088  // String returns the string representation.
  5089  //
  5090  // API parameter values that are decorated as "sensitive" in the API will not
  5091  // be included in the string output. The member name will be present, but the
  5092  // value will be replaced with "sensitive".
  5093  func (s BuildConfiguration) String() string {
  5094  	return awsutil.Prettify(s)
  5095  }
  5096  
  5097  // GoString returns the string representation.
  5098  //
  5099  // API parameter values that are decorated as "sensitive" in the API will not
  5100  // be included in the string output. The member name will be present, but the
  5101  // value will be replaced with "sensitive".
  5102  func (s BuildConfiguration) GoString() string {
  5103  	return s.String()
  5104  }
  5105  
  5106  // Validate inspects the fields of the type to determine if they are valid.
  5107  func (s *BuildConfiguration) Validate() error {
  5108  	invalidParams := request.ErrInvalidParams{Context: "BuildConfiguration"}
  5109  	if s.CodeBuildServiceRole == nil {
  5110  		invalidParams.Add(request.NewErrParamRequired("CodeBuildServiceRole"))
  5111  	}
  5112  	if s.Image == nil {
  5113  		invalidParams.Add(request.NewErrParamRequired("Image"))
  5114  	}
  5115  
  5116  	if invalidParams.Len() > 0 {
  5117  		return invalidParams
  5118  	}
  5119  	return nil
  5120  }
  5121  
  5122  // SetArtifactName sets the ArtifactName field's value.
  5123  func (s *BuildConfiguration) SetArtifactName(v string) *BuildConfiguration {
  5124  	s.ArtifactName = &v
  5125  	return s
  5126  }
  5127  
  5128  // SetCodeBuildServiceRole sets the CodeBuildServiceRole field's value.
  5129  func (s *BuildConfiguration) SetCodeBuildServiceRole(v string) *BuildConfiguration {
  5130  	s.CodeBuildServiceRole = &v
  5131  	return s
  5132  }
  5133  
  5134  // SetComputeType sets the ComputeType field's value.
  5135  func (s *BuildConfiguration) SetComputeType(v string) *BuildConfiguration {
  5136  	s.ComputeType = &v
  5137  	return s
  5138  }
  5139  
  5140  // SetImage sets the Image field's value.
  5141  func (s *BuildConfiguration) SetImage(v string) *BuildConfiguration {
  5142  	s.Image = &v
  5143  	return s
  5144  }
  5145  
  5146  // SetTimeoutInMinutes sets the TimeoutInMinutes field's value.
  5147  func (s *BuildConfiguration) SetTimeoutInMinutes(v int64) *BuildConfiguration {
  5148  	s.TimeoutInMinutes = &v
  5149  	return s
  5150  }
  5151  
  5152  // The builder used to build the custom platform.
  5153  type Builder struct {
  5154  	_ struct{} `type:"structure"`
  5155  
  5156  	// The ARN of the builder.
  5157  	ARN *string `type:"string"`
  5158  }
  5159  
  5160  // String returns the string representation.
  5161  //
  5162  // API parameter values that are decorated as "sensitive" in the API will not
  5163  // be included in the string output. The member name will be present, but the
  5164  // value will be replaced with "sensitive".
  5165  func (s Builder) String() string {
  5166  	return awsutil.Prettify(s)
  5167  }
  5168  
  5169  // GoString returns the string representation.
  5170  //
  5171  // API parameter values that are decorated as "sensitive" in the API will not
  5172  // be included in the string output. The member name will be present, but the
  5173  // value will be replaced with "sensitive".
  5174  func (s Builder) GoString() string {
  5175  	return s.String()
  5176  }
  5177  
  5178  // SetARN sets the ARN field's value.
  5179  func (s *Builder) SetARN(v string) *Builder {
  5180  	s.ARN = &v
  5181  	return s
  5182  }
  5183  
  5184  // CPU utilization metrics for an instance.
  5185  type CPUUtilization struct {
  5186  	_ struct{} `type:"structure"`
  5187  
  5188  	// Available on Linux environments only.
  5189  	//
  5190  	// Percentage of time that the CPU has spent in the I/O Wait state over the
  5191  	// last 10 seconds.
  5192  	IOWait *float64 `type:"double"`
  5193  
  5194  	// Available on Linux environments only.
  5195  	//
  5196  	// Percentage of time that the CPU has spent in the IRQ state over the last
  5197  	// 10 seconds.
  5198  	IRQ *float64 `type:"double"`
  5199  
  5200  	// Percentage of time that the CPU has spent in the Idle state over the last
  5201  	// 10 seconds.
  5202  	Idle *float64 `type:"double"`
  5203  
  5204  	// Available on Linux environments only.
  5205  	//
  5206  	// Percentage of time that the CPU has spent in the Nice state over the last
  5207  	// 10 seconds.
  5208  	Nice *float64 `type:"double"`
  5209  
  5210  	// Available on Windows environments only.
  5211  	//
  5212  	// Percentage of time that the CPU has spent in the Privileged state over the
  5213  	// last 10 seconds.
  5214  	Privileged *float64 `type:"double"`
  5215  
  5216  	// Available on Linux environments only.
  5217  	//
  5218  	// Percentage of time that the CPU has spent in the SoftIRQ state over the last
  5219  	// 10 seconds.
  5220  	SoftIRQ *float64 `type:"double"`
  5221  
  5222  	// Available on Linux environments only.
  5223  	//
  5224  	// Percentage of time that the CPU has spent in the System state over the last
  5225  	// 10 seconds.
  5226  	System *float64 `type:"double"`
  5227  
  5228  	// Percentage of time that the CPU has spent in the User state over the last
  5229  	// 10 seconds.
  5230  	User *float64 `type:"double"`
  5231  }
  5232  
  5233  // String returns the string representation.
  5234  //
  5235  // API parameter values that are decorated as "sensitive" in the API will not
  5236  // be included in the string output. The member name will be present, but the
  5237  // value will be replaced with "sensitive".
  5238  func (s CPUUtilization) String() string {
  5239  	return awsutil.Prettify(s)
  5240  }
  5241  
  5242  // GoString returns the string representation.
  5243  //
  5244  // API parameter values that are decorated as "sensitive" in the API will not
  5245  // be included in the string output. The member name will be present, but the
  5246  // value will be replaced with "sensitive".
  5247  func (s CPUUtilization) GoString() string {
  5248  	return s.String()
  5249  }
  5250  
  5251  // SetIOWait sets the IOWait field's value.
  5252  func (s *CPUUtilization) SetIOWait(v float64) *CPUUtilization {
  5253  	s.IOWait = &v
  5254  	return s
  5255  }
  5256  
  5257  // SetIRQ sets the IRQ field's value.
  5258  func (s *CPUUtilization) SetIRQ(v float64) *CPUUtilization {
  5259  	s.IRQ = &v
  5260  	return s
  5261  }
  5262  
  5263  // SetIdle sets the Idle field's value.
  5264  func (s *CPUUtilization) SetIdle(v float64) *CPUUtilization {
  5265  	s.Idle = &v
  5266  	return s
  5267  }
  5268  
  5269  // SetNice sets the Nice field's value.
  5270  func (s *CPUUtilization) SetNice(v float64) *CPUUtilization {
  5271  	s.Nice = &v
  5272  	return s
  5273  }
  5274  
  5275  // SetPrivileged sets the Privileged field's value.
  5276  func (s *CPUUtilization) SetPrivileged(v float64) *CPUUtilization {
  5277  	s.Privileged = &v
  5278  	return s
  5279  }
  5280  
  5281  // SetSoftIRQ sets the SoftIRQ field's value.
  5282  func (s *CPUUtilization) SetSoftIRQ(v float64) *CPUUtilization {
  5283  	s.SoftIRQ = &v
  5284  	return s
  5285  }
  5286  
  5287  // SetSystem sets the System field's value.
  5288  func (s *CPUUtilization) SetSystem(v float64) *CPUUtilization {
  5289  	s.System = &v
  5290  	return s
  5291  }
  5292  
  5293  // SetUser sets the User field's value.
  5294  func (s *CPUUtilization) SetUser(v float64) *CPUUtilization {
  5295  	s.User = &v
  5296  	return s
  5297  }
  5298  
  5299  // Results message indicating whether a CNAME is available.
  5300  type CheckDNSAvailabilityInput struct {
  5301  	_ struct{} `type:"structure"`
  5302  
  5303  	// The prefix used when this CNAME is reserved.
  5304  	//
  5305  	// CNAMEPrefix is a required field
  5306  	CNAMEPrefix *string `min:"4" type:"string" required:"true"`
  5307  }
  5308  
  5309  // String returns the string representation.
  5310  //
  5311  // API parameter values that are decorated as "sensitive" in the API will not
  5312  // be included in the string output. The member name will be present, but the
  5313  // value will be replaced with "sensitive".
  5314  func (s CheckDNSAvailabilityInput) String() string {
  5315  	return awsutil.Prettify(s)
  5316  }
  5317  
  5318  // GoString returns the string representation.
  5319  //
  5320  // API parameter values that are decorated as "sensitive" in the API will not
  5321  // be included in the string output. The member name will be present, but the
  5322  // value will be replaced with "sensitive".
  5323  func (s CheckDNSAvailabilityInput) GoString() string {
  5324  	return s.String()
  5325  }
  5326  
  5327  // Validate inspects the fields of the type to determine if they are valid.
  5328  func (s *CheckDNSAvailabilityInput) Validate() error {
  5329  	invalidParams := request.ErrInvalidParams{Context: "CheckDNSAvailabilityInput"}
  5330  	if s.CNAMEPrefix == nil {
  5331  		invalidParams.Add(request.NewErrParamRequired("CNAMEPrefix"))
  5332  	}
  5333  	if s.CNAMEPrefix != nil && len(*s.CNAMEPrefix) < 4 {
  5334  		invalidParams.Add(request.NewErrParamMinLen("CNAMEPrefix", 4))
  5335  	}
  5336  
  5337  	if invalidParams.Len() > 0 {
  5338  		return invalidParams
  5339  	}
  5340  	return nil
  5341  }
  5342  
  5343  // SetCNAMEPrefix sets the CNAMEPrefix field's value.
  5344  func (s *CheckDNSAvailabilityInput) SetCNAMEPrefix(v string) *CheckDNSAvailabilityInput {
  5345  	s.CNAMEPrefix = &v
  5346  	return s
  5347  }
  5348  
  5349  // Indicates if the specified CNAME is available.
  5350  type CheckDNSAvailabilityOutput struct {
  5351  	_ struct{} `type:"structure"`
  5352  
  5353  	// Indicates if the specified CNAME is available:
  5354  	//
  5355  	//    * true : The CNAME is available.
  5356  	//
  5357  	//    * false : The CNAME is not available.
  5358  	Available *bool `type:"boolean"`
  5359  
  5360  	// The fully qualified CNAME to reserve when CreateEnvironment is called with
  5361  	// the provided prefix.
  5362  	FullyQualifiedCNAME *string `min:"1" type:"string"`
  5363  }
  5364  
  5365  // String returns the string representation.
  5366  //
  5367  // API parameter values that are decorated as "sensitive" in the API will not
  5368  // be included in the string output. The member name will be present, but the
  5369  // value will be replaced with "sensitive".
  5370  func (s CheckDNSAvailabilityOutput) String() string {
  5371  	return awsutil.Prettify(s)
  5372  }
  5373  
  5374  // GoString returns the string representation.
  5375  //
  5376  // API parameter values that are decorated as "sensitive" in the API will not
  5377  // be included in the string output. The member name will be present, but the
  5378  // value will be replaced with "sensitive".
  5379  func (s CheckDNSAvailabilityOutput) GoString() string {
  5380  	return s.String()
  5381  }
  5382  
  5383  // SetAvailable sets the Available field's value.
  5384  func (s *CheckDNSAvailabilityOutput) SetAvailable(v bool) *CheckDNSAvailabilityOutput {
  5385  	s.Available = &v
  5386  	return s
  5387  }
  5388  
  5389  // SetFullyQualifiedCNAME sets the FullyQualifiedCNAME field's value.
  5390  func (s *CheckDNSAvailabilityOutput) SetFullyQualifiedCNAME(v string) *CheckDNSAvailabilityOutput {
  5391  	s.FullyQualifiedCNAME = &v
  5392  	return s
  5393  }
  5394  
  5395  // Request to create or update a group of environments.
  5396  type ComposeEnvironmentsInput struct {
  5397  	_ struct{} `type:"structure"`
  5398  
  5399  	// The name of the application to which the specified source bundles belong.
  5400  	ApplicationName *string `min:"1" type:"string"`
  5401  
  5402  	// The name of the group to which the target environments belong. Specify a
  5403  	// group name only if the environment name defined in each target environment's
  5404  	// manifest ends with a + (plus) character. See Environment Manifest (env.yaml)
  5405  	// (https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/environment-cfg-manifest.html)
  5406  	// for details.
  5407  	GroupName *string `min:"1" type:"string"`
  5408  
  5409  	// A list of version labels, specifying one or more application source bundles
  5410  	// that belong to the target application. Each source bundle must include an
  5411  	// environment manifest that specifies the name of the environment and the name
  5412  	// of the solution stack to use, and optionally can specify environment links
  5413  	// to create.
  5414  	VersionLabels []*string `type:"list"`
  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 ComposeEnvironmentsInput) 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 ComposeEnvironmentsInput) 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 *ComposeEnvironmentsInput) Validate() error {
  5437  	invalidParams := request.ErrInvalidParams{Context: "ComposeEnvironmentsInput"}
  5438  	if s.ApplicationName != nil && len(*s.ApplicationName) < 1 {
  5439  		invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1))
  5440  	}
  5441  	if s.GroupName != nil && len(*s.GroupName) < 1 {
  5442  		invalidParams.Add(request.NewErrParamMinLen("GroupName", 1))
  5443  	}
  5444  
  5445  	if invalidParams.Len() > 0 {
  5446  		return invalidParams
  5447  	}
  5448  	return nil
  5449  }
  5450  
  5451  // SetApplicationName sets the ApplicationName field's value.
  5452  func (s *ComposeEnvironmentsInput) SetApplicationName(v string) *ComposeEnvironmentsInput {
  5453  	s.ApplicationName = &v
  5454  	return s
  5455  }
  5456  
  5457  // SetGroupName sets the GroupName field's value.
  5458  func (s *ComposeEnvironmentsInput) SetGroupName(v string) *ComposeEnvironmentsInput {
  5459  	s.GroupName = &v
  5460  	return s
  5461  }
  5462  
  5463  // SetVersionLabels sets the VersionLabels field's value.
  5464  func (s *ComposeEnvironmentsInput) SetVersionLabels(v []*string) *ComposeEnvironmentsInput {
  5465  	s.VersionLabels = v
  5466  	return s
  5467  }
  5468  
  5469  // Describes the possible values for a configuration option.
  5470  type ConfigurationOptionDescription struct {
  5471  	_ struct{} `type:"structure"`
  5472  
  5473  	// An indication of which action is required if the value for this configuration
  5474  	// option changes:
  5475  	//
  5476  	//    * NoInterruption : There is no interruption to the environment or application
  5477  	//    availability.
  5478  	//
  5479  	//    * RestartEnvironment : The environment is entirely restarted, all AWS
  5480  	//    resources are deleted and recreated, and the environment is unavailable
  5481  	//    during the process.
  5482  	//
  5483  	//    * RestartApplicationServer : The environment is available the entire time.
  5484  	//    However, a short application outage occurs when the application servers
  5485  	//    on the running Amazon EC2 instances are restarted.
  5486  	ChangeSeverity *string `type:"string"`
  5487  
  5488  	// The default value for this configuration option.
  5489  	DefaultValue *string `type:"string"`
  5490  
  5491  	// If specified, the configuration option must be a string value no longer than
  5492  	// this value.
  5493  	MaxLength *int64 `type:"integer"`
  5494  
  5495  	// If specified, the configuration option must be a numeric value less than
  5496  	// this value.
  5497  	MaxValue *int64 `type:"integer"`
  5498  
  5499  	// If specified, the configuration option must be a numeric value greater than
  5500  	// this value.
  5501  	MinValue *int64 `type:"integer"`
  5502  
  5503  	// The name of the configuration option.
  5504  	Name *string `type:"string"`
  5505  
  5506  	// A unique namespace identifying the option's associated AWS resource.
  5507  	Namespace *string `type:"string"`
  5508  
  5509  	// If specified, the configuration option must be a string value that satisfies
  5510  	// this regular expression.
  5511  	Regex *OptionRestrictionRegex `type:"structure"`
  5512  
  5513  	// An indication of whether the user defined this configuration option:
  5514  	//
  5515  	//    * true : This configuration option was defined by the user. It is a valid
  5516  	//    choice for specifying if this as an Option to Remove when updating configuration
  5517  	//    settings.
  5518  	//
  5519  	//    * false : This configuration was not defined by the user.
  5520  	//
  5521  	// Constraint: You can remove only UserDefined options from a configuration.
  5522  	//
  5523  	// Valid Values: true | false
  5524  	UserDefined *bool `type:"boolean"`
  5525  
  5526  	// If specified, values for the configuration option are selected from this
  5527  	// list.
  5528  	ValueOptions []*string `type:"list"`
  5529  
  5530  	// An indication of which type of values this option has and whether it is allowable
  5531  	// to select one or more than one of the possible values:
  5532  	//
  5533  	//    * Scalar : Values for this option are a single selection from the possible
  5534  	//    values, or an unformatted string, or numeric value governed by the MIN/MAX/Regex
  5535  	//    constraints.
  5536  	//
  5537  	//    * List : Values for this option are multiple selections from the possible
  5538  	//    values.
  5539  	//
  5540  	//    * Boolean : Values for this option are either true or false .
  5541  	//
  5542  	//    * Json : Values for this option are a JSON representation of a ConfigDocument.
  5543  	ValueType *string `type:"string" enum:"ConfigurationOptionValueType"`
  5544  }
  5545  
  5546  // String returns the string representation.
  5547  //
  5548  // API parameter values that are decorated as "sensitive" in the API will not
  5549  // be included in the string output. The member name will be present, but the
  5550  // value will be replaced with "sensitive".
  5551  func (s ConfigurationOptionDescription) String() string {
  5552  	return awsutil.Prettify(s)
  5553  }
  5554  
  5555  // GoString returns the string representation.
  5556  //
  5557  // API parameter values that are decorated as "sensitive" in the API will not
  5558  // be included in the string output. The member name will be present, but the
  5559  // value will be replaced with "sensitive".
  5560  func (s ConfigurationOptionDescription) GoString() string {
  5561  	return s.String()
  5562  }
  5563  
  5564  // SetChangeSeverity sets the ChangeSeverity field's value.
  5565  func (s *ConfigurationOptionDescription) SetChangeSeverity(v string) *ConfigurationOptionDescription {
  5566  	s.ChangeSeverity = &v
  5567  	return s
  5568  }
  5569  
  5570  // SetDefaultValue sets the DefaultValue field's value.
  5571  func (s *ConfigurationOptionDescription) SetDefaultValue(v string) *ConfigurationOptionDescription {
  5572  	s.DefaultValue = &v
  5573  	return s
  5574  }
  5575  
  5576  // SetMaxLength sets the MaxLength field's value.
  5577  func (s *ConfigurationOptionDescription) SetMaxLength(v int64) *ConfigurationOptionDescription {
  5578  	s.MaxLength = &v
  5579  	return s
  5580  }
  5581  
  5582  // SetMaxValue sets the MaxValue field's value.
  5583  func (s *ConfigurationOptionDescription) SetMaxValue(v int64) *ConfigurationOptionDescription {
  5584  	s.MaxValue = &v
  5585  	return s
  5586  }
  5587  
  5588  // SetMinValue sets the MinValue field's value.
  5589  func (s *ConfigurationOptionDescription) SetMinValue(v int64) *ConfigurationOptionDescription {
  5590  	s.MinValue = &v
  5591  	return s
  5592  }
  5593  
  5594  // SetName sets the Name field's value.
  5595  func (s *ConfigurationOptionDescription) SetName(v string) *ConfigurationOptionDescription {
  5596  	s.Name = &v
  5597  	return s
  5598  }
  5599  
  5600  // SetNamespace sets the Namespace field's value.
  5601  func (s *ConfigurationOptionDescription) SetNamespace(v string) *ConfigurationOptionDescription {
  5602  	s.Namespace = &v
  5603  	return s
  5604  }
  5605  
  5606  // SetRegex sets the Regex field's value.
  5607  func (s *ConfigurationOptionDescription) SetRegex(v *OptionRestrictionRegex) *ConfigurationOptionDescription {
  5608  	s.Regex = v
  5609  	return s
  5610  }
  5611  
  5612  // SetUserDefined sets the UserDefined field's value.
  5613  func (s *ConfigurationOptionDescription) SetUserDefined(v bool) *ConfigurationOptionDescription {
  5614  	s.UserDefined = &v
  5615  	return s
  5616  }
  5617  
  5618  // SetValueOptions sets the ValueOptions field's value.
  5619  func (s *ConfigurationOptionDescription) SetValueOptions(v []*string) *ConfigurationOptionDescription {
  5620  	s.ValueOptions = v
  5621  	return s
  5622  }
  5623  
  5624  // SetValueType sets the ValueType field's value.
  5625  func (s *ConfigurationOptionDescription) SetValueType(v string) *ConfigurationOptionDescription {
  5626  	s.ValueType = &v
  5627  	return s
  5628  }
  5629  
  5630  // A specification identifying an individual configuration option along with
  5631  // its current value. For a list of possible namespaces and option values, see
  5632  // Option Values (https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/command-options.html)
  5633  // in the AWS Elastic Beanstalk Developer Guide.
  5634  type ConfigurationOptionSetting struct {
  5635  	_ struct{} `type:"structure"`
  5636  
  5637  	// A unique namespace that identifies the option's associated AWS resource.
  5638  	Namespace *string `type:"string"`
  5639  
  5640  	// The name of the configuration option.
  5641  	OptionName *string `type:"string"`
  5642  
  5643  	// A unique resource name for the option setting. Use it for a time–based
  5644  	// scaling configuration option.
  5645  	ResourceName *string `min:"1" type:"string"`
  5646  
  5647  	// The current value for the configuration option.
  5648  	Value *string `type:"string"`
  5649  }
  5650  
  5651  // String returns the string representation.
  5652  //
  5653  // API parameter values that are decorated as "sensitive" in the API will not
  5654  // be included in the string output. The member name will be present, but the
  5655  // value will be replaced with "sensitive".
  5656  func (s ConfigurationOptionSetting) String() string {
  5657  	return awsutil.Prettify(s)
  5658  }
  5659  
  5660  // GoString returns the string representation.
  5661  //
  5662  // API parameter values that are decorated as "sensitive" in the API will not
  5663  // be included in the string output. The member name will be present, but the
  5664  // value will be replaced with "sensitive".
  5665  func (s ConfigurationOptionSetting) GoString() string {
  5666  	return s.String()
  5667  }
  5668  
  5669  // Validate inspects the fields of the type to determine if they are valid.
  5670  func (s *ConfigurationOptionSetting) Validate() error {
  5671  	invalidParams := request.ErrInvalidParams{Context: "ConfigurationOptionSetting"}
  5672  	if s.ResourceName != nil && len(*s.ResourceName) < 1 {
  5673  		invalidParams.Add(request.NewErrParamMinLen("ResourceName", 1))
  5674  	}
  5675  
  5676  	if invalidParams.Len() > 0 {
  5677  		return invalidParams
  5678  	}
  5679  	return nil
  5680  }
  5681  
  5682  // SetNamespace sets the Namespace field's value.
  5683  func (s *ConfigurationOptionSetting) SetNamespace(v string) *ConfigurationOptionSetting {
  5684  	s.Namespace = &v
  5685  	return s
  5686  }
  5687  
  5688  // SetOptionName sets the OptionName field's value.
  5689  func (s *ConfigurationOptionSetting) SetOptionName(v string) *ConfigurationOptionSetting {
  5690  	s.OptionName = &v
  5691  	return s
  5692  }
  5693  
  5694  // SetResourceName sets the ResourceName field's value.
  5695  func (s *ConfigurationOptionSetting) SetResourceName(v string) *ConfigurationOptionSetting {
  5696  	s.ResourceName = &v
  5697  	return s
  5698  }
  5699  
  5700  // SetValue sets the Value field's value.
  5701  func (s *ConfigurationOptionSetting) SetValue(v string) *ConfigurationOptionSetting {
  5702  	s.Value = &v
  5703  	return s
  5704  }
  5705  
  5706  // Describes the settings for a configuration set.
  5707  type ConfigurationSettingsDescription struct {
  5708  	_ struct{} `type:"structure"`
  5709  
  5710  	// The name of the application associated with this configuration set.
  5711  	ApplicationName *string `min:"1" type:"string"`
  5712  
  5713  	// The date (in UTC time) when this configuration set was created.
  5714  	DateCreated *time.Time `type:"timestamp"`
  5715  
  5716  	// The date (in UTC time) when this configuration set was last modified.
  5717  	DateUpdated *time.Time `type:"timestamp"`
  5718  
  5719  	// If this configuration set is associated with an environment, the DeploymentStatus
  5720  	// parameter indicates the deployment status of this configuration set:
  5721  	//
  5722  	//    * null: This configuration is not associated with a running environment.
  5723  	//
  5724  	//    * pending: This is a draft configuration that is not deployed to the associated
  5725  	//    environment but is in the process of deploying.
  5726  	//
  5727  	//    * deployed: This is the configuration that is currently deployed to the
  5728  	//    associated running environment.
  5729  	//
  5730  	//    * failed: This is a draft configuration that failed to successfully deploy.
  5731  	DeploymentStatus *string `type:"string" enum:"ConfigurationDeploymentStatus"`
  5732  
  5733  	// Describes this configuration set.
  5734  	Description *string `type:"string"`
  5735  
  5736  	// If not null, the name of the environment for this configuration set.
  5737  	EnvironmentName *string `min:"4" type:"string"`
  5738  
  5739  	// A list of the configuration options and their values in this configuration
  5740  	// set.
  5741  	OptionSettings []*ConfigurationOptionSetting `type:"list"`
  5742  
  5743  	// The ARN of the platform version.
  5744  	PlatformArn *string `type:"string"`
  5745  
  5746  	// The name of the solution stack this configuration set uses.
  5747  	SolutionStackName *string `type:"string"`
  5748  
  5749  	// If not null, the name of the configuration template for this configuration
  5750  	// set.
  5751  	TemplateName *string `min:"1" type:"string"`
  5752  }
  5753  
  5754  // String returns the string representation.
  5755  //
  5756  // API parameter values that are decorated as "sensitive" in the API will not
  5757  // be included in the string output. The member name will be present, but the
  5758  // value will be replaced with "sensitive".
  5759  func (s ConfigurationSettingsDescription) String() string {
  5760  	return awsutil.Prettify(s)
  5761  }
  5762  
  5763  // GoString returns the string representation.
  5764  //
  5765  // API parameter values that are decorated as "sensitive" in the API will not
  5766  // be included in the string output. The member name will be present, but the
  5767  // value will be replaced with "sensitive".
  5768  func (s ConfigurationSettingsDescription) GoString() string {
  5769  	return s.String()
  5770  }
  5771  
  5772  // SetApplicationName sets the ApplicationName field's value.
  5773  func (s *ConfigurationSettingsDescription) SetApplicationName(v string) *ConfigurationSettingsDescription {
  5774  	s.ApplicationName = &v
  5775  	return s
  5776  }
  5777  
  5778  // SetDateCreated sets the DateCreated field's value.
  5779  func (s *ConfigurationSettingsDescription) SetDateCreated(v time.Time) *ConfigurationSettingsDescription {
  5780  	s.DateCreated = &v
  5781  	return s
  5782  }
  5783  
  5784  // SetDateUpdated sets the DateUpdated field's value.
  5785  func (s *ConfigurationSettingsDescription) SetDateUpdated(v time.Time) *ConfigurationSettingsDescription {
  5786  	s.DateUpdated = &v
  5787  	return s
  5788  }
  5789  
  5790  // SetDeploymentStatus sets the DeploymentStatus field's value.
  5791  func (s *ConfigurationSettingsDescription) SetDeploymentStatus(v string) *ConfigurationSettingsDescription {
  5792  	s.DeploymentStatus = &v
  5793  	return s
  5794  }
  5795  
  5796  // SetDescription sets the Description field's value.
  5797  func (s *ConfigurationSettingsDescription) SetDescription(v string) *ConfigurationSettingsDescription {
  5798  	s.Description = &v
  5799  	return s
  5800  }
  5801  
  5802  // SetEnvironmentName sets the EnvironmentName field's value.
  5803  func (s *ConfigurationSettingsDescription) SetEnvironmentName(v string) *ConfigurationSettingsDescription {
  5804  	s.EnvironmentName = &v
  5805  	return s
  5806  }
  5807  
  5808  // SetOptionSettings sets the OptionSettings field's value.
  5809  func (s *ConfigurationSettingsDescription) SetOptionSettings(v []*ConfigurationOptionSetting) *ConfigurationSettingsDescription {
  5810  	s.OptionSettings = v
  5811  	return s
  5812  }
  5813  
  5814  // SetPlatformArn sets the PlatformArn field's value.
  5815  func (s *ConfigurationSettingsDescription) SetPlatformArn(v string) *ConfigurationSettingsDescription {
  5816  	s.PlatformArn = &v
  5817  	return s
  5818  }
  5819  
  5820  // SetSolutionStackName sets the SolutionStackName field's value.
  5821  func (s *ConfigurationSettingsDescription) SetSolutionStackName(v string) *ConfigurationSettingsDescription {
  5822  	s.SolutionStackName = &v
  5823  	return s
  5824  }
  5825  
  5826  // SetTemplateName sets the TemplateName field's value.
  5827  func (s *ConfigurationSettingsDescription) SetTemplateName(v string) *ConfigurationSettingsDescription {
  5828  	s.TemplateName = &v
  5829  	return s
  5830  }
  5831  
  5832  // Request to create an application.
  5833  type CreateApplicationInput struct {
  5834  	_ struct{} `type:"structure"`
  5835  
  5836  	// The name of the application. Must be unique within your account.
  5837  	//
  5838  	// ApplicationName is a required field
  5839  	ApplicationName *string `min:"1" type:"string" required:"true"`
  5840  
  5841  	// Your description of the application.
  5842  	Description *string `type:"string"`
  5843  
  5844  	// Specifies an application resource lifecycle configuration to prevent your
  5845  	// application from accumulating too many versions.
  5846  	ResourceLifecycleConfig *ApplicationResourceLifecycleConfig `type:"structure"`
  5847  
  5848  	// Specifies the tags applied to the application.
  5849  	//
  5850  	// Elastic Beanstalk applies these tags only to the application. Environments
  5851  	// that you create in the application don't inherit the tags.
  5852  	Tags []*Tag `type:"list"`
  5853  }
  5854  
  5855  // String returns the string representation.
  5856  //
  5857  // API parameter values that are decorated as "sensitive" in the API will not
  5858  // be included in the string output. The member name will be present, but the
  5859  // value will be replaced with "sensitive".
  5860  func (s CreateApplicationInput) String() string {
  5861  	return awsutil.Prettify(s)
  5862  }
  5863  
  5864  // GoString returns the string representation.
  5865  //
  5866  // API parameter values that are decorated as "sensitive" in the API will not
  5867  // be included in the string output. The member name will be present, but the
  5868  // value will be replaced with "sensitive".
  5869  func (s CreateApplicationInput) GoString() string {
  5870  	return s.String()
  5871  }
  5872  
  5873  // Validate inspects the fields of the type to determine if they are valid.
  5874  func (s *CreateApplicationInput) Validate() error {
  5875  	invalidParams := request.ErrInvalidParams{Context: "CreateApplicationInput"}
  5876  	if s.ApplicationName == nil {
  5877  		invalidParams.Add(request.NewErrParamRequired("ApplicationName"))
  5878  	}
  5879  	if s.ApplicationName != nil && len(*s.ApplicationName) < 1 {
  5880  		invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1))
  5881  	}
  5882  	if s.ResourceLifecycleConfig != nil {
  5883  		if err := s.ResourceLifecycleConfig.Validate(); err != nil {
  5884  			invalidParams.AddNested("ResourceLifecycleConfig", err.(request.ErrInvalidParams))
  5885  		}
  5886  	}
  5887  	if s.Tags != nil {
  5888  		for i, v := range s.Tags {
  5889  			if v == nil {
  5890  				continue
  5891  			}
  5892  			if err := v.Validate(); err != nil {
  5893  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
  5894  			}
  5895  		}
  5896  	}
  5897  
  5898  	if invalidParams.Len() > 0 {
  5899  		return invalidParams
  5900  	}
  5901  	return nil
  5902  }
  5903  
  5904  // SetApplicationName sets the ApplicationName field's value.
  5905  func (s *CreateApplicationInput) SetApplicationName(v string) *CreateApplicationInput {
  5906  	s.ApplicationName = &v
  5907  	return s
  5908  }
  5909  
  5910  // SetDescription sets the Description field's value.
  5911  func (s *CreateApplicationInput) SetDescription(v string) *CreateApplicationInput {
  5912  	s.Description = &v
  5913  	return s
  5914  }
  5915  
  5916  // SetResourceLifecycleConfig sets the ResourceLifecycleConfig field's value.
  5917  func (s *CreateApplicationInput) SetResourceLifecycleConfig(v *ApplicationResourceLifecycleConfig) *CreateApplicationInput {
  5918  	s.ResourceLifecycleConfig = v
  5919  	return s
  5920  }
  5921  
  5922  // SetTags sets the Tags field's value.
  5923  func (s *CreateApplicationInput) SetTags(v []*Tag) *CreateApplicationInput {
  5924  	s.Tags = v
  5925  	return s
  5926  }
  5927  
  5928  type CreateApplicationVersionInput struct {
  5929  	_ struct{} `type:"structure"`
  5930  
  5931  	// The name of the application. If no application is found with this name, and
  5932  	// AutoCreateApplication is false, returns an InvalidParameterValue error.
  5933  	//
  5934  	// ApplicationName is a required field
  5935  	ApplicationName *string `min:"1" type:"string" required:"true"`
  5936  
  5937  	// Set to true to create an application with the specified name if it doesn't
  5938  	// already exist.
  5939  	AutoCreateApplication *bool `type:"boolean"`
  5940  
  5941  	// Settings for an AWS CodeBuild build.
  5942  	BuildConfiguration *BuildConfiguration `type:"structure"`
  5943  
  5944  	// A description of this application version.
  5945  	Description *string `type:"string"`
  5946  
  5947  	// Pre-processes and validates the environment manifest (env.yaml) and configuration
  5948  	// files (*.config files in the .ebextensions folder) in the source bundle.
  5949  	// Validating configuration files can identify issues prior to deploying the
  5950  	// application version to an environment.
  5951  	//
  5952  	// You must turn processing on for application versions that you create using
  5953  	// AWS CodeBuild or AWS CodeCommit. For application versions built from a source
  5954  	// bundle in Amazon S3, processing is optional.
  5955  	//
  5956  	// The Process option validates Elastic Beanstalk configuration files. It doesn't
  5957  	// validate your application's configuration files, like proxy server or Docker
  5958  	// configuration.
  5959  	Process *bool `type:"boolean"`
  5960  
  5961  	// Specify a commit in an AWS CodeCommit Git repository to use as the source
  5962  	// code for the application version.
  5963  	SourceBuildInformation *SourceBuildInformation `type:"structure"`
  5964  
  5965  	// The Amazon S3 bucket and key that identify the location of the source bundle
  5966  	// for this version.
  5967  	//
  5968  	// The Amazon S3 bucket must be in the same region as the environment.
  5969  	//
  5970  	// Specify a source bundle in S3 or a commit in an AWS CodeCommit repository
  5971  	// (with SourceBuildInformation), but not both. If neither SourceBundle nor
  5972  	// SourceBuildInformation are provided, Elastic Beanstalk uses a sample application.
  5973  	SourceBundle *S3Location `type:"structure"`
  5974  
  5975  	// Specifies the tags applied to the application version.
  5976  	//
  5977  	// Elastic Beanstalk applies these tags only to the application version. Environments
  5978  	// that use the application version don't inherit the tags.
  5979  	Tags []*Tag `type:"list"`
  5980  
  5981  	// A label identifying this version.
  5982  	//
  5983  	// Constraint: Must be unique per application. If an application version already
  5984  	// exists with this label for the specified application, AWS Elastic Beanstalk
  5985  	// returns an InvalidParameterValue error.
  5986  	//
  5987  	// VersionLabel is a required field
  5988  	VersionLabel *string `min:"1" type:"string" required:"true"`
  5989  }
  5990  
  5991  // String returns the string representation.
  5992  //
  5993  // API parameter values that are decorated as "sensitive" in the API will not
  5994  // be included in the string output. The member name will be present, but the
  5995  // value will be replaced with "sensitive".
  5996  func (s CreateApplicationVersionInput) String() string {
  5997  	return awsutil.Prettify(s)
  5998  }
  5999  
  6000  // GoString returns the string representation.
  6001  //
  6002  // API parameter values that are decorated as "sensitive" in the API will not
  6003  // be included in the string output. The member name will be present, but the
  6004  // value will be replaced with "sensitive".
  6005  func (s CreateApplicationVersionInput) GoString() string {
  6006  	return s.String()
  6007  }
  6008  
  6009  // Validate inspects the fields of the type to determine if they are valid.
  6010  func (s *CreateApplicationVersionInput) Validate() error {
  6011  	invalidParams := request.ErrInvalidParams{Context: "CreateApplicationVersionInput"}
  6012  	if s.ApplicationName == nil {
  6013  		invalidParams.Add(request.NewErrParamRequired("ApplicationName"))
  6014  	}
  6015  	if s.ApplicationName != nil && len(*s.ApplicationName) < 1 {
  6016  		invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1))
  6017  	}
  6018  	if s.VersionLabel == nil {
  6019  		invalidParams.Add(request.NewErrParamRequired("VersionLabel"))
  6020  	}
  6021  	if s.VersionLabel != nil && len(*s.VersionLabel) < 1 {
  6022  		invalidParams.Add(request.NewErrParamMinLen("VersionLabel", 1))
  6023  	}
  6024  	if s.BuildConfiguration != nil {
  6025  		if err := s.BuildConfiguration.Validate(); err != nil {
  6026  			invalidParams.AddNested("BuildConfiguration", err.(request.ErrInvalidParams))
  6027  		}
  6028  	}
  6029  	if s.SourceBuildInformation != nil {
  6030  		if err := s.SourceBuildInformation.Validate(); err != nil {
  6031  			invalidParams.AddNested("SourceBuildInformation", err.(request.ErrInvalidParams))
  6032  		}
  6033  	}
  6034  	if s.Tags != nil {
  6035  		for i, v := range s.Tags {
  6036  			if v == nil {
  6037  				continue
  6038  			}
  6039  			if err := v.Validate(); err != nil {
  6040  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
  6041  			}
  6042  		}
  6043  	}
  6044  
  6045  	if invalidParams.Len() > 0 {
  6046  		return invalidParams
  6047  	}
  6048  	return nil
  6049  }
  6050  
  6051  // SetApplicationName sets the ApplicationName field's value.
  6052  func (s *CreateApplicationVersionInput) SetApplicationName(v string) *CreateApplicationVersionInput {
  6053  	s.ApplicationName = &v
  6054  	return s
  6055  }
  6056  
  6057  // SetAutoCreateApplication sets the AutoCreateApplication field's value.
  6058  func (s *CreateApplicationVersionInput) SetAutoCreateApplication(v bool) *CreateApplicationVersionInput {
  6059  	s.AutoCreateApplication = &v
  6060  	return s
  6061  }
  6062  
  6063  // SetBuildConfiguration sets the BuildConfiguration field's value.
  6064  func (s *CreateApplicationVersionInput) SetBuildConfiguration(v *BuildConfiguration) *CreateApplicationVersionInput {
  6065  	s.BuildConfiguration = v
  6066  	return s
  6067  }
  6068  
  6069  // SetDescription sets the Description field's value.
  6070  func (s *CreateApplicationVersionInput) SetDescription(v string) *CreateApplicationVersionInput {
  6071  	s.Description = &v
  6072  	return s
  6073  }
  6074  
  6075  // SetProcess sets the Process field's value.
  6076  func (s *CreateApplicationVersionInput) SetProcess(v bool) *CreateApplicationVersionInput {
  6077  	s.Process = &v
  6078  	return s
  6079  }
  6080  
  6081  // SetSourceBuildInformation sets the SourceBuildInformation field's value.
  6082  func (s *CreateApplicationVersionInput) SetSourceBuildInformation(v *SourceBuildInformation) *CreateApplicationVersionInput {
  6083  	s.SourceBuildInformation = v
  6084  	return s
  6085  }
  6086  
  6087  // SetSourceBundle sets the SourceBundle field's value.
  6088  func (s *CreateApplicationVersionInput) SetSourceBundle(v *S3Location) *CreateApplicationVersionInput {
  6089  	s.SourceBundle = v
  6090  	return s
  6091  }
  6092  
  6093  // SetTags sets the Tags field's value.
  6094  func (s *CreateApplicationVersionInput) SetTags(v []*Tag) *CreateApplicationVersionInput {
  6095  	s.Tags = v
  6096  	return s
  6097  }
  6098  
  6099  // SetVersionLabel sets the VersionLabel field's value.
  6100  func (s *CreateApplicationVersionInput) SetVersionLabel(v string) *CreateApplicationVersionInput {
  6101  	s.VersionLabel = &v
  6102  	return s
  6103  }
  6104  
  6105  // Request to create a configuration template.
  6106  type CreateConfigurationTemplateInput struct {
  6107  	_ struct{} `type:"structure"`
  6108  
  6109  	// The name of the Elastic Beanstalk application to associate with this configuration
  6110  	// template.
  6111  	//
  6112  	// ApplicationName is a required field
  6113  	ApplicationName *string `min:"1" type:"string" required:"true"`
  6114  
  6115  	// An optional description for this configuration.
  6116  	Description *string `type:"string"`
  6117  
  6118  	// The ID of an environment whose settings you want to use to create the configuration
  6119  	// template. You must specify EnvironmentId if you don't specify PlatformArn,
  6120  	// SolutionStackName, or SourceConfiguration.
  6121  	EnvironmentId *string `type:"string"`
  6122  
  6123  	// Option values for the Elastic Beanstalk configuration, such as the instance
  6124  	// type. If specified, these values override the values obtained from the solution
  6125  	// stack or the source configuration template. For a complete list of Elastic
  6126  	// Beanstalk configuration options, see Option Values (https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/command-options.html)
  6127  	// in the AWS Elastic Beanstalk Developer Guide.
  6128  	OptionSettings []*ConfigurationOptionSetting `type:"list"`
  6129  
  6130  	// The Amazon Resource Name (ARN) of the custom platform. For more information,
  6131  	// see Custom Platforms (https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/custom-platforms.html)
  6132  	// in the AWS Elastic Beanstalk Developer Guide.
  6133  	//
  6134  	// If you specify PlatformArn, then don't specify SolutionStackName.
  6135  	PlatformArn *string `type:"string"`
  6136  
  6137  	// The name of an Elastic Beanstalk solution stack (platform version) that this
  6138  	// configuration uses. For example, 64bit Amazon Linux 2013.09 running Tomcat
  6139  	// 7 Java 7. A solution stack specifies the operating system, runtime, and application
  6140  	// server for a configuration template. It also determines the set of configuration
  6141  	// options as well as the possible and default values. For more information,
  6142  	// see Supported Platforms (https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/concepts.platforms.html)
  6143  	// in the AWS Elastic Beanstalk Developer Guide.
  6144  	//
  6145  	// You must specify SolutionStackName if you don't specify PlatformArn, EnvironmentId,
  6146  	// or SourceConfiguration.
  6147  	//
  6148  	// Use the ListAvailableSolutionStacks (https://docs.aws.amazon.com/elasticbeanstalk/latest/api/API_ListAvailableSolutionStacks.html)
  6149  	// API to obtain a list of available solution stacks.
  6150  	SolutionStackName *string `type:"string"`
  6151  
  6152  	// An Elastic Beanstalk configuration template to base this one on. If specified,
  6153  	// Elastic Beanstalk uses the configuration values from the specified configuration
  6154  	// template to create a new configuration.
  6155  	//
  6156  	// Values specified in OptionSettings override any values obtained from the
  6157  	// SourceConfiguration.
  6158  	//
  6159  	// You must specify SourceConfiguration if you don't specify PlatformArn, EnvironmentId,
  6160  	// or SolutionStackName.
  6161  	//
  6162  	// Constraint: If both solution stack name and source configuration are specified,
  6163  	// the solution stack of the source configuration template must match the specified
  6164  	// solution stack name.
  6165  	SourceConfiguration *SourceConfiguration `type:"structure"`
  6166  
  6167  	// Specifies the tags applied to the configuration template.
  6168  	Tags []*Tag `type:"list"`
  6169  
  6170  	// The name of the configuration template.
  6171  	//
  6172  	// Constraint: This name must be unique per application.
  6173  	//
  6174  	// TemplateName is a required field
  6175  	TemplateName *string `min:"1" type:"string" required:"true"`
  6176  }
  6177  
  6178  // String returns the string representation.
  6179  //
  6180  // API parameter values that are decorated as "sensitive" in the API will not
  6181  // be included in the string output. The member name will be present, but the
  6182  // value will be replaced with "sensitive".
  6183  func (s CreateConfigurationTemplateInput) String() string {
  6184  	return awsutil.Prettify(s)
  6185  }
  6186  
  6187  // GoString returns the string representation.
  6188  //
  6189  // API parameter values that are decorated as "sensitive" in the API will not
  6190  // be included in the string output. The member name will be present, but the
  6191  // value will be replaced with "sensitive".
  6192  func (s CreateConfigurationTemplateInput) GoString() string {
  6193  	return s.String()
  6194  }
  6195  
  6196  // Validate inspects the fields of the type to determine if they are valid.
  6197  func (s *CreateConfigurationTemplateInput) Validate() error {
  6198  	invalidParams := request.ErrInvalidParams{Context: "CreateConfigurationTemplateInput"}
  6199  	if s.ApplicationName == nil {
  6200  		invalidParams.Add(request.NewErrParamRequired("ApplicationName"))
  6201  	}
  6202  	if s.ApplicationName != nil && len(*s.ApplicationName) < 1 {
  6203  		invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1))
  6204  	}
  6205  	if s.TemplateName == nil {
  6206  		invalidParams.Add(request.NewErrParamRequired("TemplateName"))
  6207  	}
  6208  	if s.TemplateName != nil && len(*s.TemplateName) < 1 {
  6209  		invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1))
  6210  	}
  6211  	if s.OptionSettings != nil {
  6212  		for i, v := range s.OptionSettings {
  6213  			if v == nil {
  6214  				continue
  6215  			}
  6216  			if err := v.Validate(); err != nil {
  6217  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OptionSettings", i), err.(request.ErrInvalidParams))
  6218  			}
  6219  		}
  6220  	}
  6221  	if s.SourceConfiguration != nil {
  6222  		if err := s.SourceConfiguration.Validate(); err != nil {
  6223  			invalidParams.AddNested("SourceConfiguration", err.(request.ErrInvalidParams))
  6224  		}
  6225  	}
  6226  	if s.Tags != nil {
  6227  		for i, v := range s.Tags {
  6228  			if v == nil {
  6229  				continue
  6230  			}
  6231  			if err := v.Validate(); err != nil {
  6232  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
  6233  			}
  6234  		}
  6235  	}
  6236  
  6237  	if invalidParams.Len() > 0 {
  6238  		return invalidParams
  6239  	}
  6240  	return nil
  6241  }
  6242  
  6243  // SetApplicationName sets the ApplicationName field's value.
  6244  func (s *CreateConfigurationTemplateInput) SetApplicationName(v string) *CreateConfigurationTemplateInput {
  6245  	s.ApplicationName = &v
  6246  	return s
  6247  }
  6248  
  6249  // SetDescription sets the Description field's value.
  6250  func (s *CreateConfigurationTemplateInput) SetDescription(v string) *CreateConfigurationTemplateInput {
  6251  	s.Description = &v
  6252  	return s
  6253  }
  6254  
  6255  // SetEnvironmentId sets the EnvironmentId field's value.
  6256  func (s *CreateConfigurationTemplateInput) SetEnvironmentId(v string) *CreateConfigurationTemplateInput {
  6257  	s.EnvironmentId = &v
  6258  	return s
  6259  }
  6260  
  6261  // SetOptionSettings sets the OptionSettings field's value.
  6262  func (s *CreateConfigurationTemplateInput) SetOptionSettings(v []*ConfigurationOptionSetting) *CreateConfigurationTemplateInput {
  6263  	s.OptionSettings = v
  6264  	return s
  6265  }
  6266  
  6267  // SetPlatformArn sets the PlatformArn field's value.
  6268  func (s *CreateConfigurationTemplateInput) SetPlatformArn(v string) *CreateConfigurationTemplateInput {
  6269  	s.PlatformArn = &v
  6270  	return s
  6271  }
  6272  
  6273  // SetSolutionStackName sets the SolutionStackName field's value.
  6274  func (s *CreateConfigurationTemplateInput) SetSolutionStackName(v string) *CreateConfigurationTemplateInput {
  6275  	s.SolutionStackName = &v
  6276  	return s
  6277  }
  6278  
  6279  // SetSourceConfiguration sets the SourceConfiguration field's value.
  6280  func (s *CreateConfigurationTemplateInput) SetSourceConfiguration(v *SourceConfiguration) *CreateConfigurationTemplateInput {
  6281  	s.SourceConfiguration = v
  6282  	return s
  6283  }
  6284  
  6285  // SetTags sets the Tags field's value.
  6286  func (s *CreateConfigurationTemplateInput) SetTags(v []*Tag) *CreateConfigurationTemplateInput {
  6287  	s.Tags = v
  6288  	return s
  6289  }
  6290  
  6291  // SetTemplateName sets the TemplateName field's value.
  6292  func (s *CreateConfigurationTemplateInput) SetTemplateName(v string) *CreateConfigurationTemplateInput {
  6293  	s.TemplateName = &v
  6294  	return s
  6295  }
  6296  
  6297  type CreateEnvironmentInput struct {
  6298  	_ struct{} `type:"structure"`
  6299  
  6300  	// The name of the application that is associated with this environment.
  6301  	//
  6302  	// ApplicationName is a required field
  6303  	ApplicationName *string `min:"1" type:"string" required:"true"`
  6304  
  6305  	// If specified, the environment attempts to use this value as the prefix for
  6306  	// the CNAME in your Elastic Beanstalk environment URL. If not specified, the
  6307  	// CNAME is generated automatically by appending a random alphanumeric string
  6308  	// to the environment name.
  6309  	CNAMEPrefix *string `min:"4" type:"string"`
  6310  
  6311  	// Your description for this environment.
  6312  	Description *string `type:"string"`
  6313  
  6314  	// A unique name for the environment.
  6315  	//
  6316  	// Constraint: Must be from 4 to 40 characters in length. The name can contain
  6317  	// only letters, numbers, and hyphens. It can't start or end with a hyphen.
  6318  	// This name must be unique within a region in your account. If the specified
  6319  	// name already exists in the region, Elastic Beanstalk returns an InvalidParameterValue
  6320  	// error.
  6321  	//
  6322  	// If you don't specify the CNAMEPrefix parameter, the environment name becomes
  6323  	// part of the CNAME, and therefore part of the visible URL for your application.
  6324  	EnvironmentName *string `min:"4" type:"string"`
  6325  
  6326  	// The name of the group to which the target environment belongs. Specify a
  6327  	// group name only if the environment's name is specified in an environment
  6328  	// manifest and not with the environment name parameter. See Environment Manifest
  6329  	// (env.yaml) (https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/environment-cfg-manifest.html)
  6330  	// for details.
  6331  	GroupName *string `min:"1" type:"string"`
  6332  
  6333  	// The Amazon Resource Name (ARN) of an existing IAM role to be used as the
  6334  	// environment's operations role. If specified, Elastic Beanstalk uses the operations
  6335  	// role for permissions to downstream services during this call and during subsequent
  6336  	// calls acting on this environment. To specify an operations role, you must
  6337  	// have the iam:PassRole permission for the role. For more information, see
  6338  	// Operations roles (https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/iam-operationsrole.html)
  6339  	// in the AWS Elastic Beanstalk Developer Guide.
  6340  	OperationsRole *string `min:"1" type:"string"`
  6341  
  6342  	// If specified, AWS Elastic Beanstalk sets the specified configuration options
  6343  	// to the requested value in the configuration set for the new environment.
  6344  	// These override the values obtained from the solution stack or the configuration
  6345  	// template.
  6346  	OptionSettings []*ConfigurationOptionSetting `type:"list"`
  6347  
  6348  	// A list of custom user-defined configuration options to remove from the configuration
  6349  	// set for this new environment.
  6350  	OptionsToRemove []*OptionSpecification `type:"list"`
  6351  
  6352  	// The Amazon Resource Name (ARN) of the custom platform to use with the environment.
  6353  	// For more information, see Custom Platforms (https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/custom-platforms.html)
  6354  	// in the AWS Elastic Beanstalk Developer Guide.
  6355  	//
  6356  	// If you specify PlatformArn, don't specify SolutionStackName.
  6357  	PlatformArn *string `type:"string"`
  6358  
  6359  	// The name of an Elastic Beanstalk solution stack (platform version) to use
  6360  	// with the environment. If specified, Elastic Beanstalk sets the configuration
  6361  	// values to the default values associated with the specified solution stack.
  6362  	// For a list of current solution stacks, see Elastic Beanstalk Supported Platforms
  6363  	// (https://docs.aws.amazon.com/elasticbeanstalk/latest/platforms/platforms-supported.html)
  6364  	// in the AWS Elastic Beanstalk Platforms guide.
  6365  	//
  6366  	// If you specify SolutionStackName, don't specify PlatformArn or TemplateName.
  6367  	SolutionStackName *string `type:"string"`
  6368  
  6369  	// Specifies the tags applied to resources in the environment.
  6370  	Tags []*Tag `type:"list"`
  6371  
  6372  	// The name of the Elastic Beanstalk configuration template to use with the
  6373  	// environment.
  6374  	//
  6375  	// If you specify TemplateName, then don't specify SolutionStackName.
  6376  	TemplateName *string `min:"1" type:"string"`
  6377  
  6378  	// Specifies the tier to use in creating this environment. The environment tier
  6379  	// that you choose determines whether Elastic Beanstalk provisions resources
  6380  	// to support a web application that handles HTTP(S) requests or a web application
  6381  	// that handles background-processing tasks.
  6382  	Tier *EnvironmentTier `type:"structure"`
  6383  
  6384  	// The name of the application version to deploy.
  6385  	//
  6386  	// Default: If not specified, Elastic Beanstalk attempts to deploy the sample
  6387  	// application.
  6388  	VersionLabel *string `min:"1" type:"string"`
  6389  }
  6390  
  6391  // String returns the string representation.
  6392  //
  6393  // API parameter values that are decorated as "sensitive" in the API will not
  6394  // be included in the string output. The member name will be present, but the
  6395  // value will be replaced with "sensitive".
  6396  func (s CreateEnvironmentInput) String() string {
  6397  	return awsutil.Prettify(s)
  6398  }
  6399  
  6400  // GoString returns the string representation.
  6401  //
  6402  // API parameter values that are decorated as "sensitive" in the API will not
  6403  // be included in the string output. The member name will be present, but the
  6404  // value will be replaced with "sensitive".
  6405  func (s CreateEnvironmentInput) GoString() string {
  6406  	return s.String()
  6407  }
  6408  
  6409  // Validate inspects the fields of the type to determine if they are valid.
  6410  func (s *CreateEnvironmentInput) Validate() error {
  6411  	invalidParams := request.ErrInvalidParams{Context: "CreateEnvironmentInput"}
  6412  	if s.ApplicationName == nil {
  6413  		invalidParams.Add(request.NewErrParamRequired("ApplicationName"))
  6414  	}
  6415  	if s.ApplicationName != nil && len(*s.ApplicationName) < 1 {
  6416  		invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1))
  6417  	}
  6418  	if s.CNAMEPrefix != nil && len(*s.CNAMEPrefix) < 4 {
  6419  		invalidParams.Add(request.NewErrParamMinLen("CNAMEPrefix", 4))
  6420  	}
  6421  	if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 {
  6422  		invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4))
  6423  	}
  6424  	if s.GroupName != nil && len(*s.GroupName) < 1 {
  6425  		invalidParams.Add(request.NewErrParamMinLen("GroupName", 1))
  6426  	}
  6427  	if s.OperationsRole != nil && len(*s.OperationsRole) < 1 {
  6428  		invalidParams.Add(request.NewErrParamMinLen("OperationsRole", 1))
  6429  	}
  6430  	if s.TemplateName != nil && len(*s.TemplateName) < 1 {
  6431  		invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1))
  6432  	}
  6433  	if s.VersionLabel != nil && len(*s.VersionLabel) < 1 {
  6434  		invalidParams.Add(request.NewErrParamMinLen("VersionLabel", 1))
  6435  	}
  6436  	if s.OptionSettings != nil {
  6437  		for i, v := range s.OptionSettings {
  6438  			if v == nil {
  6439  				continue
  6440  			}
  6441  			if err := v.Validate(); err != nil {
  6442  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OptionSettings", i), err.(request.ErrInvalidParams))
  6443  			}
  6444  		}
  6445  	}
  6446  	if s.OptionsToRemove != nil {
  6447  		for i, v := range s.OptionsToRemove {
  6448  			if v == nil {
  6449  				continue
  6450  			}
  6451  			if err := v.Validate(); err != nil {
  6452  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OptionsToRemove", i), err.(request.ErrInvalidParams))
  6453  			}
  6454  		}
  6455  	}
  6456  	if s.Tags != nil {
  6457  		for i, v := range s.Tags {
  6458  			if v == nil {
  6459  				continue
  6460  			}
  6461  			if err := v.Validate(); err != nil {
  6462  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
  6463  			}
  6464  		}
  6465  	}
  6466  
  6467  	if invalidParams.Len() > 0 {
  6468  		return invalidParams
  6469  	}
  6470  	return nil
  6471  }
  6472  
  6473  // SetApplicationName sets the ApplicationName field's value.
  6474  func (s *CreateEnvironmentInput) SetApplicationName(v string) *CreateEnvironmentInput {
  6475  	s.ApplicationName = &v
  6476  	return s
  6477  }
  6478  
  6479  // SetCNAMEPrefix sets the CNAMEPrefix field's value.
  6480  func (s *CreateEnvironmentInput) SetCNAMEPrefix(v string) *CreateEnvironmentInput {
  6481  	s.CNAMEPrefix = &v
  6482  	return s
  6483  }
  6484  
  6485  // SetDescription sets the Description field's value.
  6486  func (s *CreateEnvironmentInput) SetDescription(v string) *CreateEnvironmentInput {
  6487  	s.Description = &v
  6488  	return s
  6489  }
  6490  
  6491  // SetEnvironmentName sets the EnvironmentName field's value.
  6492  func (s *CreateEnvironmentInput) SetEnvironmentName(v string) *CreateEnvironmentInput {
  6493  	s.EnvironmentName = &v
  6494  	return s
  6495  }
  6496  
  6497  // SetGroupName sets the GroupName field's value.
  6498  func (s *CreateEnvironmentInput) SetGroupName(v string) *CreateEnvironmentInput {
  6499  	s.GroupName = &v
  6500  	return s
  6501  }
  6502  
  6503  // SetOperationsRole sets the OperationsRole field's value.
  6504  func (s *CreateEnvironmentInput) SetOperationsRole(v string) *CreateEnvironmentInput {
  6505  	s.OperationsRole = &v
  6506  	return s
  6507  }
  6508  
  6509  // SetOptionSettings sets the OptionSettings field's value.
  6510  func (s *CreateEnvironmentInput) SetOptionSettings(v []*ConfigurationOptionSetting) *CreateEnvironmentInput {
  6511  	s.OptionSettings = v
  6512  	return s
  6513  }
  6514  
  6515  // SetOptionsToRemove sets the OptionsToRemove field's value.
  6516  func (s *CreateEnvironmentInput) SetOptionsToRemove(v []*OptionSpecification) *CreateEnvironmentInput {
  6517  	s.OptionsToRemove = v
  6518  	return s
  6519  }
  6520  
  6521  // SetPlatformArn sets the PlatformArn field's value.
  6522  func (s *CreateEnvironmentInput) SetPlatformArn(v string) *CreateEnvironmentInput {
  6523  	s.PlatformArn = &v
  6524  	return s
  6525  }
  6526  
  6527  // SetSolutionStackName sets the SolutionStackName field's value.
  6528  func (s *CreateEnvironmentInput) SetSolutionStackName(v string) *CreateEnvironmentInput {
  6529  	s.SolutionStackName = &v
  6530  	return s
  6531  }
  6532  
  6533  // SetTags sets the Tags field's value.
  6534  func (s *CreateEnvironmentInput) SetTags(v []*Tag) *CreateEnvironmentInput {
  6535  	s.Tags = v
  6536  	return s
  6537  }
  6538  
  6539  // SetTemplateName sets the TemplateName field's value.
  6540  func (s *CreateEnvironmentInput) SetTemplateName(v string) *CreateEnvironmentInput {
  6541  	s.TemplateName = &v
  6542  	return s
  6543  }
  6544  
  6545  // SetTier sets the Tier field's value.
  6546  func (s *CreateEnvironmentInput) SetTier(v *EnvironmentTier) *CreateEnvironmentInput {
  6547  	s.Tier = v
  6548  	return s
  6549  }
  6550  
  6551  // SetVersionLabel sets the VersionLabel field's value.
  6552  func (s *CreateEnvironmentInput) SetVersionLabel(v string) *CreateEnvironmentInput {
  6553  	s.VersionLabel = &v
  6554  	return s
  6555  }
  6556  
  6557  // Request to create a new platform version.
  6558  type CreatePlatformVersionInput struct {
  6559  	_ struct{} `type:"structure"`
  6560  
  6561  	// The name of the builder environment.
  6562  	EnvironmentName *string `min:"4" type:"string"`
  6563  
  6564  	// The configuration option settings to apply to the builder environment.
  6565  	OptionSettings []*ConfigurationOptionSetting `type:"list"`
  6566  
  6567  	// The location of the platform definition archive in Amazon S3.
  6568  	//
  6569  	// PlatformDefinitionBundle is a required field
  6570  	PlatformDefinitionBundle *S3Location `type:"structure" required:"true"`
  6571  
  6572  	// The name of your custom platform.
  6573  	//
  6574  	// PlatformName is a required field
  6575  	PlatformName *string `type:"string" required:"true"`
  6576  
  6577  	// The number, such as 1.0.2, for the new platform version.
  6578  	//
  6579  	// PlatformVersion is a required field
  6580  	PlatformVersion *string `type:"string" required:"true"`
  6581  
  6582  	// Specifies the tags applied to the new platform version.
  6583  	//
  6584  	// Elastic Beanstalk applies these tags only to the platform version. Environments
  6585  	// that you create using the platform version don't inherit the tags.
  6586  	Tags []*Tag `type:"list"`
  6587  }
  6588  
  6589  // String returns the string representation.
  6590  //
  6591  // API parameter values that are decorated as "sensitive" in the API will not
  6592  // be included in the string output. The member name will be present, but the
  6593  // value will be replaced with "sensitive".
  6594  func (s CreatePlatformVersionInput) String() string {
  6595  	return awsutil.Prettify(s)
  6596  }
  6597  
  6598  // GoString returns the string representation.
  6599  //
  6600  // API parameter values that are decorated as "sensitive" in the API will not
  6601  // be included in the string output. The member name will be present, but the
  6602  // value will be replaced with "sensitive".
  6603  func (s CreatePlatformVersionInput) GoString() string {
  6604  	return s.String()
  6605  }
  6606  
  6607  // Validate inspects the fields of the type to determine if they are valid.
  6608  func (s *CreatePlatformVersionInput) Validate() error {
  6609  	invalidParams := request.ErrInvalidParams{Context: "CreatePlatformVersionInput"}
  6610  	if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 {
  6611  		invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4))
  6612  	}
  6613  	if s.PlatformDefinitionBundle == nil {
  6614  		invalidParams.Add(request.NewErrParamRequired("PlatformDefinitionBundle"))
  6615  	}
  6616  	if s.PlatformName == nil {
  6617  		invalidParams.Add(request.NewErrParamRequired("PlatformName"))
  6618  	}
  6619  	if s.PlatformVersion == nil {
  6620  		invalidParams.Add(request.NewErrParamRequired("PlatformVersion"))
  6621  	}
  6622  	if s.OptionSettings != nil {
  6623  		for i, v := range s.OptionSettings {
  6624  			if v == nil {
  6625  				continue
  6626  			}
  6627  			if err := v.Validate(); err != nil {
  6628  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OptionSettings", i), err.(request.ErrInvalidParams))
  6629  			}
  6630  		}
  6631  	}
  6632  	if s.Tags != nil {
  6633  		for i, v := range s.Tags {
  6634  			if v == nil {
  6635  				continue
  6636  			}
  6637  			if err := v.Validate(); err != nil {
  6638  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
  6639  			}
  6640  		}
  6641  	}
  6642  
  6643  	if invalidParams.Len() > 0 {
  6644  		return invalidParams
  6645  	}
  6646  	return nil
  6647  }
  6648  
  6649  // SetEnvironmentName sets the EnvironmentName field's value.
  6650  func (s *CreatePlatformVersionInput) SetEnvironmentName(v string) *CreatePlatformVersionInput {
  6651  	s.EnvironmentName = &v
  6652  	return s
  6653  }
  6654  
  6655  // SetOptionSettings sets the OptionSettings field's value.
  6656  func (s *CreatePlatformVersionInput) SetOptionSettings(v []*ConfigurationOptionSetting) *CreatePlatformVersionInput {
  6657  	s.OptionSettings = v
  6658  	return s
  6659  }
  6660  
  6661  // SetPlatformDefinitionBundle sets the PlatformDefinitionBundle field's value.
  6662  func (s *CreatePlatformVersionInput) SetPlatformDefinitionBundle(v *S3Location) *CreatePlatformVersionInput {
  6663  	s.PlatformDefinitionBundle = v
  6664  	return s
  6665  }
  6666  
  6667  // SetPlatformName sets the PlatformName field's value.
  6668  func (s *CreatePlatformVersionInput) SetPlatformName(v string) *CreatePlatformVersionInput {
  6669  	s.PlatformName = &v
  6670  	return s
  6671  }
  6672  
  6673  // SetPlatformVersion sets the PlatformVersion field's value.
  6674  func (s *CreatePlatformVersionInput) SetPlatformVersion(v string) *CreatePlatformVersionInput {
  6675  	s.PlatformVersion = &v
  6676  	return s
  6677  }
  6678  
  6679  // SetTags sets the Tags field's value.
  6680  func (s *CreatePlatformVersionInput) SetTags(v []*Tag) *CreatePlatformVersionInput {
  6681  	s.Tags = v
  6682  	return s
  6683  }
  6684  
  6685  type CreatePlatformVersionOutput struct {
  6686  	_ struct{} `type:"structure"`
  6687  
  6688  	// The builder used to create the custom platform.
  6689  	Builder *Builder `type:"structure"`
  6690  
  6691  	// Detailed information about the new version of the custom platform.
  6692  	PlatformSummary *PlatformSummary `type:"structure"`
  6693  }
  6694  
  6695  // String returns the string representation.
  6696  //
  6697  // API parameter values that are decorated as "sensitive" in the API will not
  6698  // be included in the string output. The member name will be present, but the
  6699  // value will be replaced with "sensitive".
  6700  func (s CreatePlatformVersionOutput) String() string {
  6701  	return awsutil.Prettify(s)
  6702  }
  6703  
  6704  // GoString returns the string representation.
  6705  //
  6706  // API parameter values that are decorated as "sensitive" in the API will not
  6707  // be included in the string output. The member name will be present, but the
  6708  // value will be replaced with "sensitive".
  6709  func (s CreatePlatformVersionOutput) GoString() string {
  6710  	return s.String()
  6711  }
  6712  
  6713  // SetBuilder sets the Builder field's value.
  6714  func (s *CreatePlatformVersionOutput) SetBuilder(v *Builder) *CreatePlatformVersionOutput {
  6715  	s.Builder = v
  6716  	return s
  6717  }
  6718  
  6719  // SetPlatformSummary sets the PlatformSummary field's value.
  6720  func (s *CreatePlatformVersionOutput) SetPlatformSummary(v *PlatformSummary) *CreatePlatformVersionOutput {
  6721  	s.PlatformSummary = v
  6722  	return s
  6723  }
  6724  
  6725  type CreateStorageLocationInput struct {
  6726  	_ struct{} `type:"structure"`
  6727  }
  6728  
  6729  // String 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 CreateStorageLocationInput) String() string {
  6735  	return awsutil.Prettify(s)
  6736  }
  6737  
  6738  // GoString returns the string representation.
  6739  //
  6740  // API parameter values that are decorated as "sensitive" in the API will not
  6741  // be included in the string output. The member name will be present, but the
  6742  // value will be replaced with "sensitive".
  6743  func (s CreateStorageLocationInput) GoString() string {
  6744  	return s.String()
  6745  }
  6746  
  6747  // Results of a CreateStorageLocationResult call.
  6748  type CreateStorageLocationOutput struct {
  6749  	_ struct{} `type:"structure"`
  6750  
  6751  	// The name of the Amazon S3 bucket created.
  6752  	S3Bucket *string `type:"string"`
  6753  }
  6754  
  6755  // String returns the string representation.
  6756  //
  6757  // API parameter values that are decorated as "sensitive" in the API will not
  6758  // be included in the string output. The member name will be present, but the
  6759  // value will be replaced with "sensitive".
  6760  func (s CreateStorageLocationOutput) String() string {
  6761  	return awsutil.Prettify(s)
  6762  }
  6763  
  6764  // GoString returns the string representation.
  6765  //
  6766  // API parameter values that are decorated as "sensitive" in the API will not
  6767  // be included in the string output. The member name will be present, but the
  6768  // value will be replaced with "sensitive".
  6769  func (s CreateStorageLocationOutput) GoString() string {
  6770  	return s.String()
  6771  }
  6772  
  6773  // SetS3Bucket sets the S3Bucket field's value.
  6774  func (s *CreateStorageLocationOutput) SetS3Bucket(v string) *CreateStorageLocationOutput {
  6775  	s.S3Bucket = &v
  6776  	return s
  6777  }
  6778  
  6779  // A custom AMI available to platforms.
  6780  type CustomAmi struct {
  6781  	_ struct{} `type:"structure"`
  6782  
  6783  	// THe ID of the image used to create the custom AMI.
  6784  	ImageId *string `type:"string"`
  6785  
  6786  	// The type of virtualization used to create the custom AMI.
  6787  	VirtualizationType *string `type:"string"`
  6788  }
  6789  
  6790  // String returns the string representation.
  6791  //
  6792  // API parameter values that are decorated as "sensitive" in the API will not
  6793  // be included in the string output. The member name will be present, but the
  6794  // value will be replaced with "sensitive".
  6795  func (s CustomAmi) String() string {
  6796  	return awsutil.Prettify(s)
  6797  }
  6798  
  6799  // GoString returns the string representation.
  6800  //
  6801  // API parameter values that are decorated as "sensitive" in the API will not
  6802  // be included in the string output. The member name will be present, but the
  6803  // value will be replaced with "sensitive".
  6804  func (s CustomAmi) GoString() string {
  6805  	return s.String()
  6806  }
  6807  
  6808  // SetImageId sets the ImageId field's value.
  6809  func (s *CustomAmi) SetImageId(v string) *CustomAmi {
  6810  	s.ImageId = &v
  6811  	return s
  6812  }
  6813  
  6814  // SetVirtualizationType sets the VirtualizationType field's value.
  6815  func (s *CustomAmi) SetVirtualizationType(v string) *CustomAmi {
  6816  	s.VirtualizationType = &v
  6817  	return s
  6818  }
  6819  
  6820  // Request to delete an application.
  6821  type DeleteApplicationInput struct {
  6822  	_ struct{} `type:"structure"`
  6823  
  6824  	// The name of the application to delete.
  6825  	//
  6826  	// ApplicationName is a required field
  6827  	ApplicationName *string `min:"1" type:"string" required:"true"`
  6828  
  6829  	// When set to true, running environments will be terminated before deleting
  6830  	// the application.
  6831  	TerminateEnvByForce *bool `type:"boolean"`
  6832  }
  6833  
  6834  // String returns the string representation.
  6835  //
  6836  // API parameter values that are decorated as "sensitive" in the API will not
  6837  // be included in the string output. The member name will be present, but the
  6838  // value will be replaced with "sensitive".
  6839  func (s DeleteApplicationInput) String() string {
  6840  	return awsutil.Prettify(s)
  6841  }
  6842  
  6843  // GoString returns the string representation.
  6844  //
  6845  // API parameter values that are decorated as "sensitive" in the API will not
  6846  // be included in the string output. The member name will be present, but the
  6847  // value will be replaced with "sensitive".
  6848  func (s DeleteApplicationInput) GoString() string {
  6849  	return s.String()
  6850  }
  6851  
  6852  // Validate inspects the fields of the type to determine if they are valid.
  6853  func (s *DeleteApplicationInput) Validate() error {
  6854  	invalidParams := request.ErrInvalidParams{Context: "DeleteApplicationInput"}
  6855  	if s.ApplicationName == nil {
  6856  		invalidParams.Add(request.NewErrParamRequired("ApplicationName"))
  6857  	}
  6858  	if s.ApplicationName != nil && len(*s.ApplicationName) < 1 {
  6859  		invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1))
  6860  	}
  6861  
  6862  	if invalidParams.Len() > 0 {
  6863  		return invalidParams
  6864  	}
  6865  	return nil
  6866  }
  6867  
  6868  // SetApplicationName sets the ApplicationName field's value.
  6869  func (s *DeleteApplicationInput) SetApplicationName(v string) *DeleteApplicationInput {
  6870  	s.ApplicationName = &v
  6871  	return s
  6872  }
  6873  
  6874  // SetTerminateEnvByForce sets the TerminateEnvByForce field's value.
  6875  func (s *DeleteApplicationInput) SetTerminateEnvByForce(v bool) *DeleteApplicationInput {
  6876  	s.TerminateEnvByForce = &v
  6877  	return s
  6878  }
  6879  
  6880  type DeleteApplicationOutput struct {
  6881  	_ struct{} `type:"structure"`
  6882  }
  6883  
  6884  // String returns the string representation.
  6885  //
  6886  // API parameter values that are decorated as "sensitive" in the API will not
  6887  // be included in the string output. The member name will be present, but the
  6888  // value will be replaced with "sensitive".
  6889  func (s DeleteApplicationOutput) String() string {
  6890  	return awsutil.Prettify(s)
  6891  }
  6892  
  6893  // GoString returns the string representation.
  6894  //
  6895  // API parameter values that are decorated as "sensitive" in the API will not
  6896  // be included in the string output. The member name will be present, but the
  6897  // value will be replaced with "sensitive".
  6898  func (s DeleteApplicationOutput) GoString() string {
  6899  	return s.String()
  6900  }
  6901  
  6902  // Request to delete an application version.
  6903  type DeleteApplicationVersionInput struct {
  6904  	_ struct{} `type:"structure"`
  6905  
  6906  	// The name of the application to which the version belongs.
  6907  	//
  6908  	// ApplicationName is a required field
  6909  	ApplicationName *string `min:"1" type:"string" required:"true"`
  6910  
  6911  	// Set to true to delete the source bundle from your storage bucket. Otherwise,
  6912  	// the application version is deleted only from Elastic Beanstalk and the source
  6913  	// bundle remains in Amazon S3.
  6914  	DeleteSourceBundle *bool `type:"boolean"`
  6915  
  6916  	// The label of the version to delete.
  6917  	//
  6918  	// VersionLabel is a required field
  6919  	VersionLabel *string `min:"1" type:"string" required:"true"`
  6920  }
  6921  
  6922  // String returns the string representation.
  6923  //
  6924  // API parameter values that are decorated as "sensitive" in the API will not
  6925  // be included in the string output. The member name will be present, but the
  6926  // value will be replaced with "sensitive".
  6927  func (s DeleteApplicationVersionInput) String() string {
  6928  	return awsutil.Prettify(s)
  6929  }
  6930  
  6931  // GoString returns the string representation.
  6932  //
  6933  // API parameter values that are decorated as "sensitive" in the API will not
  6934  // be included in the string output. The member name will be present, but the
  6935  // value will be replaced with "sensitive".
  6936  func (s DeleteApplicationVersionInput) GoString() string {
  6937  	return s.String()
  6938  }
  6939  
  6940  // Validate inspects the fields of the type to determine if they are valid.
  6941  func (s *DeleteApplicationVersionInput) Validate() error {
  6942  	invalidParams := request.ErrInvalidParams{Context: "DeleteApplicationVersionInput"}
  6943  	if s.ApplicationName == nil {
  6944  		invalidParams.Add(request.NewErrParamRequired("ApplicationName"))
  6945  	}
  6946  	if s.ApplicationName != nil && len(*s.ApplicationName) < 1 {
  6947  		invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1))
  6948  	}
  6949  	if s.VersionLabel == nil {
  6950  		invalidParams.Add(request.NewErrParamRequired("VersionLabel"))
  6951  	}
  6952  	if s.VersionLabel != nil && len(*s.VersionLabel) < 1 {
  6953  		invalidParams.Add(request.NewErrParamMinLen("VersionLabel", 1))
  6954  	}
  6955  
  6956  	if invalidParams.Len() > 0 {
  6957  		return invalidParams
  6958  	}
  6959  	return nil
  6960  }
  6961  
  6962  // SetApplicationName sets the ApplicationName field's value.
  6963  func (s *DeleteApplicationVersionInput) SetApplicationName(v string) *DeleteApplicationVersionInput {
  6964  	s.ApplicationName = &v
  6965  	return s
  6966  }
  6967  
  6968  // SetDeleteSourceBundle sets the DeleteSourceBundle field's value.
  6969  func (s *DeleteApplicationVersionInput) SetDeleteSourceBundle(v bool) *DeleteApplicationVersionInput {
  6970  	s.DeleteSourceBundle = &v
  6971  	return s
  6972  }
  6973  
  6974  // SetVersionLabel sets the VersionLabel field's value.
  6975  func (s *DeleteApplicationVersionInput) SetVersionLabel(v string) *DeleteApplicationVersionInput {
  6976  	s.VersionLabel = &v
  6977  	return s
  6978  }
  6979  
  6980  type DeleteApplicationVersionOutput struct {
  6981  	_ struct{} `type:"structure"`
  6982  }
  6983  
  6984  // String returns the string representation.
  6985  //
  6986  // API parameter values that are decorated as "sensitive" in the API will not
  6987  // be included in the string output. The member name will be present, but the
  6988  // value will be replaced with "sensitive".
  6989  func (s DeleteApplicationVersionOutput) String() string {
  6990  	return awsutil.Prettify(s)
  6991  }
  6992  
  6993  // GoString returns the string representation.
  6994  //
  6995  // API parameter values that are decorated as "sensitive" in the API will not
  6996  // be included in the string output. The member name will be present, but the
  6997  // value will be replaced with "sensitive".
  6998  func (s DeleteApplicationVersionOutput) GoString() string {
  6999  	return s.String()
  7000  }
  7001  
  7002  // Request to delete a configuration template.
  7003  type DeleteConfigurationTemplateInput struct {
  7004  	_ struct{} `type:"structure"`
  7005  
  7006  	// The name of the application to delete the configuration template from.
  7007  	//
  7008  	// ApplicationName is a required field
  7009  	ApplicationName *string `min:"1" type:"string" required:"true"`
  7010  
  7011  	// The name of the configuration template to delete.
  7012  	//
  7013  	// TemplateName is a required field
  7014  	TemplateName *string `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 DeleteConfigurationTemplateInput) 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 DeleteConfigurationTemplateInput) 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 *DeleteConfigurationTemplateInput) Validate() error {
  7037  	invalidParams := request.ErrInvalidParams{Context: "DeleteConfigurationTemplateInput"}
  7038  	if s.ApplicationName == nil {
  7039  		invalidParams.Add(request.NewErrParamRequired("ApplicationName"))
  7040  	}
  7041  	if s.ApplicationName != nil && len(*s.ApplicationName) < 1 {
  7042  		invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1))
  7043  	}
  7044  	if s.TemplateName == nil {
  7045  		invalidParams.Add(request.NewErrParamRequired("TemplateName"))
  7046  	}
  7047  	if s.TemplateName != nil && len(*s.TemplateName) < 1 {
  7048  		invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1))
  7049  	}
  7050  
  7051  	if invalidParams.Len() > 0 {
  7052  		return invalidParams
  7053  	}
  7054  	return nil
  7055  }
  7056  
  7057  // SetApplicationName sets the ApplicationName field's value.
  7058  func (s *DeleteConfigurationTemplateInput) SetApplicationName(v string) *DeleteConfigurationTemplateInput {
  7059  	s.ApplicationName = &v
  7060  	return s
  7061  }
  7062  
  7063  // SetTemplateName sets the TemplateName field's value.
  7064  func (s *DeleteConfigurationTemplateInput) SetTemplateName(v string) *DeleteConfigurationTemplateInput {
  7065  	s.TemplateName = &v
  7066  	return s
  7067  }
  7068  
  7069  type DeleteConfigurationTemplateOutput struct {
  7070  	_ struct{} `type:"structure"`
  7071  }
  7072  
  7073  // String returns the string representation.
  7074  //
  7075  // API parameter values that are decorated as "sensitive" in the API will not
  7076  // be included in the string output. The member name will be present, but the
  7077  // value will be replaced with "sensitive".
  7078  func (s DeleteConfigurationTemplateOutput) String() string {
  7079  	return awsutil.Prettify(s)
  7080  }
  7081  
  7082  // GoString returns the string representation.
  7083  //
  7084  // API parameter values that are decorated as "sensitive" in the API will not
  7085  // be included in the string output. The member name will be present, but the
  7086  // value will be replaced with "sensitive".
  7087  func (s DeleteConfigurationTemplateOutput) GoString() string {
  7088  	return s.String()
  7089  }
  7090  
  7091  // Request to delete a draft environment configuration.
  7092  type DeleteEnvironmentConfigurationInput struct {
  7093  	_ struct{} `type:"structure"`
  7094  
  7095  	// The name of the application the environment is associated with.
  7096  	//
  7097  	// ApplicationName is a required field
  7098  	ApplicationName *string `min:"1" type:"string" required:"true"`
  7099  
  7100  	// The name of the environment to delete the draft configuration from.
  7101  	//
  7102  	// EnvironmentName is a required field
  7103  	EnvironmentName *string `min:"4" type:"string" required:"true"`
  7104  }
  7105  
  7106  // String returns the string representation.
  7107  //
  7108  // API parameter values that are decorated as "sensitive" in the API will not
  7109  // be included in the string output. The member name will be present, but the
  7110  // value will be replaced with "sensitive".
  7111  func (s DeleteEnvironmentConfigurationInput) String() string {
  7112  	return awsutil.Prettify(s)
  7113  }
  7114  
  7115  // GoString returns the string representation.
  7116  //
  7117  // API parameter values that are decorated as "sensitive" in the API will not
  7118  // be included in the string output. The member name will be present, but the
  7119  // value will be replaced with "sensitive".
  7120  func (s DeleteEnvironmentConfigurationInput) GoString() string {
  7121  	return s.String()
  7122  }
  7123  
  7124  // Validate inspects the fields of the type to determine if they are valid.
  7125  func (s *DeleteEnvironmentConfigurationInput) Validate() error {
  7126  	invalidParams := request.ErrInvalidParams{Context: "DeleteEnvironmentConfigurationInput"}
  7127  	if s.ApplicationName == nil {
  7128  		invalidParams.Add(request.NewErrParamRequired("ApplicationName"))
  7129  	}
  7130  	if s.ApplicationName != nil && len(*s.ApplicationName) < 1 {
  7131  		invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1))
  7132  	}
  7133  	if s.EnvironmentName == nil {
  7134  		invalidParams.Add(request.NewErrParamRequired("EnvironmentName"))
  7135  	}
  7136  	if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 {
  7137  		invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4))
  7138  	}
  7139  
  7140  	if invalidParams.Len() > 0 {
  7141  		return invalidParams
  7142  	}
  7143  	return nil
  7144  }
  7145  
  7146  // SetApplicationName sets the ApplicationName field's value.
  7147  func (s *DeleteEnvironmentConfigurationInput) SetApplicationName(v string) *DeleteEnvironmentConfigurationInput {
  7148  	s.ApplicationName = &v
  7149  	return s
  7150  }
  7151  
  7152  // SetEnvironmentName sets the EnvironmentName field's value.
  7153  func (s *DeleteEnvironmentConfigurationInput) SetEnvironmentName(v string) *DeleteEnvironmentConfigurationInput {
  7154  	s.EnvironmentName = &v
  7155  	return s
  7156  }
  7157  
  7158  type DeleteEnvironmentConfigurationOutput struct {
  7159  	_ struct{} `type:"structure"`
  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 DeleteEnvironmentConfigurationOutput) 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 DeleteEnvironmentConfigurationOutput) GoString() string {
  7177  	return s.String()
  7178  }
  7179  
  7180  type DeletePlatformVersionInput struct {
  7181  	_ struct{} `type:"structure"`
  7182  
  7183  	// The ARN of the version of the custom platform.
  7184  	PlatformArn *string `type:"string"`
  7185  }
  7186  
  7187  // String returns the string representation.
  7188  //
  7189  // API parameter values that are decorated as "sensitive" in the API will not
  7190  // be included in the string output. The member name will be present, but the
  7191  // value will be replaced with "sensitive".
  7192  func (s DeletePlatformVersionInput) String() string {
  7193  	return awsutil.Prettify(s)
  7194  }
  7195  
  7196  // GoString returns the string representation.
  7197  //
  7198  // API parameter values that are decorated as "sensitive" in the API will not
  7199  // be included in the string output. The member name will be present, but the
  7200  // value will be replaced with "sensitive".
  7201  func (s DeletePlatformVersionInput) GoString() string {
  7202  	return s.String()
  7203  }
  7204  
  7205  // SetPlatformArn sets the PlatformArn field's value.
  7206  func (s *DeletePlatformVersionInput) SetPlatformArn(v string) *DeletePlatformVersionInput {
  7207  	s.PlatformArn = &v
  7208  	return s
  7209  }
  7210  
  7211  type DeletePlatformVersionOutput struct {
  7212  	_ struct{} `type:"structure"`
  7213  
  7214  	// Detailed information about the version of the custom platform.
  7215  	PlatformSummary *PlatformSummary `type:"structure"`
  7216  }
  7217  
  7218  // String returns the string representation.
  7219  //
  7220  // API parameter values that are decorated as "sensitive" in the API will not
  7221  // be included in the string output. The member name will be present, but the
  7222  // value will be replaced with "sensitive".
  7223  func (s DeletePlatformVersionOutput) String() string {
  7224  	return awsutil.Prettify(s)
  7225  }
  7226  
  7227  // GoString returns the string representation.
  7228  //
  7229  // API parameter values that are decorated as "sensitive" in the API will not
  7230  // be included in the string output. The member name will be present, but the
  7231  // value will be replaced with "sensitive".
  7232  func (s DeletePlatformVersionOutput) GoString() string {
  7233  	return s.String()
  7234  }
  7235  
  7236  // SetPlatformSummary sets the PlatformSummary field's value.
  7237  func (s *DeletePlatformVersionOutput) SetPlatformSummary(v *PlatformSummary) *DeletePlatformVersionOutput {
  7238  	s.PlatformSummary = v
  7239  	return s
  7240  }
  7241  
  7242  // Information about an application version deployment.
  7243  type Deployment struct {
  7244  	_ struct{} `type:"structure"`
  7245  
  7246  	// The ID of the deployment. This number increases by one each time that you
  7247  	// deploy source code or change instance configuration settings.
  7248  	DeploymentId *int64 `type:"long"`
  7249  
  7250  	// For in-progress deployments, the time that the deployment started.
  7251  	//
  7252  	// For completed deployments, the time that the deployment ended.
  7253  	DeploymentTime *time.Time `type:"timestamp"`
  7254  
  7255  	// The status of the deployment:
  7256  	//
  7257  	//    * In Progress : The deployment is in progress.
  7258  	//
  7259  	//    * Deployed : The deployment succeeded.
  7260  	//
  7261  	//    * Failed : The deployment failed.
  7262  	Status *string `type:"string"`
  7263  
  7264  	// The version label of the application version in the deployment.
  7265  	VersionLabel *string `type:"string"`
  7266  }
  7267  
  7268  // String returns the string representation.
  7269  //
  7270  // API parameter values that are decorated as "sensitive" in the API will not
  7271  // be included in the string output. The member name will be present, but the
  7272  // value will be replaced with "sensitive".
  7273  func (s Deployment) String() string {
  7274  	return awsutil.Prettify(s)
  7275  }
  7276  
  7277  // GoString returns the string representation.
  7278  //
  7279  // API parameter values that are decorated as "sensitive" in the API will not
  7280  // be included in the string output. The member name will be present, but the
  7281  // value will be replaced with "sensitive".
  7282  func (s Deployment) GoString() string {
  7283  	return s.String()
  7284  }
  7285  
  7286  // SetDeploymentId sets the DeploymentId field's value.
  7287  func (s *Deployment) SetDeploymentId(v int64) *Deployment {
  7288  	s.DeploymentId = &v
  7289  	return s
  7290  }
  7291  
  7292  // SetDeploymentTime sets the DeploymentTime field's value.
  7293  func (s *Deployment) SetDeploymentTime(v time.Time) *Deployment {
  7294  	s.DeploymentTime = &v
  7295  	return s
  7296  }
  7297  
  7298  // SetStatus sets the Status field's value.
  7299  func (s *Deployment) SetStatus(v string) *Deployment {
  7300  	s.Status = &v
  7301  	return s
  7302  }
  7303  
  7304  // SetVersionLabel sets the VersionLabel field's value.
  7305  func (s *Deployment) SetVersionLabel(v string) *Deployment {
  7306  	s.VersionLabel = &v
  7307  	return s
  7308  }
  7309  
  7310  type DescribeAccountAttributesInput struct {
  7311  	_ struct{} `type:"structure"`
  7312  }
  7313  
  7314  // String returns the string representation.
  7315  //
  7316  // API parameter values that are decorated as "sensitive" in the API will not
  7317  // be included in the string output. The member name will be present, but the
  7318  // value will be replaced with "sensitive".
  7319  func (s DescribeAccountAttributesInput) String() string {
  7320  	return awsutil.Prettify(s)
  7321  }
  7322  
  7323  // GoString returns the string representation.
  7324  //
  7325  // API parameter values that are decorated as "sensitive" in the API will not
  7326  // be included in the string output. The member name will be present, but the
  7327  // value will be replaced with "sensitive".
  7328  func (s DescribeAccountAttributesInput) GoString() string {
  7329  	return s.String()
  7330  }
  7331  
  7332  type DescribeAccountAttributesOutput struct {
  7333  	_ struct{} `type:"structure"`
  7334  
  7335  	// The Elastic Beanstalk resource quotas associated with the calling AWS account.
  7336  	ResourceQuotas *ResourceQuotas `type:"structure"`
  7337  }
  7338  
  7339  // String returns the string representation.
  7340  //
  7341  // API parameter values that are decorated as "sensitive" in the API will not
  7342  // be included in the string output. The member name will be present, but the
  7343  // value will be replaced with "sensitive".
  7344  func (s DescribeAccountAttributesOutput) String() string {
  7345  	return awsutil.Prettify(s)
  7346  }
  7347  
  7348  // GoString returns the string representation.
  7349  //
  7350  // API parameter values that are decorated as "sensitive" in the API will not
  7351  // be included in the string output. The member name will be present, but the
  7352  // value will be replaced with "sensitive".
  7353  func (s DescribeAccountAttributesOutput) GoString() string {
  7354  	return s.String()
  7355  }
  7356  
  7357  // SetResourceQuotas sets the ResourceQuotas field's value.
  7358  func (s *DescribeAccountAttributesOutput) SetResourceQuotas(v *ResourceQuotas) *DescribeAccountAttributesOutput {
  7359  	s.ResourceQuotas = v
  7360  	return s
  7361  }
  7362  
  7363  // Request to describe application versions.
  7364  type DescribeApplicationVersionsInput struct {
  7365  	_ struct{} `type:"structure"`
  7366  
  7367  	// Specify an application name to show only application versions for that application.
  7368  	ApplicationName *string `min:"1" type:"string"`
  7369  
  7370  	// For a paginated request. Specify a maximum number of application versions
  7371  	// to include in each response.
  7372  	//
  7373  	// If no MaxRecords is specified, all available application versions are retrieved
  7374  	// in a single response.
  7375  	MaxRecords *int64 `min:"1" type:"integer"`
  7376  
  7377  	// For a paginated request. Specify a token from a previous response page to
  7378  	// retrieve the next response page. All other parameter values must be identical
  7379  	// to the ones specified in the initial request.
  7380  	//
  7381  	// If no NextToken is specified, the first page is retrieved.
  7382  	NextToken *string `type:"string"`
  7383  
  7384  	// Specify a version label to show a specific application version.
  7385  	VersionLabels []*string `type:"list"`
  7386  }
  7387  
  7388  // String returns the string representation.
  7389  //
  7390  // API parameter values that are decorated as "sensitive" in the API will not
  7391  // be included in the string output. The member name will be present, but the
  7392  // value will be replaced with "sensitive".
  7393  func (s DescribeApplicationVersionsInput) String() string {
  7394  	return awsutil.Prettify(s)
  7395  }
  7396  
  7397  // GoString returns the string representation.
  7398  //
  7399  // API parameter values that are decorated as "sensitive" in the API will not
  7400  // be included in the string output. The member name will be present, but the
  7401  // value will be replaced with "sensitive".
  7402  func (s DescribeApplicationVersionsInput) GoString() string {
  7403  	return s.String()
  7404  }
  7405  
  7406  // Validate inspects the fields of the type to determine if they are valid.
  7407  func (s *DescribeApplicationVersionsInput) Validate() error {
  7408  	invalidParams := request.ErrInvalidParams{Context: "DescribeApplicationVersionsInput"}
  7409  	if s.ApplicationName != nil && len(*s.ApplicationName) < 1 {
  7410  		invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1))
  7411  	}
  7412  	if s.MaxRecords != nil && *s.MaxRecords < 1 {
  7413  		invalidParams.Add(request.NewErrParamMinValue("MaxRecords", 1))
  7414  	}
  7415  
  7416  	if invalidParams.Len() > 0 {
  7417  		return invalidParams
  7418  	}
  7419  	return nil
  7420  }
  7421  
  7422  // SetApplicationName sets the ApplicationName field's value.
  7423  func (s *DescribeApplicationVersionsInput) SetApplicationName(v string) *DescribeApplicationVersionsInput {
  7424  	s.ApplicationName = &v
  7425  	return s
  7426  }
  7427  
  7428  // SetMaxRecords sets the MaxRecords field's value.
  7429  func (s *DescribeApplicationVersionsInput) SetMaxRecords(v int64) *DescribeApplicationVersionsInput {
  7430  	s.MaxRecords = &v
  7431  	return s
  7432  }
  7433  
  7434  // SetNextToken sets the NextToken field's value.
  7435  func (s *DescribeApplicationVersionsInput) SetNextToken(v string) *DescribeApplicationVersionsInput {
  7436  	s.NextToken = &v
  7437  	return s
  7438  }
  7439  
  7440  // SetVersionLabels sets the VersionLabels field's value.
  7441  func (s *DescribeApplicationVersionsInput) SetVersionLabels(v []*string) *DescribeApplicationVersionsInput {
  7442  	s.VersionLabels = v
  7443  	return s
  7444  }
  7445  
  7446  // Result message wrapping a list of application version descriptions.
  7447  type DescribeApplicationVersionsOutput struct {
  7448  	_ struct{} `type:"structure"`
  7449  
  7450  	// List of ApplicationVersionDescription objects sorted in order of creation.
  7451  	ApplicationVersions []*ApplicationVersionDescription `type:"list"`
  7452  
  7453  	// In a paginated request, the token that you can pass in a subsequent request
  7454  	// to get the next response page.
  7455  	NextToken *string `type:"string"`
  7456  }
  7457  
  7458  // String returns the string representation.
  7459  //
  7460  // API parameter values that are decorated as "sensitive" in the API will not
  7461  // be included in the string output. The member name will be present, but the
  7462  // value will be replaced with "sensitive".
  7463  func (s DescribeApplicationVersionsOutput) String() string {
  7464  	return awsutil.Prettify(s)
  7465  }
  7466  
  7467  // GoString returns the string representation.
  7468  //
  7469  // API parameter values that are decorated as "sensitive" in the API will not
  7470  // be included in the string output. The member name will be present, but the
  7471  // value will be replaced with "sensitive".
  7472  func (s DescribeApplicationVersionsOutput) GoString() string {
  7473  	return s.String()
  7474  }
  7475  
  7476  // SetApplicationVersions sets the ApplicationVersions field's value.
  7477  func (s *DescribeApplicationVersionsOutput) SetApplicationVersions(v []*ApplicationVersionDescription) *DescribeApplicationVersionsOutput {
  7478  	s.ApplicationVersions = v
  7479  	return s
  7480  }
  7481  
  7482  // SetNextToken sets the NextToken field's value.
  7483  func (s *DescribeApplicationVersionsOutput) SetNextToken(v string) *DescribeApplicationVersionsOutput {
  7484  	s.NextToken = &v
  7485  	return s
  7486  }
  7487  
  7488  // Request to describe one or more applications.
  7489  type DescribeApplicationsInput struct {
  7490  	_ struct{} `type:"structure"`
  7491  
  7492  	// If specified, AWS Elastic Beanstalk restricts the returned descriptions to
  7493  	// only include those with the specified names.
  7494  	ApplicationNames []*string `type:"list"`
  7495  }
  7496  
  7497  // String returns the string representation.
  7498  //
  7499  // API parameter values that are decorated as "sensitive" in the API will not
  7500  // be included in the string output. The member name will be present, but the
  7501  // value will be replaced with "sensitive".
  7502  func (s DescribeApplicationsInput) String() string {
  7503  	return awsutil.Prettify(s)
  7504  }
  7505  
  7506  // GoString returns the string representation.
  7507  //
  7508  // API parameter values that are decorated as "sensitive" in the API will not
  7509  // be included in the string output. The member name will be present, but the
  7510  // value will be replaced with "sensitive".
  7511  func (s DescribeApplicationsInput) GoString() string {
  7512  	return s.String()
  7513  }
  7514  
  7515  // SetApplicationNames sets the ApplicationNames field's value.
  7516  func (s *DescribeApplicationsInput) SetApplicationNames(v []*string) *DescribeApplicationsInput {
  7517  	s.ApplicationNames = v
  7518  	return s
  7519  }
  7520  
  7521  // Result message containing a list of application descriptions.
  7522  type DescribeApplicationsOutput struct {
  7523  	_ struct{} `type:"structure"`
  7524  
  7525  	// This parameter contains a list of ApplicationDescription.
  7526  	Applications []*ApplicationDescription `type:"list"`
  7527  }
  7528  
  7529  // String returns the string representation.
  7530  //
  7531  // API parameter values that are decorated as "sensitive" in the API will not
  7532  // be included in the string output. The member name will be present, but the
  7533  // value will be replaced with "sensitive".
  7534  func (s DescribeApplicationsOutput) String() string {
  7535  	return awsutil.Prettify(s)
  7536  }
  7537  
  7538  // GoString returns the string representation.
  7539  //
  7540  // API parameter values that are decorated as "sensitive" in the API will not
  7541  // be included in the string output. The member name will be present, but the
  7542  // value will be replaced with "sensitive".
  7543  func (s DescribeApplicationsOutput) GoString() string {
  7544  	return s.String()
  7545  }
  7546  
  7547  // SetApplications sets the Applications field's value.
  7548  func (s *DescribeApplicationsOutput) SetApplications(v []*ApplicationDescription) *DescribeApplicationsOutput {
  7549  	s.Applications = v
  7550  	return s
  7551  }
  7552  
  7553  // Result message containing a list of application version descriptions.
  7554  type DescribeConfigurationOptionsInput struct {
  7555  	_ struct{} `type:"structure"`
  7556  
  7557  	// The name of the application associated with the configuration template or
  7558  	// environment. Only needed if you want to describe the configuration options
  7559  	// associated with either the configuration template or environment.
  7560  	ApplicationName *string `min:"1" type:"string"`
  7561  
  7562  	// The name of the environment whose configuration options you want to describe.
  7563  	EnvironmentName *string `min:"4" type:"string"`
  7564  
  7565  	// If specified, restricts the descriptions to only the specified options.
  7566  	Options []*OptionSpecification `type:"list"`
  7567  
  7568  	// The ARN of the custom platform.
  7569  	PlatformArn *string `type:"string"`
  7570  
  7571  	// The name of the solution stack whose configuration options you want to describe.
  7572  	SolutionStackName *string `type:"string"`
  7573  
  7574  	// The name of the configuration template whose configuration options you want
  7575  	// to describe.
  7576  	TemplateName *string `min:"1" type:"string"`
  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 DescribeConfigurationOptionsInput) 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 DescribeConfigurationOptionsInput) 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 *DescribeConfigurationOptionsInput) Validate() error {
  7599  	invalidParams := request.ErrInvalidParams{Context: "DescribeConfigurationOptionsInput"}
  7600  	if s.ApplicationName != nil && len(*s.ApplicationName) < 1 {
  7601  		invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1))
  7602  	}
  7603  	if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 {
  7604  		invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4))
  7605  	}
  7606  	if s.TemplateName != nil && len(*s.TemplateName) < 1 {
  7607  		invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1))
  7608  	}
  7609  	if s.Options != nil {
  7610  		for i, v := range s.Options {
  7611  			if v == nil {
  7612  				continue
  7613  			}
  7614  			if err := v.Validate(); err != nil {
  7615  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Options", i), err.(request.ErrInvalidParams))
  7616  			}
  7617  		}
  7618  	}
  7619  
  7620  	if invalidParams.Len() > 0 {
  7621  		return invalidParams
  7622  	}
  7623  	return nil
  7624  }
  7625  
  7626  // SetApplicationName sets the ApplicationName field's value.
  7627  func (s *DescribeConfigurationOptionsInput) SetApplicationName(v string) *DescribeConfigurationOptionsInput {
  7628  	s.ApplicationName = &v
  7629  	return s
  7630  }
  7631  
  7632  // SetEnvironmentName sets the EnvironmentName field's value.
  7633  func (s *DescribeConfigurationOptionsInput) SetEnvironmentName(v string) *DescribeConfigurationOptionsInput {
  7634  	s.EnvironmentName = &v
  7635  	return s
  7636  }
  7637  
  7638  // SetOptions sets the Options field's value.
  7639  func (s *DescribeConfigurationOptionsInput) SetOptions(v []*OptionSpecification) *DescribeConfigurationOptionsInput {
  7640  	s.Options = v
  7641  	return s
  7642  }
  7643  
  7644  // SetPlatformArn sets the PlatformArn field's value.
  7645  func (s *DescribeConfigurationOptionsInput) SetPlatformArn(v string) *DescribeConfigurationOptionsInput {
  7646  	s.PlatformArn = &v
  7647  	return s
  7648  }
  7649  
  7650  // SetSolutionStackName sets the SolutionStackName field's value.
  7651  func (s *DescribeConfigurationOptionsInput) SetSolutionStackName(v string) *DescribeConfigurationOptionsInput {
  7652  	s.SolutionStackName = &v
  7653  	return s
  7654  }
  7655  
  7656  // SetTemplateName sets the TemplateName field's value.
  7657  func (s *DescribeConfigurationOptionsInput) SetTemplateName(v string) *DescribeConfigurationOptionsInput {
  7658  	s.TemplateName = &v
  7659  	return s
  7660  }
  7661  
  7662  // Describes the settings for a specified configuration set.
  7663  type DescribeConfigurationOptionsOutput struct {
  7664  	_ struct{} `type:"structure"`
  7665  
  7666  	// A list of ConfigurationOptionDescription.
  7667  	Options []*ConfigurationOptionDescription `type:"list"`
  7668  
  7669  	// The ARN of the platform version.
  7670  	PlatformArn *string `type:"string"`
  7671  
  7672  	// The name of the solution stack these configuration options belong to.
  7673  	SolutionStackName *string `type:"string"`
  7674  }
  7675  
  7676  // String returns the string representation.
  7677  //
  7678  // API parameter values that are decorated as "sensitive" in the API will not
  7679  // be included in the string output. The member name will be present, but the
  7680  // value will be replaced with "sensitive".
  7681  func (s DescribeConfigurationOptionsOutput) String() string {
  7682  	return awsutil.Prettify(s)
  7683  }
  7684  
  7685  // GoString returns the string representation.
  7686  //
  7687  // API parameter values that are decorated as "sensitive" in the API will not
  7688  // be included in the string output. The member name will be present, but the
  7689  // value will be replaced with "sensitive".
  7690  func (s DescribeConfigurationOptionsOutput) GoString() string {
  7691  	return s.String()
  7692  }
  7693  
  7694  // SetOptions sets the Options field's value.
  7695  func (s *DescribeConfigurationOptionsOutput) SetOptions(v []*ConfigurationOptionDescription) *DescribeConfigurationOptionsOutput {
  7696  	s.Options = v
  7697  	return s
  7698  }
  7699  
  7700  // SetPlatformArn sets the PlatformArn field's value.
  7701  func (s *DescribeConfigurationOptionsOutput) SetPlatformArn(v string) *DescribeConfigurationOptionsOutput {
  7702  	s.PlatformArn = &v
  7703  	return s
  7704  }
  7705  
  7706  // SetSolutionStackName sets the SolutionStackName field's value.
  7707  func (s *DescribeConfigurationOptionsOutput) SetSolutionStackName(v string) *DescribeConfigurationOptionsOutput {
  7708  	s.SolutionStackName = &v
  7709  	return s
  7710  }
  7711  
  7712  // Result message containing all of the configuration settings for a specified
  7713  // solution stack or configuration template.
  7714  type DescribeConfigurationSettingsInput struct {
  7715  	_ struct{} `type:"structure"`
  7716  
  7717  	// The application for the environment or configuration template.
  7718  	//
  7719  	// ApplicationName is a required field
  7720  	ApplicationName *string `min:"1" type:"string" required:"true"`
  7721  
  7722  	// The name of the environment to describe.
  7723  	//
  7724  	// Condition: You must specify either this or a TemplateName, but not both.
  7725  	// If you specify both, AWS Elastic Beanstalk returns an InvalidParameterCombination
  7726  	// error. If you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter
  7727  	// error.
  7728  	EnvironmentName *string `min:"4" type:"string"`
  7729  
  7730  	// The name of the configuration template to describe.
  7731  	//
  7732  	// Conditional: You must specify either this parameter or an EnvironmentName,
  7733  	// but not both. If you specify both, AWS Elastic Beanstalk returns an InvalidParameterCombination
  7734  	// error. If you do not specify either, AWS Elastic Beanstalk returns a MissingRequiredParameter
  7735  	// error.
  7736  	TemplateName *string `min:"1" type:"string"`
  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 DescribeConfigurationSettingsInput) 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 DescribeConfigurationSettingsInput) 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 *DescribeConfigurationSettingsInput) Validate() error {
  7759  	invalidParams := request.ErrInvalidParams{Context: "DescribeConfigurationSettingsInput"}
  7760  	if s.ApplicationName == nil {
  7761  		invalidParams.Add(request.NewErrParamRequired("ApplicationName"))
  7762  	}
  7763  	if s.ApplicationName != nil && len(*s.ApplicationName) < 1 {
  7764  		invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1))
  7765  	}
  7766  	if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 {
  7767  		invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4))
  7768  	}
  7769  	if s.TemplateName != nil && len(*s.TemplateName) < 1 {
  7770  		invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1))
  7771  	}
  7772  
  7773  	if invalidParams.Len() > 0 {
  7774  		return invalidParams
  7775  	}
  7776  	return nil
  7777  }
  7778  
  7779  // SetApplicationName sets the ApplicationName field's value.
  7780  func (s *DescribeConfigurationSettingsInput) SetApplicationName(v string) *DescribeConfigurationSettingsInput {
  7781  	s.ApplicationName = &v
  7782  	return s
  7783  }
  7784  
  7785  // SetEnvironmentName sets the EnvironmentName field's value.
  7786  func (s *DescribeConfigurationSettingsInput) SetEnvironmentName(v string) *DescribeConfigurationSettingsInput {
  7787  	s.EnvironmentName = &v
  7788  	return s
  7789  }
  7790  
  7791  // SetTemplateName sets the TemplateName field's value.
  7792  func (s *DescribeConfigurationSettingsInput) SetTemplateName(v string) *DescribeConfigurationSettingsInput {
  7793  	s.TemplateName = &v
  7794  	return s
  7795  }
  7796  
  7797  // The results from a request to change the configuration settings of an environment.
  7798  type DescribeConfigurationSettingsOutput struct {
  7799  	_ struct{} `type:"structure"`
  7800  
  7801  	// A list of ConfigurationSettingsDescription.
  7802  	ConfigurationSettings []*ConfigurationSettingsDescription `type:"list"`
  7803  }
  7804  
  7805  // String returns the string representation.
  7806  //
  7807  // API parameter values that are decorated as "sensitive" in the API will not
  7808  // be included in the string output. The member name will be present, but the
  7809  // value will be replaced with "sensitive".
  7810  func (s DescribeConfigurationSettingsOutput) String() string {
  7811  	return awsutil.Prettify(s)
  7812  }
  7813  
  7814  // GoString returns the string representation.
  7815  //
  7816  // API parameter values that are decorated as "sensitive" in the API will not
  7817  // be included in the string output. The member name will be present, but the
  7818  // value will be replaced with "sensitive".
  7819  func (s DescribeConfigurationSettingsOutput) GoString() string {
  7820  	return s.String()
  7821  }
  7822  
  7823  // SetConfigurationSettings sets the ConfigurationSettings field's value.
  7824  func (s *DescribeConfigurationSettingsOutput) SetConfigurationSettings(v []*ConfigurationSettingsDescription) *DescribeConfigurationSettingsOutput {
  7825  	s.ConfigurationSettings = v
  7826  	return s
  7827  }
  7828  
  7829  // See the example below to learn how to create a request body.
  7830  type DescribeEnvironmentHealthInput struct {
  7831  	_ struct{} `type:"structure"`
  7832  
  7833  	// Specify the response elements to return. To retrieve all attributes, set
  7834  	// to All. If no attribute names are specified, returns the name of the environment.
  7835  	AttributeNames []*string `type:"list"`
  7836  
  7837  	// Specify the environment by ID.
  7838  	//
  7839  	// You must specify either this or an EnvironmentName, or both.
  7840  	EnvironmentId *string `type:"string"`
  7841  
  7842  	// Specify the environment by name.
  7843  	//
  7844  	// You must specify either this or an EnvironmentName, or both.
  7845  	EnvironmentName *string `min:"4" type:"string"`
  7846  }
  7847  
  7848  // String returns the string representation.
  7849  //
  7850  // API parameter values that are decorated as "sensitive" in the API will not
  7851  // be included in the string output. The member name will be present, but the
  7852  // value will be replaced with "sensitive".
  7853  func (s DescribeEnvironmentHealthInput) String() string {
  7854  	return awsutil.Prettify(s)
  7855  }
  7856  
  7857  // GoString returns the string representation.
  7858  //
  7859  // API parameter values that are decorated as "sensitive" in the API will not
  7860  // be included in the string output. The member name will be present, but the
  7861  // value will be replaced with "sensitive".
  7862  func (s DescribeEnvironmentHealthInput) GoString() string {
  7863  	return s.String()
  7864  }
  7865  
  7866  // Validate inspects the fields of the type to determine if they are valid.
  7867  func (s *DescribeEnvironmentHealthInput) Validate() error {
  7868  	invalidParams := request.ErrInvalidParams{Context: "DescribeEnvironmentHealthInput"}
  7869  	if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 {
  7870  		invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4))
  7871  	}
  7872  
  7873  	if invalidParams.Len() > 0 {
  7874  		return invalidParams
  7875  	}
  7876  	return nil
  7877  }
  7878  
  7879  // SetAttributeNames sets the AttributeNames field's value.
  7880  func (s *DescribeEnvironmentHealthInput) SetAttributeNames(v []*string) *DescribeEnvironmentHealthInput {
  7881  	s.AttributeNames = v
  7882  	return s
  7883  }
  7884  
  7885  // SetEnvironmentId sets the EnvironmentId field's value.
  7886  func (s *DescribeEnvironmentHealthInput) SetEnvironmentId(v string) *DescribeEnvironmentHealthInput {
  7887  	s.EnvironmentId = &v
  7888  	return s
  7889  }
  7890  
  7891  // SetEnvironmentName sets the EnvironmentName field's value.
  7892  func (s *DescribeEnvironmentHealthInput) SetEnvironmentName(v string) *DescribeEnvironmentHealthInput {
  7893  	s.EnvironmentName = &v
  7894  	return s
  7895  }
  7896  
  7897  // Health details for an AWS Elastic Beanstalk environment.
  7898  type DescribeEnvironmentHealthOutput struct {
  7899  	_ struct{} `type:"structure"`
  7900  
  7901  	// Application request metrics for the environment.
  7902  	ApplicationMetrics *ApplicationMetrics `type:"structure"`
  7903  
  7904  	// Descriptions of the data that contributed to the environment's current health
  7905  	// status.
  7906  	Causes []*string `type:"list"`
  7907  
  7908  	// The health color (https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/health-enhanced-status.html)
  7909  	// of the environment.
  7910  	Color *string `type:"string"`
  7911  
  7912  	// The environment's name.
  7913  	EnvironmentName *string `min:"4" type:"string"`
  7914  
  7915  	// The health status (https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/health-enhanced-status.html)
  7916  	// of the environment. For example, Ok.
  7917  	HealthStatus *string `type:"string"`
  7918  
  7919  	// Summary health information for the instances in the environment.
  7920  	InstancesHealth *InstanceHealthSummary `type:"structure"`
  7921  
  7922  	// The date and time that the health information was retrieved.
  7923  	RefreshedAt *time.Time `type:"timestamp"`
  7924  
  7925  	// The environment's operational status. Ready, Launching, Updating, Terminating,
  7926  	// or Terminated.
  7927  	Status *string `type:"string" enum:"EnvironmentHealth"`
  7928  }
  7929  
  7930  // String returns the string representation.
  7931  //
  7932  // API parameter values that are decorated as "sensitive" in the API will not
  7933  // be included in the string output. The member name will be present, but the
  7934  // value will be replaced with "sensitive".
  7935  func (s DescribeEnvironmentHealthOutput) String() string {
  7936  	return awsutil.Prettify(s)
  7937  }
  7938  
  7939  // GoString returns the string representation.
  7940  //
  7941  // API parameter values that are decorated as "sensitive" in the API will not
  7942  // be included in the string output. The member name will be present, but the
  7943  // value will be replaced with "sensitive".
  7944  func (s DescribeEnvironmentHealthOutput) GoString() string {
  7945  	return s.String()
  7946  }
  7947  
  7948  // SetApplicationMetrics sets the ApplicationMetrics field's value.
  7949  func (s *DescribeEnvironmentHealthOutput) SetApplicationMetrics(v *ApplicationMetrics) *DescribeEnvironmentHealthOutput {
  7950  	s.ApplicationMetrics = v
  7951  	return s
  7952  }
  7953  
  7954  // SetCauses sets the Causes field's value.
  7955  func (s *DescribeEnvironmentHealthOutput) SetCauses(v []*string) *DescribeEnvironmentHealthOutput {
  7956  	s.Causes = v
  7957  	return s
  7958  }
  7959  
  7960  // SetColor sets the Color field's value.
  7961  func (s *DescribeEnvironmentHealthOutput) SetColor(v string) *DescribeEnvironmentHealthOutput {
  7962  	s.Color = &v
  7963  	return s
  7964  }
  7965  
  7966  // SetEnvironmentName sets the EnvironmentName field's value.
  7967  func (s *DescribeEnvironmentHealthOutput) SetEnvironmentName(v string) *DescribeEnvironmentHealthOutput {
  7968  	s.EnvironmentName = &v
  7969  	return s
  7970  }
  7971  
  7972  // SetHealthStatus sets the HealthStatus field's value.
  7973  func (s *DescribeEnvironmentHealthOutput) SetHealthStatus(v string) *DescribeEnvironmentHealthOutput {
  7974  	s.HealthStatus = &v
  7975  	return s
  7976  }
  7977  
  7978  // SetInstancesHealth sets the InstancesHealth field's value.
  7979  func (s *DescribeEnvironmentHealthOutput) SetInstancesHealth(v *InstanceHealthSummary) *DescribeEnvironmentHealthOutput {
  7980  	s.InstancesHealth = v
  7981  	return s
  7982  }
  7983  
  7984  // SetRefreshedAt sets the RefreshedAt field's value.
  7985  func (s *DescribeEnvironmentHealthOutput) SetRefreshedAt(v time.Time) *DescribeEnvironmentHealthOutput {
  7986  	s.RefreshedAt = &v
  7987  	return s
  7988  }
  7989  
  7990  // SetStatus sets the Status field's value.
  7991  func (s *DescribeEnvironmentHealthOutput) SetStatus(v string) *DescribeEnvironmentHealthOutput {
  7992  	s.Status = &v
  7993  	return s
  7994  }
  7995  
  7996  // Request to list completed and failed managed actions.
  7997  type DescribeEnvironmentManagedActionHistoryInput struct {
  7998  	_ struct{} `type:"structure"`
  7999  
  8000  	// The environment ID of the target environment.
  8001  	EnvironmentId *string `type:"string"`
  8002  
  8003  	// The name of the target environment.
  8004  	EnvironmentName *string `min:"4" type:"string"`
  8005  
  8006  	// The maximum number of items to return for a single request.
  8007  	MaxItems *int64 `min:"1" type:"integer"`
  8008  
  8009  	// The pagination token returned by a previous request.
  8010  	NextToken *string `type:"string"`
  8011  }
  8012  
  8013  // String returns the string representation.
  8014  //
  8015  // API parameter values that are decorated as "sensitive" in the API will not
  8016  // be included in the string output. The member name will be present, but the
  8017  // value will be replaced with "sensitive".
  8018  func (s DescribeEnvironmentManagedActionHistoryInput) String() string {
  8019  	return awsutil.Prettify(s)
  8020  }
  8021  
  8022  // GoString returns the string representation.
  8023  //
  8024  // API parameter values that are decorated as "sensitive" in the API will not
  8025  // be included in the string output. The member name will be present, but the
  8026  // value will be replaced with "sensitive".
  8027  func (s DescribeEnvironmentManagedActionHistoryInput) GoString() string {
  8028  	return s.String()
  8029  }
  8030  
  8031  // Validate inspects the fields of the type to determine if they are valid.
  8032  func (s *DescribeEnvironmentManagedActionHistoryInput) Validate() error {
  8033  	invalidParams := request.ErrInvalidParams{Context: "DescribeEnvironmentManagedActionHistoryInput"}
  8034  	if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 {
  8035  		invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4))
  8036  	}
  8037  	if s.MaxItems != nil && *s.MaxItems < 1 {
  8038  		invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1))
  8039  	}
  8040  
  8041  	if invalidParams.Len() > 0 {
  8042  		return invalidParams
  8043  	}
  8044  	return nil
  8045  }
  8046  
  8047  // SetEnvironmentId sets the EnvironmentId field's value.
  8048  func (s *DescribeEnvironmentManagedActionHistoryInput) SetEnvironmentId(v string) *DescribeEnvironmentManagedActionHistoryInput {
  8049  	s.EnvironmentId = &v
  8050  	return s
  8051  }
  8052  
  8053  // SetEnvironmentName sets the EnvironmentName field's value.
  8054  func (s *DescribeEnvironmentManagedActionHistoryInput) SetEnvironmentName(v string) *DescribeEnvironmentManagedActionHistoryInput {
  8055  	s.EnvironmentName = &v
  8056  	return s
  8057  }
  8058  
  8059  // SetMaxItems sets the MaxItems field's value.
  8060  func (s *DescribeEnvironmentManagedActionHistoryInput) SetMaxItems(v int64) *DescribeEnvironmentManagedActionHistoryInput {
  8061  	s.MaxItems = &v
  8062  	return s
  8063  }
  8064  
  8065  // SetNextToken sets the NextToken field's value.
  8066  func (s *DescribeEnvironmentManagedActionHistoryInput) SetNextToken(v string) *DescribeEnvironmentManagedActionHistoryInput {
  8067  	s.NextToken = &v
  8068  	return s
  8069  }
  8070  
  8071  // A result message containing a list of completed and failed managed actions.
  8072  type DescribeEnvironmentManagedActionHistoryOutput struct {
  8073  	_ struct{} `type:"structure"`
  8074  
  8075  	// A list of completed and failed managed actions.
  8076  	ManagedActionHistoryItems []*ManagedActionHistoryItem `min:"1" type:"list"`
  8077  
  8078  	// A pagination token that you pass to DescribeEnvironmentManagedActionHistory
  8079  	// to get the next page of results.
  8080  	NextToken *string `type:"string"`
  8081  }
  8082  
  8083  // String returns the string representation.
  8084  //
  8085  // API parameter values that are decorated as "sensitive" in the API will not
  8086  // be included in the string output. The member name will be present, but the
  8087  // value will be replaced with "sensitive".
  8088  func (s DescribeEnvironmentManagedActionHistoryOutput) String() string {
  8089  	return awsutil.Prettify(s)
  8090  }
  8091  
  8092  // GoString returns the string representation.
  8093  //
  8094  // API parameter values that are decorated as "sensitive" in the API will not
  8095  // be included in the string output. The member name will be present, but the
  8096  // value will be replaced with "sensitive".
  8097  func (s DescribeEnvironmentManagedActionHistoryOutput) GoString() string {
  8098  	return s.String()
  8099  }
  8100  
  8101  // SetManagedActionHistoryItems sets the ManagedActionHistoryItems field's value.
  8102  func (s *DescribeEnvironmentManagedActionHistoryOutput) SetManagedActionHistoryItems(v []*ManagedActionHistoryItem) *DescribeEnvironmentManagedActionHistoryOutput {
  8103  	s.ManagedActionHistoryItems = v
  8104  	return s
  8105  }
  8106  
  8107  // SetNextToken sets the NextToken field's value.
  8108  func (s *DescribeEnvironmentManagedActionHistoryOutput) SetNextToken(v string) *DescribeEnvironmentManagedActionHistoryOutput {
  8109  	s.NextToken = &v
  8110  	return s
  8111  }
  8112  
  8113  // Request to list an environment's upcoming and in-progress managed actions.
  8114  type DescribeEnvironmentManagedActionsInput struct {
  8115  	_ struct{} `type:"structure"`
  8116  
  8117  	// The environment ID of the target environment.
  8118  	EnvironmentId *string `type:"string"`
  8119  
  8120  	// The name of the target environment.
  8121  	EnvironmentName *string `type:"string"`
  8122  
  8123  	// To show only actions with a particular status, specify a status.
  8124  	Status *string `type:"string" enum:"ActionStatus"`
  8125  }
  8126  
  8127  // String returns the string representation.
  8128  //
  8129  // API parameter values that are decorated as "sensitive" in the API will not
  8130  // be included in the string output. The member name will be present, but the
  8131  // value will be replaced with "sensitive".
  8132  func (s DescribeEnvironmentManagedActionsInput) String() string {
  8133  	return awsutil.Prettify(s)
  8134  }
  8135  
  8136  // GoString returns the string representation.
  8137  //
  8138  // API parameter values that are decorated as "sensitive" in the API will not
  8139  // be included in the string output. The member name will be present, but the
  8140  // value will be replaced with "sensitive".
  8141  func (s DescribeEnvironmentManagedActionsInput) GoString() string {
  8142  	return s.String()
  8143  }
  8144  
  8145  // SetEnvironmentId sets the EnvironmentId field's value.
  8146  func (s *DescribeEnvironmentManagedActionsInput) SetEnvironmentId(v string) *DescribeEnvironmentManagedActionsInput {
  8147  	s.EnvironmentId = &v
  8148  	return s
  8149  }
  8150  
  8151  // SetEnvironmentName sets the EnvironmentName field's value.
  8152  func (s *DescribeEnvironmentManagedActionsInput) SetEnvironmentName(v string) *DescribeEnvironmentManagedActionsInput {
  8153  	s.EnvironmentName = &v
  8154  	return s
  8155  }
  8156  
  8157  // SetStatus sets the Status field's value.
  8158  func (s *DescribeEnvironmentManagedActionsInput) SetStatus(v string) *DescribeEnvironmentManagedActionsInput {
  8159  	s.Status = &v
  8160  	return s
  8161  }
  8162  
  8163  // The result message containing a list of managed actions.
  8164  type DescribeEnvironmentManagedActionsOutput struct {
  8165  	_ struct{} `type:"structure"`
  8166  
  8167  	// A list of upcoming and in-progress managed actions.
  8168  	ManagedActions []*ManagedAction `min:"1" type:"list"`
  8169  }
  8170  
  8171  // String returns the string representation.
  8172  //
  8173  // API parameter values that are decorated as "sensitive" in the API will not
  8174  // be included in the string output. The member name will be present, but the
  8175  // value will be replaced with "sensitive".
  8176  func (s DescribeEnvironmentManagedActionsOutput) String() string {
  8177  	return awsutil.Prettify(s)
  8178  }
  8179  
  8180  // GoString returns the string representation.
  8181  //
  8182  // API parameter values that are decorated as "sensitive" in the API will not
  8183  // be included in the string output. The member name will be present, but the
  8184  // value will be replaced with "sensitive".
  8185  func (s DescribeEnvironmentManagedActionsOutput) GoString() string {
  8186  	return s.String()
  8187  }
  8188  
  8189  // SetManagedActions sets the ManagedActions field's value.
  8190  func (s *DescribeEnvironmentManagedActionsOutput) SetManagedActions(v []*ManagedAction) *DescribeEnvironmentManagedActionsOutput {
  8191  	s.ManagedActions = v
  8192  	return s
  8193  }
  8194  
  8195  // Request to describe the resources in an environment.
  8196  type DescribeEnvironmentResourcesInput struct {
  8197  	_ struct{} `type:"structure"`
  8198  
  8199  	// The ID of the environment to retrieve AWS resource usage data.
  8200  	//
  8201  	// Condition: You must specify either this or an EnvironmentName, or both. If
  8202  	// you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter
  8203  	// error.
  8204  	EnvironmentId *string `type:"string"`
  8205  
  8206  	// The name of the environment to retrieve AWS resource usage data.
  8207  	//
  8208  	// Condition: You must specify either this or an EnvironmentId, or both. If
  8209  	// you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter
  8210  	// error.
  8211  	EnvironmentName *string `min:"4" type:"string"`
  8212  }
  8213  
  8214  // String returns the string representation.
  8215  //
  8216  // API parameter values that are decorated as "sensitive" in the API will not
  8217  // be included in the string output. The member name will be present, but the
  8218  // value will be replaced with "sensitive".
  8219  func (s DescribeEnvironmentResourcesInput) String() string {
  8220  	return awsutil.Prettify(s)
  8221  }
  8222  
  8223  // GoString returns the string representation.
  8224  //
  8225  // API parameter values that are decorated as "sensitive" in the API will not
  8226  // be included in the string output. The member name will be present, but the
  8227  // value will be replaced with "sensitive".
  8228  func (s DescribeEnvironmentResourcesInput) GoString() string {
  8229  	return s.String()
  8230  }
  8231  
  8232  // Validate inspects the fields of the type to determine if they are valid.
  8233  func (s *DescribeEnvironmentResourcesInput) Validate() error {
  8234  	invalidParams := request.ErrInvalidParams{Context: "DescribeEnvironmentResourcesInput"}
  8235  	if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 {
  8236  		invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4))
  8237  	}
  8238  
  8239  	if invalidParams.Len() > 0 {
  8240  		return invalidParams
  8241  	}
  8242  	return nil
  8243  }
  8244  
  8245  // SetEnvironmentId sets the EnvironmentId field's value.
  8246  func (s *DescribeEnvironmentResourcesInput) SetEnvironmentId(v string) *DescribeEnvironmentResourcesInput {
  8247  	s.EnvironmentId = &v
  8248  	return s
  8249  }
  8250  
  8251  // SetEnvironmentName sets the EnvironmentName field's value.
  8252  func (s *DescribeEnvironmentResourcesInput) SetEnvironmentName(v string) *DescribeEnvironmentResourcesInput {
  8253  	s.EnvironmentName = &v
  8254  	return s
  8255  }
  8256  
  8257  // Result message containing a list of environment resource descriptions.
  8258  type DescribeEnvironmentResourcesOutput struct {
  8259  	_ struct{} `type:"structure"`
  8260  
  8261  	// A list of EnvironmentResourceDescription.
  8262  	EnvironmentResources *EnvironmentResourceDescription `type:"structure"`
  8263  }
  8264  
  8265  // String returns the string representation.
  8266  //
  8267  // API parameter values that are decorated as "sensitive" in the API will not
  8268  // be included in the string output. The member name will be present, but the
  8269  // value will be replaced with "sensitive".
  8270  func (s DescribeEnvironmentResourcesOutput) String() string {
  8271  	return awsutil.Prettify(s)
  8272  }
  8273  
  8274  // GoString returns the string representation.
  8275  //
  8276  // API parameter values that are decorated as "sensitive" in the API will not
  8277  // be included in the string output. The member name will be present, but the
  8278  // value will be replaced with "sensitive".
  8279  func (s DescribeEnvironmentResourcesOutput) GoString() string {
  8280  	return s.String()
  8281  }
  8282  
  8283  // SetEnvironmentResources sets the EnvironmentResources field's value.
  8284  func (s *DescribeEnvironmentResourcesOutput) SetEnvironmentResources(v *EnvironmentResourceDescription) *DescribeEnvironmentResourcesOutput {
  8285  	s.EnvironmentResources = v
  8286  	return s
  8287  }
  8288  
  8289  // Request to describe one or more environments.
  8290  type DescribeEnvironmentsInput struct {
  8291  	_ struct{} `type:"structure"`
  8292  
  8293  	// If specified, AWS Elastic Beanstalk restricts the returned descriptions to
  8294  	// include only those that are associated with this application.
  8295  	ApplicationName *string `min:"1" type:"string"`
  8296  
  8297  	// If specified, AWS Elastic Beanstalk restricts the returned descriptions to
  8298  	// include only those that have the specified IDs.
  8299  	EnvironmentIds []*string `type:"list"`
  8300  
  8301  	// If specified, AWS Elastic Beanstalk restricts the returned descriptions to
  8302  	// include only those that have the specified names.
  8303  	EnvironmentNames []*string `type:"list"`
  8304  
  8305  	// Indicates whether to include deleted environments:
  8306  	//
  8307  	// true: Environments that have been deleted after IncludedDeletedBackTo are
  8308  	// displayed.
  8309  	//
  8310  	// false: Do not include deleted environments.
  8311  	IncludeDeleted *bool `type:"boolean"`
  8312  
  8313  	// If specified when IncludeDeleted is set to true, then environments deleted
  8314  	// after this date are displayed.
  8315  	IncludedDeletedBackTo *time.Time `type:"timestamp"`
  8316  
  8317  	// For a paginated request. Specify a maximum number of environments to include
  8318  	// in each response.
  8319  	//
  8320  	// If no MaxRecords is specified, all available environments are retrieved in
  8321  	// a single response.
  8322  	MaxRecords *int64 `min:"1" type:"integer"`
  8323  
  8324  	// For a paginated request. Specify a token from a previous response page to
  8325  	// retrieve the next response page. All other parameter values must be identical
  8326  	// to the ones specified in the initial request.
  8327  	//
  8328  	// If no NextToken is specified, the first page is retrieved.
  8329  	NextToken *string `type:"string"`
  8330  
  8331  	// If specified, AWS Elastic Beanstalk restricts the returned descriptions to
  8332  	// include only those that are associated with this application version.
  8333  	VersionLabel *string `min:"1" type:"string"`
  8334  }
  8335  
  8336  // String returns the string representation.
  8337  //
  8338  // API parameter values that are decorated as "sensitive" in the API will not
  8339  // be included in the string output. The member name will be present, but the
  8340  // value will be replaced with "sensitive".
  8341  func (s DescribeEnvironmentsInput) String() string {
  8342  	return awsutil.Prettify(s)
  8343  }
  8344  
  8345  // GoString returns the string representation.
  8346  //
  8347  // API parameter values that are decorated as "sensitive" in the API will not
  8348  // be included in the string output. The member name will be present, but the
  8349  // value will be replaced with "sensitive".
  8350  func (s DescribeEnvironmentsInput) GoString() string {
  8351  	return s.String()
  8352  }
  8353  
  8354  // Validate inspects the fields of the type to determine if they are valid.
  8355  func (s *DescribeEnvironmentsInput) Validate() error {
  8356  	invalidParams := request.ErrInvalidParams{Context: "DescribeEnvironmentsInput"}
  8357  	if s.ApplicationName != nil && len(*s.ApplicationName) < 1 {
  8358  		invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1))
  8359  	}
  8360  	if s.MaxRecords != nil && *s.MaxRecords < 1 {
  8361  		invalidParams.Add(request.NewErrParamMinValue("MaxRecords", 1))
  8362  	}
  8363  	if s.VersionLabel != nil && len(*s.VersionLabel) < 1 {
  8364  		invalidParams.Add(request.NewErrParamMinLen("VersionLabel", 1))
  8365  	}
  8366  
  8367  	if invalidParams.Len() > 0 {
  8368  		return invalidParams
  8369  	}
  8370  	return nil
  8371  }
  8372  
  8373  // SetApplicationName sets the ApplicationName field's value.
  8374  func (s *DescribeEnvironmentsInput) SetApplicationName(v string) *DescribeEnvironmentsInput {
  8375  	s.ApplicationName = &v
  8376  	return s
  8377  }
  8378  
  8379  // SetEnvironmentIds sets the EnvironmentIds field's value.
  8380  func (s *DescribeEnvironmentsInput) SetEnvironmentIds(v []*string) *DescribeEnvironmentsInput {
  8381  	s.EnvironmentIds = v
  8382  	return s
  8383  }
  8384  
  8385  // SetEnvironmentNames sets the EnvironmentNames field's value.
  8386  func (s *DescribeEnvironmentsInput) SetEnvironmentNames(v []*string) *DescribeEnvironmentsInput {
  8387  	s.EnvironmentNames = v
  8388  	return s
  8389  }
  8390  
  8391  // SetIncludeDeleted sets the IncludeDeleted field's value.
  8392  func (s *DescribeEnvironmentsInput) SetIncludeDeleted(v bool) *DescribeEnvironmentsInput {
  8393  	s.IncludeDeleted = &v
  8394  	return s
  8395  }
  8396  
  8397  // SetIncludedDeletedBackTo sets the IncludedDeletedBackTo field's value.
  8398  func (s *DescribeEnvironmentsInput) SetIncludedDeletedBackTo(v time.Time) *DescribeEnvironmentsInput {
  8399  	s.IncludedDeletedBackTo = &v
  8400  	return s
  8401  }
  8402  
  8403  // SetMaxRecords sets the MaxRecords field's value.
  8404  func (s *DescribeEnvironmentsInput) SetMaxRecords(v int64) *DescribeEnvironmentsInput {
  8405  	s.MaxRecords = &v
  8406  	return s
  8407  }
  8408  
  8409  // SetNextToken sets the NextToken field's value.
  8410  func (s *DescribeEnvironmentsInput) SetNextToken(v string) *DescribeEnvironmentsInput {
  8411  	s.NextToken = &v
  8412  	return s
  8413  }
  8414  
  8415  // SetVersionLabel sets the VersionLabel field's value.
  8416  func (s *DescribeEnvironmentsInput) SetVersionLabel(v string) *DescribeEnvironmentsInput {
  8417  	s.VersionLabel = &v
  8418  	return s
  8419  }
  8420  
  8421  // Request to retrieve a list of events for an environment.
  8422  type DescribeEventsInput struct {
  8423  	_ struct{} `type:"structure"`
  8424  
  8425  	// If specified, AWS Elastic Beanstalk restricts the returned descriptions to
  8426  	// include only those associated with this application.
  8427  	ApplicationName *string `min:"1" type:"string"`
  8428  
  8429  	// If specified, AWS Elastic Beanstalk restricts the returned descriptions to
  8430  	// those that occur up to, but not including, the EndTime.
  8431  	EndTime *time.Time `type:"timestamp"`
  8432  
  8433  	// If specified, AWS Elastic Beanstalk restricts the returned descriptions to
  8434  	// those associated with this environment.
  8435  	EnvironmentId *string `type:"string"`
  8436  
  8437  	// If specified, AWS Elastic Beanstalk restricts the returned descriptions to
  8438  	// those associated with this environment.
  8439  	EnvironmentName *string `min:"4" type:"string"`
  8440  
  8441  	// Specifies the maximum number of events that can be returned, beginning with
  8442  	// the most recent event.
  8443  	MaxRecords *int64 `min:"1" type:"integer"`
  8444  
  8445  	// Pagination token. If specified, the events return the next batch of results.
  8446  	NextToken *string `type:"string"`
  8447  
  8448  	// The ARN of a custom platform version. If specified, AWS Elastic Beanstalk
  8449  	// restricts the returned descriptions to those associated with this custom
  8450  	// platform version.
  8451  	PlatformArn *string `type:"string"`
  8452  
  8453  	// If specified, AWS Elastic Beanstalk restricts the described events to include
  8454  	// only those associated with this request ID.
  8455  	RequestId *string `type:"string"`
  8456  
  8457  	// If specified, limits the events returned from this call to include only those
  8458  	// with the specified severity or higher.
  8459  	Severity *string `type:"string" enum:"EventSeverity"`
  8460  
  8461  	// If specified, AWS Elastic Beanstalk restricts the returned descriptions to
  8462  	// those that occur on or after this time.
  8463  	StartTime *time.Time `type:"timestamp"`
  8464  
  8465  	// If specified, AWS Elastic Beanstalk restricts the returned descriptions to
  8466  	// those that are associated with this environment configuration.
  8467  	TemplateName *string `min:"1" type:"string"`
  8468  
  8469  	// If specified, AWS Elastic Beanstalk restricts the returned descriptions to
  8470  	// those associated with this application version.
  8471  	VersionLabel *string `min:"1" type:"string"`
  8472  }
  8473  
  8474  // String returns the string representation.
  8475  //
  8476  // API parameter values that are decorated as "sensitive" in the API will not
  8477  // be included in the string output. The member name will be present, but the
  8478  // value will be replaced with "sensitive".
  8479  func (s DescribeEventsInput) String() string {
  8480  	return awsutil.Prettify(s)
  8481  }
  8482  
  8483  // GoString returns the string representation.
  8484  //
  8485  // API parameter values that are decorated as "sensitive" in the API will not
  8486  // be included in the string output. The member name will be present, but the
  8487  // value will be replaced with "sensitive".
  8488  func (s DescribeEventsInput) GoString() string {
  8489  	return s.String()
  8490  }
  8491  
  8492  // Validate inspects the fields of the type to determine if they are valid.
  8493  func (s *DescribeEventsInput) Validate() error {
  8494  	invalidParams := request.ErrInvalidParams{Context: "DescribeEventsInput"}
  8495  	if s.ApplicationName != nil && len(*s.ApplicationName) < 1 {
  8496  		invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1))
  8497  	}
  8498  	if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 {
  8499  		invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4))
  8500  	}
  8501  	if s.MaxRecords != nil && *s.MaxRecords < 1 {
  8502  		invalidParams.Add(request.NewErrParamMinValue("MaxRecords", 1))
  8503  	}
  8504  	if s.TemplateName != nil && len(*s.TemplateName) < 1 {
  8505  		invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1))
  8506  	}
  8507  	if s.VersionLabel != nil && len(*s.VersionLabel) < 1 {
  8508  		invalidParams.Add(request.NewErrParamMinLen("VersionLabel", 1))
  8509  	}
  8510  
  8511  	if invalidParams.Len() > 0 {
  8512  		return invalidParams
  8513  	}
  8514  	return nil
  8515  }
  8516  
  8517  // SetApplicationName sets the ApplicationName field's value.
  8518  func (s *DescribeEventsInput) SetApplicationName(v string) *DescribeEventsInput {
  8519  	s.ApplicationName = &v
  8520  	return s
  8521  }
  8522  
  8523  // SetEndTime sets the EndTime field's value.
  8524  func (s *DescribeEventsInput) SetEndTime(v time.Time) *DescribeEventsInput {
  8525  	s.EndTime = &v
  8526  	return s
  8527  }
  8528  
  8529  // SetEnvironmentId sets the EnvironmentId field's value.
  8530  func (s *DescribeEventsInput) SetEnvironmentId(v string) *DescribeEventsInput {
  8531  	s.EnvironmentId = &v
  8532  	return s
  8533  }
  8534  
  8535  // SetEnvironmentName sets the EnvironmentName field's value.
  8536  func (s *DescribeEventsInput) SetEnvironmentName(v string) *DescribeEventsInput {
  8537  	s.EnvironmentName = &v
  8538  	return s
  8539  }
  8540  
  8541  // SetMaxRecords sets the MaxRecords field's value.
  8542  func (s *DescribeEventsInput) SetMaxRecords(v int64) *DescribeEventsInput {
  8543  	s.MaxRecords = &v
  8544  	return s
  8545  }
  8546  
  8547  // SetNextToken sets the NextToken field's value.
  8548  func (s *DescribeEventsInput) SetNextToken(v string) *DescribeEventsInput {
  8549  	s.NextToken = &v
  8550  	return s
  8551  }
  8552  
  8553  // SetPlatformArn sets the PlatformArn field's value.
  8554  func (s *DescribeEventsInput) SetPlatformArn(v string) *DescribeEventsInput {
  8555  	s.PlatformArn = &v
  8556  	return s
  8557  }
  8558  
  8559  // SetRequestId sets the RequestId field's value.
  8560  func (s *DescribeEventsInput) SetRequestId(v string) *DescribeEventsInput {
  8561  	s.RequestId = &v
  8562  	return s
  8563  }
  8564  
  8565  // SetSeverity sets the Severity field's value.
  8566  func (s *DescribeEventsInput) SetSeverity(v string) *DescribeEventsInput {
  8567  	s.Severity = &v
  8568  	return s
  8569  }
  8570  
  8571  // SetStartTime sets the StartTime field's value.
  8572  func (s *DescribeEventsInput) SetStartTime(v time.Time) *DescribeEventsInput {
  8573  	s.StartTime = &v
  8574  	return s
  8575  }
  8576  
  8577  // SetTemplateName sets the TemplateName field's value.
  8578  func (s *DescribeEventsInput) SetTemplateName(v string) *DescribeEventsInput {
  8579  	s.TemplateName = &v
  8580  	return s
  8581  }
  8582  
  8583  // SetVersionLabel sets the VersionLabel field's value.
  8584  func (s *DescribeEventsInput) SetVersionLabel(v string) *DescribeEventsInput {
  8585  	s.VersionLabel = &v
  8586  	return s
  8587  }
  8588  
  8589  // Result message wrapping a list of event descriptions.
  8590  type DescribeEventsOutput struct {
  8591  	_ struct{} `type:"structure"`
  8592  
  8593  	// A list of EventDescription.
  8594  	Events []*EventDescription `type:"list"`
  8595  
  8596  	// If returned, this indicates that there are more results to obtain. Use this
  8597  	// token in the next DescribeEvents call to get the next batch of events.
  8598  	NextToken *string `type:"string"`
  8599  }
  8600  
  8601  // String returns the string representation.
  8602  //
  8603  // API parameter values that are decorated as "sensitive" in the API will not
  8604  // be included in the string output. The member name will be present, but the
  8605  // value will be replaced with "sensitive".
  8606  func (s DescribeEventsOutput) String() string {
  8607  	return awsutil.Prettify(s)
  8608  }
  8609  
  8610  // GoString returns the string representation.
  8611  //
  8612  // API parameter values that are decorated as "sensitive" in the API will not
  8613  // be included in the string output. The member name will be present, but the
  8614  // value will be replaced with "sensitive".
  8615  func (s DescribeEventsOutput) GoString() string {
  8616  	return s.String()
  8617  }
  8618  
  8619  // SetEvents sets the Events field's value.
  8620  func (s *DescribeEventsOutput) SetEvents(v []*EventDescription) *DescribeEventsOutput {
  8621  	s.Events = v
  8622  	return s
  8623  }
  8624  
  8625  // SetNextToken sets the NextToken field's value.
  8626  func (s *DescribeEventsOutput) SetNextToken(v string) *DescribeEventsOutput {
  8627  	s.NextToken = &v
  8628  	return s
  8629  }
  8630  
  8631  // Parameters for a call to DescribeInstancesHealth.
  8632  type DescribeInstancesHealthInput struct {
  8633  	_ struct{} `type:"structure"`
  8634  
  8635  	// Specifies the response elements you wish to receive. To retrieve all attributes,
  8636  	// set to All. If no attribute names are specified, returns a list of instances.
  8637  	AttributeNames []*string `type:"list"`
  8638  
  8639  	// Specify the AWS Elastic Beanstalk environment by ID.
  8640  	EnvironmentId *string `type:"string"`
  8641  
  8642  	// Specify the AWS Elastic Beanstalk environment by name.
  8643  	EnvironmentName *string `min:"4" type:"string"`
  8644  
  8645  	// Specify the pagination token returned by a previous call.
  8646  	NextToken *string `min:"1" type:"string"`
  8647  }
  8648  
  8649  // String returns the string representation.
  8650  //
  8651  // API parameter values that are decorated as "sensitive" in the API will not
  8652  // be included in the string output. The member name will be present, but the
  8653  // value will be replaced with "sensitive".
  8654  func (s DescribeInstancesHealthInput) String() string {
  8655  	return awsutil.Prettify(s)
  8656  }
  8657  
  8658  // GoString returns the string representation.
  8659  //
  8660  // API parameter values that are decorated as "sensitive" in the API will not
  8661  // be included in the string output. The member name will be present, but the
  8662  // value will be replaced with "sensitive".
  8663  func (s DescribeInstancesHealthInput) GoString() string {
  8664  	return s.String()
  8665  }
  8666  
  8667  // Validate inspects the fields of the type to determine if they are valid.
  8668  func (s *DescribeInstancesHealthInput) Validate() error {
  8669  	invalidParams := request.ErrInvalidParams{Context: "DescribeInstancesHealthInput"}
  8670  	if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 {
  8671  		invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4))
  8672  	}
  8673  	if s.NextToken != nil && len(*s.NextToken) < 1 {
  8674  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
  8675  	}
  8676  
  8677  	if invalidParams.Len() > 0 {
  8678  		return invalidParams
  8679  	}
  8680  	return nil
  8681  }
  8682  
  8683  // SetAttributeNames sets the AttributeNames field's value.
  8684  func (s *DescribeInstancesHealthInput) SetAttributeNames(v []*string) *DescribeInstancesHealthInput {
  8685  	s.AttributeNames = v
  8686  	return s
  8687  }
  8688  
  8689  // SetEnvironmentId sets the EnvironmentId field's value.
  8690  func (s *DescribeInstancesHealthInput) SetEnvironmentId(v string) *DescribeInstancesHealthInput {
  8691  	s.EnvironmentId = &v
  8692  	return s
  8693  }
  8694  
  8695  // SetEnvironmentName sets the EnvironmentName field's value.
  8696  func (s *DescribeInstancesHealthInput) SetEnvironmentName(v string) *DescribeInstancesHealthInput {
  8697  	s.EnvironmentName = &v
  8698  	return s
  8699  }
  8700  
  8701  // SetNextToken sets the NextToken field's value.
  8702  func (s *DescribeInstancesHealthInput) SetNextToken(v string) *DescribeInstancesHealthInput {
  8703  	s.NextToken = &v
  8704  	return s
  8705  }
  8706  
  8707  // Detailed health information about the Amazon EC2 instances in an AWS Elastic
  8708  // Beanstalk environment.
  8709  type DescribeInstancesHealthOutput struct {
  8710  	_ struct{} `type:"structure"`
  8711  
  8712  	// Detailed health information about each instance.
  8713  	//
  8714  	// The output differs slightly between Linux and Windows environments. There
  8715  	// is a difference in the members that are supported under the <CPUUtilization>
  8716  	// type.
  8717  	InstanceHealthList []*SingleInstanceHealth `type:"list"`
  8718  
  8719  	// Pagination token for the next page of results, if available.
  8720  	NextToken *string `min:"1" type:"string"`
  8721  
  8722  	// The date and time that the health information was retrieved.
  8723  	RefreshedAt *time.Time `type:"timestamp"`
  8724  }
  8725  
  8726  // String returns the string representation.
  8727  //
  8728  // API parameter values that are decorated as "sensitive" in the API will not
  8729  // be included in the string output. The member name will be present, but the
  8730  // value will be replaced with "sensitive".
  8731  func (s DescribeInstancesHealthOutput) String() string {
  8732  	return awsutil.Prettify(s)
  8733  }
  8734  
  8735  // GoString returns the string representation.
  8736  //
  8737  // API parameter values that are decorated as "sensitive" in the API will not
  8738  // be included in the string output. The member name will be present, but the
  8739  // value will be replaced with "sensitive".
  8740  func (s DescribeInstancesHealthOutput) GoString() string {
  8741  	return s.String()
  8742  }
  8743  
  8744  // SetInstanceHealthList sets the InstanceHealthList field's value.
  8745  func (s *DescribeInstancesHealthOutput) SetInstanceHealthList(v []*SingleInstanceHealth) *DescribeInstancesHealthOutput {
  8746  	s.InstanceHealthList = v
  8747  	return s
  8748  }
  8749  
  8750  // SetNextToken sets the NextToken field's value.
  8751  func (s *DescribeInstancesHealthOutput) SetNextToken(v string) *DescribeInstancesHealthOutput {
  8752  	s.NextToken = &v
  8753  	return s
  8754  }
  8755  
  8756  // SetRefreshedAt sets the RefreshedAt field's value.
  8757  func (s *DescribeInstancesHealthOutput) SetRefreshedAt(v time.Time) *DescribeInstancesHealthOutput {
  8758  	s.RefreshedAt = &v
  8759  	return s
  8760  }
  8761  
  8762  type DescribePlatformVersionInput struct {
  8763  	_ struct{} `type:"structure"`
  8764  
  8765  	// The ARN of the platform version.
  8766  	PlatformArn *string `type:"string"`
  8767  }
  8768  
  8769  // String returns the string representation.
  8770  //
  8771  // API parameter values that are decorated as "sensitive" in the API will not
  8772  // be included in the string output. The member name will be present, but the
  8773  // value will be replaced with "sensitive".
  8774  func (s DescribePlatformVersionInput) String() string {
  8775  	return awsutil.Prettify(s)
  8776  }
  8777  
  8778  // GoString returns the string representation.
  8779  //
  8780  // API parameter values that are decorated as "sensitive" in the API will not
  8781  // be included in the string output. The member name will be present, but the
  8782  // value will be replaced with "sensitive".
  8783  func (s DescribePlatformVersionInput) GoString() string {
  8784  	return s.String()
  8785  }
  8786  
  8787  // SetPlatformArn sets the PlatformArn field's value.
  8788  func (s *DescribePlatformVersionInput) SetPlatformArn(v string) *DescribePlatformVersionInput {
  8789  	s.PlatformArn = &v
  8790  	return s
  8791  }
  8792  
  8793  type DescribePlatformVersionOutput struct {
  8794  	_ struct{} `type:"structure"`
  8795  
  8796  	// Detailed information about the platform version.
  8797  	PlatformDescription *PlatformDescription `type:"structure"`
  8798  }
  8799  
  8800  // String returns the string representation.
  8801  //
  8802  // API parameter values that are decorated as "sensitive" in the API will not
  8803  // be included in the string output. The member name will be present, but the
  8804  // value will be replaced with "sensitive".
  8805  func (s DescribePlatformVersionOutput) String() string {
  8806  	return awsutil.Prettify(s)
  8807  }
  8808  
  8809  // GoString returns the string representation.
  8810  //
  8811  // API parameter values that are decorated as "sensitive" in the API will not
  8812  // be included in the string output. The member name will be present, but the
  8813  // value will be replaced with "sensitive".
  8814  func (s DescribePlatformVersionOutput) GoString() string {
  8815  	return s.String()
  8816  }
  8817  
  8818  // SetPlatformDescription sets the PlatformDescription field's value.
  8819  func (s *DescribePlatformVersionOutput) SetPlatformDescription(v *PlatformDescription) *DescribePlatformVersionOutput {
  8820  	s.PlatformDescription = v
  8821  	return s
  8822  }
  8823  
  8824  // Request to disassociate the operations role from an environment.
  8825  type DisassociateEnvironmentOperationsRoleInput struct {
  8826  	_ struct{} `type:"structure"`
  8827  
  8828  	// The name of the environment from which to disassociate the operations role.
  8829  	//
  8830  	// EnvironmentName is a required field
  8831  	EnvironmentName *string `min:"4" type:"string" required:"true"`
  8832  }
  8833  
  8834  // String returns the string representation.
  8835  //
  8836  // API parameter values that are decorated as "sensitive" in the API will not
  8837  // be included in the string output. The member name will be present, but the
  8838  // value will be replaced with "sensitive".
  8839  func (s DisassociateEnvironmentOperationsRoleInput) String() string {
  8840  	return awsutil.Prettify(s)
  8841  }
  8842  
  8843  // GoString returns the string representation.
  8844  //
  8845  // API parameter values that are decorated as "sensitive" in the API will not
  8846  // be included in the string output. The member name will be present, but the
  8847  // value will be replaced with "sensitive".
  8848  func (s DisassociateEnvironmentOperationsRoleInput) GoString() string {
  8849  	return s.String()
  8850  }
  8851  
  8852  // Validate inspects the fields of the type to determine if they are valid.
  8853  func (s *DisassociateEnvironmentOperationsRoleInput) Validate() error {
  8854  	invalidParams := request.ErrInvalidParams{Context: "DisassociateEnvironmentOperationsRoleInput"}
  8855  	if s.EnvironmentName == nil {
  8856  		invalidParams.Add(request.NewErrParamRequired("EnvironmentName"))
  8857  	}
  8858  	if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 {
  8859  		invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4))
  8860  	}
  8861  
  8862  	if invalidParams.Len() > 0 {
  8863  		return invalidParams
  8864  	}
  8865  	return nil
  8866  }
  8867  
  8868  // SetEnvironmentName sets the EnvironmentName field's value.
  8869  func (s *DisassociateEnvironmentOperationsRoleInput) SetEnvironmentName(v string) *DisassociateEnvironmentOperationsRoleInput {
  8870  	s.EnvironmentName = &v
  8871  	return s
  8872  }
  8873  
  8874  type DisassociateEnvironmentOperationsRoleOutput struct {
  8875  	_ struct{} `type:"structure"`
  8876  }
  8877  
  8878  // String returns the string representation.
  8879  //
  8880  // API parameter values that are decorated as "sensitive" in the API will not
  8881  // be included in the string output. The member name will be present, but the
  8882  // value will be replaced with "sensitive".
  8883  func (s DisassociateEnvironmentOperationsRoleOutput) String() string {
  8884  	return awsutil.Prettify(s)
  8885  }
  8886  
  8887  // GoString returns the string representation.
  8888  //
  8889  // API parameter values that are decorated as "sensitive" in the API will not
  8890  // be included in the string output. The member name will be present, but the
  8891  // value will be replaced with "sensitive".
  8892  func (s DisassociateEnvironmentOperationsRoleOutput) GoString() string {
  8893  	return s.String()
  8894  }
  8895  
  8896  // Describes the properties of an environment.
  8897  type EnvironmentDescription struct {
  8898  	_ struct{} `type:"structure"`
  8899  
  8900  	// Indicates if there is an in-progress environment configuration update or
  8901  	// application version deployment that you can cancel.
  8902  	//
  8903  	// true: There is an update in progress.
  8904  	//
  8905  	// false: There are no updates currently in progress.
  8906  	AbortableOperationInProgress *bool `type:"boolean"`
  8907  
  8908  	// The name of the application associated with this environment.
  8909  	ApplicationName *string `min:"1" type:"string"`
  8910  
  8911  	// The URL to the CNAME for this environment.
  8912  	CNAME *string `min:"1" type:"string"`
  8913  
  8914  	// The creation date for this environment.
  8915  	DateCreated *time.Time `type:"timestamp"`
  8916  
  8917  	// The last modified date for this environment.
  8918  	DateUpdated *time.Time `type:"timestamp"`
  8919  
  8920  	// Describes this environment.
  8921  	Description *string `type:"string"`
  8922  
  8923  	// For load-balanced, autoscaling environments, the URL to the LoadBalancer.
  8924  	// For single-instance environments, the IP address of the instance.
  8925  	EndpointURL *string `type:"string"`
  8926  
  8927  	// The environment's Amazon Resource Name (ARN), which can be used in other
  8928  	// API requests that require an ARN.
  8929  	EnvironmentArn *string `type:"string"`
  8930  
  8931  	// The ID of this environment.
  8932  	EnvironmentId *string `type:"string"`
  8933  
  8934  	// A list of links to other environments in the same group.
  8935  	EnvironmentLinks []*EnvironmentLink `type:"list"`
  8936  
  8937  	// The name of this environment.
  8938  	EnvironmentName *string `min:"4" type:"string"`
  8939  
  8940  	// Describes the health status of the environment. AWS Elastic Beanstalk indicates
  8941  	// the failure levels for a running environment:
  8942  	//
  8943  	//    * Red: Indicates the environment is not responsive. Occurs when three
  8944  	//    or more consecutive failures occur for an environment.
  8945  	//
  8946  	//    * Yellow: Indicates that something is wrong. Occurs when two consecutive
  8947  	//    failures occur for an environment.
  8948  	//
  8949  	//    * Green: Indicates the environment is healthy and fully functional.
  8950  	//
  8951  	//    * Grey: Default health for a new environment. The environment is not fully
  8952  	//    launched and health checks have not started or health checks are suspended
  8953  	//    during an UpdateEnvironment or RestartEnvironment request.
  8954  	//
  8955  	// Default: Grey
  8956  	Health *string `type:"string" enum:"EnvironmentHealth"`
  8957  
  8958  	// Returns the health status of the application running in your environment.
  8959  	// For more information, see Health Colors and Statuses (https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/health-enhanced-status.html).
  8960  	HealthStatus *string `type:"string" enum:"EnvironmentHealthStatus"`
  8961  
  8962  	// The Amazon Resource Name (ARN) of the environment's operations role. For
  8963  	// more information, see Operations roles (https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/iam-operationsrole.html)
  8964  	// in the AWS Elastic Beanstalk Developer Guide.
  8965  	OperationsRole *string `min:"1" type:"string"`
  8966  
  8967  	// The ARN of the platform version.
  8968  	PlatformArn *string `type:"string"`
  8969  
  8970  	// The description of the AWS resources used by this environment.
  8971  	Resources *EnvironmentResourcesDescription `type:"structure"`
  8972  
  8973  	// The name of the SolutionStack deployed with this environment.
  8974  	SolutionStackName *string `type:"string"`
  8975  
  8976  	// The current operational status of the environment:
  8977  	//
  8978  	//    * Launching: Environment is in the process of initial deployment.
  8979  	//
  8980  	//    * Updating: Environment is in the process of updating its configuration
  8981  	//    settings or application version.
  8982  	//
  8983  	//    * Ready: Environment is available to have an action performed on it, such
  8984  	//    as update or terminate.
  8985  	//
  8986  	//    * Terminating: Environment is in the shut-down process.
  8987  	//
  8988  	//    * Terminated: Environment is not running.
  8989  	Status *string `type:"string" enum:"EnvironmentStatus"`
  8990  
  8991  	// The name of the configuration template used to originally launch this environment.
  8992  	TemplateName *string `min:"1" type:"string"`
  8993  
  8994  	// Describes the current tier of this environment.
  8995  	Tier *EnvironmentTier `type:"structure"`
  8996  
  8997  	// The application version deployed in this environment.
  8998  	VersionLabel *string `min:"1" type:"string"`
  8999  }
  9000  
  9001  // String returns the string representation.
  9002  //
  9003  // API parameter values that are decorated as "sensitive" in the API will not
  9004  // be included in the string output. The member name will be present, but the
  9005  // value will be replaced with "sensitive".
  9006  func (s EnvironmentDescription) String() string {
  9007  	return awsutil.Prettify(s)
  9008  }
  9009  
  9010  // GoString returns the string representation.
  9011  //
  9012  // API parameter values that are decorated as "sensitive" in the API will not
  9013  // be included in the string output. The member name will be present, but the
  9014  // value will be replaced with "sensitive".
  9015  func (s EnvironmentDescription) GoString() string {
  9016  	return s.String()
  9017  }
  9018  
  9019  // SetAbortableOperationInProgress sets the AbortableOperationInProgress field's value.
  9020  func (s *EnvironmentDescription) SetAbortableOperationInProgress(v bool) *EnvironmentDescription {
  9021  	s.AbortableOperationInProgress = &v
  9022  	return s
  9023  }
  9024  
  9025  // SetApplicationName sets the ApplicationName field's value.
  9026  func (s *EnvironmentDescription) SetApplicationName(v string) *EnvironmentDescription {
  9027  	s.ApplicationName = &v
  9028  	return s
  9029  }
  9030  
  9031  // SetCNAME sets the CNAME field's value.
  9032  func (s *EnvironmentDescription) SetCNAME(v string) *EnvironmentDescription {
  9033  	s.CNAME = &v
  9034  	return s
  9035  }
  9036  
  9037  // SetDateCreated sets the DateCreated field's value.
  9038  func (s *EnvironmentDescription) SetDateCreated(v time.Time) *EnvironmentDescription {
  9039  	s.DateCreated = &v
  9040  	return s
  9041  }
  9042  
  9043  // SetDateUpdated sets the DateUpdated field's value.
  9044  func (s *EnvironmentDescription) SetDateUpdated(v time.Time) *EnvironmentDescription {
  9045  	s.DateUpdated = &v
  9046  	return s
  9047  }
  9048  
  9049  // SetDescription sets the Description field's value.
  9050  func (s *EnvironmentDescription) SetDescription(v string) *EnvironmentDescription {
  9051  	s.Description = &v
  9052  	return s
  9053  }
  9054  
  9055  // SetEndpointURL sets the EndpointURL field's value.
  9056  func (s *EnvironmentDescription) SetEndpointURL(v string) *EnvironmentDescription {
  9057  	s.EndpointURL = &v
  9058  	return s
  9059  }
  9060  
  9061  // SetEnvironmentArn sets the EnvironmentArn field's value.
  9062  func (s *EnvironmentDescription) SetEnvironmentArn(v string) *EnvironmentDescription {
  9063  	s.EnvironmentArn = &v
  9064  	return s
  9065  }
  9066  
  9067  // SetEnvironmentId sets the EnvironmentId field's value.
  9068  func (s *EnvironmentDescription) SetEnvironmentId(v string) *EnvironmentDescription {
  9069  	s.EnvironmentId = &v
  9070  	return s
  9071  }
  9072  
  9073  // SetEnvironmentLinks sets the EnvironmentLinks field's value.
  9074  func (s *EnvironmentDescription) SetEnvironmentLinks(v []*EnvironmentLink) *EnvironmentDescription {
  9075  	s.EnvironmentLinks = v
  9076  	return s
  9077  }
  9078  
  9079  // SetEnvironmentName sets the EnvironmentName field's value.
  9080  func (s *EnvironmentDescription) SetEnvironmentName(v string) *EnvironmentDescription {
  9081  	s.EnvironmentName = &v
  9082  	return s
  9083  }
  9084  
  9085  // SetHealth sets the Health field's value.
  9086  func (s *EnvironmentDescription) SetHealth(v string) *EnvironmentDescription {
  9087  	s.Health = &v
  9088  	return s
  9089  }
  9090  
  9091  // SetHealthStatus sets the HealthStatus field's value.
  9092  func (s *EnvironmentDescription) SetHealthStatus(v string) *EnvironmentDescription {
  9093  	s.HealthStatus = &v
  9094  	return s
  9095  }
  9096  
  9097  // SetOperationsRole sets the OperationsRole field's value.
  9098  func (s *EnvironmentDescription) SetOperationsRole(v string) *EnvironmentDescription {
  9099  	s.OperationsRole = &v
  9100  	return s
  9101  }
  9102  
  9103  // SetPlatformArn sets the PlatformArn field's value.
  9104  func (s *EnvironmentDescription) SetPlatformArn(v string) *EnvironmentDescription {
  9105  	s.PlatformArn = &v
  9106  	return s
  9107  }
  9108  
  9109  // SetResources sets the Resources field's value.
  9110  func (s *EnvironmentDescription) SetResources(v *EnvironmentResourcesDescription) *EnvironmentDescription {
  9111  	s.Resources = v
  9112  	return s
  9113  }
  9114  
  9115  // SetSolutionStackName sets the SolutionStackName field's value.
  9116  func (s *EnvironmentDescription) SetSolutionStackName(v string) *EnvironmentDescription {
  9117  	s.SolutionStackName = &v
  9118  	return s
  9119  }
  9120  
  9121  // SetStatus sets the Status field's value.
  9122  func (s *EnvironmentDescription) SetStatus(v string) *EnvironmentDescription {
  9123  	s.Status = &v
  9124  	return s
  9125  }
  9126  
  9127  // SetTemplateName sets the TemplateName field's value.
  9128  func (s *EnvironmentDescription) SetTemplateName(v string) *EnvironmentDescription {
  9129  	s.TemplateName = &v
  9130  	return s
  9131  }
  9132  
  9133  // SetTier sets the Tier field's value.
  9134  func (s *EnvironmentDescription) SetTier(v *EnvironmentTier) *EnvironmentDescription {
  9135  	s.Tier = v
  9136  	return s
  9137  }
  9138  
  9139  // SetVersionLabel sets the VersionLabel field's value.
  9140  func (s *EnvironmentDescription) SetVersionLabel(v string) *EnvironmentDescription {
  9141  	s.VersionLabel = &v
  9142  	return s
  9143  }
  9144  
  9145  // Result message containing a list of environment descriptions.
  9146  type EnvironmentDescriptionsMessage struct {
  9147  	_ struct{} `type:"structure"`
  9148  
  9149  	// Returns an EnvironmentDescription list.
  9150  	Environments []*EnvironmentDescription `type:"list"`
  9151  
  9152  	// In a paginated request, the token that you can pass in a subsequent request
  9153  	// to get the next response page.
  9154  	NextToken *string `type:"string"`
  9155  }
  9156  
  9157  // String 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 EnvironmentDescriptionsMessage) String() string {
  9163  	return awsutil.Prettify(s)
  9164  }
  9165  
  9166  // GoString returns the string representation.
  9167  //
  9168  // API parameter values that are decorated as "sensitive" in the API will not
  9169  // be included in the string output. The member name will be present, but the
  9170  // value will be replaced with "sensitive".
  9171  func (s EnvironmentDescriptionsMessage) GoString() string {
  9172  	return s.String()
  9173  }
  9174  
  9175  // SetEnvironments sets the Environments field's value.
  9176  func (s *EnvironmentDescriptionsMessage) SetEnvironments(v []*EnvironmentDescription) *EnvironmentDescriptionsMessage {
  9177  	s.Environments = v
  9178  	return s
  9179  }
  9180  
  9181  // SetNextToken sets the NextToken field's value.
  9182  func (s *EnvironmentDescriptionsMessage) SetNextToken(v string) *EnvironmentDescriptionsMessage {
  9183  	s.NextToken = &v
  9184  	return s
  9185  }
  9186  
  9187  // The information retrieved from the Amazon EC2 instances.
  9188  type EnvironmentInfoDescription struct {
  9189  	_ struct{} `type:"structure"`
  9190  
  9191  	// The Amazon EC2 Instance ID for this information.
  9192  	Ec2InstanceId *string `type:"string"`
  9193  
  9194  	// The type of information retrieved.
  9195  	InfoType *string `type:"string" enum:"EnvironmentInfoType"`
  9196  
  9197  	// The retrieved information. Currently contains a presigned Amazon S3 URL.
  9198  	// The files are deleted after 15 minutes.
  9199  	//
  9200  	// Anyone in possession of this URL can access the files before they are deleted.
  9201  	// Make the URL available only to trusted parties.
  9202  	Message *string `type:"string"`
  9203  
  9204  	// The time stamp when this information was retrieved.
  9205  	SampleTimestamp *time.Time `type:"timestamp"`
  9206  }
  9207  
  9208  // String returns the string representation.
  9209  //
  9210  // API parameter values that are decorated as "sensitive" in the API will not
  9211  // be included in the string output. The member name will be present, but the
  9212  // value will be replaced with "sensitive".
  9213  func (s EnvironmentInfoDescription) String() string {
  9214  	return awsutil.Prettify(s)
  9215  }
  9216  
  9217  // GoString returns the string representation.
  9218  //
  9219  // API parameter values that are decorated as "sensitive" in the API will not
  9220  // be included in the string output. The member name will be present, but the
  9221  // value will be replaced with "sensitive".
  9222  func (s EnvironmentInfoDescription) GoString() string {
  9223  	return s.String()
  9224  }
  9225  
  9226  // SetEc2InstanceId sets the Ec2InstanceId field's value.
  9227  func (s *EnvironmentInfoDescription) SetEc2InstanceId(v string) *EnvironmentInfoDescription {
  9228  	s.Ec2InstanceId = &v
  9229  	return s
  9230  }
  9231  
  9232  // SetInfoType sets the InfoType field's value.
  9233  func (s *EnvironmentInfoDescription) SetInfoType(v string) *EnvironmentInfoDescription {
  9234  	s.InfoType = &v
  9235  	return s
  9236  }
  9237  
  9238  // SetMessage sets the Message field's value.
  9239  func (s *EnvironmentInfoDescription) SetMessage(v string) *EnvironmentInfoDescription {
  9240  	s.Message = &v
  9241  	return s
  9242  }
  9243  
  9244  // SetSampleTimestamp sets the SampleTimestamp field's value.
  9245  func (s *EnvironmentInfoDescription) SetSampleTimestamp(v time.Time) *EnvironmentInfoDescription {
  9246  	s.SampleTimestamp = &v
  9247  	return s
  9248  }
  9249  
  9250  // A link to another environment, defined in the environment's manifest. Links
  9251  // provide connection information in system properties that can be used to connect
  9252  // to another environment in the same group. See Environment Manifest (env.yaml)
  9253  // (https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/environment-cfg-manifest.html)
  9254  // for details.
  9255  type EnvironmentLink struct {
  9256  	_ struct{} `type:"structure"`
  9257  
  9258  	// The name of the linked environment (the dependency).
  9259  	EnvironmentName *string `type:"string"`
  9260  
  9261  	// The name of the link.
  9262  	LinkName *string `type:"string"`
  9263  }
  9264  
  9265  // String returns the string representation.
  9266  //
  9267  // API parameter values that are decorated as "sensitive" in the API will not
  9268  // be included in the string output. The member name will be present, but the
  9269  // value will be replaced with "sensitive".
  9270  func (s EnvironmentLink) String() string {
  9271  	return awsutil.Prettify(s)
  9272  }
  9273  
  9274  // GoString returns the string representation.
  9275  //
  9276  // API parameter values that are decorated as "sensitive" in the API will not
  9277  // be included in the string output. The member name will be present, but the
  9278  // value will be replaced with "sensitive".
  9279  func (s EnvironmentLink) GoString() string {
  9280  	return s.String()
  9281  }
  9282  
  9283  // SetEnvironmentName sets the EnvironmentName field's value.
  9284  func (s *EnvironmentLink) SetEnvironmentName(v string) *EnvironmentLink {
  9285  	s.EnvironmentName = &v
  9286  	return s
  9287  }
  9288  
  9289  // SetLinkName sets the LinkName field's value.
  9290  func (s *EnvironmentLink) SetLinkName(v string) *EnvironmentLink {
  9291  	s.LinkName = &v
  9292  	return s
  9293  }
  9294  
  9295  // Describes the AWS resources in use by this environment. This data is live.
  9296  type EnvironmentResourceDescription struct {
  9297  	_ struct{} `type:"structure"`
  9298  
  9299  	// The AutoScalingGroups used by this environment.
  9300  	AutoScalingGroups []*AutoScalingGroup `type:"list"`
  9301  
  9302  	// The name of the environment.
  9303  	EnvironmentName *string `min:"4" type:"string"`
  9304  
  9305  	// The Amazon EC2 instances used by this environment.
  9306  	Instances []*Instance `type:"list"`
  9307  
  9308  	// The Auto Scaling launch configurations in use by this environment.
  9309  	LaunchConfigurations []*LaunchConfiguration `type:"list"`
  9310  
  9311  	// The Amazon EC2 launch templates in use by this environment.
  9312  	LaunchTemplates []*LaunchTemplate `type:"list"`
  9313  
  9314  	// The LoadBalancers in use by this environment.
  9315  	LoadBalancers []*LoadBalancer `type:"list"`
  9316  
  9317  	// The queues used by this environment.
  9318  	Queues []*Queue `type:"list"`
  9319  
  9320  	// The AutoScaling triggers in use by this environment.
  9321  	Triggers []*Trigger `type:"list"`
  9322  }
  9323  
  9324  // String returns the string representation.
  9325  //
  9326  // API parameter values that are decorated as "sensitive" in the API will not
  9327  // be included in the string output. The member name will be present, but the
  9328  // value will be replaced with "sensitive".
  9329  func (s EnvironmentResourceDescription) String() string {
  9330  	return awsutil.Prettify(s)
  9331  }
  9332  
  9333  // GoString returns the string representation.
  9334  //
  9335  // API parameter values that are decorated as "sensitive" in the API will not
  9336  // be included in the string output. The member name will be present, but the
  9337  // value will be replaced with "sensitive".
  9338  func (s EnvironmentResourceDescription) GoString() string {
  9339  	return s.String()
  9340  }
  9341  
  9342  // SetAutoScalingGroups sets the AutoScalingGroups field's value.
  9343  func (s *EnvironmentResourceDescription) SetAutoScalingGroups(v []*AutoScalingGroup) *EnvironmentResourceDescription {
  9344  	s.AutoScalingGroups = v
  9345  	return s
  9346  }
  9347  
  9348  // SetEnvironmentName sets the EnvironmentName field's value.
  9349  func (s *EnvironmentResourceDescription) SetEnvironmentName(v string) *EnvironmentResourceDescription {
  9350  	s.EnvironmentName = &v
  9351  	return s
  9352  }
  9353  
  9354  // SetInstances sets the Instances field's value.
  9355  func (s *EnvironmentResourceDescription) SetInstances(v []*Instance) *EnvironmentResourceDescription {
  9356  	s.Instances = v
  9357  	return s
  9358  }
  9359  
  9360  // SetLaunchConfigurations sets the LaunchConfigurations field's value.
  9361  func (s *EnvironmentResourceDescription) SetLaunchConfigurations(v []*LaunchConfiguration) *EnvironmentResourceDescription {
  9362  	s.LaunchConfigurations = v
  9363  	return s
  9364  }
  9365  
  9366  // SetLaunchTemplates sets the LaunchTemplates field's value.
  9367  func (s *EnvironmentResourceDescription) SetLaunchTemplates(v []*LaunchTemplate) *EnvironmentResourceDescription {
  9368  	s.LaunchTemplates = v
  9369  	return s
  9370  }
  9371  
  9372  // SetLoadBalancers sets the LoadBalancers field's value.
  9373  func (s *EnvironmentResourceDescription) SetLoadBalancers(v []*LoadBalancer) *EnvironmentResourceDescription {
  9374  	s.LoadBalancers = v
  9375  	return s
  9376  }
  9377  
  9378  // SetQueues sets the Queues field's value.
  9379  func (s *EnvironmentResourceDescription) SetQueues(v []*Queue) *EnvironmentResourceDescription {
  9380  	s.Queues = v
  9381  	return s
  9382  }
  9383  
  9384  // SetTriggers sets the Triggers field's value.
  9385  func (s *EnvironmentResourceDescription) SetTriggers(v []*Trigger) *EnvironmentResourceDescription {
  9386  	s.Triggers = v
  9387  	return s
  9388  }
  9389  
  9390  // Describes the AWS resources in use by this environment. This data is not
  9391  // live data.
  9392  type EnvironmentResourcesDescription struct {
  9393  	_ struct{} `type:"structure"`
  9394  
  9395  	// Describes the LoadBalancer.
  9396  	LoadBalancer *LoadBalancerDescription `type:"structure"`
  9397  }
  9398  
  9399  // String returns the string representation.
  9400  //
  9401  // API parameter values that are decorated as "sensitive" in the API will not
  9402  // be included in the string output. The member name will be present, but the
  9403  // value will be replaced with "sensitive".
  9404  func (s EnvironmentResourcesDescription) String() string {
  9405  	return awsutil.Prettify(s)
  9406  }
  9407  
  9408  // GoString returns the string representation.
  9409  //
  9410  // API parameter values that are decorated as "sensitive" in the API will not
  9411  // be included in the string output. The member name will be present, but the
  9412  // value will be replaced with "sensitive".
  9413  func (s EnvironmentResourcesDescription) GoString() string {
  9414  	return s.String()
  9415  }
  9416  
  9417  // SetLoadBalancer sets the LoadBalancer field's value.
  9418  func (s *EnvironmentResourcesDescription) SetLoadBalancer(v *LoadBalancerDescription) *EnvironmentResourcesDescription {
  9419  	s.LoadBalancer = v
  9420  	return s
  9421  }
  9422  
  9423  // Describes the properties of an environment tier
  9424  type EnvironmentTier struct {
  9425  	_ struct{} `type:"structure"`
  9426  
  9427  	// The name of this environment tier.
  9428  	//
  9429  	// Valid values:
  9430  	//
  9431  	//    * For Web server tier – WebServer
  9432  	//
  9433  	//    * For Worker tier – Worker
  9434  	Name *string `type:"string"`
  9435  
  9436  	// The type of this environment tier.
  9437  	//
  9438  	// Valid values:
  9439  	//
  9440  	//    * For Web server tier – Standard
  9441  	//
  9442  	//    * For Worker tier – SQS/HTTP
  9443  	Type *string `type:"string"`
  9444  
  9445  	// The version of this environment tier. When you don't set a value to it, Elastic
  9446  	// Beanstalk uses the latest compatible worker tier version.
  9447  	//
  9448  	// This member is deprecated. Any specific version that you set may become out
  9449  	// of date. We recommend leaving it unspecified.
  9450  	Version *string `type:"string"`
  9451  }
  9452  
  9453  // String returns the string representation.
  9454  //
  9455  // API parameter values that are decorated as "sensitive" in the API will not
  9456  // be included in the string output. The member name will be present, but the
  9457  // value will be replaced with "sensitive".
  9458  func (s EnvironmentTier) String() string {
  9459  	return awsutil.Prettify(s)
  9460  }
  9461  
  9462  // GoString returns the string representation.
  9463  //
  9464  // API parameter values that are decorated as "sensitive" in the API will not
  9465  // be included in the string output. The member name will be present, but the
  9466  // value will be replaced with "sensitive".
  9467  func (s EnvironmentTier) GoString() string {
  9468  	return s.String()
  9469  }
  9470  
  9471  // SetName sets the Name field's value.
  9472  func (s *EnvironmentTier) SetName(v string) *EnvironmentTier {
  9473  	s.Name = &v
  9474  	return s
  9475  }
  9476  
  9477  // SetType sets the Type field's value.
  9478  func (s *EnvironmentTier) SetType(v string) *EnvironmentTier {
  9479  	s.Type = &v
  9480  	return s
  9481  }
  9482  
  9483  // SetVersion sets the Version field's value.
  9484  func (s *EnvironmentTier) SetVersion(v string) *EnvironmentTier {
  9485  	s.Version = &v
  9486  	return s
  9487  }
  9488  
  9489  // Describes an event.
  9490  type EventDescription struct {
  9491  	_ struct{} `type:"structure"`
  9492  
  9493  	// The application associated with the event.
  9494  	ApplicationName *string `min:"1" type:"string"`
  9495  
  9496  	// The name of the environment associated with this event.
  9497  	EnvironmentName *string `min:"4" type:"string"`
  9498  
  9499  	// The date when the event occurred.
  9500  	EventDate *time.Time `type:"timestamp"`
  9501  
  9502  	// The event message.
  9503  	Message *string `type:"string"`
  9504  
  9505  	// The ARN of the platform version.
  9506  	PlatformArn *string `type:"string"`
  9507  
  9508  	// The web service request ID for the activity of this event.
  9509  	RequestId *string `type:"string"`
  9510  
  9511  	// The severity level of this event.
  9512  	Severity *string `type:"string" enum:"EventSeverity"`
  9513  
  9514  	// The name of the configuration associated with this event.
  9515  	TemplateName *string `min:"1" type:"string"`
  9516  
  9517  	// The release label for the application version associated with this event.
  9518  	VersionLabel *string `min:"1" type:"string"`
  9519  }
  9520  
  9521  // String returns the string representation.
  9522  //
  9523  // API parameter values that are decorated as "sensitive" in the API will not
  9524  // be included in the string output. The member name will be present, but the
  9525  // value will be replaced with "sensitive".
  9526  func (s EventDescription) String() string {
  9527  	return awsutil.Prettify(s)
  9528  }
  9529  
  9530  // GoString returns the string representation.
  9531  //
  9532  // API parameter values that are decorated as "sensitive" in the API will not
  9533  // be included in the string output. The member name will be present, but the
  9534  // value will be replaced with "sensitive".
  9535  func (s EventDescription) GoString() string {
  9536  	return s.String()
  9537  }
  9538  
  9539  // SetApplicationName sets the ApplicationName field's value.
  9540  func (s *EventDescription) SetApplicationName(v string) *EventDescription {
  9541  	s.ApplicationName = &v
  9542  	return s
  9543  }
  9544  
  9545  // SetEnvironmentName sets the EnvironmentName field's value.
  9546  func (s *EventDescription) SetEnvironmentName(v string) *EventDescription {
  9547  	s.EnvironmentName = &v
  9548  	return s
  9549  }
  9550  
  9551  // SetEventDate sets the EventDate field's value.
  9552  func (s *EventDescription) SetEventDate(v time.Time) *EventDescription {
  9553  	s.EventDate = &v
  9554  	return s
  9555  }
  9556  
  9557  // SetMessage sets the Message field's value.
  9558  func (s *EventDescription) SetMessage(v string) *EventDescription {
  9559  	s.Message = &v
  9560  	return s
  9561  }
  9562  
  9563  // SetPlatformArn sets the PlatformArn field's value.
  9564  func (s *EventDescription) SetPlatformArn(v string) *EventDescription {
  9565  	s.PlatformArn = &v
  9566  	return s
  9567  }
  9568  
  9569  // SetRequestId sets the RequestId field's value.
  9570  func (s *EventDescription) SetRequestId(v string) *EventDescription {
  9571  	s.RequestId = &v
  9572  	return s
  9573  }
  9574  
  9575  // SetSeverity sets the Severity field's value.
  9576  func (s *EventDescription) SetSeverity(v string) *EventDescription {
  9577  	s.Severity = &v
  9578  	return s
  9579  }
  9580  
  9581  // SetTemplateName sets the TemplateName field's value.
  9582  func (s *EventDescription) SetTemplateName(v string) *EventDescription {
  9583  	s.TemplateName = &v
  9584  	return s
  9585  }
  9586  
  9587  // SetVersionLabel sets the VersionLabel field's value.
  9588  func (s *EventDescription) SetVersionLabel(v string) *EventDescription {
  9589  	s.VersionLabel = &v
  9590  	return s
  9591  }
  9592  
  9593  // The description of an Amazon EC2 instance.
  9594  type Instance struct {
  9595  	_ struct{} `type:"structure"`
  9596  
  9597  	// The ID of the Amazon EC2 instance.
  9598  	Id *string `type:"string"`
  9599  }
  9600  
  9601  // String returns the string representation.
  9602  //
  9603  // API parameter values that are decorated as "sensitive" in the API will not
  9604  // be included in the string output. The member name will be present, but the
  9605  // value will be replaced with "sensitive".
  9606  func (s Instance) String() string {
  9607  	return awsutil.Prettify(s)
  9608  }
  9609  
  9610  // GoString returns the string representation.
  9611  //
  9612  // API parameter values that are decorated as "sensitive" in the API will not
  9613  // be included in the string output. The member name will be present, but the
  9614  // value will be replaced with "sensitive".
  9615  func (s Instance) GoString() string {
  9616  	return s.String()
  9617  }
  9618  
  9619  // SetId sets the Id field's value.
  9620  func (s *Instance) SetId(v string) *Instance {
  9621  	s.Id = &v
  9622  	return s
  9623  }
  9624  
  9625  // Represents summary information about the health of an instance. For more
  9626  // information, see Health Colors and Statuses (https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/health-enhanced-status.html).
  9627  type InstanceHealthSummary struct {
  9628  	_ struct{} `type:"structure"`
  9629  
  9630  	// Red. The health agent is reporting a high number of request failures or other
  9631  	// issues for an instance or environment.
  9632  	Degraded *int64 `type:"integer"`
  9633  
  9634  	// Green. An operation is in progress on an instance.
  9635  	Info *int64 `type:"integer"`
  9636  
  9637  	// Grey. AWS Elastic Beanstalk and the health agent are reporting no data on
  9638  	// an instance.
  9639  	NoData *int64 `type:"integer"`
  9640  
  9641  	// Green. An instance is passing health checks and the health agent is not reporting
  9642  	// any problems.
  9643  	Ok *int64 `type:"integer"`
  9644  
  9645  	// Grey. An operation is in progress on an instance within the command timeout.
  9646  	Pending *int64 `type:"integer"`
  9647  
  9648  	// Red. The health agent is reporting a very high number of request failures
  9649  	// or other issues for an instance or environment.
  9650  	Severe *int64 `type:"integer"`
  9651  
  9652  	// Grey. AWS Elastic Beanstalk and the health agent are reporting an insufficient
  9653  	// amount of data on an instance.
  9654  	Unknown *int64 `type:"integer"`
  9655  
  9656  	// Yellow. The health agent is reporting a moderate number of request failures
  9657  	// or other issues for an instance or environment.
  9658  	Warning *int64 `type:"integer"`
  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 InstanceHealthSummary) 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 InstanceHealthSummary) GoString() string {
  9676  	return s.String()
  9677  }
  9678  
  9679  // SetDegraded sets the Degraded field's value.
  9680  func (s *InstanceHealthSummary) SetDegraded(v int64) *InstanceHealthSummary {
  9681  	s.Degraded = &v
  9682  	return s
  9683  }
  9684  
  9685  // SetInfo sets the Info field's value.
  9686  func (s *InstanceHealthSummary) SetInfo(v int64) *InstanceHealthSummary {
  9687  	s.Info = &v
  9688  	return s
  9689  }
  9690  
  9691  // SetNoData sets the NoData field's value.
  9692  func (s *InstanceHealthSummary) SetNoData(v int64) *InstanceHealthSummary {
  9693  	s.NoData = &v
  9694  	return s
  9695  }
  9696  
  9697  // SetOk sets the Ok field's value.
  9698  func (s *InstanceHealthSummary) SetOk(v int64) *InstanceHealthSummary {
  9699  	s.Ok = &v
  9700  	return s
  9701  }
  9702  
  9703  // SetPending sets the Pending field's value.
  9704  func (s *InstanceHealthSummary) SetPending(v int64) *InstanceHealthSummary {
  9705  	s.Pending = &v
  9706  	return s
  9707  }
  9708  
  9709  // SetSevere sets the Severe field's value.
  9710  func (s *InstanceHealthSummary) SetSevere(v int64) *InstanceHealthSummary {
  9711  	s.Severe = &v
  9712  	return s
  9713  }
  9714  
  9715  // SetUnknown sets the Unknown field's value.
  9716  func (s *InstanceHealthSummary) SetUnknown(v int64) *InstanceHealthSummary {
  9717  	s.Unknown = &v
  9718  	return s
  9719  }
  9720  
  9721  // SetWarning sets the Warning field's value.
  9722  func (s *InstanceHealthSummary) SetWarning(v int64) *InstanceHealthSummary {
  9723  	s.Warning = &v
  9724  	return s
  9725  }
  9726  
  9727  // Represents the average latency for the slowest X percent of requests over
  9728  // the last 10 seconds.
  9729  type Latency struct {
  9730  	_ struct{} `type:"structure"`
  9731  
  9732  	// The average latency for the slowest 90 percent of requests over the last
  9733  	// 10 seconds.
  9734  	P10 *float64 `type:"double"`
  9735  
  9736  	// The average latency for the slowest 50 percent of requests over the last
  9737  	// 10 seconds.
  9738  	P50 *float64 `type:"double"`
  9739  
  9740  	// The average latency for the slowest 25 percent of requests over the last
  9741  	// 10 seconds.
  9742  	P75 *float64 `type:"double"`
  9743  
  9744  	// The average latency for the slowest 15 percent of requests over the last
  9745  	// 10 seconds.
  9746  	P85 *float64 `type:"double"`
  9747  
  9748  	// The average latency for the slowest 10 percent of requests over the last
  9749  	// 10 seconds.
  9750  	P90 *float64 `type:"double"`
  9751  
  9752  	// The average latency for the slowest 5 percent of requests over the last 10
  9753  	// seconds.
  9754  	P95 *float64 `type:"double"`
  9755  
  9756  	// The average latency for the slowest 1 percent of requests over the last 10
  9757  	// seconds.
  9758  	P99 *float64 `type:"double"`
  9759  
  9760  	// The average latency for the slowest 0.1 percent of requests over the last
  9761  	// 10 seconds.
  9762  	P999 *float64 `type:"double"`
  9763  }
  9764  
  9765  // String returns the string representation.
  9766  //
  9767  // API parameter values that are decorated as "sensitive" in the API will not
  9768  // be included in the string output. The member name will be present, but the
  9769  // value will be replaced with "sensitive".
  9770  func (s Latency) String() string {
  9771  	return awsutil.Prettify(s)
  9772  }
  9773  
  9774  // GoString returns the string representation.
  9775  //
  9776  // API parameter values that are decorated as "sensitive" in the API will not
  9777  // be included in the string output. The member name will be present, but the
  9778  // value will be replaced with "sensitive".
  9779  func (s Latency) GoString() string {
  9780  	return s.String()
  9781  }
  9782  
  9783  // SetP10 sets the P10 field's value.
  9784  func (s *Latency) SetP10(v float64) *Latency {
  9785  	s.P10 = &v
  9786  	return s
  9787  }
  9788  
  9789  // SetP50 sets the P50 field's value.
  9790  func (s *Latency) SetP50(v float64) *Latency {
  9791  	s.P50 = &v
  9792  	return s
  9793  }
  9794  
  9795  // SetP75 sets the P75 field's value.
  9796  func (s *Latency) SetP75(v float64) *Latency {
  9797  	s.P75 = &v
  9798  	return s
  9799  }
  9800  
  9801  // SetP85 sets the P85 field's value.
  9802  func (s *Latency) SetP85(v float64) *Latency {
  9803  	s.P85 = &v
  9804  	return s
  9805  }
  9806  
  9807  // SetP90 sets the P90 field's value.
  9808  func (s *Latency) SetP90(v float64) *Latency {
  9809  	s.P90 = &v
  9810  	return s
  9811  }
  9812  
  9813  // SetP95 sets the P95 field's value.
  9814  func (s *Latency) SetP95(v float64) *Latency {
  9815  	s.P95 = &v
  9816  	return s
  9817  }
  9818  
  9819  // SetP99 sets the P99 field's value.
  9820  func (s *Latency) SetP99(v float64) *Latency {
  9821  	s.P99 = &v
  9822  	return s
  9823  }
  9824  
  9825  // SetP999 sets the P999 field's value.
  9826  func (s *Latency) SetP999(v float64) *Latency {
  9827  	s.P999 = &v
  9828  	return s
  9829  }
  9830  
  9831  // Describes an Auto Scaling launch configuration.
  9832  type LaunchConfiguration struct {
  9833  	_ struct{} `type:"structure"`
  9834  
  9835  	// The name of the launch configuration.
  9836  	Name *string `type:"string"`
  9837  }
  9838  
  9839  // String returns the string representation.
  9840  //
  9841  // API parameter values that are decorated as "sensitive" in the API will not
  9842  // be included in the string output. The member name will be present, but the
  9843  // value will be replaced with "sensitive".
  9844  func (s LaunchConfiguration) String() string {
  9845  	return awsutil.Prettify(s)
  9846  }
  9847  
  9848  // GoString returns the string representation.
  9849  //
  9850  // API parameter values that are decorated as "sensitive" in the API will not
  9851  // be included in the string output. The member name will be present, but the
  9852  // value will be replaced with "sensitive".
  9853  func (s LaunchConfiguration) GoString() string {
  9854  	return s.String()
  9855  }
  9856  
  9857  // SetName sets the Name field's value.
  9858  func (s *LaunchConfiguration) SetName(v string) *LaunchConfiguration {
  9859  	s.Name = &v
  9860  	return s
  9861  }
  9862  
  9863  // Describes an Amazon EC2 launch template.
  9864  type LaunchTemplate struct {
  9865  	_ struct{} `type:"structure"`
  9866  
  9867  	// The ID of the launch template.
  9868  	Id *string `type:"string"`
  9869  }
  9870  
  9871  // String returns the string representation.
  9872  //
  9873  // API parameter values that are decorated as "sensitive" in the API will not
  9874  // be included in the string output. The member name will be present, but the
  9875  // value will be replaced with "sensitive".
  9876  func (s LaunchTemplate) String() string {
  9877  	return awsutil.Prettify(s)
  9878  }
  9879  
  9880  // GoString returns the string representation.
  9881  //
  9882  // API parameter values that are decorated as "sensitive" in the API will not
  9883  // be included in the string output. The member name will be present, but the
  9884  // value will be replaced with "sensitive".
  9885  func (s LaunchTemplate) GoString() string {
  9886  	return s.String()
  9887  }
  9888  
  9889  // SetId sets the Id field's value.
  9890  func (s *LaunchTemplate) SetId(v string) *LaunchTemplate {
  9891  	s.Id = &v
  9892  	return s
  9893  }
  9894  
  9895  type ListAvailableSolutionStacksInput struct {
  9896  	_ struct{} `type:"structure"`
  9897  }
  9898  
  9899  // String returns the string representation.
  9900  //
  9901  // API parameter values that are decorated as "sensitive" in the API will not
  9902  // be included in the string output. The member name will be present, but the
  9903  // value will be replaced with "sensitive".
  9904  func (s ListAvailableSolutionStacksInput) String() string {
  9905  	return awsutil.Prettify(s)
  9906  }
  9907  
  9908  // GoString returns the string representation.
  9909  //
  9910  // API parameter values that are decorated as "sensitive" in the API will not
  9911  // be included in the string output. The member name will be present, but the
  9912  // value will be replaced with "sensitive".
  9913  func (s ListAvailableSolutionStacksInput) GoString() string {
  9914  	return s.String()
  9915  }
  9916  
  9917  // A list of available AWS Elastic Beanstalk solution stacks.
  9918  type ListAvailableSolutionStacksOutput struct {
  9919  	_ struct{} `type:"structure"`
  9920  
  9921  	// A list of available solution stacks and their SolutionStackDescription.
  9922  	SolutionStackDetails []*SolutionStackDescription `type:"list"`
  9923  
  9924  	// A list of available solution stacks.
  9925  	SolutionStacks []*string `type:"list"`
  9926  }
  9927  
  9928  // String returns the string representation.
  9929  //
  9930  // API parameter values that are decorated as "sensitive" in the API will not
  9931  // be included in the string output. The member name will be present, but the
  9932  // value will be replaced with "sensitive".
  9933  func (s ListAvailableSolutionStacksOutput) String() string {
  9934  	return awsutil.Prettify(s)
  9935  }
  9936  
  9937  // GoString returns the string representation.
  9938  //
  9939  // API parameter values that are decorated as "sensitive" in the API will not
  9940  // be included in the string output. The member name will be present, but the
  9941  // value will be replaced with "sensitive".
  9942  func (s ListAvailableSolutionStacksOutput) GoString() string {
  9943  	return s.String()
  9944  }
  9945  
  9946  // SetSolutionStackDetails sets the SolutionStackDetails field's value.
  9947  func (s *ListAvailableSolutionStacksOutput) SetSolutionStackDetails(v []*SolutionStackDescription) *ListAvailableSolutionStacksOutput {
  9948  	s.SolutionStackDetails = v
  9949  	return s
  9950  }
  9951  
  9952  // SetSolutionStacks sets the SolutionStacks field's value.
  9953  func (s *ListAvailableSolutionStacksOutput) SetSolutionStacks(v []*string) *ListAvailableSolutionStacksOutput {
  9954  	s.SolutionStacks = v
  9955  	return s
  9956  }
  9957  
  9958  type ListPlatformBranchesInput struct {
  9959  	_ struct{} `type:"structure"`
  9960  
  9961  	// Criteria for restricting the resulting list of platform branches. The filter
  9962  	// is evaluated as a logical conjunction (AND) of the separate SearchFilter
  9963  	// terms.
  9964  	//
  9965  	// The following list shows valid attribute values for each of the SearchFilter
  9966  	// terms. Most operators take a single value. The in and not_in operators can
  9967  	// take multiple values.
  9968  	//
  9969  	//    * Attribute = BranchName: Operator: = | != | begins_with | ends_with |
  9970  	//    contains | in | not_in
  9971  	//
  9972  	//    * Attribute = LifecycleState: Operator: = | != | in | not_in Values: beta
  9973  	//    | supported | deprecated | retired
  9974  	//
  9975  	//    * Attribute = PlatformName: Operator: = | != | begins_with | ends_with
  9976  	//    | contains | in | not_in
  9977  	//
  9978  	//    * Attribute = TierType: Operator: = | != Values: WebServer/Standard |
  9979  	//    Worker/SQS/HTTP
  9980  	//
  9981  	// Array size: limited to 10 SearchFilter objects.
  9982  	//
  9983  	// Within each SearchFilter item, the Values array is limited to 10 items.
  9984  	Filters []*SearchFilter `type:"list"`
  9985  
  9986  	// The maximum number of platform branch values returned in one call.
  9987  	MaxRecords *int64 `min:"1" type:"integer"`
  9988  
  9989  	// For a paginated request. Specify a token from a previous response page to
  9990  	// retrieve the next response page. All other parameter values must be identical
  9991  	// to the ones specified in the initial request.
  9992  	//
  9993  	// If no NextToken is specified, the first page is retrieved.
  9994  	NextToken *string `type:"string"`
  9995  }
  9996  
  9997  // String returns the string representation.
  9998  //
  9999  // API parameter values that are decorated as "sensitive" in the API will not
 10000  // be included in the string output. The member name will be present, but the
 10001  // value will be replaced with "sensitive".
 10002  func (s ListPlatformBranchesInput) String() string {
 10003  	return awsutil.Prettify(s)
 10004  }
 10005  
 10006  // GoString returns the string representation.
 10007  //
 10008  // API parameter values that are decorated as "sensitive" in the API will not
 10009  // be included in the string output. The member name will be present, but the
 10010  // value will be replaced with "sensitive".
 10011  func (s ListPlatformBranchesInput) GoString() string {
 10012  	return s.String()
 10013  }
 10014  
 10015  // Validate inspects the fields of the type to determine if they are valid.
 10016  func (s *ListPlatformBranchesInput) Validate() error {
 10017  	invalidParams := request.ErrInvalidParams{Context: "ListPlatformBranchesInput"}
 10018  	if s.MaxRecords != nil && *s.MaxRecords < 1 {
 10019  		invalidParams.Add(request.NewErrParamMinValue("MaxRecords", 1))
 10020  	}
 10021  
 10022  	if invalidParams.Len() > 0 {
 10023  		return invalidParams
 10024  	}
 10025  	return nil
 10026  }
 10027  
 10028  // SetFilters sets the Filters field's value.
 10029  func (s *ListPlatformBranchesInput) SetFilters(v []*SearchFilter) *ListPlatformBranchesInput {
 10030  	s.Filters = v
 10031  	return s
 10032  }
 10033  
 10034  // SetMaxRecords sets the MaxRecords field's value.
 10035  func (s *ListPlatformBranchesInput) SetMaxRecords(v int64) *ListPlatformBranchesInput {
 10036  	s.MaxRecords = &v
 10037  	return s
 10038  }
 10039  
 10040  // SetNextToken sets the NextToken field's value.
 10041  func (s *ListPlatformBranchesInput) SetNextToken(v string) *ListPlatformBranchesInput {
 10042  	s.NextToken = &v
 10043  	return s
 10044  }
 10045  
 10046  type ListPlatformBranchesOutput struct {
 10047  	_ struct{} `type:"structure"`
 10048  
 10049  	// In a paginated request, if this value isn't null, it's the token that you
 10050  	// can pass in a subsequent request to get the next response page.
 10051  	NextToken *string `type:"string"`
 10052  
 10053  	// Summary information about the platform branches.
 10054  	PlatformBranchSummaryList []*PlatformBranchSummary `type:"list"`
 10055  }
 10056  
 10057  // String returns the string representation.
 10058  //
 10059  // API parameter values that are decorated as "sensitive" in the API will not
 10060  // be included in the string output. The member name will be present, but the
 10061  // value will be replaced with "sensitive".
 10062  func (s ListPlatformBranchesOutput) String() string {
 10063  	return awsutil.Prettify(s)
 10064  }
 10065  
 10066  // GoString returns the string representation.
 10067  //
 10068  // API parameter values that are decorated as "sensitive" in the API will not
 10069  // be included in the string output. The member name will be present, but the
 10070  // value will be replaced with "sensitive".
 10071  func (s ListPlatformBranchesOutput) GoString() string {
 10072  	return s.String()
 10073  }
 10074  
 10075  // SetNextToken sets the NextToken field's value.
 10076  func (s *ListPlatformBranchesOutput) SetNextToken(v string) *ListPlatformBranchesOutput {
 10077  	s.NextToken = &v
 10078  	return s
 10079  }
 10080  
 10081  // SetPlatformBranchSummaryList sets the PlatformBranchSummaryList field's value.
 10082  func (s *ListPlatformBranchesOutput) SetPlatformBranchSummaryList(v []*PlatformBranchSummary) *ListPlatformBranchesOutput {
 10083  	s.PlatformBranchSummaryList = v
 10084  	return s
 10085  }
 10086  
 10087  type ListPlatformVersionsInput struct {
 10088  	_ struct{} `type:"structure"`
 10089  
 10090  	// Criteria for restricting the resulting list of platform versions. The filter
 10091  	// is interpreted as a logical conjunction (AND) of the separate PlatformFilter
 10092  	// terms.
 10093  	Filters []*PlatformFilter `type:"list"`
 10094  
 10095  	// The maximum number of platform version values returned in one call.
 10096  	MaxRecords *int64 `min:"1" type:"integer"`
 10097  
 10098  	// For a paginated request. Specify a token from a previous response page to
 10099  	// retrieve the next response page. All other parameter values must be identical
 10100  	// to the ones specified in the initial request.
 10101  	//
 10102  	// If no NextToken is specified, the first page is retrieved.
 10103  	NextToken *string `type:"string"`
 10104  }
 10105  
 10106  // String returns the string representation.
 10107  //
 10108  // API parameter values that are decorated as "sensitive" in the API will not
 10109  // be included in the string output. The member name will be present, but the
 10110  // value will be replaced with "sensitive".
 10111  func (s ListPlatformVersionsInput) String() string {
 10112  	return awsutil.Prettify(s)
 10113  }
 10114  
 10115  // GoString returns the string representation.
 10116  //
 10117  // API parameter values that are decorated as "sensitive" in the API will not
 10118  // be included in the string output. The member name will be present, but the
 10119  // value will be replaced with "sensitive".
 10120  func (s ListPlatformVersionsInput) GoString() string {
 10121  	return s.String()
 10122  }
 10123  
 10124  // Validate inspects the fields of the type to determine if they are valid.
 10125  func (s *ListPlatformVersionsInput) Validate() error {
 10126  	invalidParams := request.ErrInvalidParams{Context: "ListPlatformVersionsInput"}
 10127  	if s.MaxRecords != nil && *s.MaxRecords < 1 {
 10128  		invalidParams.Add(request.NewErrParamMinValue("MaxRecords", 1))
 10129  	}
 10130  
 10131  	if invalidParams.Len() > 0 {
 10132  		return invalidParams
 10133  	}
 10134  	return nil
 10135  }
 10136  
 10137  // SetFilters sets the Filters field's value.
 10138  func (s *ListPlatformVersionsInput) SetFilters(v []*PlatformFilter) *ListPlatformVersionsInput {
 10139  	s.Filters = v
 10140  	return s
 10141  }
 10142  
 10143  // SetMaxRecords sets the MaxRecords field's value.
 10144  func (s *ListPlatformVersionsInput) SetMaxRecords(v int64) *ListPlatformVersionsInput {
 10145  	s.MaxRecords = &v
 10146  	return s
 10147  }
 10148  
 10149  // SetNextToken sets the NextToken field's value.
 10150  func (s *ListPlatformVersionsInput) SetNextToken(v string) *ListPlatformVersionsInput {
 10151  	s.NextToken = &v
 10152  	return s
 10153  }
 10154  
 10155  type ListPlatformVersionsOutput struct {
 10156  	_ struct{} `type:"structure"`
 10157  
 10158  	// In a paginated request, if this value isn't null, it's the token that you
 10159  	// can pass in a subsequent request to get the next response page.
 10160  	NextToken *string `type:"string"`
 10161  
 10162  	// Summary information about the platform versions.
 10163  	PlatformSummaryList []*PlatformSummary `type:"list"`
 10164  }
 10165  
 10166  // String returns the string representation.
 10167  //
 10168  // API parameter values that are decorated as "sensitive" in the API will not
 10169  // be included in the string output. The member name will be present, but the
 10170  // value will be replaced with "sensitive".
 10171  func (s ListPlatformVersionsOutput) String() string {
 10172  	return awsutil.Prettify(s)
 10173  }
 10174  
 10175  // GoString returns the string representation.
 10176  //
 10177  // API parameter values that are decorated as "sensitive" in the API will not
 10178  // be included in the string output. The member name will be present, but the
 10179  // value will be replaced with "sensitive".
 10180  func (s ListPlatformVersionsOutput) GoString() string {
 10181  	return s.String()
 10182  }
 10183  
 10184  // SetNextToken sets the NextToken field's value.
 10185  func (s *ListPlatformVersionsOutput) SetNextToken(v string) *ListPlatformVersionsOutput {
 10186  	s.NextToken = &v
 10187  	return s
 10188  }
 10189  
 10190  // SetPlatformSummaryList sets the PlatformSummaryList field's value.
 10191  func (s *ListPlatformVersionsOutput) SetPlatformSummaryList(v []*PlatformSummary) *ListPlatformVersionsOutput {
 10192  	s.PlatformSummaryList = v
 10193  	return s
 10194  }
 10195  
 10196  type ListTagsForResourceInput struct {
 10197  	_ struct{} `type:"structure"`
 10198  
 10199  	// The Amazon Resource Name (ARN) of the resouce for which a tag list is requested.
 10200  	//
 10201  	// Must be the ARN of an Elastic Beanstalk resource.
 10202  	//
 10203  	// ResourceArn is a required field
 10204  	ResourceArn *string `type:"string" required:"true"`
 10205  }
 10206  
 10207  // String returns the string representation.
 10208  //
 10209  // API parameter values that are decorated as "sensitive" in the API will not
 10210  // be included in the string output. The member name will be present, but the
 10211  // value will be replaced with "sensitive".
 10212  func (s ListTagsForResourceInput) String() string {
 10213  	return awsutil.Prettify(s)
 10214  }
 10215  
 10216  // GoString returns the string representation.
 10217  //
 10218  // API parameter values that are decorated as "sensitive" in the API will not
 10219  // be included in the string output. The member name will be present, but the
 10220  // value will be replaced with "sensitive".
 10221  func (s ListTagsForResourceInput) GoString() string {
 10222  	return s.String()
 10223  }
 10224  
 10225  // Validate inspects the fields of the type to determine if they are valid.
 10226  func (s *ListTagsForResourceInput) Validate() error {
 10227  	invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"}
 10228  	if s.ResourceArn == nil {
 10229  		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
 10230  	}
 10231  
 10232  	if invalidParams.Len() > 0 {
 10233  		return invalidParams
 10234  	}
 10235  	return nil
 10236  }
 10237  
 10238  // SetResourceArn sets the ResourceArn field's value.
 10239  func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput {
 10240  	s.ResourceArn = &v
 10241  	return s
 10242  }
 10243  
 10244  type ListTagsForResourceOutput struct {
 10245  	_ struct{} `type:"structure"`
 10246  
 10247  	// The Amazon Resource Name (ARN) of the resource for which a tag list was requested.
 10248  	ResourceArn *string `type:"string"`
 10249  
 10250  	// A list of tag key-value pairs.
 10251  	ResourceTags []*Tag `type:"list"`
 10252  }
 10253  
 10254  // String returns the string representation.
 10255  //
 10256  // API parameter values that are decorated as "sensitive" in the API will not
 10257  // be included in the string output. The member name will be present, but the
 10258  // value will be replaced with "sensitive".
 10259  func (s ListTagsForResourceOutput) String() string {
 10260  	return awsutil.Prettify(s)
 10261  }
 10262  
 10263  // GoString returns the string representation.
 10264  //
 10265  // API parameter values that are decorated as "sensitive" in the API will not
 10266  // be included in the string output. The member name will be present, but the
 10267  // value will be replaced with "sensitive".
 10268  func (s ListTagsForResourceOutput) GoString() string {
 10269  	return s.String()
 10270  }
 10271  
 10272  // SetResourceArn sets the ResourceArn field's value.
 10273  func (s *ListTagsForResourceOutput) SetResourceArn(v string) *ListTagsForResourceOutput {
 10274  	s.ResourceArn = &v
 10275  	return s
 10276  }
 10277  
 10278  // SetResourceTags sets the ResourceTags field's value.
 10279  func (s *ListTagsForResourceOutput) SetResourceTags(v []*Tag) *ListTagsForResourceOutput {
 10280  	s.ResourceTags = v
 10281  	return s
 10282  }
 10283  
 10284  // Describes the properties of a Listener for the LoadBalancer.
 10285  type Listener struct {
 10286  	_ struct{} `type:"structure"`
 10287  
 10288  	// The port that is used by the Listener.
 10289  	Port *int64 `type:"integer"`
 10290  
 10291  	// The protocol that is used by the Listener.
 10292  	Protocol *string `type:"string"`
 10293  }
 10294  
 10295  // String returns the string representation.
 10296  //
 10297  // API parameter values that are decorated as "sensitive" in the API will not
 10298  // be included in the string output. The member name will be present, but the
 10299  // value will be replaced with "sensitive".
 10300  func (s Listener) String() string {
 10301  	return awsutil.Prettify(s)
 10302  }
 10303  
 10304  // GoString returns the string representation.
 10305  //
 10306  // API parameter values that are decorated as "sensitive" in the API will not
 10307  // be included in the string output. The member name will be present, but the
 10308  // value will be replaced with "sensitive".
 10309  func (s Listener) GoString() string {
 10310  	return s.String()
 10311  }
 10312  
 10313  // SetPort sets the Port field's value.
 10314  func (s *Listener) SetPort(v int64) *Listener {
 10315  	s.Port = &v
 10316  	return s
 10317  }
 10318  
 10319  // SetProtocol sets the Protocol field's value.
 10320  func (s *Listener) SetProtocol(v string) *Listener {
 10321  	s.Protocol = &v
 10322  	return s
 10323  }
 10324  
 10325  // Describes a LoadBalancer.
 10326  type LoadBalancer struct {
 10327  	_ struct{} `type:"structure"`
 10328  
 10329  	// The name of the LoadBalancer.
 10330  	Name *string `type:"string"`
 10331  }
 10332  
 10333  // String returns the string representation.
 10334  //
 10335  // API parameter values that are decorated as "sensitive" in the API will not
 10336  // be included in the string output. The member name will be present, but the
 10337  // value will be replaced with "sensitive".
 10338  func (s LoadBalancer) String() string {
 10339  	return awsutil.Prettify(s)
 10340  }
 10341  
 10342  // GoString returns the string representation.
 10343  //
 10344  // API parameter values that are decorated as "sensitive" in the API will not
 10345  // be included in the string output. The member name will be present, but the
 10346  // value will be replaced with "sensitive".
 10347  func (s LoadBalancer) GoString() string {
 10348  	return s.String()
 10349  }
 10350  
 10351  // SetName sets the Name field's value.
 10352  func (s *LoadBalancer) SetName(v string) *LoadBalancer {
 10353  	s.Name = &v
 10354  	return s
 10355  }
 10356  
 10357  // Describes the details of a LoadBalancer.
 10358  type LoadBalancerDescription struct {
 10359  	_ struct{} `type:"structure"`
 10360  
 10361  	// The domain name of the LoadBalancer.
 10362  	Domain *string `type:"string"`
 10363  
 10364  	// A list of Listeners used by the LoadBalancer.
 10365  	Listeners []*Listener `type:"list"`
 10366  
 10367  	// The name of the LoadBalancer.
 10368  	LoadBalancerName *string `type:"string"`
 10369  }
 10370  
 10371  // String returns the string representation.
 10372  //
 10373  // API parameter values that are decorated as "sensitive" in the API will not
 10374  // be included in the string output. The member name will be present, but the
 10375  // value will be replaced with "sensitive".
 10376  func (s LoadBalancerDescription) String() string {
 10377  	return awsutil.Prettify(s)
 10378  }
 10379  
 10380  // GoString returns the string representation.
 10381  //
 10382  // API parameter values that are decorated as "sensitive" in the API will not
 10383  // be included in the string output. The member name will be present, but the
 10384  // value will be replaced with "sensitive".
 10385  func (s LoadBalancerDescription) GoString() string {
 10386  	return s.String()
 10387  }
 10388  
 10389  // SetDomain sets the Domain field's value.
 10390  func (s *LoadBalancerDescription) SetDomain(v string) *LoadBalancerDescription {
 10391  	s.Domain = &v
 10392  	return s
 10393  }
 10394  
 10395  // SetListeners sets the Listeners field's value.
 10396  func (s *LoadBalancerDescription) SetListeners(v []*Listener) *LoadBalancerDescription {
 10397  	s.Listeners = v
 10398  	return s
 10399  }
 10400  
 10401  // SetLoadBalancerName sets the LoadBalancerName field's value.
 10402  func (s *LoadBalancerDescription) SetLoadBalancerName(v string) *LoadBalancerDescription {
 10403  	s.LoadBalancerName = &v
 10404  	return s
 10405  }
 10406  
 10407  // The record of an upcoming or in-progress managed action.
 10408  type ManagedAction struct {
 10409  	_ struct{} `type:"structure"`
 10410  
 10411  	// A description of the managed action.
 10412  	ActionDescription *string `type:"string"`
 10413  
 10414  	// A unique identifier for the managed action.
 10415  	ActionId *string `type:"string"`
 10416  
 10417  	// The type of managed action.
 10418  	ActionType *string `type:"string" enum:"ActionType"`
 10419  
 10420  	// The status of the managed action. If the action is Scheduled, you can apply
 10421  	// it immediately with ApplyEnvironmentManagedAction.
 10422  	Status *string `type:"string" enum:"ActionStatus"`
 10423  
 10424  	// The start time of the maintenance window in which the managed action will
 10425  	// execute.
 10426  	WindowStartTime *time.Time `type:"timestamp"`
 10427  }
 10428  
 10429  // String returns the string representation.
 10430  //
 10431  // API parameter values that are decorated as "sensitive" in the API will not
 10432  // be included in the string output. The member name will be present, but the
 10433  // value will be replaced with "sensitive".
 10434  func (s ManagedAction) String() string {
 10435  	return awsutil.Prettify(s)
 10436  }
 10437  
 10438  // GoString returns the string representation.
 10439  //
 10440  // API parameter values that are decorated as "sensitive" in the API will not
 10441  // be included in the string output. The member name will be present, but the
 10442  // value will be replaced with "sensitive".
 10443  func (s ManagedAction) GoString() string {
 10444  	return s.String()
 10445  }
 10446  
 10447  // SetActionDescription sets the ActionDescription field's value.
 10448  func (s *ManagedAction) SetActionDescription(v string) *ManagedAction {
 10449  	s.ActionDescription = &v
 10450  	return s
 10451  }
 10452  
 10453  // SetActionId sets the ActionId field's value.
 10454  func (s *ManagedAction) SetActionId(v string) *ManagedAction {
 10455  	s.ActionId = &v
 10456  	return s
 10457  }
 10458  
 10459  // SetActionType sets the ActionType field's value.
 10460  func (s *ManagedAction) SetActionType(v string) *ManagedAction {
 10461  	s.ActionType = &v
 10462  	return s
 10463  }
 10464  
 10465  // SetStatus sets the Status field's value.
 10466  func (s *ManagedAction) SetStatus(v string) *ManagedAction {
 10467  	s.Status = &v
 10468  	return s
 10469  }
 10470  
 10471  // SetWindowStartTime sets the WindowStartTime field's value.
 10472  func (s *ManagedAction) SetWindowStartTime(v time.Time) *ManagedAction {
 10473  	s.WindowStartTime = &v
 10474  	return s
 10475  }
 10476  
 10477  // The record of a completed or failed managed action.
 10478  type ManagedActionHistoryItem struct {
 10479  	_ struct{} `type:"structure"`
 10480  
 10481  	// A description of the managed action.
 10482  	ActionDescription *string `type:"string"`
 10483  
 10484  	// A unique identifier for the managed action.
 10485  	ActionId *string `type:"string"`
 10486  
 10487  	// The type of the managed action.
 10488  	ActionType *string `type:"string" enum:"ActionType"`
 10489  
 10490  	// The date and time that the action started executing.
 10491  	ExecutedTime *time.Time `type:"timestamp"`
 10492  
 10493  	// If the action failed, a description of the failure.
 10494  	FailureDescription *string `type:"string"`
 10495  
 10496  	// If the action failed, the type of failure.
 10497  	FailureType *string `type:"string" enum:"FailureType"`
 10498  
 10499  	// The date and time that the action finished executing.
 10500  	FinishedTime *time.Time `type:"timestamp"`
 10501  
 10502  	// The status of the action.
 10503  	Status *string `type:"string" enum:"ActionHistoryStatus"`
 10504  }
 10505  
 10506  // String returns the string representation.
 10507  //
 10508  // API parameter values that are decorated as "sensitive" in the API will not
 10509  // be included in the string output. The member name will be present, but the
 10510  // value will be replaced with "sensitive".
 10511  func (s ManagedActionHistoryItem) String() string {
 10512  	return awsutil.Prettify(s)
 10513  }
 10514  
 10515  // GoString returns the string representation.
 10516  //
 10517  // API parameter values that are decorated as "sensitive" in the API will not
 10518  // be included in the string output. The member name will be present, but the
 10519  // value will be replaced with "sensitive".
 10520  func (s ManagedActionHistoryItem) GoString() string {
 10521  	return s.String()
 10522  }
 10523  
 10524  // SetActionDescription sets the ActionDescription field's value.
 10525  func (s *ManagedActionHistoryItem) SetActionDescription(v string) *ManagedActionHistoryItem {
 10526  	s.ActionDescription = &v
 10527  	return s
 10528  }
 10529  
 10530  // SetActionId sets the ActionId field's value.
 10531  func (s *ManagedActionHistoryItem) SetActionId(v string) *ManagedActionHistoryItem {
 10532  	s.ActionId = &v
 10533  	return s
 10534  }
 10535  
 10536  // SetActionType sets the ActionType field's value.
 10537  func (s *ManagedActionHistoryItem) SetActionType(v string) *ManagedActionHistoryItem {
 10538  	s.ActionType = &v
 10539  	return s
 10540  }
 10541  
 10542  // SetExecutedTime sets the ExecutedTime field's value.
 10543  func (s *ManagedActionHistoryItem) SetExecutedTime(v time.Time) *ManagedActionHistoryItem {
 10544  	s.ExecutedTime = &v
 10545  	return s
 10546  }
 10547  
 10548  // SetFailureDescription sets the FailureDescription field's value.
 10549  func (s *ManagedActionHistoryItem) SetFailureDescription(v string) *ManagedActionHistoryItem {
 10550  	s.FailureDescription = &v
 10551  	return s
 10552  }
 10553  
 10554  // SetFailureType sets the FailureType field's value.
 10555  func (s *ManagedActionHistoryItem) SetFailureType(v string) *ManagedActionHistoryItem {
 10556  	s.FailureType = &v
 10557  	return s
 10558  }
 10559  
 10560  // SetFinishedTime sets the FinishedTime field's value.
 10561  func (s *ManagedActionHistoryItem) SetFinishedTime(v time.Time) *ManagedActionHistoryItem {
 10562  	s.FinishedTime = &v
 10563  	return s
 10564  }
 10565  
 10566  // SetStatus sets the Status field's value.
 10567  func (s *ManagedActionHistoryItem) SetStatus(v string) *ManagedActionHistoryItem {
 10568  	s.Status = &v
 10569  	return s
 10570  }
 10571  
 10572  // A lifecycle rule that deletes application versions after the specified number
 10573  // of days.
 10574  type MaxAgeRule struct {
 10575  	_ struct{} `type:"structure"`
 10576  
 10577  	// Set to true to delete a version's source bundle from Amazon S3 when Elastic
 10578  	// Beanstalk deletes the application version.
 10579  	DeleteSourceFromS3 *bool `type:"boolean"`
 10580  
 10581  	// Specify true to apply the rule, or false to disable it.
 10582  	//
 10583  	// Enabled is a required field
 10584  	Enabled *bool `type:"boolean" required:"true"`
 10585  
 10586  	// Specify the number of days to retain an application versions.
 10587  	MaxAgeInDays *int64 `type:"integer"`
 10588  }
 10589  
 10590  // String returns the string representation.
 10591  //
 10592  // API parameter values that are decorated as "sensitive" in the API will not
 10593  // be included in the string output. The member name will be present, but the
 10594  // value will be replaced with "sensitive".
 10595  func (s MaxAgeRule) String() string {
 10596  	return awsutil.Prettify(s)
 10597  }
 10598  
 10599  // GoString returns the string representation.
 10600  //
 10601  // API parameter values that are decorated as "sensitive" in the API will not
 10602  // be included in the string output. The member name will be present, but the
 10603  // value will be replaced with "sensitive".
 10604  func (s MaxAgeRule) GoString() string {
 10605  	return s.String()
 10606  }
 10607  
 10608  // Validate inspects the fields of the type to determine if they are valid.
 10609  func (s *MaxAgeRule) Validate() error {
 10610  	invalidParams := request.ErrInvalidParams{Context: "MaxAgeRule"}
 10611  	if s.Enabled == nil {
 10612  		invalidParams.Add(request.NewErrParamRequired("Enabled"))
 10613  	}
 10614  
 10615  	if invalidParams.Len() > 0 {
 10616  		return invalidParams
 10617  	}
 10618  	return nil
 10619  }
 10620  
 10621  // SetDeleteSourceFromS3 sets the DeleteSourceFromS3 field's value.
 10622  func (s *MaxAgeRule) SetDeleteSourceFromS3(v bool) *MaxAgeRule {
 10623  	s.DeleteSourceFromS3 = &v
 10624  	return s
 10625  }
 10626  
 10627  // SetEnabled sets the Enabled field's value.
 10628  func (s *MaxAgeRule) SetEnabled(v bool) *MaxAgeRule {
 10629  	s.Enabled = &v
 10630  	return s
 10631  }
 10632  
 10633  // SetMaxAgeInDays sets the MaxAgeInDays field's value.
 10634  func (s *MaxAgeRule) SetMaxAgeInDays(v int64) *MaxAgeRule {
 10635  	s.MaxAgeInDays = &v
 10636  	return s
 10637  }
 10638  
 10639  // A lifecycle rule that deletes the oldest application version when the maximum
 10640  // count is exceeded.
 10641  type MaxCountRule struct {
 10642  	_ struct{} `type:"structure"`
 10643  
 10644  	// Set to true to delete a version's source bundle from Amazon S3 when Elastic
 10645  	// Beanstalk deletes the application version.
 10646  	DeleteSourceFromS3 *bool `type:"boolean"`
 10647  
 10648  	// Specify true to apply the rule, or false to disable it.
 10649  	//
 10650  	// Enabled is a required field
 10651  	Enabled *bool `type:"boolean" required:"true"`
 10652  
 10653  	// Specify the maximum number of application versions to retain.
 10654  	MaxCount *int64 `type:"integer"`
 10655  }
 10656  
 10657  // String returns the string representation.
 10658  //
 10659  // API parameter values that are decorated as "sensitive" in the API will not
 10660  // be included in the string output. The member name will be present, but the
 10661  // value will be replaced with "sensitive".
 10662  func (s MaxCountRule) String() string {
 10663  	return awsutil.Prettify(s)
 10664  }
 10665  
 10666  // GoString returns the string representation.
 10667  //
 10668  // API parameter values that are decorated as "sensitive" in the API will not
 10669  // be included in the string output. The member name will be present, but the
 10670  // value will be replaced with "sensitive".
 10671  func (s MaxCountRule) GoString() string {
 10672  	return s.String()
 10673  }
 10674  
 10675  // Validate inspects the fields of the type to determine if they are valid.
 10676  func (s *MaxCountRule) Validate() error {
 10677  	invalidParams := request.ErrInvalidParams{Context: "MaxCountRule"}
 10678  	if s.Enabled == nil {
 10679  		invalidParams.Add(request.NewErrParamRequired("Enabled"))
 10680  	}
 10681  
 10682  	if invalidParams.Len() > 0 {
 10683  		return invalidParams
 10684  	}
 10685  	return nil
 10686  }
 10687  
 10688  // SetDeleteSourceFromS3 sets the DeleteSourceFromS3 field's value.
 10689  func (s *MaxCountRule) SetDeleteSourceFromS3(v bool) *MaxCountRule {
 10690  	s.DeleteSourceFromS3 = &v
 10691  	return s
 10692  }
 10693  
 10694  // SetEnabled sets the Enabled field's value.
 10695  func (s *MaxCountRule) SetEnabled(v bool) *MaxCountRule {
 10696  	s.Enabled = &v
 10697  	return s
 10698  }
 10699  
 10700  // SetMaxCount sets the MaxCount field's value.
 10701  func (s *MaxCountRule) SetMaxCount(v int64) *MaxCountRule {
 10702  	s.MaxCount = &v
 10703  	return s
 10704  }
 10705  
 10706  // A regular expression representing a restriction on a string configuration
 10707  // option value.
 10708  type OptionRestrictionRegex struct {
 10709  	_ struct{} `type:"structure"`
 10710  
 10711  	// A unique name representing this regular expression.
 10712  	Label *string `type:"string"`
 10713  
 10714  	// The regular expression pattern that a string configuration option value with
 10715  	// this restriction must match.
 10716  	Pattern *string `type:"string"`
 10717  }
 10718  
 10719  // String returns the string representation.
 10720  //
 10721  // API parameter values that are decorated as "sensitive" in the API will not
 10722  // be included in the string output. The member name will be present, but the
 10723  // value will be replaced with "sensitive".
 10724  func (s OptionRestrictionRegex) String() string {
 10725  	return awsutil.Prettify(s)
 10726  }
 10727  
 10728  // GoString returns the string representation.
 10729  //
 10730  // API parameter values that are decorated as "sensitive" in the API will not
 10731  // be included in the string output. The member name will be present, but the
 10732  // value will be replaced with "sensitive".
 10733  func (s OptionRestrictionRegex) GoString() string {
 10734  	return s.String()
 10735  }
 10736  
 10737  // SetLabel sets the Label field's value.
 10738  func (s *OptionRestrictionRegex) SetLabel(v string) *OptionRestrictionRegex {
 10739  	s.Label = &v
 10740  	return s
 10741  }
 10742  
 10743  // SetPattern sets the Pattern field's value.
 10744  func (s *OptionRestrictionRegex) SetPattern(v string) *OptionRestrictionRegex {
 10745  	s.Pattern = &v
 10746  	return s
 10747  }
 10748  
 10749  // A specification identifying an individual configuration option.
 10750  type OptionSpecification struct {
 10751  	_ struct{} `type:"structure"`
 10752  
 10753  	// A unique namespace identifying the option's associated AWS resource.
 10754  	Namespace *string `type:"string"`
 10755  
 10756  	// The name of the configuration option.
 10757  	OptionName *string `type:"string"`
 10758  
 10759  	// A unique resource name for a time-based scaling configuration option.
 10760  	ResourceName *string `min:"1" type:"string"`
 10761  }
 10762  
 10763  // String returns the string representation.
 10764  //
 10765  // API parameter values that are decorated as "sensitive" in the API will not
 10766  // be included in the string output. The member name will be present, but the
 10767  // value will be replaced with "sensitive".
 10768  func (s OptionSpecification) String() string {
 10769  	return awsutil.Prettify(s)
 10770  }
 10771  
 10772  // GoString returns the string representation.
 10773  //
 10774  // API parameter values that are decorated as "sensitive" in the API will not
 10775  // be included in the string output. The member name will be present, but the
 10776  // value will be replaced with "sensitive".
 10777  func (s OptionSpecification) GoString() string {
 10778  	return s.String()
 10779  }
 10780  
 10781  // Validate inspects the fields of the type to determine if they are valid.
 10782  func (s *OptionSpecification) Validate() error {
 10783  	invalidParams := request.ErrInvalidParams{Context: "OptionSpecification"}
 10784  	if s.ResourceName != nil && len(*s.ResourceName) < 1 {
 10785  		invalidParams.Add(request.NewErrParamMinLen("ResourceName", 1))
 10786  	}
 10787  
 10788  	if invalidParams.Len() > 0 {
 10789  		return invalidParams
 10790  	}
 10791  	return nil
 10792  }
 10793  
 10794  // SetNamespace sets the Namespace field's value.
 10795  func (s *OptionSpecification) SetNamespace(v string) *OptionSpecification {
 10796  	s.Namespace = &v
 10797  	return s
 10798  }
 10799  
 10800  // SetOptionName sets the OptionName field's value.
 10801  func (s *OptionSpecification) SetOptionName(v string) *OptionSpecification {
 10802  	s.OptionName = &v
 10803  	return s
 10804  }
 10805  
 10806  // SetResourceName sets the ResourceName field's value.
 10807  func (s *OptionSpecification) SetResourceName(v string) *OptionSpecification {
 10808  	s.ResourceName = &v
 10809  	return s
 10810  }
 10811  
 10812  // Summary information about a platform branch.
 10813  type PlatformBranchSummary struct {
 10814  	_ struct{} `type:"structure"`
 10815  
 10816  	// The name of the platform branch.
 10817  	BranchName *string `type:"string"`
 10818  
 10819  	// An ordinal number that designates the order in which platform branches have
 10820  	// been added to a platform. This can be helpful, for example, if your code
 10821  	// calls the ListPlatformBranches action and then displays a list of platform
 10822  	// branches.
 10823  	//
 10824  	// A larger BranchOrder value designates a newer platform branch within the
 10825  	// platform.
 10826  	BranchOrder *int64 `type:"integer"`
 10827  
 10828  	// The support life cycle state of the platform branch.
 10829  	//
 10830  	// Possible values: beta | supported | deprecated | retired
 10831  	LifecycleState *string `type:"string"`
 10832  
 10833  	// The name of the platform to which this platform branch belongs.
 10834  	PlatformName *string `type:"string"`
 10835  
 10836  	// The environment tiers that platform versions in this branch support.
 10837  	//
 10838  	// Possible values: WebServer/Standard | Worker/SQS/HTTP
 10839  	SupportedTierList []*string `type:"list"`
 10840  }
 10841  
 10842  // String returns the string representation.
 10843  //
 10844  // API parameter values that are decorated as "sensitive" in the API will not
 10845  // be included in the string output. The member name will be present, but the
 10846  // value will be replaced with "sensitive".
 10847  func (s PlatformBranchSummary) String() string {
 10848  	return awsutil.Prettify(s)
 10849  }
 10850  
 10851  // GoString returns the string representation.
 10852  //
 10853  // API parameter values that are decorated as "sensitive" in the API will not
 10854  // be included in the string output. The member name will be present, but the
 10855  // value will be replaced with "sensitive".
 10856  func (s PlatformBranchSummary) GoString() string {
 10857  	return s.String()
 10858  }
 10859  
 10860  // SetBranchName sets the BranchName field's value.
 10861  func (s *PlatformBranchSummary) SetBranchName(v string) *PlatformBranchSummary {
 10862  	s.BranchName = &v
 10863  	return s
 10864  }
 10865  
 10866  // SetBranchOrder sets the BranchOrder field's value.
 10867  func (s *PlatformBranchSummary) SetBranchOrder(v int64) *PlatformBranchSummary {
 10868  	s.BranchOrder = &v
 10869  	return s
 10870  }
 10871  
 10872  // SetLifecycleState sets the LifecycleState field's value.
 10873  func (s *PlatformBranchSummary) SetLifecycleState(v string) *PlatformBranchSummary {
 10874  	s.LifecycleState = &v
 10875  	return s
 10876  }
 10877  
 10878  // SetPlatformName sets the PlatformName field's value.
 10879  func (s *PlatformBranchSummary) SetPlatformName(v string) *PlatformBranchSummary {
 10880  	s.PlatformName = &v
 10881  	return s
 10882  }
 10883  
 10884  // SetSupportedTierList sets the SupportedTierList field's value.
 10885  func (s *PlatformBranchSummary) SetSupportedTierList(v []*string) *PlatformBranchSummary {
 10886  	s.SupportedTierList = v
 10887  	return s
 10888  }
 10889  
 10890  // Detailed information about a platform version.
 10891  type PlatformDescription struct {
 10892  	_ struct{} `type:"structure"`
 10893  
 10894  	// The custom AMIs supported by the platform version.
 10895  	CustomAmiList []*CustomAmi `type:"list"`
 10896  
 10897  	// The date when the platform version was created.
 10898  	DateCreated *time.Time `type:"timestamp"`
 10899  
 10900  	// The date when the platform version was last updated.
 10901  	DateUpdated *time.Time `type:"timestamp"`
 10902  
 10903  	// The description of the platform version.
 10904  	Description *string `type:"string"`
 10905  
 10906  	// The frameworks supported by the platform version.
 10907  	Frameworks []*PlatformFramework `type:"list"`
 10908  
 10909  	// Information about the maintainer of the platform version.
 10910  	Maintainer *string `type:"string"`
 10911  
 10912  	// The operating system used by the platform version.
 10913  	OperatingSystemName *string `type:"string"`
 10914  
 10915  	// The version of the operating system used by the platform version.
 10916  	OperatingSystemVersion *string `type:"string"`
 10917  
 10918  	// The ARN of the platform version.
 10919  	PlatformArn *string `type:"string"`
 10920  
 10921  	// The state of the platform version's branch in its lifecycle.
 10922  	//
 10923  	// Possible values: Beta | Supported | Deprecated | Retired
 10924  	PlatformBranchLifecycleState *string `type:"string"`
 10925  
 10926  	// The platform branch to which the platform version belongs.
 10927  	PlatformBranchName *string `type:"string"`
 10928  
 10929  	// The category of the platform version.
 10930  	PlatformCategory *string `type:"string"`
 10931  
 10932  	// The state of the platform version in its lifecycle.
 10933  	//
 10934  	// Possible values: Recommended | null
 10935  	//
 10936  	// If a null value is returned, the platform version isn't the recommended one
 10937  	// for its branch. Each platform branch has a single recommended platform version,
 10938  	// typically the most recent one.
 10939  	PlatformLifecycleState *string `type:"string"`
 10940  
 10941  	// The name of the platform version.
 10942  	PlatformName *string `type:"string"`
 10943  
 10944  	// The AWS account ID of the person who created the platform version.
 10945  	PlatformOwner *string `type:"string"`
 10946  
 10947  	// The status of the platform version.
 10948  	PlatformStatus *string `type:"string" enum:"PlatformStatus"`
 10949  
 10950  	// The version of the platform version.
 10951  	PlatformVersion *string `type:"string"`
 10952  
 10953  	// The programming languages supported by the platform version.
 10954  	ProgrammingLanguages []*PlatformProgrammingLanguage `type:"list"`
 10955  
 10956  	// The name of the solution stack used by the platform version.
 10957  	SolutionStackName *string `type:"string"`
 10958  
 10959  	// The additions supported by the platform version.
 10960  	SupportedAddonList []*string `type:"list"`
 10961  
 10962  	// The tiers supported by the platform version.
 10963  	SupportedTierList []*string `type:"list"`
 10964  }
 10965  
 10966  // String returns the string representation.
 10967  //
 10968  // API parameter values that are decorated as "sensitive" in the API will not
 10969  // be included in the string output. The member name will be present, but the
 10970  // value will be replaced with "sensitive".
 10971  func (s PlatformDescription) String() string {
 10972  	return awsutil.Prettify(s)
 10973  }
 10974  
 10975  // GoString returns the string representation.
 10976  //
 10977  // API parameter values that are decorated as "sensitive" in the API will not
 10978  // be included in the string output. The member name will be present, but the
 10979  // value will be replaced with "sensitive".
 10980  func (s PlatformDescription) GoString() string {
 10981  	return s.String()
 10982  }
 10983  
 10984  // SetCustomAmiList sets the CustomAmiList field's value.
 10985  func (s *PlatformDescription) SetCustomAmiList(v []*CustomAmi) *PlatformDescription {
 10986  	s.CustomAmiList = v
 10987  	return s
 10988  }
 10989  
 10990  // SetDateCreated sets the DateCreated field's value.
 10991  func (s *PlatformDescription) SetDateCreated(v time.Time) *PlatformDescription {
 10992  	s.DateCreated = &v
 10993  	return s
 10994  }
 10995  
 10996  // SetDateUpdated sets the DateUpdated field's value.
 10997  func (s *PlatformDescription) SetDateUpdated(v time.Time) *PlatformDescription {
 10998  	s.DateUpdated = &v
 10999  	return s
 11000  }
 11001  
 11002  // SetDescription sets the Description field's value.
 11003  func (s *PlatformDescription) SetDescription(v string) *PlatformDescription {
 11004  	s.Description = &v
 11005  	return s
 11006  }
 11007  
 11008  // SetFrameworks sets the Frameworks field's value.
 11009  func (s *PlatformDescription) SetFrameworks(v []*PlatformFramework) *PlatformDescription {
 11010  	s.Frameworks = v
 11011  	return s
 11012  }
 11013  
 11014  // SetMaintainer sets the Maintainer field's value.
 11015  func (s *PlatformDescription) SetMaintainer(v string) *PlatformDescription {
 11016  	s.Maintainer = &v
 11017  	return s
 11018  }
 11019  
 11020  // SetOperatingSystemName sets the OperatingSystemName field's value.
 11021  func (s *PlatformDescription) SetOperatingSystemName(v string) *PlatformDescription {
 11022  	s.OperatingSystemName = &v
 11023  	return s
 11024  }
 11025  
 11026  // SetOperatingSystemVersion sets the OperatingSystemVersion field's value.
 11027  func (s *PlatformDescription) SetOperatingSystemVersion(v string) *PlatformDescription {
 11028  	s.OperatingSystemVersion = &v
 11029  	return s
 11030  }
 11031  
 11032  // SetPlatformArn sets the PlatformArn field's value.
 11033  func (s *PlatformDescription) SetPlatformArn(v string) *PlatformDescription {
 11034  	s.PlatformArn = &v
 11035  	return s
 11036  }
 11037  
 11038  // SetPlatformBranchLifecycleState sets the PlatformBranchLifecycleState field's value.
 11039  func (s *PlatformDescription) SetPlatformBranchLifecycleState(v string) *PlatformDescription {
 11040  	s.PlatformBranchLifecycleState = &v
 11041  	return s
 11042  }
 11043  
 11044  // SetPlatformBranchName sets the PlatformBranchName field's value.
 11045  func (s *PlatformDescription) SetPlatformBranchName(v string) *PlatformDescription {
 11046  	s.PlatformBranchName = &v
 11047  	return s
 11048  }
 11049  
 11050  // SetPlatformCategory sets the PlatformCategory field's value.
 11051  func (s *PlatformDescription) SetPlatformCategory(v string) *PlatformDescription {
 11052  	s.PlatformCategory = &v
 11053  	return s
 11054  }
 11055  
 11056  // SetPlatformLifecycleState sets the PlatformLifecycleState field's value.
 11057  func (s *PlatformDescription) SetPlatformLifecycleState(v string) *PlatformDescription {
 11058  	s.PlatformLifecycleState = &v
 11059  	return s
 11060  }
 11061  
 11062  // SetPlatformName sets the PlatformName field's value.
 11063  func (s *PlatformDescription) SetPlatformName(v string) *PlatformDescription {
 11064  	s.PlatformName = &v
 11065  	return s
 11066  }
 11067  
 11068  // SetPlatformOwner sets the PlatformOwner field's value.
 11069  func (s *PlatformDescription) SetPlatformOwner(v string) *PlatformDescription {
 11070  	s.PlatformOwner = &v
 11071  	return s
 11072  }
 11073  
 11074  // SetPlatformStatus sets the PlatformStatus field's value.
 11075  func (s *PlatformDescription) SetPlatformStatus(v string) *PlatformDescription {
 11076  	s.PlatformStatus = &v
 11077  	return s
 11078  }
 11079  
 11080  // SetPlatformVersion sets the PlatformVersion field's value.
 11081  func (s *PlatformDescription) SetPlatformVersion(v string) *PlatformDescription {
 11082  	s.PlatformVersion = &v
 11083  	return s
 11084  }
 11085  
 11086  // SetProgrammingLanguages sets the ProgrammingLanguages field's value.
 11087  func (s *PlatformDescription) SetProgrammingLanguages(v []*PlatformProgrammingLanguage) *PlatformDescription {
 11088  	s.ProgrammingLanguages = v
 11089  	return s
 11090  }
 11091  
 11092  // SetSolutionStackName sets the SolutionStackName field's value.
 11093  func (s *PlatformDescription) SetSolutionStackName(v string) *PlatformDescription {
 11094  	s.SolutionStackName = &v
 11095  	return s
 11096  }
 11097  
 11098  // SetSupportedAddonList sets the SupportedAddonList field's value.
 11099  func (s *PlatformDescription) SetSupportedAddonList(v []*string) *PlatformDescription {
 11100  	s.SupportedAddonList = v
 11101  	return s
 11102  }
 11103  
 11104  // SetSupportedTierList sets the SupportedTierList field's value.
 11105  func (s *PlatformDescription) SetSupportedTierList(v []*string) *PlatformDescription {
 11106  	s.SupportedTierList = v
 11107  	return s
 11108  }
 11109  
 11110  // Describes criteria to restrict the results when listing platform versions.
 11111  //
 11112  // The filter is evaluated as follows: Type Operator Values[1]
 11113  type PlatformFilter struct {
 11114  	_ struct{} `type:"structure"`
 11115  
 11116  	// The operator to apply to the Type with each of the Values.
 11117  	//
 11118  	// Valid values: = | != | < | <= | > | >= | contains | begins_with | ends_with
 11119  	Operator *string `type:"string"`
 11120  
 11121  	// The platform version attribute to which the filter values are applied.
 11122  	//
 11123  	// Valid values: PlatformName | PlatformVersion | PlatformStatus | PlatformBranchName
 11124  	// | PlatformLifecycleState | PlatformOwner | SupportedTier | SupportedAddon
 11125  	// | ProgrammingLanguageName | OperatingSystemName
 11126  	Type *string `type:"string"`
 11127  
 11128  	// The list of values applied to the filtering platform version attribute. Only
 11129  	// one value is supported for all current operators.
 11130  	//
 11131  	// The following list shows valid filter values for some filter attributes.
 11132  	//
 11133  	//    * PlatformStatus: Creating | Failed | Ready | Deleting | Deleted
 11134  	//
 11135  	//    * PlatformLifecycleState: recommended
 11136  	//
 11137  	//    * SupportedTier: WebServer/Standard | Worker/SQS/HTTP
 11138  	//
 11139  	//    * SupportedAddon: Log/S3 | Monitoring/Healthd | WorkerDaemon/SQSD
 11140  	Values []*string `type:"list"`
 11141  }
 11142  
 11143  // String returns the string representation.
 11144  //
 11145  // API parameter values that are decorated as "sensitive" in the API will not
 11146  // be included in the string output. The member name will be present, but the
 11147  // value will be replaced with "sensitive".
 11148  func (s PlatformFilter) String() string {
 11149  	return awsutil.Prettify(s)
 11150  }
 11151  
 11152  // GoString returns the string representation.
 11153  //
 11154  // API parameter values that are decorated as "sensitive" in the API will not
 11155  // be included in the string output. The member name will be present, but the
 11156  // value will be replaced with "sensitive".
 11157  func (s PlatformFilter) GoString() string {
 11158  	return s.String()
 11159  }
 11160  
 11161  // SetOperator sets the Operator field's value.
 11162  func (s *PlatformFilter) SetOperator(v string) *PlatformFilter {
 11163  	s.Operator = &v
 11164  	return s
 11165  }
 11166  
 11167  // SetType sets the Type field's value.
 11168  func (s *PlatformFilter) SetType(v string) *PlatformFilter {
 11169  	s.Type = &v
 11170  	return s
 11171  }
 11172  
 11173  // SetValues sets the Values field's value.
 11174  func (s *PlatformFilter) SetValues(v []*string) *PlatformFilter {
 11175  	s.Values = v
 11176  	return s
 11177  }
 11178  
 11179  // A framework supported by the platform.
 11180  type PlatformFramework struct {
 11181  	_ struct{} `type:"structure"`
 11182  
 11183  	// The name of the framework.
 11184  	Name *string `type:"string"`
 11185  
 11186  	// The version of the framework.
 11187  	Version *string `type:"string"`
 11188  }
 11189  
 11190  // String returns the string representation.
 11191  //
 11192  // API parameter values that are decorated as "sensitive" in the API will not
 11193  // be included in the string output. The member name will be present, but the
 11194  // value will be replaced with "sensitive".
 11195  func (s PlatformFramework) String() string {
 11196  	return awsutil.Prettify(s)
 11197  }
 11198  
 11199  // GoString returns the string representation.
 11200  //
 11201  // API parameter values that are decorated as "sensitive" in the API will not
 11202  // be included in the string output. The member name will be present, but the
 11203  // value will be replaced with "sensitive".
 11204  func (s PlatformFramework) GoString() string {
 11205  	return s.String()
 11206  }
 11207  
 11208  // SetName sets the Name field's value.
 11209  func (s *PlatformFramework) SetName(v string) *PlatformFramework {
 11210  	s.Name = &v
 11211  	return s
 11212  }
 11213  
 11214  // SetVersion sets the Version field's value.
 11215  func (s *PlatformFramework) SetVersion(v string) *PlatformFramework {
 11216  	s.Version = &v
 11217  	return s
 11218  }
 11219  
 11220  // A programming language supported by the platform.
 11221  type PlatformProgrammingLanguage struct {
 11222  	_ struct{} `type:"structure"`
 11223  
 11224  	// The name of the programming language.
 11225  	Name *string `type:"string"`
 11226  
 11227  	// The version of the programming language.
 11228  	Version *string `type:"string"`
 11229  }
 11230  
 11231  // String returns the string representation.
 11232  //
 11233  // API parameter values that are decorated as "sensitive" in the API will not
 11234  // be included in the string output. The member name will be present, but the
 11235  // value will be replaced with "sensitive".
 11236  func (s PlatformProgrammingLanguage) String() string {
 11237  	return awsutil.Prettify(s)
 11238  }
 11239  
 11240  // GoString returns the string representation.
 11241  //
 11242  // API parameter values that are decorated as "sensitive" in the API will not
 11243  // be included in the string output. The member name will be present, but the
 11244  // value will be replaced with "sensitive".
 11245  func (s PlatformProgrammingLanguage) GoString() string {
 11246  	return s.String()
 11247  }
 11248  
 11249  // SetName sets the Name field's value.
 11250  func (s *PlatformProgrammingLanguage) SetName(v string) *PlatformProgrammingLanguage {
 11251  	s.Name = &v
 11252  	return s
 11253  }
 11254  
 11255  // SetVersion sets the Version field's value.
 11256  func (s *PlatformProgrammingLanguage) SetVersion(v string) *PlatformProgrammingLanguage {
 11257  	s.Version = &v
 11258  	return s
 11259  }
 11260  
 11261  // Summary information about a platform version.
 11262  type PlatformSummary struct {
 11263  	_ struct{} `type:"structure"`
 11264  
 11265  	// The operating system used by the platform version.
 11266  	OperatingSystemName *string `type:"string"`
 11267  
 11268  	// The version of the operating system used by the platform version.
 11269  	OperatingSystemVersion *string `type:"string"`
 11270  
 11271  	// The ARN of the platform version.
 11272  	PlatformArn *string `type:"string"`
 11273  
 11274  	// The state of the platform version's branch in its lifecycle.
 11275  	//
 11276  	// Possible values: beta | supported | deprecated | retired
 11277  	PlatformBranchLifecycleState *string `type:"string"`
 11278  
 11279  	// The platform branch to which the platform version belongs.
 11280  	PlatformBranchName *string `type:"string"`
 11281  
 11282  	// The category of platform version.
 11283  	PlatformCategory *string `type:"string"`
 11284  
 11285  	// The state of the platform version in its lifecycle.
 11286  	//
 11287  	// Possible values: recommended | empty
 11288  	//
 11289  	// If an empty value is returned, the platform version is supported but isn't
 11290  	// the recommended one for its branch.
 11291  	PlatformLifecycleState *string `type:"string"`
 11292  
 11293  	// The AWS account ID of the person who created the platform version.
 11294  	PlatformOwner *string `type:"string"`
 11295  
 11296  	// The status of the platform version. You can create an environment from the
 11297  	// platform version once it is ready.
 11298  	PlatformStatus *string `type:"string" enum:"PlatformStatus"`
 11299  
 11300  	// The version string of the platform version.
 11301  	PlatformVersion *string `type:"string"`
 11302  
 11303  	// The additions associated with the platform version.
 11304  	SupportedAddonList []*string `type:"list"`
 11305  
 11306  	// The tiers in which the platform version runs.
 11307  	SupportedTierList []*string `type:"list"`
 11308  }
 11309  
 11310  // String returns the string representation.
 11311  //
 11312  // API parameter values that are decorated as "sensitive" in the API will not
 11313  // be included in the string output. The member name will be present, but the
 11314  // value will be replaced with "sensitive".
 11315  func (s PlatformSummary) String() string {
 11316  	return awsutil.Prettify(s)
 11317  }
 11318  
 11319  // GoString returns the string representation.
 11320  //
 11321  // API parameter values that are decorated as "sensitive" in the API will not
 11322  // be included in the string output. The member name will be present, but the
 11323  // value will be replaced with "sensitive".
 11324  func (s PlatformSummary) GoString() string {
 11325  	return s.String()
 11326  }
 11327  
 11328  // SetOperatingSystemName sets the OperatingSystemName field's value.
 11329  func (s *PlatformSummary) SetOperatingSystemName(v string) *PlatformSummary {
 11330  	s.OperatingSystemName = &v
 11331  	return s
 11332  }
 11333  
 11334  // SetOperatingSystemVersion sets the OperatingSystemVersion field's value.
 11335  func (s *PlatformSummary) SetOperatingSystemVersion(v string) *PlatformSummary {
 11336  	s.OperatingSystemVersion = &v
 11337  	return s
 11338  }
 11339  
 11340  // SetPlatformArn sets the PlatformArn field's value.
 11341  func (s *PlatformSummary) SetPlatformArn(v string) *PlatformSummary {
 11342  	s.PlatformArn = &v
 11343  	return s
 11344  }
 11345  
 11346  // SetPlatformBranchLifecycleState sets the PlatformBranchLifecycleState field's value.
 11347  func (s *PlatformSummary) SetPlatformBranchLifecycleState(v string) *PlatformSummary {
 11348  	s.PlatformBranchLifecycleState = &v
 11349  	return s
 11350  }
 11351  
 11352  // SetPlatformBranchName sets the PlatformBranchName field's value.
 11353  func (s *PlatformSummary) SetPlatformBranchName(v string) *PlatformSummary {
 11354  	s.PlatformBranchName = &v
 11355  	return s
 11356  }
 11357  
 11358  // SetPlatformCategory sets the PlatformCategory field's value.
 11359  func (s *PlatformSummary) SetPlatformCategory(v string) *PlatformSummary {
 11360  	s.PlatformCategory = &v
 11361  	return s
 11362  }
 11363  
 11364  // SetPlatformLifecycleState sets the PlatformLifecycleState field's value.
 11365  func (s *PlatformSummary) SetPlatformLifecycleState(v string) *PlatformSummary {
 11366  	s.PlatformLifecycleState = &v
 11367  	return s
 11368  }
 11369  
 11370  // SetPlatformOwner sets the PlatformOwner field's value.
 11371  func (s *PlatformSummary) SetPlatformOwner(v string) *PlatformSummary {
 11372  	s.PlatformOwner = &v
 11373  	return s
 11374  }
 11375  
 11376  // SetPlatformStatus sets the PlatformStatus field's value.
 11377  func (s *PlatformSummary) SetPlatformStatus(v string) *PlatformSummary {
 11378  	s.PlatformStatus = &v
 11379  	return s
 11380  }
 11381  
 11382  // SetPlatformVersion sets the PlatformVersion field's value.
 11383  func (s *PlatformSummary) SetPlatformVersion(v string) *PlatformSummary {
 11384  	s.PlatformVersion = &v
 11385  	return s
 11386  }
 11387  
 11388  // SetSupportedAddonList sets the SupportedAddonList field's value.
 11389  func (s *PlatformSummary) SetSupportedAddonList(v []*string) *PlatformSummary {
 11390  	s.SupportedAddonList = v
 11391  	return s
 11392  }
 11393  
 11394  // SetSupportedTierList sets the SupportedTierList field's value.
 11395  func (s *PlatformSummary) SetSupportedTierList(v []*string) *PlatformSummary {
 11396  	s.SupportedTierList = v
 11397  	return s
 11398  }
 11399  
 11400  // Describes a queue.
 11401  type Queue struct {
 11402  	_ struct{} `type:"structure"`
 11403  
 11404  	// The name of the queue.
 11405  	Name *string `type:"string"`
 11406  
 11407  	// The URL of the queue.
 11408  	URL *string `type:"string"`
 11409  }
 11410  
 11411  // String returns the string representation.
 11412  //
 11413  // API parameter values that are decorated as "sensitive" in the API will not
 11414  // be included in the string output. The member name will be present, but the
 11415  // value will be replaced with "sensitive".
 11416  func (s Queue) String() string {
 11417  	return awsutil.Prettify(s)
 11418  }
 11419  
 11420  // GoString returns the string representation.
 11421  //
 11422  // API parameter values that are decorated as "sensitive" in the API will not
 11423  // be included in the string output. The member name will be present, but the
 11424  // value will be replaced with "sensitive".
 11425  func (s Queue) GoString() string {
 11426  	return s.String()
 11427  }
 11428  
 11429  // SetName sets the Name field's value.
 11430  func (s *Queue) SetName(v string) *Queue {
 11431  	s.Name = &v
 11432  	return s
 11433  }
 11434  
 11435  // SetURL sets the URL field's value.
 11436  func (s *Queue) SetURL(v string) *Queue {
 11437  	s.URL = &v
 11438  	return s
 11439  }
 11440  
 11441  type RebuildEnvironmentInput struct {
 11442  	_ struct{} `type:"structure"`
 11443  
 11444  	// The ID of the environment to rebuild.
 11445  	//
 11446  	// Condition: You must specify either this or an EnvironmentName, or both. If
 11447  	// you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter
 11448  	// error.
 11449  	EnvironmentId *string `type:"string"`
 11450  
 11451  	// The name of the environment to rebuild.
 11452  	//
 11453  	// Condition: You must specify either this or an EnvironmentId, or both. If
 11454  	// you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter
 11455  	// error.
 11456  	EnvironmentName *string `min:"4" type:"string"`
 11457  }
 11458  
 11459  // String returns the string representation.
 11460  //
 11461  // API parameter values that are decorated as "sensitive" in the API will not
 11462  // be included in the string output. The member name will be present, but the
 11463  // value will be replaced with "sensitive".
 11464  func (s RebuildEnvironmentInput) String() string {
 11465  	return awsutil.Prettify(s)
 11466  }
 11467  
 11468  // GoString returns the string representation.
 11469  //
 11470  // API parameter values that are decorated as "sensitive" in the API will not
 11471  // be included in the string output. The member name will be present, but the
 11472  // value will be replaced with "sensitive".
 11473  func (s RebuildEnvironmentInput) GoString() string {
 11474  	return s.String()
 11475  }
 11476  
 11477  // Validate inspects the fields of the type to determine if they are valid.
 11478  func (s *RebuildEnvironmentInput) Validate() error {
 11479  	invalidParams := request.ErrInvalidParams{Context: "RebuildEnvironmentInput"}
 11480  	if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 {
 11481  		invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4))
 11482  	}
 11483  
 11484  	if invalidParams.Len() > 0 {
 11485  		return invalidParams
 11486  	}
 11487  	return nil
 11488  }
 11489  
 11490  // SetEnvironmentId sets the EnvironmentId field's value.
 11491  func (s *RebuildEnvironmentInput) SetEnvironmentId(v string) *RebuildEnvironmentInput {
 11492  	s.EnvironmentId = &v
 11493  	return s
 11494  }
 11495  
 11496  // SetEnvironmentName sets the EnvironmentName field's value.
 11497  func (s *RebuildEnvironmentInput) SetEnvironmentName(v string) *RebuildEnvironmentInput {
 11498  	s.EnvironmentName = &v
 11499  	return s
 11500  }
 11501  
 11502  type RebuildEnvironmentOutput struct {
 11503  	_ struct{} `type:"structure"`
 11504  }
 11505  
 11506  // String returns the string representation.
 11507  //
 11508  // API parameter values that are decorated as "sensitive" in the API will not
 11509  // be included in the string output. The member name will be present, but the
 11510  // value will be replaced with "sensitive".
 11511  func (s RebuildEnvironmentOutput) String() string {
 11512  	return awsutil.Prettify(s)
 11513  }
 11514  
 11515  // GoString returns the string representation.
 11516  //
 11517  // API parameter values that are decorated as "sensitive" in the API will not
 11518  // be included in the string output. The member name will be present, but the
 11519  // value will be replaced with "sensitive".
 11520  func (s RebuildEnvironmentOutput) GoString() string {
 11521  	return s.String()
 11522  }
 11523  
 11524  // Request to retrieve logs from an environment and store them in your Elastic
 11525  // Beanstalk storage bucket.
 11526  type RequestEnvironmentInfoInput struct {
 11527  	_ struct{} `type:"structure"`
 11528  
 11529  	// The ID of the environment of the requested data.
 11530  	//
 11531  	// If no such environment is found, RequestEnvironmentInfo returns an InvalidParameterValue
 11532  	// error.
 11533  	//
 11534  	// Condition: You must specify either this or an EnvironmentName, or both. If
 11535  	// you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter
 11536  	// error.
 11537  	EnvironmentId *string `type:"string"`
 11538  
 11539  	// The name of the environment of the requested data.
 11540  	//
 11541  	// If no such environment is found, RequestEnvironmentInfo returns an InvalidParameterValue
 11542  	// error.
 11543  	//
 11544  	// Condition: You must specify either this or an EnvironmentId, or both. If
 11545  	// you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter
 11546  	// error.
 11547  	EnvironmentName *string `min:"4" type:"string"`
 11548  
 11549  	// The type of information to request.
 11550  	//
 11551  	// InfoType is a required field
 11552  	InfoType *string `type:"string" required:"true" enum:"EnvironmentInfoType"`
 11553  }
 11554  
 11555  // String returns the string representation.
 11556  //
 11557  // API parameter values that are decorated as "sensitive" in the API will not
 11558  // be included in the string output. The member name will be present, but the
 11559  // value will be replaced with "sensitive".
 11560  func (s RequestEnvironmentInfoInput) String() string {
 11561  	return awsutil.Prettify(s)
 11562  }
 11563  
 11564  // GoString returns the string representation.
 11565  //
 11566  // API parameter values that are decorated as "sensitive" in the API will not
 11567  // be included in the string output. The member name will be present, but the
 11568  // value will be replaced with "sensitive".
 11569  func (s RequestEnvironmentInfoInput) GoString() string {
 11570  	return s.String()
 11571  }
 11572  
 11573  // Validate inspects the fields of the type to determine if they are valid.
 11574  func (s *RequestEnvironmentInfoInput) Validate() error {
 11575  	invalidParams := request.ErrInvalidParams{Context: "RequestEnvironmentInfoInput"}
 11576  	if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 {
 11577  		invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4))
 11578  	}
 11579  	if s.InfoType == nil {
 11580  		invalidParams.Add(request.NewErrParamRequired("InfoType"))
 11581  	}
 11582  
 11583  	if invalidParams.Len() > 0 {
 11584  		return invalidParams
 11585  	}
 11586  	return nil
 11587  }
 11588  
 11589  // SetEnvironmentId sets the EnvironmentId field's value.
 11590  func (s *RequestEnvironmentInfoInput) SetEnvironmentId(v string) *RequestEnvironmentInfoInput {
 11591  	s.EnvironmentId = &v
 11592  	return s
 11593  }
 11594  
 11595  // SetEnvironmentName sets the EnvironmentName field's value.
 11596  func (s *RequestEnvironmentInfoInput) SetEnvironmentName(v string) *RequestEnvironmentInfoInput {
 11597  	s.EnvironmentName = &v
 11598  	return s
 11599  }
 11600  
 11601  // SetInfoType sets the InfoType field's value.
 11602  func (s *RequestEnvironmentInfoInput) SetInfoType(v string) *RequestEnvironmentInfoInput {
 11603  	s.InfoType = &v
 11604  	return s
 11605  }
 11606  
 11607  type RequestEnvironmentInfoOutput struct {
 11608  	_ struct{} `type:"structure"`
 11609  }
 11610  
 11611  // String returns the string representation.
 11612  //
 11613  // API parameter values that are decorated as "sensitive" in the API will not
 11614  // be included in the string output. The member name will be present, but the
 11615  // value will be replaced with "sensitive".
 11616  func (s RequestEnvironmentInfoOutput) String() string {
 11617  	return awsutil.Prettify(s)
 11618  }
 11619  
 11620  // GoString returns the string representation.
 11621  //
 11622  // API parameter values that are decorated as "sensitive" in the API will not
 11623  // be included in the string output. The member name will be present, but the
 11624  // value will be replaced with "sensitive".
 11625  func (s RequestEnvironmentInfoOutput) GoString() string {
 11626  	return s.String()
 11627  }
 11628  
 11629  // The AWS Elastic Beanstalk quota information for a single resource type in
 11630  // an AWS account. It reflects the resource's limits for this account.
 11631  type ResourceQuota struct {
 11632  	_ struct{} `type:"structure"`
 11633  
 11634  	// The maximum number of instances of this Elastic Beanstalk resource type that
 11635  	// an AWS account can use.
 11636  	Maximum *int64 `type:"integer"`
 11637  }
 11638  
 11639  // String returns the string representation.
 11640  //
 11641  // API parameter values that are decorated as "sensitive" in the API will not
 11642  // be included in the string output. The member name will be present, but the
 11643  // value will be replaced with "sensitive".
 11644  func (s ResourceQuota) String() string {
 11645  	return awsutil.Prettify(s)
 11646  }
 11647  
 11648  // GoString returns the string representation.
 11649  //
 11650  // API parameter values that are decorated as "sensitive" in the API will not
 11651  // be included in the string output. The member name will be present, but the
 11652  // value will be replaced with "sensitive".
 11653  func (s ResourceQuota) GoString() string {
 11654  	return s.String()
 11655  }
 11656  
 11657  // SetMaximum sets the Maximum field's value.
 11658  func (s *ResourceQuota) SetMaximum(v int64) *ResourceQuota {
 11659  	s.Maximum = &v
 11660  	return s
 11661  }
 11662  
 11663  // A set of per-resource AWS Elastic Beanstalk quotas associated with an AWS
 11664  // account. They reflect Elastic Beanstalk resource limits for this account.
 11665  type ResourceQuotas struct {
 11666  	_ struct{} `type:"structure"`
 11667  
 11668  	// The quota for applications in the AWS account.
 11669  	ApplicationQuota *ResourceQuota `type:"structure"`
 11670  
 11671  	// The quota for application versions in the AWS account.
 11672  	ApplicationVersionQuota *ResourceQuota `type:"structure"`
 11673  
 11674  	// The quota for configuration templates in the AWS account.
 11675  	ConfigurationTemplateQuota *ResourceQuota `type:"structure"`
 11676  
 11677  	// The quota for custom platforms in the AWS account.
 11678  	CustomPlatformQuota *ResourceQuota `type:"structure"`
 11679  
 11680  	// The quota for environments in the AWS account.
 11681  	EnvironmentQuota *ResourceQuota `type:"structure"`
 11682  }
 11683  
 11684  // String returns the string representation.
 11685  //
 11686  // API parameter values that are decorated as "sensitive" in the API will not
 11687  // be included in the string output. The member name will be present, but the
 11688  // value will be replaced with "sensitive".
 11689  func (s ResourceQuotas) String() string {
 11690  	return awsutil.Prettify(s)
 11691  }
 11692  
 11693  // GoString returns the string representation.
 11694  //
 11695  // API parameter values that are decorated as "sensitive" in the API will not
 11696  // be included in the string output. The member name will be present, but the
 11697  // value will be replaced with "sensitive".
 11698  func (s ResourceQuotas) GoString() string {
 11699  	return s.String()
 11700  }
 11701  
 11702  // SetApplicationQuota sets the ApplicationQuota field's value.
 11703  func (s *ResourceQuotas) SetApplicationQuota(v *ResourceQuota) *ResourceQuotas {
 11704  	s.ApplicationQuota = v
 11705  	return s
 11706  }
 11707  
 11708  // SetApplicationVersionQuota sets the ApplicationVersionQuota field's value.
 11709  func (s *ResourceQuotas) SetApplicationVersionQuota(v *ResourceQuota) *ResourceQuotas {
 11710  	s.ApplicationVersionQuota = v
 11711  	return s
 11712  }
 11713  
 11714  // SetConfigurationTemplateQuota sets the ConfigurationTemplateQuota field's value.
 11715  func (s *ResourceQuotas) SetConfigurationTemplateQuota(v *ResourceQuota) *ResourceQuotas {
 11716  	s.ConfigurationTemplateQuota = v
 11717  	return s
 11718  }
 11719  
 11720  // SetCustomPlatformQuota sets the CustomPlatformQuota field's value.
 11721  func (s *ResourceQuotas) SetCustomPlatformQuota(v *ResourceQuota) *ResourceQuotas {
 11722  	s.CustomPlatformQuota = v
 11723  	return s
 11724  }
 11725  
 11726  // SetEnvironmentQuota sets the EnvironmentQuota field's value.
 11727  func (s *ResourceQuotas) SetEnvironmentQuota(v *ResourceQuota) *ResourceQuotas {
 11728  	s.EnvironmentQuota = v
 11729  	return s
 11730  }
 11731  
 11732  type RestartAppServerInput struct {
 11733  	_ struct{} `type:"structure"`
 11734  
 11735  	// The ID of the environment to restart the server for.
 11736  	//
 11737  	// Condition: You must specify either this or an EnvironmentName, or both. If
 11738  	// you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter
 11739  	// error.
 11740  	EnvironmentId *string `type:"string"`
 11741  
 11742  	// The name of the environment to restart the server for.
 11743  	//
 11744  	// Condition: You must specify either this or an EnvironmentId, or both. If
 11745  	// you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter
 11746  	// error.
 11747  	EnvironmentName *string `min:"4" type:"string"`
 11748  }
 11749  
 11750  // String returns the string representation.
 11751  //
 11752  // API parameter values that are decorated as "sensitive" in the API will not
 11753  // be included in the string output. The member name will be present, but the
 11754  // value will be replaced with "sensitive".
 11755  func (s RestartAppServerInput) String() string {
 11756  	return awsutil.Prettify(s)
 11757  }
 11758  
 11759  // GoString returns the string representation.
 11760  //
 11761  // API parameter values that are decorated as "sensitive" in the API will not
 11762  // be included in the string output. The member name will be present, but the
 11763  // value will be replaced with "sensitive".
 11764  func (s RestartAppServerInput) GoString() string {
 11765  	return s.String()
 11766  }
 11767  
 11768  // Validate inspects the fields of the type to determine if they are valid.
 11769  func (s *RestartAppServerInput) Validate() error {
 11770  	invalidParams := request.ErrInvalidParams{Context: "RestartAppServerInput"}
 11771  	if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 {
 11772  		invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4))
 11773  	}
 11774  
 11775  	if invalidParams.Len() > 0 {
 11776  		return invalidParams
 11777  	}
 11778  	return nil
 11779  }
 11780  
 11781  // SetEnvironmentId sets the EnvironmentId field's value.
 11782  func (s *RestartAppServerInput) SetEnvironmentId(v string) *RestartAppServerInput {
 11783  	s.EnvironmentId = &v
 11784  	return s
 11785  }
 11786  
 11787  // SetEnvironmentName sets the EnvironmentName field's value.
 11788  func (s *RestartAppServerInput) SetEnvironmentName(v string) *RestartAppServerInput {
 11789  	s.EnvironmentName = &v
 11790  	return s
 11791  }
 11792  
 11793  type RestartAppServerOutput struct {
 11794  	_ struct{} `type:"structure"`
 11795  }
 11796  
 11797  // String returns the string representation.
 11798  //
 11799  // API parameter values that are decorated as "sensitive" in the API will not
 11800  // be included in the string output. The member name will be present, but the
 11801  // value will be replaced with "sensitive".
 11802  func (s RestartAppServerOutput) String() string {
 11803  	return awsutil.Prettify(s)
 11804  }
 11805  
 11806  // GoString returns the string representation.
 11807  //
 11808  // API parameter values that are decorated as "sensitive" in the API will not
 11809  // be included in the string output. The member name will be present, but the
 11810  // value will be replaced with "sensitive".
 11811  func (s RestartAppServerOutput) GoString() string {
 11812  	return s.String()
 11813  }
 11814  
 11815  // Request to download logs retrieved with RequestEnvironmentInfo.
 11816  type RetrieveEnvironmentInfoInput struct {
 11817  	_ struct{} `type:"structure"`
 11818  
 11819  	// The ID of the data's environment.
 11820  	//
 11821  	// If no such environment is found, returns an InvalidParameterValue error.
 11822  	//
 11823  	// Condition: You must specify either this or an EnvironmentName, or both. If
 11824  	// you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter
 11825  	// error.
 11826  	EnvironmentId *string `type:"string"`
 11827  
 11828  	// The name of the data's environment.
 11829  	//
 11830  	// If no such environment is found, returns an InvalidParameterValue error.
 11831  	//
 11832  	// Condition: You must specify either this or an EnvironmentId, or both. If
 11833  	// you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter
 11834  	// error.
 11835  	EnvironmentName *string `min:"4" type:"string"`
 11836  
 11837  	// The type of information to retrieve.
 11838  	//
 11839  	// InfoType is a required field
 11840  	InfoType *string `type:"string" required:"true" enum:"EnvironmentInfoType"`
 11841  }
 11842  
 11843  // String returns the string representation.
 11844  //
 11845  // API parameter values that are decorated as "sensitive" in the API will not
 11846  // be included in the string output. The member name will be present, but the
 11847  // value will be replaced with "sensitive".
 11848  func (s RetrieveEnvironmentInfoInput) String() string {
 11849  	return awsutil.Prettify(s)
 11850  }
 11851  
 11852  // GoString returns the string representation.
 11853  //
 11854  // API parameter values that are decorated as "sensitive" in the API will not
 11855  // be included in the string output. The member name will be present, but the
 11856  // value will be replaced with "sensitive".
 11857  func (s RetrieveEnvironmentInfoInput) GoString() string {
 11858  	return s.String()
 11859  }
 11860  
 11861  // Validate inspects the fields of the type to determine if they are valid.
 11862  func (s *RetrieveEnvironmentInfoInput) Validate() error {
 11863  	invalidParams := request.ErrInvalidParams{Context: "RetrieveEnvironmentInfoInput"}
 11864  	if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 {
 11865  		invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4))
 11866  	}
 11867  	if s.InfoType == nil {
 11868  		invalidParams.Add(request.NewErrParamRequired("InfoType"))
 11869  	}
 11870  
 11871  	if invalidParams.Len() > 0 {
 11872  		return invalidParams
 11873  	}
 11874  	return nil
 11875  }
 11876  
 11877  // SetEnvironmentId sets the EnvironmentId field's value.
 11878  func (s *RetrieveEnvironmentInfoInput) SetEnvironmentId(v string) *RetrieveEnvironmentInfoInput {
 11879  	s.EnvironmentId = &v
 11880  	return s
 11881  }
 11882  
 11883  // SetEnvironmentName sets the EnvironmentName field's value.
 11884  func (s *RetrieveEnvironmentInfoInput) SetEnvironmentName(v string) *RetrieveEnvironmentInfoInput {
 11885  	s.EnvironmentName = &v
 11886  	return s
 11887  }
 11888  
 11889  // SetInfoType sets the InfoType field's value.
 11890  func (s *RetrieveEnvironmentInfoInput) SetInfoType(v string) *RetrieveEnvironmentInfoInput {
 11891  	s.InfoType = &v
 11892  	return s
 11893  }
 11894  
 11895  // Result message containing a description of the requested environment info.
 11896  type RetrieveEnvironmentInfoOutput struct {
 11897  	_ struct{} `type:"structure"`
 11898  
 11899  	// The EnvironmentInfoDescription of the environment.
 11900  	EnvironmentInfo []*EnvironmentInfoDescription `type:"list"`
 11901  }
 11902  
 11903  // String returns the string representation.
 11904  //
 11905  // API parameter values that are decorated as "sensitive" in the API will not
 11906  // be included in the string output. The member name will be present, but the
 11907  // value will be replaced with "sensitive".
 11908  func (s RetrieveEnvironmentInfoOutput) String() string {
 11909  	return awsutil.Prettify(s)
 11910  }
 11911  
 11912  // GoString returns the string representation.
 11913  //
 11914  // API parameter values that are decorated as "sensitive" in the API will not
 11915  // be included in the string output. The member name will be present, but the
 11916  // value will be replaced with "sensitive".
 11917  func (s RetrieveEnvironmentInfoOutput) GoString() string {
 11918  	return s.String()
 11919  }
 11920  
 11921  // SetEnvironmentInfo sets the EnvironmentInfo field's value.
 11922  func (s *RetrieveEnvironmentInfoOutput) SetEnvironmentInfo(v []*EnvironmentInfoDescription) *RetrieveEnvironmentInfoOutput {
 11923  	s.EnvironmentInfo = v
 11924  	return s
 11925  }
 11926  
 11927  // The bucket and key of an item stored in Amazon S3.
 11928  type S3Location struct {
 11929  	_ struct{} `type:"structure"`
 11930  
 11931  	// The Amazon S3 bucket where the data is located.
 11932  	S3Bucket *string `type:"string"`
 11933  
 11934  	// The Amazon S3 key where the data is located.
 11935  	S3Key *string `type:"string"`
 11936  }
 11937  
 11938  // String returns the string representation.
 11939  //
 11940  // API parameter values that are decorated as "sensitive" in the API will not
 11941  // be included in the string output. The member name will be present, but the
 11942  // value will be replaced with "sensitive".
 11943  func (s S3Location) String() string {
 11944  	return awsutil.Prettify(s)
 11945  }
 11946  
 11947  // GoString returns the string representation.
 11948  //
 11949  // API parameter values that are decorated as "sensitive" in the API will not
 11950  // be included in the string output. The member name will be present, but the
 11951  // value will be replaced with "sensitive".
 11952  func (s S3Location) GoString() string {
 11953  	return s.String()
 11954  }
 11955  
 11956  // SetS3Bucket sets the S3Bucket field's value.
 11957  func (s *S3Location) SetS3Bucket(v string) *S3Location {
 11958  	s.S3Bucket = &v
 11959  	return s
 11960  }
 11961  
 11962  // SetS3Key sets the S3Key field's value.
 11963  func (s *S3Location) SetS3Key(v string) *S3Location {
 11964  	s.S3Key = &v
 11965  	return s
 11966  }
 11967  
 11968  // Describes criteria to restrict a list of results.
 11969  //
 11970  // For operators that apply a single value to the attribute, the filter is evaluated
 11971  // as follows: Attribute Operator Values[1]
 11972  //
 11973  // Some operators, e.g. in, can apply multiple values. In this case, the filter
 11974  // is evaluated as a logical union (OR) of applications of the operator to the
 11975  // attribute with each one of the values: (Attribute Operator Values[1]) OR
 11976  // (Attribute Operator Values[2]) OR ...
 11977  //
 11978  // The valid values for attributes of SearchFilter depend on the API action.
 11979  // For valid values, see the reference page for the API action you're calling
 11980  // that takes a SearchFilter parameter.
 11981  type SearchFilter struct {
 11982  	_ struct{} `type:"structure"`
 11983  
 11984  	// The result attribute to which the filter values are applied. Valid values
 11985  	// vary by API action.
 11986  	Attribute *string `type:"string"`
 11987  
 11988  	// The operator to apply to the Attribute with each of the Values. Valid values
 11989  	// vary by Attribute.
 11990  	Operator *string `type:"string"`
 11991  
 11992  	// The list of values applied to the Attribute and Operator attributes. Number
 11993  	// of values and valid values vary by Attribute.
 11994  	Values []*string `type:"list"`
 11995  }
 11996  
 11997  // String returns the string representation.
 11998  //
 11999  // API parameter values that are decorated as "sensitive" in the API will not
 12000  // be included in the string output. The member name will be present, but the
 12001  // value will be replaced with "sensitive".
 12002  func (s SearchFilter) String() string {
 12003  	return awsutil.Prettify(s)
 12004  }
 12005  
 12006  // GoString returns the string representation.
 12007  //
 12008  // API parameter values that are decorated as "sensitive" in the API will not
 12009  // be included in the string output. The member name will be present, but the
 12010  // value will be replaced with "sensitive".
 12011  func (s SearchFilter) GoString() string {
 12012  	return s.String()
 12013  }
 12014  
 12015  // SetAttribute sets the Attribute field's value.
 12016  func (s *SearchFilter) SetAttribute(v string) *SearchFilter {
 12017  	s.Attribute = &v
 12018  	return s
 12019  }
 12020  
 12021  // SetOperator sets the Operator field's value.
 12022  func (s *SearchFilter) SetOperator(v string) *SearchFilter {
 12023  	s.Operator = &v
 12024  	return s
 12025  }
 12026  
 12027  // SetValues sets the Values field's value.
 12028  func (s *SearchFilter) SetValues(v []*string) *SearchFilter {
 12029  	s.Values = v
 12030  	return s
 12031  }
 12032  
 12033  // Detailed health information about an Amazon EC2 instance in your Elastic
 12034  // Beanstalk environment.
 12035  type SingleInstanceHealth struct {
 12036  	_ struct{} `type:"structure"`
 12037  
 12038  	// Request metrics from your application.
 12039  	ApplicationMetrics *ApplicationMetrics `type:"structure"`
 12040  
 12041  	// The availability zone in which the instance runs.
 12042  	AvailabilityZone *string `type:"string"`
 12043  
 12044  	// Represents the causes, which provide more information about the current health
 12045  	// status.
 12046  	Causes []*string `type:"list"`
 12047  
 12048  	// Represents the color indicator that gives you information about the health
 12049  	// of the EC2 instance. For more information, see Health Colors and Statuses
 12050  	// (https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/health-enhanced-status.html).
 12051  	Color *string `type:"string"`
 12052  
 12053  	// Information about the most recent deployment to an instance.
 12054  	Deployment *Deployment `type:"structure"`
 12055  
 12056  	// Returns the health status of the specified instance. For more information,
 12057  	// see Health Colors and Statuses (https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/health-enhanced-status.html).
 12058  	HealthStatus *string `type:"string"`
 12059  
 12060  	// The ID of the Amazon EC2 instance.
 12061  	InstanceId *string `min:"1" type:"string"`
 12062  
 12063  	// The instance's type.
 12064  	InstanceType *string `type:"string"`
 12065  
 12066  	// The time at which the EC2 instance was launched.
 12067  	LaunchedAt *time.Time `type:"timestamp"`
 12068  
 12069  	// Operating system metrics from the instance.
 12070  	System *SystemStatus `type:"structure"`
 12071  }
 12072  
 12073  // String returns the string representation.
 12074  //
 12075  // API parameter values that are decorated as "sensitive" in the API will not
 12076  // be included in the string output. The member name will be present, but the
 12077  // value will be replaced with "sensitive".
 12078  func (s SingleInstanceHealth) String() string {
 12079  	return awsutil.Prettify(s)
 12080  }
 12081  
 12082  // GoString returns the string representation.
 12083  //
 12084  // API parameter values that are decorated as "sensitive" in the API will not
 12085  // be included in the string output. The member name will be present, but the
 12086  // value will be replaced with "sensitive".
 12087  func (s SingleInstanceHealth) GoString() string {
 12088  	return s.String()
 12089  }
 12090  
 12091  // SetApplicationMetrics sets the ApplicationMetrics field's value.
 12092  func (s *SingleInstanceHealth) SetApplicationMetrics(v *ApplicationMetrics) *SingleInstanceHealth {
 12093  	s.ApplicationMetrics = v
 12094  	return s
 12095  }
 12096  
 12097  // SetAvailabilityZone sets the AvailabilityZone field's value.
 12098  func (s *SingleInstanceHealth) SetAvailabilityZone(v string) *SingleInstanceHealth {
 12099  	s.AvailabilityZone = &v
 12100  	return s
 12101  }
 12102  
 12103  // SetCauses sets the Causes field's value.
 12104  func (s *SingleInstanceHealth) SetCauses(v []*string) *SingleInstanceHealth {
 12105  	s.Causes = v
 12106  	return s
 12107  }
 12108  
 12109  // SetColor sets the Color field's value.
 12110  func (s *SingleInstanceHealth) SetColor(v string) *SingleInstanceHealth {
 12111  	s.Color = &v
 12112  	return s
 12113  }
 12114  
 12115  // SetDeployment sets the Deployment field's value.
 12116  func (s *SingleInstanceHealth) SetDeployment(v *Deployment) *SingleInstanceHealth {
 12117  	s.Deployment = v
 12118  	return s
 12119  }
 12120  
 12121  // SetHealthStatus sets the HealthStatus field's value.
 12122  func (s *SingleInstanceHealth) SetHealthStatus(v string) *SingleInstanceHealth {
 12123  	s.HealthStatus = &v
 12124  	return s
 12125  }
 12126  
 12127  // SetInstanceId sets the InstanceId field's value.
 12128  func (s *SingleInstanceHealth) SetInstanceId(v string) *SingleInstanceHealth {
 12129  	s.InstanceId = &v
 12130  	return s
 12131  }
 12132  
 12133  // SetInstanceType sets the InstanceType field's value.
 12134  func (s *SingleInstanceHealth) SetInstanceType(v string) *SingleInstanceHealth {
 12135  	s.InstanceType = &v
 12136  	return s
 12137  }
 12138  
 12139  // SetLaunchedAt sets the LaunchedAt field's value.
 12140  func (s *SingleInstanceHealth) SetLaunchedAt(v time.Time) *SingleInstanceHealth {
 12141  	s.LaunchedAt = &v
 12142  	return s
 12143  }
 12144  
 12145  // SetSystem sets the System field's value.
 12146  func (s *SingleInstanceHealth) SetSystem(v *SystemStatus) *SingleInstanceHealth {
 12147  	s.System = v
 12148  	return s
 12149  }
 12150  
 12151  // Describes the solution stack.
 12152  type SolutionStackDescription struct {
 12153  	_ struct{} `type:"structure"`
 12154  
 12155  	// The permitted file types allowed for a solution stack.
 12156  	PermittedFileTypes []*string `type:"list"`
 12157  
 12158  	// The name of the solution stack.
 12159  	SolutionStackName *string `type:"string"`
 12160  }
 12161  
 12162  // String returns the string representation.
 12163  //
 12164  // API parameter values that are decorated as "sensitive" in the API will not
 12165  // be included in the string output. The member name will be present, but the
 12166  // value will be replaced with "sensitive".
 12167  func (s SolutionStackDescription) String() string {
 12168  	return awsutil.Prettify(s)
 12169  }
 12170  
 12171  // GoString returns the string representation.
 12172  //
 12173  // API parameter values that are decorated as "sensitive" in the API will not
 12174  // be included in the string output. The member name will be present, but the
 12175  // value will be replaced with "sensitive".
 12176  func (s SolutionStackDescription) GoString() string {
 12177  	return s.String()
 12178  }
 12179  
 12180  // SetPermittedFileTypes sets the PermittedFileTypes field's value.
 12181  func (s *SolutionStackDescription) SetPermittedFileTypes(v []*string) *SolutionStackDescription {
 12182  	s.PermittedFileTypes = v
 12183  	return s
 12184  }
 12185  
 12186  // SetSolutionStackName sets the SolutionStackName field's value.
 12187  func (s *SolutionStackDescription) SetSolutionStackName(v string) *SolutionStackDescription {
 12188  	s.SolutionStackName = &v
 12189  	return s
 12190  }
 12191  
 12192  // Location of the source code for an application version.
 12193  type SourceBuildInformation struct {
 12194  	_ struct{} `type:"structure"`
 12195  
 12196  	// The location of the source code, as a formatted string, depending on the
 12197  	// value of SourceRepository
 12198  	//
 12199  	//    * For CodeCommit, the format is the repository name and commit ID, separated
 12200  	//    by a forward slash. For example, my-git-repo/265cfa0cf6af46153527f55d6503ec030551f57a.
 12201  	//
 12202  	//    * For S3, the format is the S3 bucket name and object key, separated by
 12203  	//    a forward slash. For example, my-s3-bucket/Folders/my-source-file.
 12204  	//
 12205  	// SourceLocation is a required field
 12206  	SourceLocation *string `min:"3" type:"string" required:"true"`
 12207  
 12208  	// Location where the repository is stored.
 12209  	//
 12210  	//    * CodeCommit
 12211  	//
 12212  	//    * S3
 12213  	//
 12214  	// SourceRepository is a required field
 12215  	SourceRepository *string `type:"string" required:"true" enum:"SourceRepository"`
 12216  
 12217  	// The type of repository.
 12218  	//
 12219  	//    * Git
 12220  	//
 12221  	//    * Zip
 12222  	//
 12223  	// SourceType is a required field
 12224  	SourceType *string `type:"string" required:"true" enum:"SourceType"`
 12225  }
 12226  
 12227  // String returns the string representation.
 12228  //
 12229  // API parameter values that are decorated as "sensitive" in the API will not
 12230  // be included in the string output. The member name will be present, but the
 12231  // value will be replaced with "sensitive".
 12232  func (s SourceBuildInformation) String() string {
 12233  	return awsutil.Prettify(s)
 12234  }
 12235  
 12236  // GoString returns the string representation.
 12237  //
 12238  // API parameter values that are decorated as "sensitive" in the API will not
 12239  // be included in the string output. The member name will be present, but the
 12240  // value will be replaced with "sensitive".
 12241  func (s SourceBuildInformation) GoString() string {
 12242  	return s.String()
 12243  }
 12244  
 12245  // Validate inspects the fields of the type to determine if they are valid.
 12246  func (s *SourceBuildInformation) Validate() error {
 12247  	invalidParams := request.ErrInvalidParams{Context: "SourceBuildInformation"}
 12248  	if s.SourceLocation == nil {
 12249  		invalidParams.Add(request.NewErrParamRequired("SourceLocation"))
 12250  	}
 12251  	if s.SourceLocation != nil && len(*s.SourceLocation) < 3 {
 12252  		invalidParams.Add(request.NewErrParamMinLen("SourceLocation", 3))
 12253  	}
 12254  	if s.SourceRepository == nil {
 12255  		invalidParams.Add(request.NewErrParamRequired("SourceRepository"))
 12256  	}
 12257  	if s.SourceType == nil {
 12258  		invalidParams.Add(request.NewErrParamRequired("SourceType"))
 12259  	}
 12260  
 12261  	if invalidParams.Len() > 0 {
 12262  		return invalidParams
 12263  	}
 12264  	return nil
 12265  }
 12266  
 12267  // SetSourceLocation sets the SourceLocation field's value.
 12268  func (s *SourceBuildInformation) SetSourceLocation(v string) *SourceBuildInformation {
 12269  	s.SourceLocation = &v
 12270  	return s
 12271  }
 12272  
 12273  // SetSourceRepository sets the SourceRepository field's value.
 12274  func (s *SourceBuildInformation) SetSourceRepository(v string) *SourceBuildInformation {
 12275  	s.SourceRepository = &v
 12276  	return s
 12277  }
 12278  
 12279  // SetSourceType sets the SourceType field's value.
 12280  func (s *SourceBuildInformation) SetSourceType(v string) *SourceBuildInformation {
 12281  	s.SourceType = &v
 12282  	return s
 12283  }
 12284  
 12285  // A specification for an environment configuration.
 12286  type SourceConfiguration struct {
 12287  	_ struct{} `type:"structure"`
 12288  
 12289  	// The name of the application associated with the configuration.
 12290  	ApplicationName *string `min:"1" type:"string"`
 12291  
 12292  	// The name of the configuration template.
 12293  	TemplateName *string `min:"1" type:"string"`
 12294  }
 12295  
 12296  // String returns the string representation.
 12297  //
 12298  // API parameter values that are decorated as "sensitive" in the API will not
 12299  // be included in the string output. The member name will be present, but the
 12300  // value will be replaced with "sensitive".
 12301  func (s SourceConfiguration) String() string {
 12302  	return awsutil.Prettify(s)
 12303  }
 12304  
 12305  // GoString returns the string representation.
 12306  //
 12307  // API parameter values that are decorated as "sensitive" in the API will not
 12308  // be included in the string output. The member name will be present, but the
 12309  // value will be replaced with "sensitive".
 12310  func (s SourceConfiguration) GoString() string {
 12311  	return s.String()
 12312  }
 12313  
 12314  // Validate inspects the fields of the type to determine if they are valid.
 12315  func (s *SourceConfiguration) Validate() error {
 12316  	invalidParams := request.ErrInvalidParams{Context: "SourceConfiguration"}
 12317  	if s.ApplicationName != nil && len(*s.ApplicationName) < 1 {
 12318  		invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1))
 12319  	}
 12320  	if s.TemplateName != nil && len(*s.TemplateName) < 1 {
 12321  		invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1))
 12322  	}
 12323  
 12324  	if invalidParams.Len() > 0 {
 12325  		return invalidParams
 12326  	}
 12327  	return nil
 12328  }
 12329  
 12330  // SetApplicationName sets the ApplicationName field's value.
 12331  func (s *SourceConfiguration) SetApplicationName(v string) *SourceConfiguration {
 12332  	s.ApplicationName = &v
 12333  	return s
 12334  }
 12335  
 12336  // SetTemplateName sets the TemplateName field's value.
 12337  func (s *SourceConfiguration) SetTemplateName(v string) *SourceConfiguration {
 12338  	s.TemplateName = &v
 12339  	return s
 12340  }
 12341  
 12342  // Represents the percentage of requests over the last 10 seconds that resulted
 12343  // in each type of status code response. For more information, see Status Code
 12344  // Definitions (http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html).
 12345  type StatusCodes struct {
 12346  	_ struct{} `type:"structure"`
 12347  
 12348  	// The percentage of requests over the last 10 seconds that resulted in a 2xx
 12349  	// (200, 201, etc.) status code.
 12350  	Status2xx *int64 `type:"integer"`
 12351  
 12352  	// The percentage of requests over the last 10 seconds that resulted in a 3xx
 12353  	// (300, 301, etc.) status code.
 12354  	Status3xx *int64 `type:"integer"`
 12355  
 12356  	// The percentage of requests over the last 10 seconds that resulted in a 4xx
 12357  	// (400, 401, etc.) status code.
 12358  	Status4xx *int64 `type:"integer"`
 12359  
 12360  	// The percentage of requests over the last 10 seconds that resulted in a 5xx
 12361  	// (500, 501, etc.) status code.
 12362  	Status5xx *int64 `type:"integer"`
 12363  }
 12364  
 12365  // String returns the string representation.
 12366  //
 12367  // API parameter values that are decorated as "sensitive" in the API will not
 12368  // be included in the string output. The member name will be present, but the
 12369  // value will be replaced with "sensitive".
 12370  func (s StatusCodes) String() string {
 12371  	return awsutil.Prettify(s)
 12372  }
 12373  
 12374  // GoString returns the string representation.
 12375  //
 12376  // API parameter values that are decorated as "sensitive" in the API will not
 12377  // be included in the string output. The member name will be present, but the
 12378  // value will be replaced with "sensitive".
 12379  func (s StatusCodes) GoString() string {
 12380  	return s.String()
 12381  }
 12382  
 12383  // SetStatus2xx sets the Status2xx field's value.
 12384  func (s *StatusCodes) SetStatus2xx(v int64) *StatusCodes {
 12385  	s.Status2xx = &v
 12386  	return s
 12387  }
 12388  
 12389  // SetStatus3xx sets the Status3xx field's value.
 12390  func (s *StatusCodes) SetStatus3xx(v int64) *StatusCodes {
 12391  	s.Status3xx = &v
 12392  	return s
 12393  }
 12394  
 12395  // SetStatus4xx sets the Status4xx field's value.
 12396  func (s *StatusCodes) SetStatus4xx(v int64) *StatusCodes {
 12397  	s.Status4xx = &v
 12398  	return s
 12399  }
 12400  
 12401  // SetStatus5xx sets the Status5xx field's value.
 12402  func (s *StatusCodes) SetStatus5xx(v int64) *StatusCodes {
 12403  	s.Status5xx = &v
 12404  	return s
 12405  }
 12406  
 12407  // Swaps the CNAMEs of two environments.
 12408  type SwapEnvironmentCNAMEsInput struct {
 12409  	_ struct{} `type:"structure"`
 12410  
 12411  	// The ID of the destination environment.
 12412  	//
 12413  	// Condition: You must specify at least the DestinationEnvironmentID or the
 12414  	// DestinationEnvironmentName. You may also specify both. You must specify the
 12415  	// SourceEnvironmentId with the DestinationEnvironmentId.
 12416  	DestinationEnvironmentId *string `type:"string"`
 12417  
 12418  	// The name of the destination environment.
 12419  	//
 12420  	// Condition: You must specify at least the DestinationEnvironmentID or the
 12421  	// DestinationEnvironmentName. You may also specify both. You must specify the
 12422  	// SourceEnvironmentName with the DestinationEnvironmentName.
 12423  	DestinationEnvironmentName *string `min:"4" type:"string"`
 12424  
 12425  	// The ID of the source environment.
 12426  	//
 12427  	// Condition: You must specify at least the SourceEnvironmentID or the SourceEnvironmentName.
 12428  	// You may also specify both. If you specify the SourceEnvironmentId, you must
 12429  	// specify the DestinationEnvironmentId.
 12430  	SourceEnvironmentId *string `type:"string"`
 12431  
 12432  	// The name of the source environment.
 12433  	//
 12434  	// Condition: You must specify at least the SourceEnvironmentID or the SourceEnvironmentName.
 12435  	// You may also specify both. If you specify the SourceEnvironmentName, you
 12436  	// must specify the DestinationEnvironmentName.
 12437  	SourceEnvironmentName *string `min:"4" type:"string"`
 12438  }
 12439  
 12440  // String returns the string representation.
 12441  //
 12442  // API parameter values that are decorated as "sensitive" in the API will not
 12443  // be included in the string output. The member name will be present, but the
 12444  // value will be replaced with "sensitive".
 12445  func (s SwapEnvironmentCNAMEsInput) String() string {
 12446  	return awsutil.Prettify(s)
 12447  }
 12448  
 12449  // GoString returns the string representation.
 12450  //
 12451  // API parameter values that are decorated as "sensitive" in the API will not
 12452  // be included in the string output. The member name will be present, but the
 12453  // value will be replaced with "sensitive".
 12454  func (s SwapEnvironmentCNAMEsInput) GoString() string {
 12455  	return s.String()
 12456  }
 12457  
 12458  // Validate inspects the fields of the type to determine if they are valid.
 12459  func (s *SwapEnvironmentCNAMEsInput) Validate() error {
 12460  	invalidParams := request.ErrInvalidParams{Context: "SwapEnvironmentCNAMEsInput"}
 12461  	if s.DestinationEnvironmentName != nil && len(*s.DestinationEnvironmentName) < 4 {
 12462  		invalidParams.Add(request.NewErrParamMinLen("DestinationEnvironmentName", 4))
 12463  	}
 12464  	if s.SourceEnvironmentName != nil && len(*s.SourceEnvironmentName) < 4 {
 12465  		invalidParams.Add(request.NewErrParamMinLen("SourceEnvironmentName", 4))
 12466  	}
 12467  
 12468  	if invalidParams.Len() > 0 {
 12469  		return invalidParams
 12470  	}
 12471  	return nil
 12472  }
 12473  
 12474  // SetDestinationEnvironmentId sets the DestinationEnvironmentId field's value.
 12475  func (s *SwapEnvironmentCNAMEsInput) SetDestinationEnvironmentId(v string) *SwapEnvironmentCNAMEsInput {
 12476  	s.DestinationEnvironmentId = &v
 12477  	return s
 12478  }
 12479  
 12480  // SetDestinationEnvironmentName sets the DestinationEnvironmentName field's value.
 12481  func (s *SwapEnvironmentCNAMEsInput) SetDestinationEnvironmentName(v string) *SwapEnvironmentCNAMEsInput {
 12482  	s.DestinationEnvironmentName = &v
 12483  	return s
 12484  }
 12485  
 12486  // SetSourceEnvironmentId sets the SourceEnvironmentId field's value.
 12487  func (s *SwapEnvironmentCNAMEsInput) SetSourceEnvironmentId(v string) *SwapEnvironmentCNAMEsInput {
 12488  	s.SourceEnvironmentId = &v
 12489  	return s
 12490  }
 12491  
 12492  // SetSourceEnvironmentName sets the SourceEnvironmentName field's value.
 12493  func (s *SwapEnvironmentCNAMEsInput) SetSourceEnvironmentName(v string) *SwapEnvironmentCNAMEsInput {
 12494  	s.SourceEnvironmentName = &v
 12495  	return s
 12496  }
 12497  
 12498  type SwapEnvironmentCNAMEsOutput struct {
 12499  	_ struct{} `type:"structure"`
 12500  }
 12501  
 12502  // String returns the string representation.
 12503  //
 12504  // API parameter values that are decorated as "sensitive" in the API will not
 12505  // be included in the string output. The member name will be present, but the
 12506  // value will be replaced with "sensitive".
 12507  func (s SwapEnvironmentCNAMEsOutput) String() string {
 12508  	return awsutil.Prettify(s)
 12509  }
 12510  
 12511  // GoString returns the string representation.
 12512  //
 12513  // API parameter values that are decorated as "sensitive" in the API will not
 12514  // be included in the string output. The member name will be present, but the
 12515  // value will be replaced with "sensitive".
 12516  func (s SwapEnvironmentCNAMEsOutput) GoString() string {
 12517  	return s.String()
 12518  }
 12519  
 12520  // CPU utilization and load average metrics for an Amazon EC2 instance.
 12521  type SystemStatus struct {
 12522  	_ struct{} `type:"structure"`
 12523  
 12524  	// CPU utilization metrics for the instance.
 12525  	CPUUtilization *CPUUtilization `type:"structure"`
 12526  
 12527  	// Load average in the last 1-minute, 5-minute, and 15-minute periods. For more
 12528  	// information, see Operating System Metrics (https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/health-enhanced-metrics.html#health-enhanced-metrics-os).
 12529  	LoadAverage []*float64 `type:"list"`
 12530  }
 12531  
 12532  // String returns the string representation.
 12533  //
 12534  // API parameter values that are decorated as "sensitive" in the API will not
 12535  // be included in the string output. The member name will be present, but the
 12536  // value will be replaced with "sensitive".
 12537  func (s SystemStatus) String() string {
 12538  	return awsutil.Prettify(s)
 12539  }
 12540  
 12541  // GoString returns the string representation.
 12542  //
 12543  // API parameter values that are decorated as "sensitive" in the API will not
 12544  // be included in the string output. The member name will be present, but the
 12545  // value will be replaced with "sensitive".
 12546  func (s SystemStatus) GoString() string {
 12547  	return s.String()
 12548  }
 12549  
 12550  // SetCPUUtilization sets the CPUUtilization field's value.
 12551  func (s *SystemStatus) SetCPUUtilization(v *CPUUtilization) *SystemStatus {
 12552  	s.CPUUtilization = v
 12553  	return s
 12554  }
 12555  
 12556  // SetLoadAverage sets the LoadAverage field's value.
 12557  func (s *SystemStatus) SetLoadAverage(v []*float64) *SystemStatus {
 12558  	s.LoadAverage = v
 12559  	return s
 12560  }
 12561  
 12562  // Describes a tag applied to a resource in an environment.
 12563  type Tag struct {
 12564  	_ struct{} `type:"structure"`
 12565  
 12566  	// The key of the tag.
 12567  	Key *string `min:"1" type:"string"`
 12568  
 12569  	// The value of the tag.
 12570  	Value *string `min:"1" 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 Tag) 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 Tag) GoString() string {
 12588  	return s.String()
 12589  }
 12590  
 12591  // Validate inspects the fields of the type to determine if they are valid.
 12592  func (s *Tag) Validate() error {
 12593  	invalidParams := request.ErrInvalidParams{Context: "Tag"}
 12594  	if s.Key != nil && len(*s.Key) < 1 {
 12595  		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
 12596  	}
 12597  	if s.Value != nil && len(*s.Value) < 1 {
 12598  		invalidParams.Add(request.NewErrParamMinLen("Value", 1))
 12599  	}
 12600  
 12601  	if invalidParams.Len() > 0 {
 12602  		return invalidParams
 12603  	}
 12604  	return nil
 12605  }
 12606  
 12607  // SetKey sets the Key field's value.
 12608  func (s *Tag) SetKey(v string) *Tag {
 12609  	s.Key = &v
 12610  	return s
 12611  }
 12612  
 12613  // SetValue sets the Value field's value.
 12614  func (s *Tag) SetValue(v string) *Tag {
 12615  	s.Value = &v
 12616  	return s
 12617  }
 12618  
 12619  // Request to terminate an environment.
 12620  type TerminateEnvironmentInput struct {
 12621  	_ struct{} `type:"structure"`
 12622  
 12623  	// The ID of the environment to terminate.
 12624  	//
 12625  	// Condition: You must specify either this or an EnvironmentName, or both. If
 12626  	// you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter
 12627  	// error.
 12628  	EnvironmentId *string `type:"string"`
 12629  
 12630  	// The name of the environment to terminate.
 12631  	//
 12632  	// Condition: You must specify either this or an EnvironmentId, or both. If
 12633  	// you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter
 12634  	// error.
 12635  	EnvironmentName *string `min:"4" type:"string"`
 12636  
 12637  	// Terminates the target environment even if another environment in the same
 12638  	// group is dependent on it.
 12639  	ForceTerminate *bool `type:"boolean"`
 12640  
 12641  	// Indicates whether the associated AWS resources should shut down when the
 12642  	// environment is terminated:
 12643  	//
 12644  	//    * true: The specified environment as well as the associated AWS resources,
 12645  	//    such as Auto Scaling group and LoadBalancer, are terminated.
 12646  	//
 12647  	//    * false: AWS Elastic Beanstalk resource management is removed from the
 12648  	//    environment, but the AWS resources continue to operate.
 12649  	//
 12650  	// For more information, see the AWS Elastic Beanstalk User Guide. (https://docs.aws.amazon.com/elasticbeanstalk/latest/ug/)
 12651  	//
 12652  	// Default: true
 12653  	//
 12654  	// Valid Values: true | false
 12655  	TerminateResources *bool `type:"boolean"`
 12656  }
 12657  
 12658  // String returns the string representation.
 12659  //
 12660  // API parameter values that are decorated as "sensitive" in the API will not
 12661  // be included in the string output. The member name will be present, but the
 12662  // value will be replaced with "sensitive".
 12663  func (s TerminateEnvironmentInput) String() string {
 12664  	return awsutil.Prettify(s)
 12665  }
 12666  
 12667  // GoString returns the string representation.
 12668  //
 12669  // API parameter values that are decorated as "sensitive" in the API will not
 12670  // be included in the string output. The member name will be present, but the
 12671  // value will be replaced with "sensitive".
 12672  func (s TerminateEnvironmentInput) GoString() string {
 12673  	return s.String()
 12674  }
 12675  
 12676  // Validate inspects the fields of the type to determine if they are valid.
 12677  func (s *TerminateEnvironmentInput) Validate() error {
 12678  	invalidParams := request.ErrInvalidParams{Context: "TerminateEnvironmentInput"}
 12679  	if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 {
 12680  		invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4))
 12681  	}
 12682  
 12683  	if invalidParams.Len() > 0 {
 12684  		return invalidParams
 12685  	}
 12686  	return nil
 12687  }
 12688  
 12689  // SetEnvironmentId sets the EnvironmentId field's value.
 12690  func (s *TerminateEnvironmentInput) SetEnvironmentId(v string) *TerminateEnvironmentInput {
 12691  	s.EnvironmentId = &v
 12692  	return s
 12693  }
 12694  
 12695  // SetEnvironmentName sets the EnvironmentName field's value.
 12696  func (s *TerminateEnvironmentInput) SetEnvironmentName(v string) *TerminateEnvironmentInput {
 12697  	s.EnvironmentName = &v
 12698  	return s
 12699  }
 12700  
 12701  // SetForceTerminate sets the ForceTerminate field's value.
 12702  func (s *TerminateEnvironmentInput) SetForceTerminate(v bool) *TerminateEnvironmentInput {
 12703  	s.ForceTerminate = &v
 12704  	return s
 12705  }
 12706  
 12707  // SetTerminateResources sets the TerminateResources field's value.
 12708  func (s *TerminateEnvironmentInput) SetTerminateResources(v bool) *TerminateEnvironmentInput {
 12709  	s.TerminateResources = &v
 12710  	return s
 12711  }
 12712  
 12713  // Describes a trigger.
 12714  type Trigger struct {
 12715  	_ struct{} `type:"structure"`
 12716  
 12717  	// The name of the trigger.
 12718  	Name *string `type:"string"`
 12719  }
 12720  
 12721  // String returns the string representation.
 12722  //
 12723  // API parameter values that are decorated as "sensitive" in the API will not
 12724  // be included in the string output. The member name will be present, but the
 12725  // value will be replaced with "sensitive".
 12726  func (s Trigger) String() string {
 12727  	return awsutil.Prettify(s)
 12728  }
 12729  
 12730  // GoString returns the string representation.
 12731  //
 12732  // API parameter values that are decorated as "sensitive" in the API will not
 12733  // be included in the string output. The member name will be present, but the
 12734  // value will be replaced with "sensitive".
 12735  func (s Trigger) GoString() string {
 12736  	return s.String()
 12737  }
 12738  
 12739  // SetName sets the Name field's value.
 12740  func (s *Trigger) SetName(v string) *Trigger {
 12741  	s.Name = &v
 12742  	return s
 12743  }
 12744  
 12745  // Request to update an application.
 12746  type UpdateApplicationInput struct {
 12747  	_ struct{} `type:"structure"`
 12748  
 12749  	// The name of the application to update. If no such application is found, UpdateApplication
 12750  	// returns an InvalidParameterValue error.
 12751  	//
 12752  	// ApplicationName is a required field
 12753  	ApplicationName *string `min:"1" type:"string" required:"true"`
 12754  
 12755  	// A new description for the application.
 12756  	//
 12757  	// Default: If not specified, AWS Elastic Beanstalk does not update the description.
 12758  	Description *string `type:"string"`
 12759  }
 12760  
 12761  // String returns the string representation.
 12762  //
 12763  // API parameter values that are decorated as "sensitive" in the API will not
 12764  // be included in the string output. The member name will be present, but the
 12765  // value will be replaced with "sensitive".
 12766  func (s UpdateApplicationInput) String() string {
 12767  	return awsutil.Prettify(s)
 12768  }
 12769  
 12770  // GoString returns the string representation.
 12771  //
 12772  // API parameter values that are decorated as "sensitive" in the API will not
 12773  // be included in the string output. The member name will be present, but the
 12774  // value will be replaced with "sensitive".
 12775  func (s UpdateApplicationInput) GoString() string {
 12776  	return s.String()
 12777  }
 12778  
 12779  // Validate inspects the fields of the type to determine if they are valid.
 12780  func (s *UpdateApplicationInput) Validate() error {
 12781  	invalidParams := request.ErrInvalidParams{Context: "UpdateApplicationInput"}
 12782  	if s.ApplicationName == nil {
 12783  		invalidParams.Add(request.NewErrParamRequired("ApplicationName"))
 12784  	}
 12785  	if s.ApplicationName != nil && len(*s.ApplicationName) < 1 {
 12786  		invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1))
 12787  	}
 12788  
 12789  	if invalidParams.Len() > 0 {
 12790  		return invalidParams
 12791  	}
 12792  	return nil
 12793  }
 12794  
 12795  // SetApplicationName sets the ApplicationName field's value.
 12796  func (s *UpdateApplicationInput) SetApplicationName(v string) *UpdateApplicationInput {
 12797  	s.ApplicationName = &v
 12798  	return s
 12799  }
 12800  
 12801  // SetDescription sets the Description field's value.
 12802  func (s *UpdateApplicationInput) SetDescription(v string) *UpdateApplicationInput {
 12803  	s.Description = &v
 12804  	return s
 12805  }
 12806  
 12807  type UpdateApplicationResourceLifecycleInput struct {
 12808  	_ struct{} `type:"structure"`
 12809  
 12810  	// The name of the application.
 12811  	//
 12812  	// ApplicationName is a required field
 12813  	ApplicationName *string `min:"1" type:"string" required:"true"`
 12814  
 12815  	// The lifecycle configuration.
 12816  	//
 12817  	// ResourceLifecycleConfig is a required field
 12818  	ResourceLifecycleConfig *ApplicationResourceLifecycleConfig `type:"structure" required:"true"`
 12819  }
 12820  
 12821  // String returns the string representation.
 12822  //
 12823  // API parameter values that are decorated as "sensitive" in the API will not
 12824  // be included in the string output. The member name will be present, but the
 12825  // value will be replaced with "sensitive".
 12826  func (s UpdateApplicationResourceLifecycleInput) String() string {
 12827  	return awsutil.Prettify(s)
 12828  }
 12829  
 12830  // GoString returns the string representation.
 12831  //
 12832  // API parameter values that are decorated as "sensitive" in the API will not
 12833  // be included in the string output. The member name will be present, but the
 12834  // value will be replaced with "sensitive".
 12835  func (s UpdateApplicationResourceLifecycleInput) GoString() string {
 12836  	return s.String()
 12837  }
 12838  
 12839  // Validate inspects the fields of the type to determine if they are valid.
 12840  func (s *UpdateApplicationResourceLifecycleInput) Validate() error {
 12841  	invalidParams := request.ErrInvalidParams{Context: "UpdateApplicationResourceLifecycleInput"}
 12842  	if s.ApplicationName == nil {
 12843  		invalidParams.Add(request.NewErrParamRequired("ApplicationName"))
 12844  	}
 12845  	if s.ApplicationName != nil && len(*s.ApplicationName) < 1 {
 12846  		invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1))
 12847  	}
 12848  	if s.ResourceLifecycleConfig == nil {
 12849  		invalidParams.Add(request.NewErrParamRequired("ResourceLifecycleConfig"))
 12850  	}
 12851  	if s.ResourceLifecycleConfig != nil {
 12852  		if err := s.ResourceLifecycleConfig.Validate(); err != nil {
 12853  			invalidParams.AddNested("ResourceLifecycleConfig", err.(request.ErrInvalidParams))
 12854  		}
 12855  	}
 12856  
 12857  	if invalidParams.Len() > 0 {
 12858  		return invalidParams
 12859  	}
 12860  	return nil
 12861  }
 12862  
 12863  // SetApplicationName sets the ApplicationName field's value.
 12864  func (s *UpdateApplicationResourceLifecycleInput) SetApplicationName(v string) *UpdateApplicationResourceLifecycleInput {
 12865  	s.ApplicationName = &v
 12866  	return s
 12867  }
 12868  
 12869  // SetResourceLifecycleConfig sets the ResourceLifecycleConfig field's value.
 12870  func (s *UpdateApplicationResourceLifecycleInput) SetResourceLifecycleConfig(v *ApplicationResourceLifecycleConfig) *UpdateApplicationResourceLifecycleInput {
 12871  	s.ResourceLifecycleConfig = v
 12872  	return s
 12873  }
 12874  
 12875  type UpdateApplicationResourceLifecycleOutput struct {
 12876  	_ struct{} `type:"structure"`
 12877  
 12878  	// The name of the application.
 12879  	ApplicationName *string `min:"1" type:"string"`
 12880  
 12881  	// The lifecycle configuration.
 12882  	ResourceLifecycleConfig *ApplicationResourceLifecycleConfig `type:"structure"`
 12883  }
 12884  
 12885  // String returns the string representation.
 12886  //
 12887  // API parameter values that are decorated as "sensitive" in the API will not
 12888  // be included in the string output. The member name will be present, but the
 12889  // value will be replaced with "sensitive".
 12890  func (s UpdateApplicationResourceLifecycleOutput) String() string {
 12891  	return awsutil.Prettify(s)
 12892  }
 12893  
 12894  // GoString returns the string representation.
 12895  //
 12896  // API parameter values that are decorated as "sensitive" in the API will not
 12897  // be included in the string output. The member name will be present, but the
 12898  // value will be replaced with "sensitive".
 12899  func (s UpdateApplicationResourceLifecycleOutput) GoString() string {
 12900  	return s.String()
 12901  }
 12902  
 12903  // SetApplicationName sets the ApplicationName field's value.
 12904  func (s *UpdateApplicationResourceLifecycleOutput) SetApplicationName(v string) *UpdateApplicationResourceLifecycleOutput {
 12905  	s.ApplicationName = &v
 12906  	return s
 12907  }
 12908  
 12909  // SetResourceLifecycleConfig sets the ResourceLifecycleConfig field's value.
 12910  func (s *UpdateApplicationResourceLifecycleOutput) SetResourceLifecycleConfig(v *ApplicationResourceLifecycleConfig) *UpdateApplicationResourceLifecycleOutput {
 12911  	s.ResourceLifecycleConfig = v
 12912  	return s
 12913  }
 12914  
 12915  type UpdateApplicationVersionInput struct {
 12916  	_ struct{} `type:"structure"`
 12917  
 12918  	// The name of the application associated with this version.
 12919  	//
 12920  	// If no application is found with this name, UpdateApplication returns an InvalidParameterValue
 12921  	// error.
 12922  	//
 12923  	// ApplicationName is a required field
 12924  	ApplicationName *string `min:"1" type:"string" required:"true"`
 12925  
 12926  	// A new description for this version.
 12927  	Description *string `type:"string"`
 12928  
 12929  	// The name of the version to update.
 12930  	//
 12931  	// If no application version is found with this label, UpdateApplication returns
 12932  	// an InvalidParameterValue error.
 12933  	//
 12934  	// VersionLabel is a required field
 12935  	VersionLabel *string `min:"1" type:"string" required:"true"`
 12936  }
 12937  
 12938  // String returns the string representation.
 12939  //
 12940  // API parameter values that are decorated as "sensitive" in the API will not
 12941  // be included in the string output. The member name will be present, but the
 12942  // value will be replaced with "sensitive".
 12943  func (s UpdateApplicationVersionInput) String() string {
 12944  	return awsutil.Prettify(s)
 12945  }
 12946  
 12947  // GoString returns the string representation.
 12948  //
 12949  // API parameter values that are decorated as "sensitive" in the API will not
 12950  // be included in the string output. The member name will be present, but the
 12951  // value will be replaced with "sensitive".
 12952  func (s UpdateApplicationVersionInput) GoString() string {
 12953  	return s.String()
 12954  }
 12955  
 12956  // Validate inspects the fields of the type to determine if they are valid.
 12957  func (s *UpdateApplicationVersionInput) Validate() error {
 12958  	invalidParams := request.ErrInvalidParams{Context: "UpdateApplicationVersionInput"}
 12959  	if s.ApplicationName == nil {
 12960  		invalidParams.Add(request.NewErrParamRequired("ApplicationName"))
 12961  	}
 12962  	if s.ApplicationName != nil && len(*s.ApplicationName) < 1 {
 12963  		invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1))
 12964  	}
 12965  	if s.VersionLabel == nil {
 12966  		invalidParams.Add(request.NewErrParamRequired("VersionLabel"))
 12967  	}
 12968  	if s.VersionLabel != nil && len(*s.VersionLabel) < 1 {
 12969  		invalidParams.Add(request.NewErrParamMinLen("VersionLabel", 1))
 12970  	}
 12971  
 12972  	if invalidParams.Len() > 0 {
 12973  		return invalidParams
 12974  	}
 12975  	return nil
 12976  }
 12977  
 12978  // SetApplicationName sets the ApplicationName field's value.
 12979  func (s *UpdateApplicationVersionInput) SetApplicationName(v string) *UpdateApplicationVersionInput {
 12980  	s.ApplicationName = &v
 12981  	return s
 12982  }
 12983  
 12984  // SetDescription sets the Description field's value.
 12985  func (s *UpdateApplicationVersionInput) SetDescription(v string) *UpdateApplicationVersionInput {
 12986  	s.Description = &v
 12987  	return s
 12988  }
 12989  
 12990  // SetVersionLabel sets the VersionLabel field's value.
 12991  func (s *UpdateApplicationVersionInput) SetVersionLabel(v string) *UpdateApplicationVersionInput {
 12992  	s.VersionLabel = &v
 12993  	return s
 12994  }
 12995  
 12996  // The result message containing the options for the specified solution stack.
 12997  type UpdateConfigurationTemplateInput struct {
 12998  	_ struct{} `type:"structure"`
 12999  
 13000  	// The name of the application associated with the configuration template to
 13001  	// update.
 13002  	//
 13003  	// If no application is found with this name, UpdateConfigurationTemplate returns
 13004  	// an InvalidParameterValue error.
 13005  	//
 13006  	// ApplicationName is a required field
 13007  	ApplicationName *string `min:"1" type:"string" required:"true"`
 13008  
 13009  	// A new description for the configuration.
 13010  	Description *string `type:"string"`
 13011  
 13012  	// A list of configuration option settings to update with the new specified
 13013  	// option value.
 13014  	OptionSettings []*ConfigurationOptionSetting `type:"list"`
 13015  
 13016  	// A list of configuration options to remove from the configuration set.
 13017  	//
 13018  	// Constraint: You can remove only UserDefined configuration options.
 13019  	OptionsToRemove []*OptionSpecification `type:"list"`
 13020  
 13021  	// The name of the configuration template to update.
 13022  	//
 13023  	// If no configuration template is found with this name, UpdateConfigurationTemplate
 13024  	// returns an InvalidParameterValue error.
 13025  	//
 13026  	// TemplateName is a required field
 13027  	TemplateName *string `min:"1" type:"string" required:"true"`
 13028  }
 13029  
 13030  // String returns the string representation.
 13031  //
 13032  // API parameter values that are decorated as "sensitive" in the API will not
 13033  // be included in the string output. The member name will be present, but the
 13034  // value will be replaced with "sensitive".
 13035  func (s UpdateConfigurationTemplateInput) String() string {
 13036  	return awsutil.Prettify(s)
 13037  }
 13038  
 13039  // GoString returns the string representation.
 13040  //
 13041  // API parameter values that are decorated as "sensitive" in the API will not
 13042  // be included in the string output. The member name will be present, but the
 13043  // value will be replaced with "sensitive".
 13044  func (s UpdateConfigurationTemplateInput) GoString() string {
 13045  	return s.String()
 13046  }
 13047  
 13048  // Validate inspects the fields of the type to determine if they are valid.
 13049  func (s *UpdateConfigurationTemplateInput) Validate() error {
 13050  	invalidParams := request.ErrInvalidParams{Context: "UpdateConfigurationTemplateInput"}
 13051  	if s.ApplicationName == nil {
 13052  		invalidParams.Add(request.NewErrParamRequired("ApplicationName"))
 13053  	}
 13054  	if s.ApplicationName != nil && len(*s.ApplicationName) < 1 {
 13055  		invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1))
 13056  	}
 13057  	if s.TemplateName == nil {
 13058  		invalidParams.Add(request.NewErrParamRequired("TemplateName"))
 13059  	}
 13060  	if s.TemplateName != nil && len(*s.TemplateName) < 1 {
 13061  		invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1))
 13062  	}
 13063  	if s.OptionSettings != nil {
 13064  		for i, v := range s.OptionSettings {
 13065  			if v == nil {
 13066  				continue
 13067  			}
 13068  			if err := v.Validate(); err != nil {
 13069  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OptionSettings", i), err.(request.ErrInvalidParams))
 13070  			}
 13071  		}
 13072  	}
 13073  	if s.OptionsToRemove != nil {
 13074  		for i, v := range s.OptionsToRemove {
 13075  			if v == nil {
 13076  				continue
 13077  			}
 13078  			if err := v.Validate(); err != nil {
 13079  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OptionsToRemove", i), err.(request.ErrInvalidParams))
 13080  			}
 13081  		}
 13082  	}
 13083  
 13084  	if invalidParams.Len() > 0 {
 13085  		return invalidParams
 13086  	}
 13087  	return nil
 13088  }
 13089  
 13090  // SetApplicationName sets the ApplicationName field's value.
 13091  func (s *UpdateConfigurationTemplateInput) SetApplicationName(v string) *UpdateConfigurationTemplateInput {
 13092  	s.ApplicationName = &v
 13093  	return s
 13094  }
 13095  
 13096  // SetDescription sets the Description field's value.
 13097  func (s *UpdateConfigurationTemplateInput) SetDescription(v string) *UpdateConfigurationTemplateInput {
 13098  	s.Description = &v
 13099  	return s
 13100  }
 13101  
 13102  // SetOptionSettings sets the OptionSettings field's value.
 13103  func (s *UpdateConfigurationTemplateInput) SetOptionSettings(v []*ConfigurationOptionSetting) *UpdateConfigurationTemplateInput {
 13104  	s.OptionSettings = v
 13105  	return s
 13106  }
 13107  
 13108  // SetOptionsToRemove sets the OptionsToRemove field's value.
 13109  func (s *UpdateConfigurationTemplateInput) SetOptionsToRemove(v []*OptionSpecification) *UpdateConfigurationTemplateInput {
 13110  	s.OptionsToRemove = v
 13111  	return s
 13112  }
 13113  
 13114  // SetTemplateName sets the TemplateName field's value.
 13115  func (s *UpdateConfigurationTemplateInput) SetTemplateName(v string) *UpdateConfigurationTemplateInput {
 13116  	s.TemplateName = &v
 13117  	return s
 13118  }
 13119  
 13120  // Request to update an environment.
 13121  type UpdateEnvironmentInput struct {
 13122  	_ struct{} `type:"structure"`
 13123  
 13124  	// The name of the application with which the environment is associated.
 13125  	ApplicationName *string `min:"1" type:"string"`
 13126  
 13127  	// If this parameter is specified, AWS Elastic Beanstalk updates the description
 13128  	// of this environment.
 13129  	Description *string `type:"string"`
 13130  
 13131  	// The ID of the environment to update.
 13132  	//
 13133  	// If no environment with this ID exists, AWS Elastic Beanstalk returns an InvalidParameterValue
 13134  	// error.
 13135  	//
 13136  	// Condition: You must specify either this or an EnvironmentName, or both. If
 13137  	// you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter
 13138  	// error.
 13139  	EnvironmentId *string `type:"string"`
 13140  
 13141  	// The name of the environment to update. If no environment with this name exists,
 13142  	// AWS Elastic Beanstalk returns an InvalidParameterValue error.
 13143  	//
 13144  	// Condition: You must specify either this or an EnvironmentId, or both. If
 13145  	// you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter
 13146  	// error.
 13147  	EnvironmentName *string `min:"4" type:"string"`
 13148  
 13149  	// The name of the group to which the target environment belongs. Specify a
 13150  	// group name only if the environment's name is specified in an environment
 13151  	// manifest and not with the environment name or environment ID parameters.
 13152  	// See Environment Manifest (env.yaml) (https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/environment-cfg-manifest.html)
 13153  	// for details.
 13154  	GroupName *string `min:"1" type:"string"`
 13155  
 13156  	// If specified, AWS Elastic Beanstalk updates the configuration set associated
 13157  	// with the running environment and sets the specified configuration options
 13158  	// to the requested value.
 13159  	OptionSettings []*ConfigurationOptionSetting `type:"list"`
 13160  
 13161  	// A list of custom user-defined configuration options to remove from the configuration
 13162  	// set for this environment.
 13163  	OptionsToRemove []*OptionSpecification `type:"list"`
 13164  
 13165  	// The ARN of the platform, if used.
 13166  	PlatformArn *string `type:"string"`
 13167  
 13168  	// This specifies the platform version that the environment will run after the
 13169  	// environment is updated.
 13170  	SolutionStackName *string `type:"string"`
 13171  
 13172  	// If this parameter is specified, AWS Elastic Beanstalk deploys this configuration
 13173  	// template to the environment. If no such configuration template is found,
 13174  	// AWS Elastic Beanstalk returns an InvalidParameterValue error.
 13175  	TemplateName *string `min:"1" type:"string"`
 13176  
 13177  	// This specifies the tier to use to update the environment.
 13178  	//
 13179  	// Condition: At this time, if you change the tier version, name, or type, AWS
 13180  	// Elastic Beanstalk returns InvalidParameterValue error.
 13181  	Tier *EnvironmentTier `type:"structure"`
 13182  
 13183  	// If this parameter is specified, AWS Elastic Beanstalk deploys the named application
 13184  	// version to the environment. If no such application version is found, returns
 13185  	// an InvalidParameterValue error.
 13186  	VersionLabel *string `min:"1" type:"string"`
 13187  }
 13188  
 13189  // String returns the string representation.
 13190  //
 13191  // API parameter values that are decorated as "sensitive" in the API will not
 13192  // be included in the string output. The member name will be present, but the
 13193  // value will be replaced with "sensitive".
 13194  func (s UpdateEnvironmentInput) String() string {
 13195  	return awsutil.Prettify(s)
 13196  }
 13197  
 13198  // GoString 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 UpdateEnvironmentInput) GoString() string {
 13204  	return s.String()
 13205  }
 13206  
 13207  // Validate inspects the fields of the type to determine if they are valid.
 13208  func (s *UpdateEnvironmentInput) Validate() error {
 13209  	invalidParams := request.ErrInvalidParams{Context: "UpdateEnvironmentInput"}
 13210  	if s.ApplicationName != nil && len(*s.ApplicationName) < 1 {
 13211  		invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1))
 13212  	}
 13213  	if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 {
 13214  		invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4))
 13215  	}
 13216  	if s.GroupName != nil && len(*s.GroupName) < 1 {
 13217  		invalidParams.Add(request.NewErrParamMinLen("GroupName", 1))
 13218  	}
 13219  	if s.TemplateName != nil && len(*s.TemplateName) < 1 {
 13220  		invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1))
 13221  	}
 13222  	if s.VersionLabel != nil && len(*s.VersionLabel) < 1 {
 13223  		invalidParams.Add(request.NewErrParamMinLen("VersionLabel", 1))
 13224  	}
 13225  	if s.OptionSettings != nil {
 13226  		for i, v := range s.OptionSettings {
 13227  			if v == nil {
 13228  				continue
 13229  			}
 13230  			if err := v.Validate(); err != nil {
 13231  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OptionSettings", i), err.(request.ErrInvalidParams))
 13232  			}
 13233  		}
 13234  	}
 13235  	if s.OptionsToRemove != nil {
 13236  		for i, v := range s.OptionsToRemove {
 13237  			if v == nil {
 13238  				continue
 13239  			}
 13240  			if err := v.Validate(); err != nil {
 13241  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OptionsToRemove", i), err.(request.ErrInvalidParams))
 13242  			}
 13243  		}
 13244  	}
 13245  
 13246  	if invalidParams.Len() > 0 {
 13247  		return invalidParams
 13248  	}
 13249  	return nil
 13250  }
 13251  
 13252  // SetApplicationName sets the ApplicationName field's value.
 13253  func (s *UpdateEnvironmentInput) SetApplicationName(v string) *UpdateEnvironmentInput {
 13254  	s.ApplicationName = &v
 13255  	return s
 13256  }
 13257  
 13258  // SetDescription sets the Description field's value.
 13259  func (s *UpdateEnvironmentInput) SetDescription(v string) *UpdateEnvironmentInput {
 13260  	s.Description = &v
 13261  	return s
 13262  }
 13263  
 13264  // SetEnvironmentId sets the EnvironmentId field's value.
 13265  func (s *UpdateEnvironmentInput) SetEnvironmentId(v string) *UpdateEnvironmentInput {
 13266  	s.EnvironmentId = &v
 13267  	return s
 13268  }
 13269  
 13270  // SetEnvironmentName sets the EnvironmentName field's value.
 13271  func (s *UpdateEnvironmentInput) SetEnvironmentName(v string) *UpdateEnvironmentInput {
 13272  	s.EnvironmentName = &v
 13273  	return s
 13274  }
 13275  
 13276  // SetGroupName sets the GroupName field's value.
 13277  func (s *UpdateEnvironmentInput) SetGroupName(v string) *UpdateEnvironmentInput {
 13278  	s.GroupName = &v
 13279  	return s
 13280  }
 13281  
 13282  // SetOptionSettings sets the OptionSettings field's value.
 13283  func (s *UpdateEnvironmentInput) SetOptionSettings(v []*ConfigurationOptionSetting) *UpdateEnvironmentInput {
 13284  	s.OptionSettings = v
 13285  	return s
 13286  }
 13287  
 13288  // SetOptionsToRemove sets the OptionsToRemove field's value.
 13289  func (s *UpdateEnvironmentInput) SetOptionsToRemove(v []*OptionSpecification) *UpdateEnvironmentInput {
 13290  	s.OptionsToRemove = v
 13291  	return s
 13292  }
 13293  
 13294  // SetPlatformArn sets the PlatformArn field's value.
 13295  func (s *UpdateEnvironmentInput) SetPlatformArn(v string) *UpdateEnvironmentInput {
 13296  	s.PlatformArn = &v
 13297  	return s
 13298  }
 13299  
 13300  // SetSolutionStackName sets the SolutionStackName field's value.
 13301  func (s *UpdateEnvironmentInput) SetSolutionStackName(v string) *UpdateEnvironmentInput {
 13302  	s.SolutionStackName = &v
 13303  	return s
 13304  }
 13305  
 13306  // SetTemplateName sets the TemplateName field's value.
 13307  func (s *UpdateEnvironmentInput) SetTemplateName(v string) *UpdateEnvironmentInput {
 13308  	s.TemplateName = &v
 13309  	return s
 13310  }
 13311  
 13312  // SetTier sets the Tier field's value.
 13313  func (s *UpdateEnvironmentInput) SetTier(v *EnvironmentTier) *UpdateEnvironmentInput {
 13314  	s.Tier = v
 13315  	return s
 13316  }
 13317  
 13318  // SetVersionLabel sets the VersionLabel field's value.
 13319  func (s *UpdateEnvironmentInput) SetVersionLabel(v string) *UpdateEnvironmentInput {
 13320  	s.VersionLabel = &v
 13321  	return s
 13322  }
 13323  
 13324  type UpdateTagsForResourceInput struct {
 13325  	_ struct{} `type:"structure"`
 13326  
 13327  	// The Amazon Resource Name (ARN) of the resouce to be updated.
 13328  	//
 13329  	// Must be the ARN of an Elastic Beanstalk resource.
 13330  	//
 13331  	// ResourceArn is a required field
 13332  	ResourceArn *string `type:"string" required:"true"`
 13333  
 13334  	// A list of tags to add or update. If a key of an existing tag is added, the
 13335  	// tag's value is updated.
 13336  	//
 13337  	// Specify at least one of these parameters: TagsToAdd, TagsToRemove.
 13338  	TagsToAdd []*Tag `type:"list"`
 13339  
 13340  	// A list of tag keys to remove. If a tag key doesn't exist, it is silently
 13341  	// ignored.
 13342  	//
 13343  	// Specify at least one of these parameters: TagsToAdd, TagsToRemove.
 13344  	TagsToRemove []*string `type:"list"`
 13345  }
 13346  
 13347  // String returns the string representation.
 13348  //
 13349  // API parameter values that are decorated as "sensitive" in the API will not
 13350  // be included in the string output. The member name will be present, but the
 13351  // value will be replaced with "sensitive".
 13352  func (s UpdateTagsForResourceInput) String() string {
 13353  	return awsutil.Prettify(s)
 13354  }
 13355  
 13356  // GoString returns the string representation.
 13357  //
 13358  // API parameter values that are decorated as "sensitive" in the API will not
 13359  // be included in the string output. The member name will be present, but the
 13360  // value will be replaced with "sensitive".
 13361  func (s UpdateTagsForResourceInput) GoString() string {
 13362  	return s.String()
 13363  }
 13364  
 13365  // Validate inspects the fields of the type to determine if they are valid.
 13366  func (s *UpdateTagsForResourceInput) Validate() error {
 13367  	invalidParams := request.ErrInvalidParams{Context: "UpdateTagsForResourceInput"}
 13368  	if s.ResourceArn == nil {
 13369  		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
 13370  	}
 13371  	if s.TagsToAdd != nil {
 13372  		for i, v := range s.TagsToAdd {
 13373  			if v == nil {
 13374  				continue
 13375  			}
 13376  			if err := v.Validate(); err != nil {
 13377  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TagsToAdd", i), err.(request.ErrInvalidParams))
 13378  			}
 13379  		}
 13380  	}
 13381  
 13382  	if invalidParams.Len() > 0 {
 13383  		return invalidParams
 13384  	}
 13385  	return nil
 13386  }
 13387  
 13388  // SetResourceArn sets the ResourceArn field's value.
 13389  func (s *UpdateTagsForResourceInput) SetResourceArn(v string) *UpdateTagsForResourceInput {
 13390  	s.ResourceArn = &v
 13391  	return s
 13392  }
 13393  
 13394  // SetTagsToAdd sets the TagsToAdd field's value.
 13395  func (s *UpdateTagsForResourceInput) SetTagsToAdd(v []*Tag) *UpdateTagsForResourceInput {
 13396  	s.TagsToAdd = v
 13397  	return s
 13398  }
 13399  
 13400  // SetTagsToRemove sets the TagsToRemove field's value.
 13401  func (s *UpdateTagsForResourceInput) SetTagsToRemove(v []*string) *UpdateTagsForResourceInput {
 13402  	s.TagsToRemove = v
 13403  	return s
 13404  }
 13405  
 13406  type UpdateTagsForResourceOutput struct {
 13407  	_ struct{} `type:"structure"`
 13408  }
 13409  
 13410  // String returns the string representation.
 13411  //
 13412  // API parameter values that are decorated as "sensitive" in the API will not
 13413  // be included in the string output. The member name will be present, but the
 13414  // value will be replaced with "sensitive".
 13415  func (s UpdateTagsForResourceOutput) String() string {
 13416  	return awsutil.Prettify(s)
 13417  }
 13418  
 13419  // GoString returns the string representation.
 13420  //
 13421  // API parameter values that are decorated as "sensitive" in the API will not
 13422  // be included in the string output. The member name will be present, but the
 13423  // value will be replaced with "sensitive".
 13424  func (s UpdateTagsForResourceOutput) GoString() string {
 13425  	return s.String()
 13426  }
 13427  
 13428  // A list of validation messages for a specified configuration template.
 13429  type ValidateConfigurationSettingsInput struct {
 13430  	_ struct{} `type:"structure"`
 13431  
 13432  	// The name of the application that the configuration template or environment
 13433  	// belongs to.
 13434  	//
 13435  	// ApplicationName is a required field
 13436  	ApplicationName *string `min:"1" type:"string" required:"true"`
 13437  
 13438  	// The name of the environment to validate the settings against.
 13439  	//
 13440  	// Condition: You cannot specify both this and a configuration template name.
 13441  	EnvironmentName *string `min:"4" type:"string"`
 13442  
 13443  	// A list of the options and desired values to evaluate.
 13444  	//
 13445  	// OptionSettings is a required field
 13446  	OptionSettings []*ConfigurationOptionSetting `type:"list" required:"true"`
 13447  
 13448  	// The name of the configuration template to validate the settings against.
 13449  	//
 13450  	// Condition: You cannot specify both this and an environment name.
 13451  	TemplateName *string `min:"1" type:"string"`
 13452  }
 13453  
 13454  // String returns the string representation.
 13455  //
 13456  // API parameter values that are decorated as "sensitive" in the API will not
 13457  // be included in the string output. The member name will be present, but the
 13458  // value will be replaced with "sensitive".
 13459  func (s ValidateConfigurationSettingsInput) String() string {
 13460  	return awsutil.Prettify(s)
 13461  }
 13462  
 13463  // GoString returns the string representation.
 13464  //
 13465  // API parameter values that are decorated as "sensitive" in the API will not
 13466  // be included in the string output. The member name will be present, but the
 13467  // value will be replaced with "sensitive".
 13468  func (s ValidateConfigurationSettingsInput) GoString() string {
 13469  	return s.String()
 13470  }
 13471  
 13472  // Validate inspects the fields of the type to determine if they are valid.
 13473  func (s *ValidateConfigurationSettingsInput) Validate() error {
 13474  	invalidParams := request.ErrInvalidParams{Context: "ValidateConfigurationSettingsInput"}
 13475  	if s.ApplicationName == nil {
 13476  		invalidParams.Add(request.NewErrParamRequired("ApplicationName"))
 13477  	}
 13478  	if s.ApplicationName != nil && len(*s.ApplicationName) < 1 {
 13479  		invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1))
 13480  	}
 13481  	if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 {
 13482  		invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4))
 13483  	}
 13484  	if s.OptionSettings == nil {
 13485  		invalidParams.Add(request.NewErrParamRequired("OptionSettings"))
 13486  	}
 13487  	if s.TemplateName != nil && len(*s.TemplateName) < 1 {
 13488  		invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1))
 13489  	}
 13490  	if s.OptionSettings != nil {
 13491  		for i, v := range s.OptionSettings {
 13492  			if v == nil {
 13493  				continue
 13494  			}
 13495  			if err := v.Validate(); err != nil {
 13496  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OptionSettings", i), err.(request.ErrInvalidParams))
 13497  			}
 13498  		}
 13499  	}
 13500  
 13501  	if invalidParams.Len() > 0 {
 13502  		return invalidParams
 13503  	}
 13504  	return nil
 13505  }
 13506  
 13507  // SetApplicationName sets the ApplicationName field's value.
 13508  func (s *ValidateConfigurationSettingsInput) SetApplicationName(v string) *ValidateConfigurationSettingsInput {
 13509  	s.ApplicationName = &v
 13510  	return s
 13511  }
 13512  
 13513  // SetEnvironmentName sets the EnvironmentName field's value.
 13514  func (s *ValidateConfigurationSettingsInput) SetEnvironmentName(v string) *ValidateConfigurationSettingsInput {
 13515  	s.EnvironmentName = &v
 13516  	return s
 13517  }
 13518  
 13519  // SetOptionSettings sets the OptionSettings field's value.
 13520  func (s *ValidateConfigurationSettingsInput) SetOptionSettings(v []*ConfigurationOptionSetting) *ValidateConfigurationSettingsInput {
 13521  	s.OptionSettings = v
 13522  	return s
 13523  }
 13524  
 13525  // SetTemplateName sets the TemplateName field's value.
 13526  func (s *ValidateConfigurationSettingsInput) SetTemplateName(v string) *ValidateConfigurationSettingsInput {
 13527  	s.TemplateName = &v
 13528  	return s
 13529  }
 13530  
 13531  // Provides a list of validation messages.
 13532  type ValidateConfigurationSettingsOutput struct {
 13533  	_ struct{} `type:"structure"`
 13534  
 13535  	// A list of ValidationMessage.
 13536  	Messages []*ValidationMessage `type:"list"`
 13537  }
 13538  
 13539  // String returns the string representation.
 13540  //
 13541  // API parameter values that are decorated as "sensitive" in the API will not
 13542  // be included in the string output. The member name will be present, but the
 13543  // value will be replaced with "sensitive".
 13544  func (s ValidateConfigurationSettingsOutput) String() string {
 13545  	return awsutil.Prettify(s)
 13546  }
 13547  
 13548  // GoString returns the string representation.
 13549  //
 13550  // API parameter values that are decorated as "sensitive" in the API will not
 13551  // be included in the string output. The member name will be present, but the
 13552  // value will be replaced with "sensitive".
 13553  func (s ValidateConfigurationSettingsOutput) GoString() string {
 13554  	return s.String()
 13555  }
 13556  
 13557  // SetMessages sets the Messages field's value.
 13558  func (s *ValidateConfigurationSettingsOutput) SetMessages(v []*ValidationMessage) *ValidateConfigurationSettingsOutput {
 13559  	s.Messages = v
 13560  	return s
 13561  }
 13562  
 13563  // An error or warning for a desired configuration option value.
 13564  type ValidationMessage struct {
 13565  	_ struct{} `type:"structure"`
 13566  
 13567  	// A message describing the error or warning.
 13568  	Message *string `type:"string"`
 13569  
 13570  	// The namespace to which the option belongs.
 13571  	Namespace *string `type:"string"`
 13572  
 13573  	// The name of the option.
 13574  	OptionName *string `type:"string"`
 13575  
 13576  	// An indication of the severity of this message:
 13577  	//
 13578  	//    * error: This message indicates that this is not a valid setting for an
 13579  	//    option.
 13580  	//
 13581  	//    * warning: This message is providing information you should take into
 13582  	//    account.
 13583  	Severity *string `type:"string" enum:"ValidationSeverity"`
 13584  }
 13585  
 13586  // String returns the string representation.
 13587  //
 13588  // API parameter values that are decorated as "sensitive" in the API will not
 13589  // be included in the string output. The member name will be present, but the
 13590  // value will be replaced with "sensitive".
 13591  func (s ValidationMessage) String() string {
 13592  	return awsutil.Prettify(s)
 13593  }
 13594  
 13595  // GoString returns the string representation.
 13596  //
 13597  // API parameter values that are decorated as "sensitive" in the API will not
 13598  // be included in the string output. The member name will be present, but the
 13599  // value will be replaced with "sensitive".
 13600  func (s ValidationMessage) GoString() string {
 13601  	return s.String()
 13602  }
 13603  
 13604  // SetMessage sets the Message field's value.
 13605  func (s *ValidationMessage) SetMessage(v string) *ValidationMessage {
 13606  	s.Message = &v
 13607  	return s
 13608  }
 13609  
 13610  // SetNamespace sets the Namespace field's value.
 13611  func (s *ValidationMessage) SetNamespace(v string) *ValidationMessage {
 13612  	s.Namespace = &v
 13613  	return s
 13614  }
 13615  
 13616  // SetOptionName sets the OptionName field's value.
 13617  func (s *ValidationMessage) SetOptionName(v string) *ValidationMessage {
 13618  	s.OptionName = &v
 13619  	return s
 13620  }
 13621  
 13622  // SetSeverity sets the Severity field's value.
 13623  func (s *ValidationMessage) SetSeverity(v string) *ValidationMessage {
 13624  	s.Severity = &v
 13625  	return s
 13626  }
 13627  
 13628  const (
 13629  	// ActionHistoryStatusCompleted is a ActionHistoryStatus enum value
 13630  	ActionHistoryStatusCompleted = "Completed"
 13631  
 13632  	// ActionHistoryStatusFailed is a ActionHistoryStatus enum value
 13633  	ActionHistoryStatusFailed = "Failed"
 13634  
 13635  	// ActionHistoryStatusUnknown is a ActionHistoryStatus enum value
 13636  	ActionHistoryStatusUnknown = "Unknown"
 13637  )
 13638  
 13639  // ActionHistoryStatus_Values returns all elements of the ActionHistoryStatus enum
 13640  func ActionHistoryStatus_Values() []string {
 13641  	return []string{
 13642  		ActionHistoryStatusCompleted,
 13643  		ActionHistoryStatusFailed,
 13644  		ActionHistoryStatusUnknown,
 13645  	}
 13646  }
 13647  
 13648  const (
 13649  	// ActionStatusScheduled is a ActionStatus enum value
 13650  	ActionStatusScheduled = "Scheduled"
 13651  
 13652  	// ActionStatusPending is a ActionStatus enum value
 13653  	ActionStatusPending = "Pending"
 13654  
 13655  	// ActionStatusRunning is a ActionStatus enum value
 13656  	ActionStatusRunning = "Running"
 13657  
 13658  	// ActionStatusUnknown is a ActionStatus enum value
 13659  	ActionStatusUnknown = "Unknown"
 13660  )
 13661  
 13662  // ActionStatus_Values returns all elements of the ActionStatus enum
 13663  func ActionStatus_Values() []string {
 13664  	return []string{
 13665  		ActionStatusScheduled,
 13666  		ActionStatusPending,
 13667  		ActionStatusRunning,
 13668  		ActionStatusUnknown,
 13669  	}
 13670  }
 13671  
 13672  const (
 13673  	// ActionTypeInstanceRefresh is a ActionType enum value
 13674  	ActionTypeInstanceRefresh = "InstanceRefresh"
 13675  
 13676  	// ActionTypePlatformUpdate is a ActionType enum value
 13677  	ActionTypePlatformUpdate = "PlatformUpdate"
 13678  
 13679  	// ActionTypeUnknown is a ActionType enum value
 13680  	ActionTypeUnknown = "Unknown"
 13681  )
 13682  
 13683  // ActionType_Values returns all elements of the ActionType enum
 13684  func ActionType_Values() []string {
 13685  	return []string{
 13686  		ActionTypeInstanceRefresh,
 13687  		ActionTypePlatformUpdate,
 13688  		ActionTypeUnknown,
 13689  	}
 13690  }
 13691  
 13692  const (
 13693  	// ApplicationVersionStatusProcessed is a ApplicationVersionStatus enum value
 13694  	ApplicationVersionStatusProcessed = "Processed"
 13695  
 13696  	// ApplicationVersionStatusUnprocessed is a ApplicationVersionStatus enum value
 13697  	ApplicationVersionStatusUnprocessed = "Unprocessed"
 13698  
 13699  	// ApplicationVersionStatusFailed is a ApplicationVersionStatus enum value
 13700  	ApplicationVersionStatusFailed = "Failed"
 13701  
 13702  	// ApplicationVersionStatusProcessing is a ApplicationVersionStatus enum value
 13703  	ApplicationVersionStatusProcessing = "Processing"
 13704  
 13705  	// ApplicationVersionStatusBuilding is a ApplicationVersionStatus enum value
 13706  	ApplicationVersionStatusBuilding = "Building"
 13707  )
 13708  
 13709  // ApplicationVersionStatus_Values returns all elements of the ApplicationVersionStatus enum
 13710  func ApplicationVersionStatus_Values() []string {
 13711  	return []string{
 13712  		ApplicationVersionStatusProcessed,
 13713  		ApplicationVersionStatusUnprocessed,
 13714  		ApplicationVersionStatusFailed,
 13715  		ApplicationVersionStatusProcessing,
 13716  		ApplicationVersionStatusBuilding,
 13717  	}
 13718  }
 13719  
 13720  const (
 13721  	// ComputeTypeBuildGeneral1Small is a ComputeType enum value
 13722  	ComputeTypeBuildGeneral1Small = "BUILD_GENERAL1_SMALL"
 13723  
 13724  	// ComputeTypeBuildGeneral1Medium is a ComputeType enum value
 13725  	ComputeTypeBuildGeneral1Medium = "BUILD_GENERAL1_MEDIUM"
 13726  
 13727  	// ComputeTypeBuildGeneral1Large is a ComputeType enum value
 13728  	ComputeTypeBuildGeneral1Large = "BUILD_GENERAL1_LARGE"
 13729  )
 13730  
 13731  // ComputeType_Values returns all elements of the ComputeType enum
 13732  func ComputeType_Values() []string {
 13733  	return []string{
 13734  		ComputeTypeBuildGeneral1Small,
 13735  		ComputeTypeBuildGeneral1Medium,
 13736  		ComputeTypeBuildGeneral1Large,
 13737  	}
 13738  }
 13739  
 13740  const (
 13741  	// ConfigurationDeploymentStatusDeployed is a ConfigurationDeploymentStatus enum value
 13742  	ConfigurationDeploymentStatusDeployed = "deployed"
 13743  
 13744  	// ConfigurationDeploymentStatusPending is a ConfigurationDeploymentStatus enum value
 13745  	ConfigurationDeploymentStatusPending = "pending"
 13746  
 13747  	// ConfigurationDeploymentStatusFailed is a ConfigurationDeploymentStatus enum value
 13748  	ConfigurationDeploymentStatusFailed = "failed"
 13749  )
 13750  
 13751  // ConfigurationDeploymentStatus_Values returns all elements of the ConfigurationDeploymentStatus enum
 13752  func ConfigurationDeploymentStatus_Values() []string {
 13753  	return []string{
 13754  		ConfigurationDeploymentStatusDeployed,
 13755  		ConfigurationDeploymentStatusPending,
 13756  		ConfigurationDeploymentStatusFailed,
 13757  	}
 13758  }
 13759  
 13760  const (
 13761  	// ConfigurationOptionValueTypeScalar is a ConfigurationOptionValueType enum value
 13762  	ConfigurationOptionValueTypeScalar = "Scalar"
 13763  
 13764  	// ConfigurationOptionValueTypeList is a ConfigurationOptionValueType enum value
 13765  	ConfigurationOptionValueTypeList = "List"
 13766  )
 13767  
 13768  // ConfigurationOptionValueType_Values returns all elements of the ConfigurationOptionValueType enum
 13769  func ConfigurationOptionValueType_Values() []string {
 13770  	return []string{
 13771  		ConfigurationOptionValueTypeScalar,
 13772  		ConfigurationOptionValueTypeList,
 13773  	}
 13774  }
 13775  
 13776  const (
 13777  	// EnvironmentHealthGreen is a EnvironmentHealth enum value
 13778  	EnvironmentHealthGreen = "Green"
 13779  
 13780  	// EnvironmentHealthYellow is a EnvironmentHealth enum value
 13781  	EnvironmentHealthYellow = "Yellow"
 13782  
 13783  	// EnvironmentHealthRed is a EnvironmentHealth enum value
 13784  	EnvironmentHealthRed = "Red"
 13785  
 13786  	// EnvironmentHealthGrey is a EnvironmentHealth enum value
 13787  	EnvironmentHealthGrey = "Grey"
 13788  )
 13789  
 13790  // EnvironmentHealth_Values returns all elements of the EnvironmentHealth enum
 13791  func EnvironmentHealth_Values() []string {
 13792  	return []string{
 13793  		EnvironmentHealthGreen,
 13794  		EnvironmentHealthYellow,
 13795  		EnvironmentHealthRed,
 13796  		EnvironmentHealthGrey,
 13797  	}
 13798  }
 13799  
 13800  const (
 13801  	// EnvironmentHealthAttributeStatus is a EnvironmentHealthAttribute enum value
 13802  	EnvironmentHealthAttributeStatus = "Status"
 13803  
 13804  	// EnvironmentHealthAttributeColor is a EnvironmentHealthAttribute enum value
 13805  	EnvironmentHealthAttributeColor = "Color"
 13806  
 13807  	// EnvironmentHealthAttributeCauses is a EnvironmentHealthAttribute enum value
 13808  	EnvironmentHealthAttributeCauses = "Causes"
 13809  
 13810  	// EnvironmentHealthAttributeApplicationMetrics is a EnvironmentHealthAttribute enum value
 13811  	EnvironmentHealthAttributeApplicationMetrics = "ApplicationMetrics"
 13812  
 13813  	// EnvironmentHealthAttributeInstancesHealth is a EnvironmentHealthAttribute enum value
 13814  	EnvironmentHealthAttributeInstancesHealth = "InstancesHealth"
 13815  
 13816  	// EnvironmentHealthAttributeAll is a EnvironmentHealthAttribute enum value
 13817  	EnvironmentHealthAttributeAll = "All"
 13818  
 13819  	// EnvironmentHealthAttributeHealthStatus is a EnvironmentHealthAttribute enum value
 13820  	EnvironmentHealthAttributeHealthStatus = "HealthStatus"
 13821  
 13822  	// EnvironmentHealthAttributeRefreshedAt is a EnvironmentHealthAttribute enum value
 13823  	EnvironmentHealthAttributeRefreshedAt = "RefreshedAt"
 13824  )
 13825  
 13826  // EnvironmentHealthAttribute_Values returns all elements of the EnvironmentHealthAttribute enum
 13827  func EnvironmentHealthAttribute_Values() []string {
 13828  	return []string{
 13829  		EnvironmentHealthAttributeStatus,
 13830  		EnvironmentHealthAttributeColor,
 13831  		EnvironmentHealthAttributeCauses,
 13832  		EnvironmentHealthAttributeApplicationMetrics,
 13833  		EnvironmentHealthAttributeInstancesHealth,
 13834  		EnvironmentHealthAttributeAll,
 13835  		EnvironmentHealthAttributeHealthStatus,
 13836  		EnvironmentHealthAttributeRefreshedAt,
 13837  	}
 13838  }
 13839  
 13840  const (
 13841  	// EnvironmentHealthStatusNoData is a EnvironmentHealthStatus enum value
 13842  	EnvironmentHealthStatusNoData = "NoData"
 13843  
 13844  	// EnvironmentHealthStatusUnknown is a EnvironmentHealthStatus enum value
 13845  	EnvironmentHealthStatusUnknown = "Unknown"
 13846  
 13847  	// EnvironmentHealthStatusPending is a EnvironmentHealthStatus enum value
 13848  	EnvironmentHealthStatusPending = "Pending"
 13849  
 13850  	// EnvironmentHealthStatusOk is a EnvironmentHealthStatus enum value
 13851  	EnvironmentHealthStatusOk = "Ok"
 13852  
 13853  	// EnvironmentHealthStatusInfo is a EnvironmentHealthStatus enum value
 13854  	EnvironmentHealthStatusInfo = "Info"
 13855  
 13856  	// EnvironmentHealthStatusWarning is a EnvironmentHealthStatus enum value
 13857  	EnvironmentHealthStatusWarning = "Warning"
 13858  
 13859  	// EnvironmentHealthStatusDegraded is a EnvironmentHealthStatus enum value
 13860  	EnvironmentHealthStatusDegraded = "Degraded"
 13861  
 13862  	// EnvironmentHealthStatusSevere is a EnvironmentHealthStatus enum value
 13863  	EnvironmentHealthStatusSevere = "Severe"
 13864  
 13865  	// EnvironmentHealthStatusSuspended is a EnvironmentHealthStatus enum value
 13866  	EnvironmentHealthStatusSuspended = "Suspended"
 13867  )
 13868  
 13869  // EnvironmentHealthStatus_Values returns all elements of the EnvironmentHealthStatus enum
 13870  func EnvironmentHealthStatus_Values() []string {
 13871  	return []string{
 13872  		EnvironmentHealthStatusNoData,
 13873  		EnvironmentHealthStatusUnknown,
 13874  		EnvironmentHealthStatusPending,
 13875  		EnvironmentHealthStatusOk,
 13876  		EnvironmentHealthStatusInfo,
 13877  		EnvironmentHealthStatusWarning,
 13878  		EnvironmentHealthStatusDegraded,
 13879  		EnvironmentHealthStatusSevere,
 13880  		EnvironmentHealthStatusSuspended,
 13881  	}
 13882  }
 13883  
 13884  const (
 13885  	// EnvironmentInfoTypeTail is a EnvironmentInfoType enum value
 13886  	EnvironmentInfoTypeTail = "tail"
 13887  
 13888  	// EnvironmentInfoTypeBundle is a EnvironmentInfoType enum value
 13889  	EnvironmentInfoTypeBundle = "bundle"
 13890  )
 13891  
 13892  // EnvironmentInfoType_Values returns all elements of the EnvironmentInfoType enum
 13893  func EnvironmentInfoType_Values() []string {
 13894  	return []string{
 13895  		EnvironmentInfoTypeTail,
 13896  		EnvironmentInfoTypeBundle,
 13897  	}
 13898  }
 13899  
 13900  const (
 13901  	// EnvironmentStatusAborting is a EnvironmentStatus enum value
 13902  	EnvironmentStatusAborting = "Aborting"
 13903  
 13904  	// EnvironmentStatusLaunching is a EnvironmentStatus enum value
 13905  	EnvironmentStatusLaunching = "Launching"
 13906  
 13907  	// EnvironmentStatusUpdating is a EnvironmentStatus enum value
 13908  	EnvironmentStatusUpdating = "Updating"
 13909  
 13910  	// EnvironmentStatusLinkingFrom is a EnvironmentStatus enum value
 13911  	EnvironmentStatusLinkingFrom = "LinkingFrom"
 13912  
 13913  	// EnvironmentStatusLinkingTo is a EnvironmentStatus enum value
 13914  	EnvironmentStatusLinkingTo = "LinkingTo"
 13915  
 13916  	// EnvironmentStatusReady is a EnvironmentStatus enum value
 13917  	EnvironmentStatusReady = "Ready"
 13918  
 13919  	// EnvironmentStatusTerminating is a EnvironmentStatus enum value
 13920  	EnvironmentStatusTerminating = "Terminating"
 13921  
 13922  	// EnvironmentStatusTerminated is a EnvironmentStatus enum value
 13923  	EnvironmentStatusTerminated = "Terminated"
 13924  )
 13925  
 13926  // EnvironmentStatus_Values returns all elements of the EnvironmentStatus enum
 13927  func EnvironmentStatus_Values() []string {
 13928  	return []string{
 13929  		EnvironmentStatusAborting,
 13930  		EnvironmentStatusLaunching,
 13931  		EnvironmentStatusUpdating,
 13932  		EnvironmentStatusLinkingFrom,
 13933  		EnvironmentStatusLinkingTo,
 13934  		EnvironmentStatusReady,
 13935  		EnvironmentStatusTerminating,
 13936  		EnvironmentStatusTerminated,
 13937  	}
 13938  }
 13939  
 13940  const (
 13941  	// EventSeverityTrace is a EventSeverity enum value
 13942  	EventSeverityTrace = "TRACE"
 13943  
 13944  	// EventSeverityDebug is a EventSeverity enum value
 13945  	EventSeverityDebug = "DEBUG"
 13946  
 13947  	// EventSeverityInfo is a EventSeverity enum value
 13948  	EventSeverityInfo = "INFO"
 13949  
 13950  	// EventSeverityWarn is a EventSeverity enum value
 13951  	EventSeverityWarn = "WARN"
 13952  
 13953  	// EventSeverityError is a EventSeverity enum value
 13954  	EventSeverityError = "ERROR"
 13955  
 13956  	// EventSeverityFatal is a EventSeverity enum value
 13957  	EventSeverityFatal = "FATAL"
 13958  )
 13959  
 13960  // EventSeverity_Values returns all elements of the EventSeverity enum
 13961  func EventSeverity_Values() []string {
 13962  	return []string{
 13963  		EventSeverityTrace,
 13964  		EventSeverityDebug,
 13965  		EventSeverityInfo,
 13966  		EventSeverityWarn,
 13967  		EventSeverityError,
 13968  		EventSeverityFatal,
 13969  	}
 13970  }
 13971  
 13972  const (
 13973  	// FailureTypeUpdateCancelled is a FailureType enum value
 13974  	FailureTypeUpdateCancelled = "UpdateCancelled"
 13975  
 13976  	// FailureTypeCancellationFailed is a FailureType enum value
 13977  	FailureTypeCancellationFailed = "CancellationFailed"
 13978  
 13979  	// FailureTypeRollbackFailed is a FailureType enum value
 13980  	FailureTypeRollbackFailed = "RollbackFailed"
 13981  
 13982  	// FailureTypeRollbackSuccessful is a FailureType enum value
 13983  	FailureTypeRollbackSuccessful = "RollbackSuccessful"
 13984  
 13985  	// FailureTypeInternalFailure is a FailureType enum value
 13986  	FailureTypeInternalFailure = "InternalFailure"
 13987  
 13988  	// FailureTypeInvalidEnvironmentState is a FailureType enum value
 13989  	FailureTypeInvalidEnvironmentState = "InvalidEnvironmentState"
 13990  
 13991  	// FailureTypePermissionsError is a FailureType enum value
 13992  	FailureTypePermissionsError = "PermissionsError"
 13993  )
 13994  
 13995  // FailureType_Values returns all elements of the FailureType enum
 13996  func FailureType_Values() []string {
 13997  	return []string{
 13998  		FailureTypeUpdateCancelled,
 13999  		FailureTypeCancellationFailed,
 14000  		FailureTypeRollbackFailed,
 14001  		FailureTypeRollbackSuccessful,
 14002  		FailureTypeInternalFailure,
 14003  		FailureTypeInvalidEnvironmentState,
 14004  		FailureTypePermissionsError,
 14005  	}
 14006  }
 14007  
 14008  const (
 14009  	// InstancesHealthAttributeHealthStatus is a InstancesHealthAttribute enum value
 14010  	InstancesHealthAttributeHealthStatus = "HealthStatus"
 14011  
 14012  	// InstancesHealthAttributeColor is a InstancesHealthAttribute enum value
 14013  	InstancesHealthAttributeColor = "Color"
 14014  
 14015  	// InstancesHealthAttributeCauses is a InstancesHealthAttribute enum value
 14016  	InstancesHealthAttributeCauses = "Causes"
 14017  
 14018  	// InstancesHealthAttributeApplicationMetrics is a InstancesHealthAttribute enum value
 14019  	InstancesHealthAttributeApplicationMetrics = "ApplicationMetrics"
 14020  
 14021  	// InstancesHealthAttributeRefreshedAt is a InstancesHealthAttribute enum value
 14022  	InstancesHealthAttributeRefreshedAt = "RefreshedAt"
 14023  
 14024  	// InstancesHealthAttributeLaunchedAt is a InstancesHealthAttribute enum value
 14025  	InstancesHealthAttributeLaunchedAt = "LaunchedAt"
 14026  
 14027  	// InstancesHealthAttributeSystem is a InstancesHealthAttribute enum value
 14028  	InstancesHealthAttributeSystem = "System"
 14029  
 14030  	// InstancesHealthAttributeDeployment is a InstancesHealthAttribute enum value
 14031  	InstancesHealthAttributeDeployment = "Deployment"
 14032  
 14033  	// InstancesHealthAttributeAvailabilityZone is a InstancesHealthAttribute enum value
 14034  	InstancesHealthAttributeAvailabilityZone = "AvailabilityZone"
 14035  
 14036  	// InstancesHealthAttributeInstanceType is a InstancesHealthAttribute enum value
 14037  	InstancesHealthAttributeInstanceType = "InstanceType"
 14038  
 14039  	// InstancesHealthAttributeAll is a InstancesHealthAttribute enum value
 14040  	InstancesHealthAttributeAll = "All"
 14041  )
 14042  
 14043  // InstancesHealthAttribute_Values returns all elements of the InstancesHealthAttribute enum
 14044  func InstancesHealthAttribute_Values() []string {
 14045  	return []string{
 14046  		InstancesHealthAttributeHealthStatus,
 14047  		InstancesHealthAttributeColor,
 14048  		InstancesHealthAttributeCauses,
 14049  		InstancesHealthAttributeApplicationMetrics,
 14050  		InstancesHealthAttributeRefreshedAt,
 14051  		InstancesHealthAttributeLaunchedAt,
 14052  		InstancesHealthAttributeSystem,
 14053  		InstancesHealthAttributeDeployment,
 14054  		InstancesHealthAttributeAvailabilityZone,
 14055  		InstancesHealthAttributeInstanceType,
 14056  		InstancesHealthAttributeAll,
 14057  	}
 14058  }
 14059  
 14060  const (
 14061  	// PlatformStatusCreating is a PlatformStatus enum value
 14062  	PlatformStatusCreating = "Creating"
 14063  
 14064  	// PlatformStatusFailed is a PlatformStatus enum value
 14065  	PlatformStatusFailed = "Failed"
 14066  
 14067  	// PlatformStatusReady is a PlatformStatus enum value
 14068  	PlatformStatusReady = "Ready"
 14069  
 14070  	// PlatformStatusDeleting is a PlatformStatus enum value
 14071  	PlatformStatusDeleting = "Deleting"
 14072  
 14073  	// PlatformStatusDeleted is a PlatformStatus enum value
 14074  	PlatformStatusDeleted = "Deleted"
 14075  )
 14076  
 14077  // PlatformStatus_Values returns all elements of the PlatformStatus enum
 14078  func PlatformStatus_Values() []string {
 14079  	return []string{
 14080  		PlatformStatusCreating,
 14081  		PlatformStatusFailed,
 14082  		PlatformStatusReady,
 14083  		PlatformStatusDeleting,
 14084  		PlatformStatusDeleted,
 14085  	}
 14086  }
 14087  
 14088  const (
 14089  	// SourceRepositoryCodeCommit is a SourceRepository enum value
 14090  	SourceRepositoryCodeCommit = "CodeCommit"
 14091  
 14092  	// SourceRepositoryS3 is a SourceRepository enum value
 14093  	SourceRepositoryS3 = "S3"
 14094  )
 14095  
 14096  // SourceRepository_Values returns all elements of the SourceRepository enum
 14097  func SourceRepository_Values() []string {
 14098  	return []string{
 14099  		SourceRepositoryCodeCommit,
 14100  		SourceRepositoryS3,
 14101  	}
 14102  }
 14103  
 14104  const (
 14105  	// SourceTypeGit is a SourceType enum value
 14106  	SourceTypeGit = "Git"
 14107  
 14108  	// SourceTypeZip is a SourceType enum value
 14109  	SourceTypeZip = "Zip"
 14110  )
 14111  
 14112  // SourceType_Values returns all elements of the SourceType enum
 14113  func SourceType_Values() []string {
 14114  	return []string{
 14115  		SourceTypeGit,
 14116  		SourceTypeZip,
 14117  	}
 14118  }
 14119  
 14120  const (
 14121  	// ValidationSeverityError is a ValidationSeverity enum value
 14122  	ValidationSeverityError = "error"
 14123  
 14124  	// ValidationSeverityWarning is a ValidationSeverity enum value
 14125  	ValidationSeverityWarning = "warning"
 14126  )
 14127  
 14128  // ValidationSeverity_Values returns all elements of the ValidationSeverity enum
 14129  func ValidationSeverity_Values() []string {
 14130  	return []string{
 14131  		ValidationSeverityError,
 14132  		ValidationSeverityWarning,
 14133  	}
 14134  }