1// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
2
3package elasticbeanstalk
4
5import (
6	"fmt"
7	"time"
8
9	"github.com/aws/aws-sdk-go/aws"
10	"github.com/aws/aws-sdk-go/aws/awsutil"
11	"github.com/aws/aws-sdk-go/aws/request"
12	"github.com/aws/aws-sdk-go/private/protocol"
13	"github.com/aws/aws-sdk-go/private/protocol/query"
14)
15
16const 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 complets
21// successfuly.
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
42func (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.Remove(query.UnmarshalHandler)
56	req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
57	return
58}
59
60// AbortEnvironmentUpdate API operation for AWS Elastic Beanstalk.
61//
62// Cancels in-progress environment configuration update or application version
63// deployment.
64//
65// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
66// with awserr.Error's Code and Message methods to get detailed information about
67// the error.
68//
69// See the AWS API reference guide for AWS Elastic Beanstalk's
70// API operation AbortEnvironmentUpdate for usage and error information.
71//
72// Returned Error Codes:
73//   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
74//   The specified account does not have sufficient privileges for one of more
75//   AWS services.
76//
77// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/AbortEnvironmentUpdate
78func (c *ElasticBeanstalk) AbortEnvironmentUpdate(input *AbortEnvironmentUpdateInput) (*AbortEnvironmentUpdateOutput, error) {
79	req, out := c.AbortEnvironmentUpdateRequest(input)
80	return out, req.Send()
81}
82
83// AbortEnvironmentUpdateWithContext is the same as AbortEnvironmentUpdate with the addition of
84// the ability to pass a context and additional request options.
85//
86// See AbortEnvironmentUpdate for details on how to use this API operation.
87//
88// The context must be non-nil and will be used for request cancellation. If
89// the context is nil a panic will occur. In the future the SDK may create
90// sub-contexts for http.Requests. See https://golang.org/pkg/context/
91// for more information on using Contexts.
92func (c *ElasticBeanstalk) AbortEnvironmentUpdateWithContext(ctx aws.Context, input *AbortEnvironmentUpdateInput, opts ...request.Option) (*AbortEnvironmentUpdateOutput, error) {
93	req, out := c.AbortEnvironmentUpdateRequest(input)
94	req.SetContext(ctx)
95	req.ApplyOptions(opts...)
96	return out, req.Send()
97}
98
99const opApplyEnvironmentManagedAction = "ApplyEnvironmentManagedAction"
100
101// ApplyEnvironmentManagedActionRequest generates a "aws/request.Request" representing the
102// client's request for the ApplyEnvironmentManagedAction operation. The "output" return
103// value will be populated with the request's response once the request complets
104// successfuly.
105//
106// Use "Send" method on the returned Request to send the API call to the service.
107// the "output" return value is not valid until after Send returns without error.
108//
109// See ApplyEnvironmentManagedAction for more information on using the ApplyEnvironmentManagedAction
110// API call, and error handling.
111//
112// This method is useful when you want to inject custom logic or configuration
113// into the SDK's request lifecycle. Such as custom headers, or retry logic.
114//
115//
116//    // Example sending a request using the ApplyEnvironmentManagedActionRequest method.
117//    req, resp := client.ApplyEnvironmentManagedActionRequest(params)
118//
119//    err := req.Send()
120//    if err == nil { // resp is now filled
121//        fmt.Println(resp)
122//    }
123//
124// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ApplyEnvironmentManagedAction
125func (c *ElasticBeanstalk) ApplyEnvironmentManagedActionRequest(input *ApplyEnvironmentManagedActionInput) (req *request.Request, output *ApplyEnvironmentManagedActionOutput) {
126	op := &request.Operation{
127		Name:       opApplyEnvironmentManagedAction,
128		HTTPMethod: "POST",
129		HTTPPath:   "/",
130	}
131
132	if input == nil {
133		input = &ApplyEnvironmentManagedActionInput{}
134	}
135
136	output = &ApplyEnvironmentManagedActionOutput{}
137	req = c.newRequest(op, input, output)
138	return
139}
140
141// ApplyEnvironmentManagedAction API operation for AWS Elastic Beanstalk.
142//
143// Applies a scheduled managed action immediately. A managed action can be applied
144// only if its status is Scheduled. Get the status and action ID of a managed
145// action with DescribeEnvironmentManagedActions.
146//
147// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
148// with awserr.Error's Code and Message methods to get detailed information about
149// the error.
150//
151// See the AWS API reference guide for AWS Elastic Beanstalk's
152// API operation ApplyEnvironmentManagedAction for usage and error information.
153//
154// Returned Error Codes:
155//   * ErrCodeServiceException "ServiceException"
156//   A generic service exception has occurred.
157//
158//   * ErrCodeManagedActionInvalidStateException "ManagedActionInvalidStateException"
159//   Cannot modify the managed action in its current state.
160//
161// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ApplyEnvironmentManagedAction
162func (c *ElasticBeanstalk) ApplyEnvironmentManagedAction(input *ApplyEnvironmentManagedActionInput) (*ApplyEnvironmentManagedActionOutput, error) {
163	req, out := c.ApplyEnvironmentManagedActionRequest(input)
164	return out, req.Send()
165}
166
167// ApplyEnvironmentManagedActionWithContext is the same as ApplyEnvironmentManagedAction with the addition of
168// the ability to pass a context and additional request options.
169//
170// See ApplyEnvironmentManagedAction for details on how to use this API operation.
171//
172// The context must be non-nil and will be used for request cancellation. If
173// the context is nil a panic will occur. In the future the SDK may create
174// sub-contexts for http.Requests. See https://golang.org/pkg/context/
175// for more information on using Contexts.
176func (c *ElasticBeanstalk) ApplyEnvironmentManagedActionWithContext(ctx aws.Context, input *ApplyEnvironmentManagedActionInput, opts ...request.Option) (*ApplyEnvironmentManagedActionOutput, error) {
177	req, out := c.ApplyEnvironmentManagedActionRequest(input)
178	req.SetContext(ctx)
179	req.ApplyOptions(opts...)
180	return out, req.Send()
181}
182
183const opCheckDNSAvailability = "CheckDNSAvailability"
184
185// CheckDNSAvailabilityRequest generates a "aws/request.Request" representing the
186// client's request for the CheckDNSAvailability operation. The "output" return
187// value will be populated with the request's response once the request complets
188// successfuly.
189//
190// Use "Send" method on the returned Request to send the API call to the service.
191// the "output" return value is not valid until after Send returns without error.
192//
193// See CheckDNSAvailability for more information on using the CheckDNSAvailability
194// API call, and error handling.
195//
196// This method is useful when you want to inject custom logic or configuration
197// into the SDK's request lifecycle. Such as custom headers, or retry logic.
198//
199//
200//    // Example sending a request using the CheckDNSAvailabilityRequest method.
201//    req, resp := client.CheckDNSAvailabilityRequest(params)
202//
203//    err := req.Send()
204//    if err == nil { // resp is now filled
205//        fmt.Println(resp)
206//    }
207//
208// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/CheckDNSAvailability
209func (c *ElasticBeanstalk) CheckDNSAvailabilityRequest(input *CheckDNSAvailabilityInput) (req *request.Request, output *CheckDNSAvailabilityOutput) {
210	op := &request.Operation{
211		Name:       opCheckDNSAvailability,
212		HTTPMethod: "POST",
213		HTTPPath:   "/",
214	}
215
216	if input == nil {
217		input = &CheckDNSAvailabilityInput{}
218	}
219
220	output = &CheckDNSAvailabilityOutput{}
221	req = c.newRequest(op, input, output)
222	return
223}
224
225// CheckDNSAvailability API operation for AWS Elastic Beanstalk.
226//
227// Checks if the specified CNAME is available.
228//
229// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
230// with awserr.Error's Code and Message methods to get detailed information about
231// the error.
232//
233// See the AWS API reference guide for AWS Elastic Beanstalk's
234// API operation CheckDNSAvailability for usage and error information.
235// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/CheckDNSAvailability
236func (c *ElasticBeanstalk) CheckDNSAvailability(input *CheckDNSAvailabilityInput) (*CheckDNSAvailabilityOutput, error) {
237	req, out := c.CheckDNSAvailabilityRequest(input)
238	return out, req.Send()
239}
240
241// CheckDNSAvailabilityWithContext is the same as CheckDNSAvailability with the addition of
242// the ability to pass a context and additional request options.
243//
244// See CheckDNSAvailability for details on how to use this API operation.
245//
246// The context must be non-nil and will be used for request cancellation. If
247// the context is nil a panic will occur. In the future the SDK may create
248// sub-contexts for http.Requests. See https://golang.org/pkg/context/
249// for more information on using Contexts.
250func (c *ElasticBeanstalk) CheckDNSAvailabilityWithContext(ctx aws.Context, input *CheckDNSAvailabilityInput, opts ...request.Option) (*CheckDNSAvailabilityOutput, error) {
251	req, out := c.CheckDNSAvailabilityRequest(input)
252	req.SetContext(ctx)
253	req.ApplyOptions(opts...)
254	return out, req.Send()
255}
256
257const opComposeEnvironments = "ComposeEnvironments"
258
259// ComposeEnvironmentsRequest generates a "aws/request.Request" representing the
260// client's request for the ComposeEnvironments operation. The "output" return
261// value will be populated with the request's response once the request complets
262// successfuly.
263//
264// Use "Send" method on the returned Request to send the API call to the service.
265// the "output" return value is not valid until after Send returns without error.
266//
267// See ComposeEnvironments for more information on using the ComposeEnvironments
268// API call, and error handling.
269//
270// This method is useful when you want to inject custom logic or configuration
271// into the SDK's request lifecycle. Such as custom headers, or retry logic.
272//
273//
274//    // Example sending a request using the ComposeEnvironmentsRequest method.
275//    req, resp := client.ComposeEnvironmentsRequest(params)
276//
277//    err := req.Send()
278//    if err == nil { // resp is now filled
279//        fmt.Println(resp)
280//    }
281//
282// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ComposeEnvironments
283func (c *ElasticBeanstalk) ComposeEnvironmentsRequest(input *ComposeEnvironmentsInput) (req *request.Request, output *EnvironmentDescriptionsMessage) {
284	op := &request.Operation{
285		Name:       opComposeEnvironments,
286		HTTPMethod: "POST",
287		HTTPPath:   "/",
288	}
289
290	if input == nil {
291		input = &ComposeEnvironmentsInput{}
292	}
293
294	output = &EnvironmentDescriptionsMessage{}
295	req = c.newRequest(op, input, output)
296	return
297}
298
299// ComposeEnvironments API operation for AWS Elastic Beanstalk.
300//
301// Create or update a group of environments that each run a separate component
302// of a single application. Takes a list of version labels that specify application
303// source bundles for each of the environments to create or update. The name
304// of each environment and other required information must be included in the
305// source bundles in an environment manifest named env.yaml. See Compose Environments
306// (http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/environment-mgmt-compose.html)
307// for details.
308//
309// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
310// with awserr.Error's Code and Message methods to get detailed information about
311// the error.
312//
313// See the AWS API reference guide for AWS Elastic Beanstalk's
314// API operation ComposeEnvironments for usage and error information.
315//
316// Returned Error Codes:
317//   * ErrCodeTooManyEnvironmentsException "TooManyEnvironmentsException"
318//   The specified account has reached its limit of environments.
319//
320//   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
321//   The specified account does not have sufficient privileges for one of more
322//   AWS services.
323//
324// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ComposeEnvironments
325func (c *ElasticBeanstalk) ComposeEnvironments(input *ComposeEnvironmentsInput) (*EnvironmentDescriptionsMessage, error) {
326	req, out := c.ComposeEnvironmentsRequest(input)
327	return out, req.Send()
328}
329
330// ComposeEnvironmentsWithContext is the same as ComposeEnvironments with the addition of
331// the ability to pass a context and additional request options.
332//
333// See ComposeEnvironments for details on how to use this API operation.
334//
335// The context must be non-nil and will be used for request cancellation. If
336// the context is nil a panic will occur. In the future the SDK may create
337// sub-contexts for http.Requests. See https://golang.org/pkg/context/
338// for more information on using Contexts.
339func (c *ElasticBeanstalk) ComposeEnvironmentsWithContext(ctx aws.Context, input *ComposeEnvironmentsInput, opts ...request.Option) (*EnvironmentDescriptionsMessage, error) {
340	req, out := c.ComposeEnvironmentsRequest(input)
341	req.SetContext(ctx)
342	req.ApplyOptions(opts...)
343	return out, req.Send()
344}
345
346const opCreateApplication = "CreateApplication"
347
348// CreateApplicationRequest generates a "aws/request.Request" representing the
349// client's request for the CreateApplication operation. The "output" return
350// value will be populated with the request's response once the request complets
351// successfuly.
352//
353// Use "Send" method on the returned Request to send the API call to the service.
354// the "output" return value is not valid until after Send returns without error.
355//
356// See CreateApplication for more information on using the CreateApplication
357// API call, and error handling.
358//
359// This method is useful when you want to inject custom logic or configuration
360// into the SDK's request lifecycle. Such as custom headers, or retry logic.
361//
362//
363//    // Example sending a request using the CreateApplicationRequest method.
364//    req, resp := client.CreateApplicationRequest(params)
365//
366//    err := req.Send()
367//    if err == nil { // resp is now filled
368//        fmt.Println(resp)
369//    }
370//
371// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/CreateApplication
372func (c *ElasticBeanstalk) CreateApplicationRequest(input *CreateApplicationInput) (req *request.Request, output *ApplicationDescriptionMessage) {
373	op := &request.Operation{
374		Name:       opCreateApplication,
375		HTTPMethod: "POST",
376		HTTPPath:   "/",
377	}
378
379	if input == nil {
380		input = &CreateApplicationInput{}
381	}
382
383	output = &ApplicationDescriptionMessage{}
384	req = c.newRequest(op, input, output)
385	return
386}
387
388// CreateApplication API operation for AWS Elastic Beanstalk.
389//
390// Creates an application that has one configuration template named default
391// and no application versions.
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 CreateApplication for usage and error information.
399//
400// Returned Error Codes:
401//   * ErrCodeTooManyApplicationsException "TooManyApplicationsException"
402//   The specified account has reached its limit of applications.
403//
404// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/CreateApplication
405func (c *ElasticBeanstalk) CreateApplication(input *CreateApplicationInput) (*ApplicationDescriptionMessage, error) {
406	req, out := c.CreateApplicationRequest(input)
407	return out, req.Send()
408}
409
410// CreateApplicationWithContext is the same as CreateApplication with the addition of
411// the ability to pass a context and additional request options.
412//
413// See CreateApplication for details on how to use this API operation.
414//
415// The context must be non-nil and will be used for request cancellation. If
416// the context is nil a panic will occur. In the future the SDK may create
417// sub-contexts for http.Requests. See https://golang.org/pkg/context/
418// for more information on using Contexts.
419func (c *ElasticBeanstalk) CreateApplicationWithContext(ctx aws.Context, input *CreateApplicationInput, opts ...request.Option) (*ApplicationDescriptionMessage, error) {
420	req, out := c.CreateApplicationRequest(input)
421	req.SetContext(ctx)
422	req.ApplyOptions(opts...)
423	return out, req.Send()
424}
425
426const opCreateApplicationVersion = "CreateApplicationVersion"
427
428// CreateApplicationVersionRequest generates a "aws/request.Request" representing the
429// client's request for the CreateApplicationVersion operation. The "output" return
430// value will be populated with the request's response once the request complets
431// successfuly.
432//
433// Use "Send" method on the returned Request to send the API call to the service.
434// the "output" return value is not valid until after Send returns without error.
435//
436// See CreateApplicationVersion for more information on using the CreateApplicationVersion
437// API call, and error handling.
438//
439// This method is useful when you want to inject custom logic or configuration
440// into the SDK's request lifecycle. Such as custom headers, or retry logic.
441//
442//
443//    // Example sending a request using the CreateApplicationVersionRequest method.
444//    req, resp := client.CreateApplicationVersionRequest(params)
445//
446//    err := req.Send()
447//    if err == nil { // resp is now filled
448//        fmt.Println(resp)
449//    }
450//
451// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/CreateApplicationVersion
452func (c *ElasticBeanstalk) CreateApplicationVersionRequest(input *CreateApplicationVersionInput) (req *request.Request, output *ApplicationVersionDescriptionMessage) {
453	op := &request.Operation{
454		Name:       opCreateApplicationVersion,
455		HTTPMethod: "POST",
456		HTTPPath:   "/",
457	}
458
459	if input == nil {
460		input = &CreateApplicationVersionInput{}
461	}
462
463	output = &ApplicationVersionDescriptionMessage{}
464	req = c.newRequest(op, input, output)
465	return
466}
467
468// CreateApplicationVersion API operation for AWS Elastic Beanstalk.
469//
470// Creates an application version for the specified application. You can create
471// an application version from a source bundle in Amazon S3, a commit in AWS
472// CodeCommit, or the output of an AWS CodeBuild build as follows:
473//
474// Specify a commit in an AWS CodeCommit repository with SourceBuildInformation.
475//
476// Specify a build in an AWS CodeBuild with SourceBuildInformation and BuildConfiguration.
477//
478// Specify a source bundle in S3 with SourceBundle
479//
480// Omit both SourceBuildInformation and SourceBundle to use the default sample
481// application.
482//
483// Once you create an application version with a specified Amazon S3 bucket
484// and key location, you cannot change that Amazon S3 location. If you change
485// the Amazon S3 location, you receive an exception when you attempt to launch
486// an environment from the application version.
487//
488// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
489// with awserr.Error's Code and Message methods to get detailed information about
490// the error.
491//
492// See the AWS API reference guide for AWS Elastic Beanstalk's
493// API operation CreateApplicationVersion for usage and error information.
494//
495// Returned Error Codes:
496//   * ErrCodeTooManyApplicationsException "TooManyApplicationsException"
497//   The specified account has reached its limit of applications.
498//
499//   * ErrCodeTooManyApplicationVersionsException "TooManyApplicationVersionsException"
500//   The specified account has reached its limit of application versions.
501//
502//   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
503//   The specified account does not have sufficient privileges for one of more
504//   AWS services.
505//
506//   * ErrCodeS3LocationNotInServiceRegionException "S3LocationNotInServiceRegionException"
507//   The specified S3 bucket does not belong to the S3 region in which the service
508//   is running. The following regions are supported:
509//
510//      * IAD/us-east-1
511//
512//      * PDX/us-west-2
513//
514//      * DUB/eu-west-1
515//
516//   * ErrCodeCodeBuildNotInServiceRegionException "CodeBuildNotInServiceRegionException"
517//   AWS CodeBuild is not available in the specified region.
518//
519// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/CreateApplicationVersion
520func (c *ElasticBeanstalk) CreateApplicationVersion(input *CreateApplicationVersionInput) (*ApplicationVersionDescriptionMessage, error) {
521	req, out := c.CreateApplicationVersionRequest(input)
522	return out, req.Send()
523}
524
525// CreateApplicationVersionWithContext is the same as CreateApplicationVersion with the addition of
526// the ability to pass a context and additional request options.
527//
528// See CreateApplicationVersion for details on how to use this API operation.
529//
530// The context must be non-nil and will be used for request cancellation. If
531// the context is nil a panic will occur. In the future the SDK may create
532// sub-contexts for http.Requests. See https://golang.org/pkg/context/
533// for more information on using Contexts.
534func (c *ElasticBeanstalk) CreateApplicationVersionWithContext(ctx aws.Context, input *CreateApplicationVersionInput, opts ...request.Option) (*ApplicationVersionDescriptionMessage, error) {
535	req, out := c.CreateApplicationVersionRequest(input)
536	req.SetContext(ctx)
537	req.ApplyOptions(opts...)
538	return out, req.Send()
539}
540
541const opCreateConfigurationTemplate = "CreateConfigurationTemplate"
542
543// CreateConfigurationTemplateRequest generates a "aws/request.Request" representing the
544// client's request for the CreateConfigurationTemplate operation. The "output" return
545// value will be populated with the request's response once the request complets
546// successfuly.
547//
548// Use "Send" method on the returned Request to send the API call to the service.
549// the "output" return value is not valid until after Send returns without error.
550//
551// See CreateConfigurationTemplate for more information on using the CreateConfigurationTemplate
552// API call, and error handling.
553//
554// This method is useful when you want to inject custom logic or configuration
555// into the SDK's request lifecycle. Such as custom headers, or retry logic.
556//
557//
558//    // Example sending a request using the CreateConfigurationTemplateRequest method.
559//    req, resp := client.CreateConfigurationTemplateRequest(params)
560//
561//    err := req.Send()
562//    if err == nil { // resp is now filled
563//        fmt.Println(resp)
564//    }
565//
566// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/CreateConfigurationTemplate
567func (c *ElasticBeanstalk) CreateConfigurationTemplateRequest(input *CreateConfigurationTemplateInput) (req *request.Request, output *ConfigurationSettingsDescription) {
568	op := &request.Operation{
569		Name:       opCreateConfigurationTemplate,
570		HTTPMethod: "POST",
571		HTTPPath:   "/",
572	}
573
574	if input == nil {
575		input = &CreateConfigurationTemplateInput{}
576	}
577
578	output = &ConfigurationSettingsDescription{}
579	req = c.newRequest(op, input, output)
580	return
581}
582
583// CreateConfigurationTemplate API operation for AWS Elastic Beanstalk.
584//
585// Creates a configuration template. Templates are associated with a specific
586// application and are used to deploy different versions of the application
587// with the same configuration settings.
588//
589// Related Topics
590//
591//    * DescribeConfigurationOptions
592//
593//    * DescribeConfigurationSettings
594//
595//    * ListAvailableSolutionStacks
596//
597// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
598// with awserr.Error's Code and Message methods to get detailed information about
599// the error.
600//
601// See the AWS API reference guide for AWS Elastic Beanstalk's
602// API operation CreateConfigurationTemplate for usage and error information.
603//
604// Returned Error Codes:
605//   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
606//   The specified account does not have sufficient privileges for one of more
607//   AWS services.
608//
609//   * ErrCodeTooManyBucketsException "TooManyBucketsException"
610//   The specified account has reached its limit of Amazon S3 buckets.
611//
612//   * ErrCodeTooManyConfigurationTemplatesException "TooManyConfigurationTemplatesException"
613//   The specified account has reached its limit of configuration templates.
614//
615// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/CreateConfigurationTemplate
616func (c *ElasticBeanstalk) CreateConfigurationTemplate(input *CreateConfigurationTemplateInput) (*ConfigurationSettingsDescription, error) {
617	req, out := c.CreateConfigurationTemplateRequest(input)
618	return out, req.Send()
619}
620
621// CreateConfigurationTemplateWithContext is the same as CreateConfigurationTemplate with the addition of
622// the ability to pass a context and additional request options.
623//
624// See CreateConfigurationTemplate for details on how to use this API operation.
625//
626// The context must be non-nil and will be used for request cancellation. If
627// the context is nil a panic will occur. In the future the SDK may create
628// sub-contexts for http.Requests. See https://golang.org/pkg/context/
629// for more information on using Contexts.
630func (c *ElasticBeanstalk) CreateConfigurationTemplateWithContext(ctx aws.Context, input *CreateConfigurationTemplateInput, opts ...request.Option) (*ConfigurationSettingsDescription, error) {
631	req, out := c.CreateConfigurationTemplateRequest(input)
632	req.SetContext(ctx)
633	req.ApplyOptions(opts...)
634	return out, req.Send()
635}
636
637const opCreateEnvironment = "CreateEnvironment"
638
639// CreateEnvironmentRequest generates a "aws/request.Request" representing the
640// client's request for the CreateEnvironment operation. The "output" return
641// value will be populated with the request's response once the request complets
642// successfuly.
643//
644// Use "Send" method on the returned Request to send the API call to the service.
645// the "output" return value is not valid until after Send returns without error.
646//
647// See CreateEnvironment for more information on using the CreateEnvironment
648// API call, and error handling.
649//
650// This method is useful when you want to inject custom logic or configuration
651// into the SDK's request lifecycle. Such as custom headers, or retry logic.
652//
653//
654//    // Example sending a request using the CreateEnvironmentRequest method.
655//    req, resp := client.CreateEnvironmentRequest(params)
656//
657//    err := req.Send()
658//    if err == nil { // resp is now filled
659//        fmt.Println(resp)
660//    }
661//
662// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/CreateEnvironment
663func (c *ElasticBeanstalk) CreateEnvironmentRequest(input *CreateEnvironmentInput) (req *request.Request, output *EnvironmentDescription) {
664	op := &request.Operation{
665		Name:       opCreateEnvironment,
666		HTTPMethod: "POST",
667		HTTPPath:   "/",
668	}
669
670	if input == nil {
671		input = &CreateEnvironmentInput{}
672	}
673
674	output = &EnvironmentDescription{}
675	req = c.newRequest(op, input, output)
676	return
677}
678
679// CreateEnvironment API operation for AWS Elastic Beanstalk.
680//
681// Launches an environment for the specified application using the specified
682// configuration.
683//
684// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
685// with awserr.Error's Code and Message methods to get detailed information about
686// the error.
687//
688// See the AWS API reference guide for AWS Elastic Beanstalk's
689// API operation CreateEnvironment for usage and error information.
690//
691// Returned Error Codes:
692//   * ErrCodeTooManyEnvironmentsException "TooManyEnvironmentsException"
693//   The specified account has reached its limit of environments.
694//
695//   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
696//   The specified account does not have sufficient privileges for one of more
697//   AWS services.
698//
699// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/CreateEnvironment
700func (c *ElasticBeanstalk) CreateEnvironment(input *CreateEnvironmentInput) (*EnvironmentDescription, error) {
701	req, out := c.CreateEnvironmentRequest(input)
702	return out, req.Send()
703}
704
705// CreateEnvironmentWithContext is the same as CreateEnvironment with the addition of
706// the ability to pass a context and additional request options.
707//
708// See CreateEnvironment for details on how to use this API operation.
709//
710// The context must be non-nil and will be used for request cancellation. If
711// the context is nil a panic will occur. In the future the SDK may create
712// sub-contexts for http.Requests. See https://golang.org/pkg/context/
713// for more information on using Contexts.
714func (c *ElasticBeanstalk) CreateEnvironmentWithContext(ctx aws.Context, input *CreateEnvironmentInput, opts ...request.Option) (*EnvironmentDescription, error) {
715	req, out := c.CreateEnvironmentRequest(input)
716	req.SetContext(ctx)
717	req.ApplyOptions(opts...)
718	return out, req.Send()
719}
720
721const opCreatePlatformVersion = "CreatePlatformVersion"
722
723// CreatePlatformVersionRequest generates a "aws/request.Request" representing the
724// client's request for the CreatePlatformVersion operation. The "output" return
725// value will be populated with the request's response once the request complets
726// successfuly.
727//
728// Use "Send" method on the returned Request to send the API call to the service.
729// the "output" return value is not valid until after Send returns without error.
730//
731// See CreatePlatformVersion for more information on using the CreatePlatformVersion
732// API call, and error handling.
733//
734// This method is useful when you want to inject custom logic or configuration
735// into the SDK's request lifecycle. Such as custom headers, or retry logic.
736//
737//
738//    // Example sending a request using the CreatePlatformVersionRequest method.
739//    req, resp := client.CreatePlatformVersionRequest(params)
740//
741//    err := req.Send()
742//    if err == nil { // resp is now filled
743//        fmt.Println(resp)
744//    }
745//
746// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/CreatePlatformVersion
747func (c *ElasticBeanstalk) CreatePlatformVersionRequest(input *CreatePlatformVersionInput) (req *request.Request, output *CreatePlatformVersionOutput) {
748	op := &request.Operation{
749		Name:       opCreatePlatformVersion,
750		HTTPMethod: "POST",
751		HTTPPath:   "/",
752	}
753
754	if input == nil {
755		input = &CreatePlatformVersionInput{}
756	}
757
758	output = &CreatePlatformVersionOutput{}
759	req = c.newRequest(op, input, output)
760	return
761}
762
763// CreatePlatformVersion API operation for AWS Elastic Beanstalk.
764//
765// Create a new version of your custom platform.
766//
767// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
768// with awserr.Error's Code and Message methods to get detailed information about
769// the error.
770//
771// See the AWS API reference guide for AWS Elastic Beanstalk's
772// API operation CreatePlatformVersion for usage and error information.
773//
774// Returned Error Codes:
775//   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
776//   The specified account does not have sufficient privileges for one of more
777//   AWS services.
778//
779//   * ErrCodeServiceException "ServiceException"
780//   A generic service exception has occurred.
781//
782//   * ErrCodeTooManyPlatformsException "TooManyPlatformsException"
783//   You have exceeded the maximum number of allowed platforms associated with
784//   the account.
785//
786// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/CreatePlatformVersion
787func (c *ElasticBeanstalk) CreatePlatformVersion(input *CreatePlatformVersionInput) (*CreatePlatformVersionOutput, error) {
788	req, out := c.CreatePlatformVersionRequest(input)
789	return out, req.Send()
790}
791
792// CreatePlatformVersionWithContext is the same as CreatePlatformVersion with the addition of
793// the ability to pass a context and additional request options.
794//
795// See CreatePlatformVersion for details on how to use this API operation.
796//
797// The context must be non-nil and will be used for request cancellation. If
798// the context is nil a panic will occur. In the future the SDK may create
799// sub-contexts for http.Requests. See https://golang.org/pkg/context/
800// for more information on using Contexts.
801func (c *ElasticBeanstalk) CreatePlatformVersionWithContext(ctx aws.Context, input *CreatePlatformVersionInput, opts ...request.Option) (*CreatePlatformVersionOutput, error) {
802	req, out := c.CreatePlatformVersionRequest(input)
803	req.SetContext(ctx)
804	req.ApplyOptions(opts...)
805	return out, req.Send()
806}
807
808const opCreateStorageLocation = "CreateStorageLocation"
809
810// CreateStorageLocationRequest generates a "aws/request.Request" representing the
811// client's request for the CreateStorageLocation operation. The "output" return
812// value will be populated with the request's response once the request complets
813// successfuly.
814//
815// Use "Send" method on the returned Request to send the API call to the service.
816// the "output" return value is not valid until after Send returns without error.
817//
818// See CreateStorageLocation for more information on using the CreateStorageLocation
819// API call, and error handling.
820//
821// This method is useful when you want to inject custom logic or configuration
822// into the SDK's request lifecycle. Such as custom headers, or retry logic.
823//
824//
825//    // Example sending a request using the CreateStorageLocationRequest method.
826//    req, resp := client.CreateStorageLocationRequest(params)
827//
828//    err := req.Send()
829//    if err == nil { // resp is now filled
830//        fmt.Println(resp)
831//    }
832//
833// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/CreateStorageLocation
834func (c *ElasticBeanstalk) CreateStorageLocationRequest(input *CreateStorageLocationInput) (req *request.Request, output *CreateStorageLocationOutput) {
835	op := &request.Operation{
836		Name:       opCreateStorageLocation,
837		HTTPMethod: "POST",
838		HTTPPath:   "/",
839	}
840
841	if input == nil {
842		input = &CreateStorageLocationInput{}
843	}
844
845	output = &CreateStorageLocationOutput{}
846	req = c.newRequest(op, input, output)
847	return
848}
849
850// CreateStorageLocation API operation for AWS Elastic Beanstalk.
851//
852// Creates a bucket in Amazon S3 to store application versions, logs, and other
853// files used by Elastic Beanstalk environments. The Elastic Beanstalk console
854// and EB CLI call this API the first time you create an environment in a region.
855// If the storage location already exists, CreateStorageLocation still returns
856// the bucket name but does not create a new bucket.
857//
858// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
859// with awserr.Error's Code and Message methods to get detailed information about
860// the error.
861//
862// See the AWS API reference guide for AWS Elastic Beanstalk's
863// API operation CreateStorageLocation for usage and error information.
864//
865// Returned Error Codes:
866//   * ErrCodeTooManyBucketsException "TooManyBucketsException"
867//   The specified account has reached its limit of Amazon S3 buckets.
868//
869//   * ErrCodeS3SubscriptionRequiredException "S3SubscriptionRequiredException"
870//   The specified account does not have a subscription to Amazon S3.
871//
872//   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
873//   The specified account does not have sufficient privileges for one of more
874//   AWS services.
875//
876// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/CreateStorageLocation
877func (c *ElasticBeanstalk) CreateStorageLocation(input *CreateStorageLocationInput) (*CreateStorageLocationOutput, error) {
878	req, out := c.CreateStorageLocationRequest(input)
879	return out, req.Send()
880}
881
882// CreateStorageLocationWithContext is the same as CreateStorageLocation with the addition of
883// the ability to pass a context and additional request options.
884//
885// See CreateStorageLocation for details on how to use this API operation.
886//
887// The context must be non-nil and will be used for request cancellation. If
888// the context is nil a panic will occur. In the future the SDK may create
889// sub-contexts for http.Requests. See https://golang.org/pkg/context/
890// for more information on using Contexts.
891func (c *ElasticBeanstalk) CreateStorageLocationWithContext(ctx aws.Context, input *CreateStorageLocationInput, opts ...request.Option) (*CreateStorageLocationOutput, error) {
892	req, out := c.CreateStorageLocationRequest(input)
893	req.SetContext(ctx)
894	req.ApplyOptions(opts...)
895	return out, req.Send()
896}
897
898const opDeleteApplication = "DeleteApplication"
899
900// DeleteApplicationRequest generates a "aws/request.Request" representing the
901// client's request for the DeleteApplication operation. The "output" return
902// value will be populated with the request's response once the request complets
903// successfuly.
904//
905// Use "Send" method on the returned Request to send the API call to the service.
906// the "output" return value is not valid until after Send returns without error.
907//
908// See DeleteApplication for more information on using the DeleteApplication
909// API call, and error handling.
910//
911// This method is useful when you want to inject custom logic or configuration
912// into the SDK's request lifecycle. Such as custom headers, or retry logic.
913//
914//
915//    // Example sending a request using the DeleteApplicationRequest method.
916//    req, resp := client.DeleteApplicationRequest(params)
917//
918//    err := req.Send()
919//    if err == nil { // resp is now filled
920//        fmt.Println(resp)
921//    }
922//
923// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DeleteApplication
924func (c *ElasticBeanstalk) DeleteApplicationRequest(input *DeleteApplicationInput) (req *request.Request, output *DeleteApplicationOutput) {
925	op := &request.Operation{
926		Name:       opDeleteApplication,
927		HTTPMethod: "POST",
928		HTTPPath:   "/",
929	}
930
931	if input == nil {
932		input = &DeleteApplicationInput{}
933	}
934
935	output = &DeleteApplicationOutput{}
936	req = c.newRequest(op, input, output)
937	req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
938	req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
939	return
940}
941
942// DeleteApplication API operation for AWS Elastic Beanstalk.
943//
944// Deletes the specified application along with all associated versions and
945// configurations. The application versions will not be deleted from your Amazon
946// S3 bucket.
947//
948// You cannot delete an application that has a running environment.
949//
950// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
951// with awserr.Error's Code and Message methods to get detailed information about
952// the error.
953//
954// See the AWS API reference guide for AWS Elastic Beanstalk's
955// API operation DeleteApplication for usage and error information.
956//
957// Returned Error Codes:
958//   * ErrCodeOperationInProgressException "OperationInProgressFailure"
959//   Unable to perform the specified operation because another operation that
960//   effects an element in this activity is already in progress.
961//
962// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DeleteApplication
963func (c *ElasticBeanstalk) DeleteApplication(input *DeleteApplicationInput) (*DeleteApplicationOutput, error) {
964	req, out := c.DeleteApplicationRequest(input)
965	return out, req.Send()
966}
967
968// DeleteApplicationWithContext is the same as DeleteApplication with the addition of
969// the ability to pass a context and additional request options.
970//
971// See DeleteApplication for details on how to use this API operation.
972//
973// The context must be non-nil and will be used for request cancellation. If
974// the context is nil a panic will occur. In the future the SDK may create
975// sub-contexts for http.Requests. See https://golang.org/pkg/context/
976// for more information on using Contexts.
977func (c *ElasticBeanstalk) DeleteApplicationWithContext(ctx aws.Context, input *DeleteApplicationInput, opts ...request.Option) (*DeleteApplicationOutput, error) {
978	req, out := c.DeleteApplicationRequest(input)
979	req.SetContext(ctx)
980	req.ApplyOptions(opts...)
981	return out, req.Send()
982}
983
984const opDeleteApplicationVersion = "DeleteApplicationVersion"
985
986// DeleteApplicationVersionRequest generates a "aws/request.Request" representing the
987// client's request for the DeleteApplicationVersion operation. The "output" return
988// value will be populated with the request's response once the request complets
989// successfuly.
990//
991// Use "Send" method on the returned Request to send the API call to the service.
992// the "output" return value is not valid until after Send returns without error.
993//
994// See DeleteApplicationVersion for more information on using the DeleteApplicationVersion
995// API call, and error handling.
996//
997// This method is useful when you want to inject custom logic or configuration
998// into the SDK's request lifecycle. Such as custom headers, or retry logic.
999//
1000//
1001//    // Example sending a request using the DeleteApplicationVersionRequest method.
1002//    req, resp := client.DeleteApplicationVersionRequest(params)
1003//
1004//    err := req.Send()
1005//    if err == nil { // resp is now filled
1006//        fmt.Println(resp)
1007//    }
1008//
1009// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DeleteApplicationVersion
1010func (c *ElasticBeanstalk) DeleteApplicationVersionRequest(input *DeleteApplicationVersionInput) (req *request.Request, output *DeleteApplicationVersionOutput) {
1011	op := &request.Operation{
1012		Name:       opDeleteApplicationVersion,
1013		HTTPMethod: "POST",
1014		HTTPPath:   "/",
1015	}
1016
1017	if input == nil {
1018		input = &DeleteApplicationVersionInput{}
1019	}
1020
1021	output = &DeleteApplicationVersionOutput{}
1022	req = c.newRequest(op, input, output)
1023	req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
1024	req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
1025	return
1026}
1027
1028// DeleteApplicationVersion API operation for AWS Elastic Beanstalk.
1029//
1030// Deletes the specified version from the specified application.
1031//
1032// You cannot delete an application version that is associated with a running
1033// environment.
1034//
1035// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1036// with awserr.Error's Code and Message methods to get detailed information about
1037// the error.
1038//
1039// See the AWS API reference guide for AWS Elastic Beanstalk's
1040// API operation DeleteApplicationVersion for usage and error information.
1041//
1042// Returned Error Codes:
1043//   * ErrCodeSourceBundleDeletionException "SourceBundleDeletionFailure"
1044//   Unable to delete the Amazon S3 source bundle associated with the application
1045//   version. The application version was deleted successfully.
1046//
1047//   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
1048//   The specified account does not have sufficient privileges for one of more
1049//   AWS services.
1050//
1051//   * ErrCodeOperationInProgressException "OperationInProgressFailure"
1052//   Unable to perform the specified operation because another operation that
1053//   effects an element in this activity is already in progress.
1054//
1055//   * ErrCodeS3LocationNotInServiceRegionException "S3LocationNotInServiceRegionException"
1056//   The specified S3 bucket does not belong to the S3 region in which the service
1057//   is running. The following regions are supported:
1058//
1059//      * IAD/us-east-1
1060//
1061//      * PDX/us-west-2
1062//
1063//      * DUB/eu-west-1
1064//
1065// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DeleteApplicationVersion
1066func (c *ElasticBeanstalk) DeleteApplicationVersion(input *DeleteApplicationVersionInput) (*DeleteApplicationVersionOutput, error) {
1067	req, out := c.DeleteApplicationVersionRequest(input)
1068	return out, req.Send()
1069}
1070
1071// DeleteApplicationVersionWithContext is the same as DeleteApplicationVersion with the addition of
1072// the ability to pass a context and additional request options.
1073//
1074// See DeleteApplicationVersion for details on how to use this API operation.
1075//
1076// The context must be non-nil and will be used for request cancellation. If
1077// the context is nil a panic will occur. In the future the SDK may create
1078// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1079// for more information on using Contexts.
1080func (c *ElasticBeanstalk) DeleteApplicationVersionWithContext(ctx aws.Context, input *DeleteApplicationVersionInput, opts ...request.Option) (*DeleteApplicationVersionOutput, error) {
1081	req, out := c.DeleteApplicationVersionRequest(input)
1082	req.SetContext(ctx)
1083	req.ApplyOptions(opts...)
1084	return out, req.Send()
1085}
1086
1087const opDeleteConfigurationTemplate = "DeleteConfigurationTemplate"
1088
1089// DeleteConfigurationTemplateRequest generates a "aws/request.Request" representing the
1090// client's request for the DeleteConfigurationTemplate operation. The "output" return
1091// value will be populated with the request's response once the request complets
1092// successfuly.
1093//
1094// Use "Send" method on the returned Request to send the API call to the service.
1095// the "output" return value is not valid until after Send returns without error.
1096//
1097// See DeleteConfigurationTemplate for more information on using the DeleteConfigurationTemplate
1098// API call, and error handling.
1099//
1100// This method is useful when you want to inject custom logic or configuration
1101// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1102//
1103//
1104//    // Example sending a request using the DeleteConfigurationTemplateRequest method.
1105//    req, resp := client.DeleteConfigurationTemplateRequest(params)
1106//
1107//    err := req.Send()
1108//    if err == nil { // resp is now filled
1109//        fmt.Println(resp)
1110//    }
1111//
1112// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DeleteConfigurationTemplate
1113func (c *ElasticBeanstalk) DeleteConfigurationTemplateRequest(input *DeleteConfigurationTemplateInput) (req *request.Request, output *DeleteConfigurationTemplateOutput) {
1114	op := &request.Operation{
1115		Name:       opDeleteConfigurationTemplate,
1116		HTTPMethod: "POST",
1117		HTTPPath:   "/",
1118	}
1119
1120	if input == nil {
1121		input = &DeleteConfigurationTemplateInput{}
1122	}
1123
1124	output = &DeleteConfigurationTemplateOutput{}
1125	req = c.newRequest(op, input, output)
1126	req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
1127	req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
1128	return
1129}
1130
1131// DeleteConfigurationTemplate API operation for AWS Elastic Beanstalk.
1132//
1133// Deletes the specified configuration template.
1134//
1135// When you launch an environment using a configuration template, the environment
1136// gets a copy of the template. You can delete or modify the environment's copy
1137// of the template without affecting the running environment.
1138//
1139// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1140// with awserr.Error's Code and Message methods to get detailed information about
1141// the error.
1142//
1143// See the AWS API reference guide for AWS Elastic Beanstalk's
1144// API operation DeleteConfigurationTemplate for usage and error information.
1145//
1146// Returned Error Codes:
1147//   * ErrCodeOperationInProgressException "OperationInProgressFailure"
1148//   Unable to perform the specified operation because another operation that
1149//   effects an element in this activity is already in progress.
1150//
1151// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DeleteConfigurationTemplate
1152func (c *ElasticBeanstalk) DeleteConfigurationTemplate(input *DeleteConfigurationTemplateInput) (*DeleteConfigurationTemplateOutput, error) {
1153	req, out := c.DeleteConfigurationTemplateRequest(input)
1154	return out, req.Send()
1155}
1156
1157// DeleteConfigurationTemplateWithContext is the same as DeleteConfigurationTemplate with the addition of
1158// the ability to pass a context and additional request options.
1159//
1160// See DeleteConfigurationTemplate for details on how to use this API operation.
1161//
1162// The context must be non-nil and will be used for request cancellation. If
1163// the context is nil a panic will occur. In the future the SDK may create
1164// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1165// for more information on using Contexts.
1166func (c *ElasticBeanstalk) DeleteConfigurationTemplateWithContext(ctx aws.Context, input *DeleteConfigurationTemplateInput, opts ...request.Option) (*DeleteConfigurationTemplateOutput, error) {
1167	req, out := c.DeleteConfigurationTemplateRequest(input)
1168	req.SetContext(ctx)
1169	req.ApplyOptions(opts...)
1170	return out, req.Send()
1171}
1172
1173const opDeleteEnvironmentConfiguration = "DeleteEnvironmentConfiguration"
1174
1175// DeleteEnvironmentConfigurationRequest generates a "aws/request.Request" representing the
1176// client's request for the DeleteEnvironmentConfiguration operation. The "output" return
1177// value will be populated with the request's response once the request complets
1178// successfuly.
1179//
1180// Use "Send" method on the returned Request to send the API call to the service.
1181// the "output" return value is not valid until after Send returns without error.
1182//
1183// See DeleteEnvironmentConfiguration for more information on using the DeleteEnvironmentConfiguration
1184// API call, and error handling.
1185//
1186// This method is useful when you want to inject custom logic or configuration
1187// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1188//
1189//
1190//    // Example sending a request using the DeleteEnvironmentConfigurationRequest method.
1191//    req, resp := client.DeleteEnvironmentConfigurationRequest(params)
1192//
1193//    err := req.Send()
1194//    if err == nil { // resp is now filled
1195//        fmt.Println(resp)
1196//    }
1197//
1198// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DeleteEnvironmentConfiguration
1199func (c *ElasticBeanstalk) DeleteEnvironmentConfigurationRequest(input *DeleteEnvironmentConfigurationInput) (req *request.Request, output *DeleteEnvironmentConfigurationOutput) {
1200	op := &request.Operation{
1201		Name:       opDeleteEnvironmentConfiguration,
1202		HTTPMethod: "POST",
1203		HTTPPath:   "/",
1204	}
1205
1206	if input == nil {
1207		input = &DeleteEnvironmentConfigurationInput{}
1208	}
1209
1210	output = &DeleteEnvironmentConfigurationOutput{}
1211	req = c.newRequest(op, input, output)
1212	req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
1213	req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
1214	return
1215}
1216
1217// DeleteEnvironmentConfiguration API operation for AWS Elastic Beanstalk.
1218//
1219// Deletes the draft configuration associated with the running environment.
1220//
1221// Updating a running environment with any configuration changes creates a draft
1222// configuration set. You can get the draft configuration using DescribeConfigurationSettings
1223// while the update is in progress or if the update fails. The DeploymentStatus
1224// for the draft configuration indicates whether the deployment is in process
1225// or has failed. The draft configuration remains in existence until it is deleted
1226// with this action.
1227//
1228// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1229// with awserr.Error's Code and Message methods to get detailed information about
1230// the error.
1231//
1232// See the AWS API reference guide for AWS Elastic Beanstalk's
1233// API operation DeleteEnvironmentConfiguration for usage and error information.
1234// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DeleteEnvironmentConfiguration
1235func (c *ElasticBeanstalk) DeleteEnvironmentConfiguration(input *DeleteEnvironmentConfigurationInput) (*DeleteEnvironmentConfigurationOutput, error) {
1236	req, out := c.DeleteEnvironmentConfigurationRequest(input)
1237	return out, req.Send()
1238}
1239
1240// DeleteEnvironmentConfigurationWithContext is the same as DeleteEnvironmentConfiguration with the addition of
1241// the ability to pass a context and additional request options.
1242//
1243// See DeleteEnvironmentConfiguration for details on how to use this API operation.
1244//
1245// The context must be non-nil and will be used for request cancellation. If
1246// the context is nil a panic will occur. In the future the SDK may create
1247// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1248// for more information on using Contexts.
1249func (c *ElasticBeanstalk) DeleteEnvironmentConfigurationWithContext(ctx aws.Context, input *DeleteEnvironmentConfigurationInput, opts ...request.Option) (*DeleteEnvironmentConfigurationOutput, error) {
1250	req, out := c.DeleteEnvironmentConfigurationRequest(input)
1251	req.SetContext(ctx)
1252	req.ApplyOptions(opts...)
1253	return out, req.Send()
1254}
1255
1256const opDeletePlatformVersion = "DeletePlatformVersion"
1257
1258// DeletePlatformVersionRequest generates a "aws/request.Request" representing the
1259// client's request for the DeletePlatformVersion operation. The "output" return
1260// value will be populated with the request's response once the request complets
1261// successfuly.
1262//
1263// Use "Send" method on the returned Request to send the API call to the service.
1264// the "output" return value is not valid until after Send returns without error.
1265//
1266// See DeletePlatformVersion for more information on using the DeletePlatformVersion
1267// API call, and error handling.
1268//
1269// This method is useful when you want to inject custom logic or configuration
1270// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1271//
1272//
1273//    // Example sending a request using the DeletePlatformVersionRequest method.
1274//    req, resp := client.DeletePlatformVersionRequest(params)
1275//
1276//    err := req.Send()
1277//    if err == nil { // resp is now filled
1278//        fmt.Println(resp)
1279//    }
1280//
1281// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DeletePlatformVersion
1282func (c *ElasticBeanstalk) DeletePlatformVersionRequest(input *DeletePlatformVersionInput) (req *request.Request, output *DeletePlatformVersionOutput) {
1283	op := &request.Operation{
1284		Name:       opDeletePlatformVersion,
1285		HTTPMethod: "POST",
1286		HTTPPath:   "/",
1287	}
1288
1289	if input == nil {
1290		input = &DeletePlatformVersionInput{}
1291	}
1292
1293	output = &DeletePlatformVersionOutput{}
1294	req = c.newRequest(op, input, output)
1295	return
1296}
1297
1298// DeletePlatformVersion API operation for AWS Elastic Beanstalk.
1299//
1300// Deletes the specified version of a custom platform.
1301//
1302// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1303// with awserr.Error's Code and Message methods to get detailed information about
1304// the error.
1305//
1306// See the AWS API reference guide for AWS Elastic Beanstalk's
1307// API operation DeletePlatformVersion for usage and error information.
1308//
1309// Returned Error Codes:
1310//   * ErrCodeOperationInProgressException "OperationInProgressFailure"
1311//   Unable to perform the specified operation because another operation that
1312//   effects an element in this activity is already in progress.
1313//
1314//   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
1315//   The specified account does not have sufficient privileges for one of more
1316//   AWS services.
1317//
1318//   * ErrCodeServiceException "ServiceException"
1319//   A generic service exception has occurred.
1320//
1321//   * ErrCodePlatformVersionStillReferencedException "PlatformVersionStillReferencedException"
1322//   You cannot delete the platform version because there are still environments
1323//   running on it.
1324//
1325// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DeletePlatformVersion
1326func (c *ElasticBeanstalk) DeletePlatformVersion(input *DeletePlatformVersionInput) (*DeletePlatformVersionOutput, error) {
1327	req, out := c.DeletePlatformVersionRequest(input)
1328	return out, req.Send()
1329}
1330
1331// DeletePlatformVersionWithContext is the same as DeletePlatformVersion with the addition of
1332// the ability to pass a context and additional request options.
1333//
1334// See DeletePlatformVersion for details on how to use this API operation.
1335//
1336// The context must be non-nil and will be used for request cancellation. If
1337// the context is nil a panic will occur. In the future the SDK may create
1338// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1339// for more information on using Contexts.
1340func (c *ElasticBeanstalk) DeletePlatformVersionWithContext(ctx aws.Context, input *DeletePlatformVersionInput, opts ...request.Option) (*DeletePlatformVersionOutput, error) {
1341	req, out := c.DeletePlatformVersionRequest(input)
1342	req.SetContext(ctx)
1343	req.ApplyOptions(opts...)
1344	return out, req.Send()
1345}
1346
1347const opDescribeApplicationVersions = "DescribeApplicationVersions"
1348
1349// DescribeApplicationVersionsRequest generates a "aws/request.Request" representing the
1350// client's request for the DescribeApplicationVersions operation. The "output" return
1351// value will be populated with the request's response once the request complets
1352// successfuly.
1353//
1354// Use "Send" method on the returned Request to send the API call to the service.
1355// the "output" return value is not valid until after Send returns without error.
1356//
1357// See DescribeApplicationVersions for more information on using the DescribeApplicationVersions
1358// API call, and error handling.
1359//
1360// This method is useful when you want to inject custom logic or configuration
1361// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1362//
1363//
1364//    // Example sending a request using the DescribeApplicationVersionsRequest method.
1365//    req, resp := client.DescribeApplicationVersionsRequest(params)
1366//
1367//    err := req.Send()
1368//    if err == nil { // resp is now filled
1369//        fmt.Println(resp)
1370//    }
1371//
1372// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeApplicationVersions
1373func (c *ElasticBeanstalk) DescribeApplicationVersionsRequest(input *DescribeApplicationVersionsInput) (req *request.Request, output *DescribeApplicationVersionsOutput) {
1374	op := &request.Operation{
1375		Name:       opDescribeApplicationVersions,
1376		HTTPMethod: "POST",
1377		HTTPPath:   "/",
1378	}
1379
1380	if input == nil {
1381		input = &DescribeApplicationVersionsInput{}
1382	}
1383
1384	output = &DescribeApplicationVersionsOutput{}
1385	req = c.newRequest(op, input, output)
1386	return
1387}
1388
1389// DescribeApplicationVersions API operation for AWS Elastic Beanstalk.
1390//
1391// Retrieve a list of application versions.
1392//
1393// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1394// with awserr.Error's Code and Message methods to get detailed information about
1395// the error.
1396//
1397// See the AWS API reference guide for AWS Elastic Beanstalk's
1398// API operation DescribeApplicationVersions for usage and error information.
1399// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeApplicationVersions
1400func (c *ElasticBeanstalk) DescribeApplicationVersions(input *DescribeApplicationVersionsInput) (*DescribeApplicationVersionsOutput, error) {
1401	req, out := c.DescribeApplicationVersionsRequest(input)
1402	return out, req.Send()
1403}
1404
1405// DescribeApplicationVersionsWithContext is the same as DescribeApplicationVersions with the addition of
1406// the ability to pass a context and additional request options.
1407//
1408// See DescribeApplicationVersions for details on how to use this API operation.
1409//
1410// The context must be non-nil and will be used for request cancellation. If
1411// the context is nil a panic will occur. In the future the SDK may create
1412// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1413// for more information on using Contexts.
1414func (c *ElasticBeanstalk) DescribeApplicationVersionsWithContext(ctx aws.Context, input *DescribeApplicationVersionsInput, opts ...request.Option) (*DescribeApplicationVersionsOutput, error) {
1415	req, out := c.DescribeApplicationVersionsRequest(input)
1416	req.SetContext(ctx)
1417	req.ApplyOptions(opts...)
1418	return out, req.Send()
1419}
1420
1421const opDescribeApplications = "DescribeApplications"
1422
1423// DescribeApplicationsRequest generates a "aws/request.Request" representing the
1424// client's request for the DescribeApplications operation. The "output" return
1425// value will be populated with the request's response once the request complets
1426// successfuly.
1427//
1428// Use "Send" method on the returned Request to send the API call to the service.
1429// the "output" return value is not valid until after Send returns without error.
1430//
1431// See DescribeApplications for more information on using the DescribeApplications
1432// API call, and error handling.
1433//
1434// This method is useful when you want to inject custom logic or configuration
1435// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1436//
1437//
1438//    // Example sending a request using the DescribeApplicationsRequest method.
1439//    req, resp := client.DescribeApplicationsRequest(params)
1440//
1441//    err := req.Send()
1442//    if err == nil { // resp is now filled
1443//        fmt.Println(resp)
1444//    }
1445//
1446// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeApplications
1447func (c *ElasticBeanstalk) DescribeApplicationsRequest(input *DescribeApplicationsInput) (req *request.Request, output *DescribeApplicationsOutput) {
1448	op := &request.Operation{
1449		Name:       opDescribeApplications,
1450		HTTPMethod: "POST",
1451		HTTPPath:   "/",
1452	}
1453
1454	if input == nil {
1455		input = &DescribeApplicationsInput{}
1456	}
1457
1458	output = &DescribeApplicationsOutput{}
1459	req = c.newRequest(op, input, output)
1460	return
1461}
1462
1463// DescribeApplications API operation for AWS Elastic Beanstalk.
1464//
1465// Returns the descriptions of existing applications.
1466//
1467// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1468// with awserr.Error's Code and Message methods to get detailed information about
1469// the error.
1470//
1471// See the AWS API reference guide for AWS Elastic Beanstalk's
1472// API operation DescribeApplications for usage and error information.
1473// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeApplications
1474func (c *ElasticBeanstalk) DescribeApplications(input *DescribeApplicationsInput) (*DescribeApplicationsOutput, error) {
1475	req, out := c.DescribeApplicationsRequest(input)
1476	return out, req.Send()
1477}
1478
1479// DescribeApplicationsWithContext is the same as DescribeApplications with the addition of
1480// the ability to pass a context and additional request options.
1481//
1482// See DescribeApplications for details on how to use this API operation.
1483//
1484// The context must be non-nil and will be used for request cancellation. If
1485// the context is nil a panic will occur. In the future the SDK may create
1486// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1487// for more information on using Contexts.
1488func (c *ElasticBeanstalk) DescribeApplicationsWithContext(ctx aws.Context, input *DescribeApplicationsInput, opts ...request.Option) (*DescribeApplicationsOutput, error) {
1489	req, out := c.DescribeApplicationsRequest(input)
1490	req.SetContext(ctx)
1491	req.ApplyOptions(opts...)
1492	return out, req.Send()
1493}
1494
1495const opDescribeConfigurationOptions = "DescribeConfigurationOptions"
1496
1497// DescribeConfigurationOptionsRequest generates a "aws/request.Request" representing the
1498// client's request for the DescribeConfigurationOptions operation. The "output" return
1499// value will be populated with the request's response once the request complets
1500// successfuly.
1501//
1502// Use "Send" method on the returned Request to send the API call to the service.
1503// the "output" return value is not valid until after Send returns without error.
1504//
1505// See DescribeConfigurationOptions for more information on using the DescribeConfigurationOptions
1506// API call, and error handling.
1507//
1508// This method is useful when you want to inject custom logic or configuration
1509// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1510//
1511//
1512//    // Example sending a request using the DescribeConfigurationOptionsRequest method.
1513//    req, resp := client.DescribeConfigurationOptionsRequest(params)
1514//
1515//    err := req.Send()
1516//    if err == nil { // resp is now filled
1517//        fmt.Println(resp)
1518//    }
1519//
1520// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeConfigurationOptions
1521func (c *ElasticBeanstalk) DescribeConfigurationOptionsRequest(input *DescribeConfigurationOptionsInput) (req *request.Request, output *DescribeConfigurationOptionsOutput) {
1522	op := &request.Operation{
1523		Name:       opDescribeConfigurationOptions,
1524		HTTPMethod: "POST",
1525		HTTPPath:   "/",
1526	}
1527
1528	if input == nil {
1529		input = &DescribeConfigurationOptionsInput{}
1530	}
1531
1532	output = &DescribeConfigurationOptionsOutput{}
1533	req = c.newRequest(op, input, output)
1534	return
1535}
1536
1537// DescribeConfigurationOptions API operation for AWS Elastic Beanstalk.
1538//
1539// Describes the configuration options that are used in a particular configuration
1540// template or environment, or that a specified solution stack defines. The
1541// description includes the values the options, their default values, and an
1542// indication of the required action on a running environment if an option value
1543// is changed.
1544//
1545// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1546// with awserr.Error's Code and Message methods to get detailed information about
1547// the error.
1548//
1549// See the AWS API reference guide for AWS Elastic Beanstalk's
1550// API operation DescribeConfigurationOptions for usage and error information.
1551//
1552// Returned Error Codes:
1553//   * ErrCodeTooManyBucketsException "TooManyBucketsException"
1554//   The specified account has reached its limit of Amazon S3 buckets.
1555//
1556// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeConfigurationOptions
1557func (c *ElasticBeanstalk) DescribeConfigurationOptions(input *DescribeConfigurationOptionsInput) (*DescribeConfigurationOptionsOutput, error) {
1558	req, out := c.DescribeConfigurationOptionsRequest(input)
1559	return out, req.Send()
1560}
1561
1562// DescribeConfigurationOptionsWithContext is the same as DescribeConfigurationOptions with the addition of
1563// the ability to pass a context and additional request options.
1564//
1565// See DescribeConfigurationOptions for details on how to use this API operation.
1566//
1567// The context must be non-nil and will be used for request cancellation. If
1568// the context is nil a panic will occur. In the future the SDK may create
1569// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1570// for more information on using Contexts.
1571func (c *ElasticBeanstalk) DescribeConfigurationOptionsWithContext(ctx aws.Context, input *DescribeConfigurationOptionsInput, opts ...request.Option) (*DescribeConfigurationOptionsOutput, error) {
1572	req, out := c.DescribeConfigurationOptionsRequest(input)
1573	req.SetContext(ctx)
1574	req.ApplyOptions(opts...)
1575	return out, req.Send()
1576}
1577
1578const opDescribeConfigurationSettings = "DescribeConfigurationSettings"
1579
1580// DescribeConfigurationSettingsRequest generates a "aws/request.Request" representing the
1581// client's request for the DescribeConfigurationSettings operation. The "output" return
1582// value will be populated with the request's response once the request complets
1583// successfuly.
1584//
1585// Use "Send" method on the returned Request to send the API call to the service.
1586// the "output" return value is not valid until after Send returns without error.
1587//
1588// See DescribeConfigurationSettings for more information on using the DescribeConfigurationSettings
1589// API call, and error handling.
1590//
1591// This method is useful when you want to inject custom logic or configuration
1592// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1593//
1594//
1595//    // Example sending a request using the DescribeConfigurationSettingsRequest method.
1596//    req, resp := client.DescribeConfigurationSettingsRequest(params)
1597//
1598//    err := req.Send()
1599//    if err == nil { // resp is now filled
1600//        fmt.Println(resp)
1601//    }
1602//
1603// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeConfigurationSettings
1604func (c *ElasticBeanstalk) DescribeConfigurationSettingsRequest(input *DescribeConfigurationSettingsInput) (req *request.Request, output *DescribeConfigurationSettingsOutput) {
1605	op := &request.Operation{
1606		Name:       opDescribeConfigurationSettings,
1607		HTTPMethod: "POST",
1608		HTTPPath:   "/",
1609	}
1610
1611	if input == nil {
1612		input = &DescribeConfigurationSettingsInput{}
1613	}
1614
1615	output = &DescribeConfigurationSettingsOutput{}
1616	req = c.newRequest(op, input, output)
1617	return
1618}
1619
1620// DescribeConfigurationSettings API operation for AWS Elastic Beanstalk.
1621//
1622// Returns a description of the settings for the specified configuration set,
1623// that is, either a configuration template or the configuration set associated
1624// with a running environment.
1625//
1626// When describing the settings for the configuration set associated with a
1627// running environment, it is possible to receive two sets of setting descriptions.
1628// One is the deployed configuration set, and the other is a draft configuration
1629// of an environment that is either in the process of deployment or that failed
1630// to deploy.
1631//
1632// Related Topics
1633//
1634//    * DeleteEnvironmentConfiguration
1635//
1636// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1637// with awserr.Error's Code and Message methods to get detailed information about
1638// the error.
1639//
1640// See the AWS API reference guide for AWS Elastic Beanstalk's
1641// API operation DescribeConfigurationSettings for usage and error information.
1642//
1643// Returned Error Codes:
1644//   * ErrCodeTooManyBucketsException "TooManyBucketsException"
1645//   The specified account has reached its limit of Amazon S3 buckets.
1646//
1647// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeConfigurationSettings
1648func (c *ElasticBeanstalk) DescribeConfigurationSettings(input *DescribeConfigurationSettingsInput) (*DescribeConfigurationSettingsOutput, error) {
1649	req, out := c.DescribeConfigurationSettingsRequest(input)
1650	return out, req.Send()
1651}
1652
1653// DescribeConfigurationSettingsWithContext is the same as DescribeConfigurationSettings with the addition of
1654// the ability to pass a context and additional request options.
1655//
1656// See DescribeConfigurationSettings for details on how to use this API operation.
1657//
1658// The context must be non-nil and will be used for request cancellation. If
1659// the context is nil a panic will occur. In the future the SDK may create
1660// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1661// for more information on using Contexts.
1662func (c *ElasticBeanstalk) DescribeConfigurationSettingsWithContext(ctx aws.Context, input *DescribeConfigurationSettingsInput, opts ...request.Option) (*DescribeConfigurationSettingsOutput, error) {
1663	req, out := c.DescribeConfigurationSettingsRequest(input)
1664	req.SetContext(ctx)
1665	req.ApplyOptions(opts...)
1666	return out, req.Send()
1667}
1668
1669const opDescribeEnvironmentHealth = "DescribeEnvironmentHealth"
1670
1671// DescribeEnvironmentHealthRequest generates a "aws/request.Request" representing the
1672// client's request for the DescribeEnvironmentHealth operation. The "output" return
1673// value will be populated with the request's response once the request complets
1674// successfuly.
1675//
1676// Use "Send" method on the returned Request to send the API call to the service.
1677// the "output" return value is not valid until after Send returns without error.
1678//
1679// See DescribeEnvironmentHealth for more information on using the DescribeEnvironmentHealth
1680// API call, and error handling.
1681//
1682// This method is useful when you want to inject custom logic or configuration
1683// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1684//
1685//
1686//    // Example sending a request using the DescribeEnvironmentHealthRequest method.
1687//    req, resp := client.DescribeEnvironmentHealthRequest(params)
1688//
1689//    err := req.Send()
1690//    if err == nil { // resp is now filled
1691//        fmt.Println(resp)
1692//    }
1693//
1694// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeEnvironmentHealth
1695func (c *ElasticBeanstalk) DescribeEnvironmentHealthRequest(input *DescribeEnvironmentHealthInput) (req *request.Request, output *DescribeEnvironmentHealthOutput) {
1696	op := &request.Operation{
1697		Name:       opDescribeEnvironmentHealth,
1698		HTTPMethod: "POST",
1699		HTTPPath:   "/",
1700	}
1701
1702	if input == nil {
1703		input = &DescribeEnvironmentHealthInput{}
1704	}
1705
1706	output = &DescribeEnvironmentHealthOutput{}
1707	req = c.newRequest(op, input, output)
1708	return
1709}
1710
1711// DescribeEnvironmentHealth API operation for AWS Elastic Beanstalk.
1712//
1713// Returns information about the overall health of the specified environment.
1714// The DescribeEnvironmentHealth operation is only available with AWS Elastic
1715// Beanstalk Enhanced Health.
1716//
1717// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1718// with awserr.Error's Code and Message methods to get detailed information about
1719// the error.
1720//
1721// See the AWS API reference guide for AWS Elastic Beanstalk's
1722// API operation DescribeEnvironmentHealth for usage and error information.
1723//
1724// Returned Error Codes:
1725//   * ErrCodeInvalidRequestException "InvalidRequestException"
1726//   One or more input parameters is not valid. Please correct the input parameters
1727//   and try the operation again.
1728//
1729//   * ErrCodeServiceException "ServiceException"
1730//   A generic service exception has occurred.
1731//
1732// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeEnvironmentHealth
1733func (c *ElasticBeanstalk) DescribeEnvironmentHealth(input *DescribeEnvironmentHealthInput) (*DescribeEnvironmentHealthOutput, error) {
1734	req, out := c.DescribeEnvironmentHealthRequest(input)
1735	return out, req.Send()
1736}
1737
1738// DescribeEnvironmentHealthWithContext is the same as DescribeEnvironmentHealth with the addition of
1739// the ability to pass a context and additional request options.
1740//
1741// See DescribeEnvironmentHealth for details on how to use this API operation.
1742//
1743// The context must be non-nil and will be used for request cancellation. If
1744// the context is nil a panic will occur. In the future the SDK may create
1745// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1746// for more information on using Contexts.
1747func (c *ElasticBeanstalk) DescribeEnvironmentHealthWithContext(ctx aws.Context, input *DescribeEnvironmentHealthInput, opts ...request.Option) (*DescribeEnvironmentHealthOutput, error) {
1748	req, out := c.DescribeEnvironmentHealthRequest(input)
1749	req.SetContext(ctx)
1750	req.ApplyOptions(opts...)
1751	return out, req.Send()
1752}
1753
1754const opDescribeEnvironmentManagedActionHistory = "DescribeEnvironmentManagedActionHistory"
1755
1756// DescribeEnvironmentManagedActionHistoryRequest generates a "aws/request.Request" representing the
1757// client's request for the DescribeEnvironmentManagedActionHistory operation. The "output" return
1758// value will be populated with the request's response once the request complets
1759// successfuly.
1760//
1761// Use "Send" method on the returned Request to send the API call to the service.
1762// the "output" return value is not valid until after Send returns without error.
1763//
1764// See DescribeEnvironmentManagedActionHistory for more information on using the DescribeEnvironmentManagedActionHistory
1765// API call, and error handling.
1766//
1767// This method is useful when you want to inject custom logic or configuration
1768// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1769//
1770//
1771//    // Example sending a request using the DescribeEnvironmentManagedActionHistoryRequest method.
1772//    req, resp := client.DescribeEnvironmentManagedActionHistoryRequest(params)
1773//
1774//    err := req.Send()
1775//    if err == nil { // resp is now filled
1776//        fmt.Println(resp)
1777//    }
1778//
1779// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeEnvironmentManagedActionHistory
1780func (c *ElasticBeanstalk) DescribeEnvironmentManagedActionHistoryRequest(input *DescribeEnvironmentManagedActionHistoryInput) (req *request.Request, output *DescribeEnvironmentManagedActionHistoryOutput) {
1781	op := &request.Operation{
1782		Name:       opDescribeEnvironmentManagedActionHistory,
1783		HTTPMethod: "POST",
1784		HTTPPath:   "/",
1785	}
1786
1787	if input == nil {
1788		input = &DescribeEnvironmentManagedActionHistoryInput{}
1789	}
1790
1791	output = &DescribeEnvironmentManagedActionHistoryOutput{}
1792	req = c.newRequest(op, input, output)
1793	return
1794}
1795
1796// DescribeEnvironmentManagedActionHistory API operation for AWS Elastic Beanstalk.
1797//
1798// Lists an environment's completed and failed managed actions.
1799//
1800// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1801// with awserr.Error's Code and Message methods to get detailed information about
1802// the error.
1803//
1804// See the AWS API reference guide for AWS Elastic Beanstalk's
1805// API operation DescribeEnvironmentManagedActionHistory for usage and error information.
1806//
1807// Returned Error Codes:
1808//   * ErrCodeServiceException "ServiceException"
1809//   A generic service exception has occurred.
1810//
1811// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeEnvironmentManagedActionHistory
1812func (c *ElasticBeanstalk) DescribeEnvironmentManagedActionHistory(input *DescribeEnvironmentManagedActionHistoryInput) (*DescribeEnvironmentManagedActionHistoryOutput, error) {
1813	req, out := c.DescribeEnvironmentManagedActionHistoryRequest(input)
1814	return out, req.Send()
1815}
1816
1817// DescribeEnvironmentManagedActionHistoryWithContext is the same as DescribeEnvironmentManagedActionHistory with the addition of
1818// the ability to pass a context and additional request options.
1819//
1820// See DescribeEnvironmentManagedActionHistory for details on how to use this API operation.
1821//
1822// The context must be non-nil and will be used for request cancellation. If
1823// the context is nil a panic will occur. In the future the SDK may create
1824// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1825// for more information on using Contexts.
1826func (c *ElasticBeanstalk) DescribeEnvironmentManagedActionHistoryWithContext(ctx aws.Context, input *DescribeEnvironmentManagedActionHistoryInput, opts ...request.Option) (*DescribeEnvironmentManagedActionHistoryOutput, error) {
1827	req, out := c.DescribeEnvironmentManagedActionHistoryRequest(input)
1828	req.SetContext(ctx)
1829	req.ApplyOptions(opts...)
1830	return out, req.Send()
1831}
1832
1833const opDescribeEnvironmentManagedActions = "DescribeEnvironmentManagedActions"
1834
1835// DescribeEnvironmentManagedActionsRequest generates a "aws/request.Request" representing the
1836// client's request for the DescribeEnvironmentManagedActions operation. The "output" return
1837// value will be populated with the request's response once the request complets
1838// successfuly.
1839//
1840// Use "Send" method on the returned Request to send the API call to the service.
1841// the "output" return value is not valid until after Send returns without error.
1842//
1843// See DescribeEnvironmentManagedActions for more information on using the DescribeEnvironmentManagedActions
1844// API call, and error handling.
1845//
1846// This method is useful when you want to inject custom logic or configuration
1847// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1848//
1849//
1850//    // Example sending a request using the DescribeEnvironmentManagedActionsRequest method.
1851//    req, resp := client.DescribeEnvironmentManagedActionsRequest(params)
1852//
1853//    err := req.Send()
1854//    if err == nil { // resp is now filled
1855//        fmt.Println(resp)
1856//    }
1857//
1858// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeEnvironmentManagedActions
1859func (c *ElasticBeanstalk) DescribeEnvironmentManagedActionsRequest(input *DescribeEnvironmentManagedActionsInput) (req *request.Request, output *DescribeEnvironmentManagedActionsOutput) {
1860	op := &request.Operation{
1861		Name:       opDescribeEnvironmentManagedActions,
1862		HTTPMethod: "POST",
1863		HTTPPath:   "/",
1864	}
1865
1866	if input == nil {
1867		input = &DescribeEnvironmentManagedActionsInput{}
1868	}
1869
1870	output = &DescribeEnvironmentManagedActionsOutput{}
1871	req = c.newRequest(op, input, output)
1872	return
1873}
1874
1875// DescribeEnvironmentManagedActions API operation for AWS Elastic Beanstalk.
1876//
1877// Lists an environment's upcoming and in-progress managed actions.
1878//
1879// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1880// with awserr.Error's Code and Message methods to get detailed information about
1881// the error.
1882//
1883// See the AWS API reference guide for AWS Elastic Beanstalk's
1884// API operation DescribeEnvironmentManagedActions for usage and error information.
1885//
1886// Returned Error Codes:
1887//   * ErrCodeServiceException "ServiceException"
1888//   A generic service exception has occurred.
1889//
1890// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeEnvironmentManagedActions
1891func (c *ElasticBeanstalk) DescribeEnvironmentManagedActions(input *DescribeEnvironmentManagedActionsInput) (*DescribeEnvironmentManagedActionsOutput, error) {
1892	req, out := c.DescribeEnvironmentManagedActionsRequest(input)
1893	return out, req.Send()
1894}
1895
1896// DescribeEnvironmentManagedActionsWithContext is the same as DescribeEnvironmentManagedActions with the addition of
1897// the ability to pass a context and additional request options.
1898//
1899// See DescribeEnvironmentManagedActions for details on how to use this API operation.
1900//
1901// The context must be non-nil and will be used for request cancellation. If
1902// the context is nil a panic will occur. In the future the SDK may create
1903// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1904// for more information on using Contexts.
1905func (c *ElasticBeanstalk) DescribeEnvironmentManagedActionsWithContext(ctx aws.Context, input *DescribeEnvironmentManagedActionsInput, opts ...request.Option) (*DescribeEnvironmentManagedActionsOutput, error) {
1906	req, out := c.DescribeEnvironmentManagedActionsRequest(input)
1907	req.SetContext(ctx)
1908	req.ApplyOptions(opts...)
1909	return out, req.Send()
1910}
1911
1912const opDescribeEnvironmentResources = "DescribeEnvironmentResources"
1913
1914// DescribeEnvironmentResourcesRequest generates a "aws/request.Request" representing the
1915// client's request for the DescribeEnvironmentResources operation. The "output" return
1916// value will be populated with the request's response once the request complets
1917// successfuly.
1918//
1919// Use "Send" method on the returned Request to send the API call to the service.
1920// the "output" return value is not valid until after Send returns without error.
1921//
1922// See DescribeEnvironmentResources for more information on using the DescribeEnvironmentResources
1923// API call, and error handling.
1924//
1925// This method is useful when you want to inject custom logic or configuration
1926// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1927//
1928//
1929//    // Example sending a request using the DescribeEnvironmentResourcesRequest method.
1930//    req, resp := client.DescribeEnvironmentResourcesRequest(params)
1931//
1932//    err := req.Send()
1933//    if err == nil { // resp is now filled
1934//        fmt.Println(resp)
1935//    }
1936//
1937// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeEnvironmentResources
1938func (c *ElasticBeanstalk) DescribeEnvironmentResourcesRequest(input *DescribeEnvironmentResourcesInput) (req *request.Request, output *DescribeEnvironmentResourcesOutput) {
1939	op := &request.Operation{
1940		Name:       opDescribeEnvironmentResources,
1941		HTTPMethod: "POST",
1942		HTTPPath:   "/",
1943	}
1944
1945	if input == nil {
1946		input = &DescribeEnvironmentResourcesInput{}
1947	}
1948
1949	output = &DescribeEnvironmentResourcesOutput{}
1950	req = c.newRequest(op, input, output)
1951	return
1952}
1953
1954// DescribeEnvironmentResources API operation for AWS Elastic Beanstalk.
1955//
1956// Returns AWS resources for this environment.
1957//
1958// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1959// with awserr.Error's Code and Message methods to get detailed information about
1960// the error.
1961//
1962// See the AWS API reference guide for AWS Elastic Beanstalk's
1963// API operation DescribeEnvironmentResources for usage and error information.
1964//
1965// Returned Error Codes:
1966//   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
1967//   The specified account does not have sufficient privileges for one of more
1968//   AWS services.
1969//
1970// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeEnvironmentResources
1971func (c *ElasticBeanstalk) DescribeEnvironmentResources(input *DescribeEnvironmentResourcesInput) (*DescribeEnvironmentResourcesOutput, error) {
1972	req, out := c.DescribeEnvironmentResourcesRequest(input)
1973	return out, req.Send()
1974}
1975
1976// DescribeEnvironmentResourcesWithContext is the same as DescribeEnvironmentResources with the addition of
1977// the ability to pass a context and additional request options.
1978//
1979// See DescribeEnvironmentResources for details on how to use this API operation.
1980//
1981// The context must be non-nil and will be used for request cancellation. If
1982// the context is nil a panic will occur. In the future the SDK may create
1983// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1984// for more information on using Contexts.
1985func (c *ElasticBeanstalk) DescribeEnvironmentResourcesWithContext(ctx aws.Context, input *DescribeEnvironmentResourcesInput, opts ...request.Option) (*DescribeEnvironmentResourcesOutput, error) {
1986	req, out := c.DescribeEnvironmentResourcesRequest(input)
1987	req.SetContext(ctx)
1988	req.ApplyOptions(opts...)
1989	return out, req.Send()
1990}
1991
1992const opDescribeEnvironments = "DescribeEnvironments"
1993
1994// DescribeEnvironmentsRequest generates a "aws/request.Request" representing the
1995// client's request for the DescribeEnvironments operation. The "output" return
1996// value will be populated with the request's response once the request complets
1997// successfuly.
1998//
1999// Use "Send" method on the returned Request to send the API call to the service.
2000// the "output" return value is not valid until after Send returns without error.
2001//
2002// See DescribeEnvironments for more information on using the DescribeEnvironments
2003// API call, and error handling.
2004//
2005// This method is useful when you want to inject custom logic or configuration
2006// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2007//
2008//
2009//    // Example sending a request using the DescribeEnvironmentsRequest method.
2010//    req, resp := client.DescribeEnvironmentsRequest(params)
2011//
2012//    err := req.Send()
2013//    if err == nil { // resp is now filled
2014//        fmt.Println(resp)
2015//    }
2016//
2017// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeEnvironments
2018func (c *ElasticBeanstalk) DescribeEnvironmentsRequest(input *DescribeEnvironmentsInput) (req *request.Request, output *EnvironmentDescriptionsMessage) {
2019	op := &request.Operation{
2020		Name:       opDescribeEnvironments,
2021		HTTPMethod: "POST",
2022		HTTPPath:   "/",
2023	}
2024
2025	if input == nil {
2026		input = &DescribeEnvironmentsInput{}
2027	}
2028
2029	output = &EnvironmentDescriptionsMessage{}
2030	req = c.newRequest(op, input, output)
2031	return
2032}
2033
2034// DescribeEnvironments API operation for AWS Elastic Beanstalk.
2035//
2036// Returns descriptions for existing environments.
2037//
2038// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2039// with awserr.Error's Code and Message methods to get detailed information about
2040// the error.
2041//
2042// See the AWS API reference guide for AWS Elastic Beanstalk's
2043// API operation DescribeEnvironments for usage and error information.
2044// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeEnvironments
2045func (c *ElasticBeanstalk) DescribeEnvironments(input *DescribeEnvironmentsInput) (*EnvironmentDescriptionsMessage, error) {
2046	req, out := c.DescribeEnvironmentsRequest(input)
2047	return out, req.Send()
2048}
2049
2050// DescribeEnvironmentsWithContext is the same as DescribeEnvironments with the addition of
2051// the ability to pass a context and additional request options.
2052//
2053// See DescribeEnvironments for details on how to use this API operation.
2054//
2055// The context must be non-nil and will be used for request cancellation. If
2056// the context is nil a panic will occur. In the future the SDK may create
2057// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2058// for more information on using Contexts.
2059func (c *ElasticBeanstalk) DescribeEnvironmentsWithContext(ctx aws.Context, input *DescribeEnvironmentsInput, opts ...request.Option) (*EnvironmentDescriptionsMessage, error) {
2060	req, out := c.DescribeEnvironmentsRequest(input)
2061	req.SetContext(ctx)
2062	req.ApplyOptions(opts...)
2063	return out, req.Send()
2064}
2065
2066const opDescribeEvents = "DescribeEvents"
2067
2068// DescribeEventsRequest generates a "aws/request.Request" representing the
2069// client's request for the DescribeEvents operation. The "output" return
2070// value will be populated with the request's response once the request complets
2071// successfuly.
2072//
2073// Use "Send" method on the returned Request to send the API call to the service.
2074// the "output" return value is not valid until after Send returns without error.
2075//
2076// See DescribeEvents for more information on using the DescribeEvents
2077// API call, and error handling.
2078//
2079// This method is useful when you want to inject custom logic or configuration
2080// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2081//
2082//
2083//    // Example sending a request using the DescribeEventsRequest method.
2084//    req, resp := client.DescribeEventsRequest(params)
2085//
2086//    err := req.Send()
2087//    if err == nil { // resp is now filled
2088//        fmt.Println(resp)
2089//    }
2090//
2091// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeEvents
2092func (c *ElasticBeanstalk) DescribeEventsRequest(input *DescribeEventsInput) (req *request.Request, output *DescribeEventsOutput) {
2093	op := &request.Operation{
2094		Name:       opDescribeEvents,
2095		HTTPMethod: "POST",
2096		HTTPPath:   "/",
2097		Paginator: &request.Paginator{
2098			InputTokens:     []string{"NextToken"},
2099			OutputTokens:    []string{"NextToken"},
2100			LimitToken:      "MaxRecords",
2101			TruncationToken: "",
2102		},
2103	}
2104
2105	if input == nil {
2106		input = &DescribeEventsInput{}
2107	}
2108
2109	output = &DescribeEventsOutput{}
2110	req = c.newRequest(op, input, output)
2111	return
2112}
2113
2114// DescribeEvents API operation for AWS Elastic Beanstalk.
2115//
2116// Returns list of event descriptions matching criteria up to the last 6 weeks.
2117//
2118// This action returns the most recent 1,000 events from the specified NextToken.
2119//
2120// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2121// with awserr.Error's Code and Message methods to get detailed information about
2122// the error.
2123//
2124// See the AWS API reference guide for AWS Elastic Beanstalk's
2125// API operation DescribeEvents for usage and error information.
2126// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeEvents
2127func (c *ElasticBeanstalk) DescribeEvents(input *DescribeEventsInput) (*DescribeEventsOutput, error) {
2128	req, out := c.DescribeEventsRequest(input)
2129	return out, req.Send()
2130}
2131
2132// DescribeEventsWithContext is the same as DescribeEvents with the addition of
2133// the ability to pass a context and additional request options.
2134//
2135// See DescribeEvents for details on how to use this API operation.
2136//
2137// The context must be non-nil and will be used for request cancellation. If
2138// the context is nil a panic will occur. In the future the SDK may create
2139// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2140// for more information on using Contexts.
2141func (c *ElasticBeanstalk) DescribeEventsWithContext(ctx aws.Context, input *DescribeEventsInput, opts ...request.Option) (*DescribeEventsOutput, error) {
2142	req, out := c.DescribeEventsRequest(input)
2143	req.SetContext(ctx)
2144	req.ApplyOptions(opts...)
2145	return out, req.Send()
2146}
2147
2148// DescribeEventsPages iterates over the pages of a DescribeEvents operation,
2149// calling the "fn" function with the response data for each page. To stop
2150// iterating, return false from the fn function.
2151//
2152// See DescribeEvents method for more information on how to use this operation.
2153//
2154// Note: This operation can generate multiple requests to a service.
2155//
2156//    // Example iterating over at most 3 pages of a DescribeEvents operation.
2157//    pageNum := 0
2158//    err := client.DescribeEventsPages(params,
2159//        func(page *DescribeEventsOutput, lastPage bool) bool {
2160//            pageNum++
2161//            fmt.Println(page)
2162//            return pageNum <= 3
2163//        })
2164//
2165func (c *ElasticBeanstalk) DescribeEventsPages(input *DescribeEventsInput, fn func(*DescribeEventsOutput, bool) bool) error {
2166	return c.DescribeEventsPagesWithContext(aws.BackgroundContext(), input, fn)
2167}
2168
2169// DescribeEventsPagesWithContext same as DescribeEventsPages except
2170// it takes a Context and allows setting request options on the pages.
2171//
2172// The context must be non-nil and will be used for request cancellation. If
2173// the context is nil a panic will occur. In the future the SDK may create
2174// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2175// for more information on using Contexts.
2176func (c *ElasticBeanstalk) DescribeEventsPagesWithContext(ctx aws.Context, input *DescribeEventsInput, fn func(*DescribeEventsOutput, bool) bool, opts ...request.Option) error {
2177	p := request.Pagination{
2178		NewRequest: func() (*request.Request, error) {
2179			var inCpy *DescribeEventsInput
2180			if input != nil {
2181				tmp := *input
2182				inCpy = &tmp
2183			}
2184			req, _ := c.DescribeEventsRequest(inCpy)
2185			req.SetContext(ctx)
2186			req.ApplyOptions(opts...)
2187			return req, nil
2188		},
2189	}
2190
2191	cont := true
2192	for p.Next() && cont {
2193		cont = fn(p.Page().(*DescribeEventsOutput), !p.HasNextPage())
2194	}
2195	return p.Err()
2196}
2197
2198const opDescribeInstancesHealth = "DescribeInstancesHealth"
2199
2200// DescribeInstancesHealthRequest generates a "aws/request.Request" representing the
2201// client's request for the DescribeInstancesHealth operation. The "output" return
2202// value will be populated with the request's response once the request complets
2203// successfuly.
2204//
2205// Use "Send" method on the returned Request to send the API call to the service.
2206// the "output" return value is not valid until after Send returns without error.
2207//
2208// See DescribeInstancesHealth for more information on using the DescribeInstancesHealth
2209// API call, and error handling.
2210//
2211// This method is useful when you want to inject custom logic or configuration
2212// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2213//
2214//
2215//    // Example sending a request using the DescribeInstancesHealthRequest method.
2216//    req, resp := client.DescribeInstancesHealthRequest(params)
2217//
2218//    err := req.Send()
2219//    if err == nil { // resp is now filled
2220//        fmt.Println(resp)
2221//    }
2222//
2223// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeInstancesHealth
2224func (c *ElasticBeanstalk) DescribeInstancesHealthRequest(input *DescribeInstancesHealthInput) (req *request.Request, output *DescribeInstancesHealthOutput) {
2225	op := &request.Operation{
2226		Name:       opDescribeInstancesHealth,
2227		HTTPMethod: "POST",
2228		HTTPPath:   "/",
2229	}
2230
2231	if input == nil {
2232		input = &DescribeInstancesHealthInput{}
2233	}
2234
2235	output = &DescribeInstancesHealthOutput{}
2236	req = c.newRequest(op, input, output)
2237	return
2238}
2239
2240// DescribeInstancesHealth API operation for AWS Elastic Beanstalk.
2241//
2242// Retrives detailed information about the health of instances in your AWS Elastic
2243// Beanstalk. This operation requires enhanced health reporting (http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/health-enhanced.html).
2244//
2245// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2246// with awserr.Error's Code and Message methods to get detailed information about
2247// the error.
2248//
2249// See the AWS API reference guide for AWS Elastic Beanstalk's
2250// API operation DescribeInstancesHealth for usage and error information.
2251//
2252// Returned Error Codes:
2253//   * ErrCodeInvalidRequestException "InvalidRequestException"
2254//   One or more input parameters is not valid. Please correct the input parameters
2255//   and try the operation again.
2256//
2257//   * ErrCodeServiceException "ServiceException"
2258//   A generic service exception has occurred.
2259//
2260// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeInstancesHealth
2261func (c *ElasticBeanstalk) DescribeInstancesHealth(input *DescribeInstancesHealthInput) (*DescribeInstancesHealthOutput, error) {
2262	req, out := c.DescribeInstancesHealthRequest(input)
2263	return out, req.Send()
2264}
2265
2266// DescribeInstancesHealthWithContext is the same as DescribeInstancesHealth with the addition of
2267// the ability to pass a context and additional request options.
2268//
2269// See DescribeInstancesHealth for details on how to use this API operation.
2270//
2271// The context must be non-nil and will be used for request cancellation. If
2272// the context is nil a panic will occur. In the future the SDK may create
2273// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2274// for more information on using Contexts.
2275func (c *ElasticBeanstalk) DescribeInstancesHealthWithContext(ctx aws.Context, input *DescribeInstancesHealthInput, opts ...request.Option) (*DescribeInstancesHealthOutput, error) {
2276	req, out := c.DescribeInstancesHealthRequest(input)
2277	req.SetContext(ctx)
2278	req.ApplyOptions(opts...)
2279	return out, req.Send()
2280}
2281
2282const opDescribePlatformVersion = "DescribePlatformVersion"
2283
2284// DescribePlatformVersionRequest generates a "aws/request.Request" representing the
2285// client's request for the DescribePlatformVersion operation. The "output" return
2286// value will be populated with the request's response once the request complets
2287// successfuly.
2288//
2289// Use "Send" method on the returned Request to send the API call to the service.
2290// the "output" return value is not valid until after Send returns without error.
2291//
2292// See DescribePlatformVersion for more information on using the DescribePlatformVersion
2293// API call, and error handling.
2294//
2295// This method is useful when you want to inject custom logic or configuration
2296// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2297//
2298//
2299//    // Example sending a request using the DescribePlatformVersionRequest method.
2300//    req, resp := client.DescribePlatformVersionRequest(params)
2301//
2302//    err := req.Send()
2303//    if err == nil { // resp is now filled
2304//        fmt.Println(resp)
2305//    }
2306//
2307// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribePlatformVersion
2308func (c *ElasticBeanstalk) DescribePlatformVersionRequest(input *DescribePlatformVersionInput) (req *request.Request, output *DescribePlatformVersionOutput) {
2309	op := &request.Operation{
2310		Name:       opDescribePlatformVersion,
2311		HTTPMethod: "POST",
2312		HTTPPath:   "/",
2313	}
2314
2315	if input == nil {
2316		input = &DescribePlatformVersionInput{}
2317	}
2318
2319	output = &DescribePlatformVersionOutput{}
2320	req = c.newRequest(op, input, output)
2321	return
2322}
2323
2324// DescribePlatformVersion API operation for AWS Elastic Beanstalk.
2325//
2326// Describes the version of the platform.
2327//
2328// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2329// with awserr.Error's Code and Message methods to get detailed information about
2330// the error.
2331//
2332// See the AWS API reference guide for AWS Elastic Beanstalk's
2333// API operation DescribePlatformVersion for usage and error information.
2334//
2335// Returned Error Codes:
2336//   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
2337//   The specified account does not have sufficient privileges for one of more
2338//   AWS services.
2339//
2340//   * ErrCodeServiceException "ServiceException"
2341//   A generic service exception has occurred.
2342//
2343// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribePlatformVersion
2344func (c *ElasticBeanstalk) DescribePlatformVersion(input *DescribePlatformVersionInput) (*DescribePlatformVersionOutput, error) {
2345	req, out := c.DescribePlatformVersionRequest(input)
2346	return out, req.Send()
2347}
2348
2349// DescribePlatformVersionWithContext is the same as DescribePlatformVersion with the addition of
2350// the ability to pass a context and additional request options.
2351//
2352// See DescribePlatformVersion for details on how to use this API operation.
2353//
2354// The context must be non-nil and will be used for request cancellation. If
2355// the context is nil a panic will occur. In the future the SDK may create
2356// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2357// for more information on using Contexts.
2358func (c *ElasticBeanstalk) DescribePlatformVersionWithContext(ctx aws.Context, input *DescribePlatformVersionInput, opts ...request.Option) (*DescribePlatformVersionOutput, error) {
2359	req, out := c.DescribePlatformVersionRequest(input)
2360	req.SetContext(ctx)
2361	req.ApplyOptions(opts...)
2362	return out, req.Send()
2363}
2364
2365const opListAvailableSolutionStacks = "ListAvailableSolutionStacks"
2366
2367// ListAvailableSolutionStacksRequest generates a "aws/request.Request" representing the
2368// client's request for the ListAvailableSolutionStacks operation. The "output" return
2369// value will be populated with the request's response once the request complets
2370// successfuly.
2371//
2372// Use "Send" method on the returned Request to send the API call to the service.
2373// the "output" return value is not valid until after Send returns without error.
2374//
2375// See ListAvailableSolutionStacks for more information on using the ListAvailableSolutionStacks
2376// API call, and error handling.
2377//
2378// This method is useful when you want to inject custom logic or configuration
2379// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2380//
2381//
2382//    // Example sending a request using the ListAvailableSolutionStacksRequest method.
2383//    req, resp := client.ListAvailableSolutionStacksRequest(params)
2384//
2385//    err := req.Send()
2386//    if err == nil { // resp is now filled
2387//        fmt.Println(resp)
2388//    }
2389//
2390// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ListAvailableSolutionStacks
2391func (c *ElasticBeanstalk) ListAvailableSolutionStacksRequest(input *ListAvailableSolutionStacksInput) (req *request.Request, output *ListAvailableSolutionStacksOutput) {
2392	op := &request.Operation{
2393		Name:       opListAvailableSolutionStacks,
2394		HTTPMethod: "POST",
2395		HTTPPath:   "/",
2396	}
2397
2398	if input == nil {
2399		input = &ListAvailableSolutionStacksInput{}
2400	}
2401
2402	output = &ListAvailableSolutionStacksOutput{}
2403	req = c.newRequest(op, input, output)
2404	return
2405}
2406
2407// ListAvailableSolutionStacks API operation for AWS Elastic Beanstalk.
2408//
2409// Returns a list of the available solution stack names, with the public version
2410// first and then in reverse chronological order.
2411//
2412// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2413// with awserr.Error's Code and Message methods to get detailed information about
2414// the error.
2415//
2416// See the AWS API reference guide for AWS Elastic Beanstalk's
2417// API operation ListAvailableSolutionStacks for usage and error information.
2418// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ListAvailableSolutionStacks
2419func (c *ElasticBeanstalk) ListAvailableSolutionStacks(input *ListAvailableSolutionStacksInput) (*ListAvailableSolutionStacksOutput, error) {
2420	req, out := c.ListAvailableSolutionStacksRequest(input)
2421	return out, req.Send()
2422}
2423
2424// ListAvailableSolutionStacksWithContext is the same as ListAvailableSolutionStacks with the addition of
2425// the ability to pass a context and additional request options.
2426//
2427// See ListAvailableSolutionStacks for details on how to use this API operation.
2428//
2429// The context must be non-nil and will be used for request cancellation. If
2430// the context is nil a panic will occur. In the future the SDK may create
2431// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2432// for more information on using Contexts.
2433func (c *ElasticBeanstalk) ListAvailableSolutionStacksWithContext(ctx aws.Context, input *ListAvailableSolutionStacksInput, opts ...request.Option) (*ListAvailableSolutionStacksOutput, error) {
2434	req, out := c.ListAvailableSolutionStacksRequest(input)
2435	req.SetContext(ctx)
2436	req.ApplyOptions(opts...)
2437	return out, req.Send()
2438}
2439
2440const opListPlatformVersions = "ListPlatformVersions"
2441
2442// ListPlatformVersionsRequest generates a "aws/request.Request" representing the
2443// client's request for the ListPlatformVersions operation. The "output" return
2444// value will be populated with the request's response once the request complets
2445// successfuly.
2446//
2447// Use "Send" method on the returned Request to send the API call to the service.
2448// the "output" return value is not valid until after Send returns without error.
2449//
2450// See ListPlatformVersions for more information on using the ListPlatformVersions
2451// API call, and error handling.
2452//
2453// This method is useful when you want to inject custom logic or configuration
2454// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2455//
2456//
2457//    // Example sending a request using the ListPlatformVersionsRequest method.
2458//    req, resp := client.ListPlatformVersionsRequest(params)
2459//
2460//    err := req.Send()
2461//    if err == nil { // resp is now filled
2462//        fmt.Println(resp)
2463//    }
2464//
2465// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ListPlatformVersions
2466func (c *ElasticBeanstalk) ListPlatformVersionsRequest(input *ListPlatformVersionsInput) (req *request.Request, output *ListPlatformVersionsOutput) {
2467	op := &request.Operation{
2468		Name:       opListPlatformVersions,
2469		HTTPMethod: "POST",
2470		HTTPPath:   "/",
2471	}
2472
2473	if input == nil {
2474		input = &ListPlatformVersionsInput{}
2475	}
2476
2477	output = &ListPlatformVersionsOutput{}
2478	req = c.newRequest(op, input, output)
2479	return
2480}
2481
2482// ListPlatformVersions API operation for AWS Elastic Beanstalk.
2483//
2484// Lists the available platforms.
2485//
2486// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2487// with awserr.Error's Code and Message methods to get detailed information about
2488// the error.
2489//
2490// See the AWS API reference guide for AWS Elastic Beanstalk's
2491// API operation ListPlatformVersions for usage and error information.
2492//
2493// Returned Error Codes:
2494//   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
2495//   The specified account does not have sufficient privileges for one of more
2496//   AWS services.
2497//
2498//   * ErrCodeServiceException "ServiceException"
2499//   A generic service exception has occurred.
2500//
2501// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ListPlatformVersions
2502func (c *ElasticBeanstalk) ListPlatformVersions(input *ListPlatformVersionsInput) (*ListPlatformVersionsOutput, error) {
2503	req, out := c.ListPlatformVersionsRequest(input)
2504	return out, req.Send()
2505}
2506
2507// ListPlatformVersionsWithContext is the same as ListPlatformVersions with the addition of
2508// the ability to pass a context and additional request options.
2509//
2510// See ListPlatformVersions for details on how to use this API operation.
2511//
2512// The context must be non-nil and will be used for request cancellation. If
2513// the context is nil a panic will occur. In the future the SDK may create
2514// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2515// for more information on using Contexts.
2516func (c *ElasticBeanstalk) ListPlatformVersionsWithContext(ctx aws.Context, input *ListPlatformVersionsInput, opts ...request.Option) (*ListPlatformVersionsOutput, error) {
2517	req, out := c.ListPlatformVersionsRequest(input)
2518	req.SetContext(ctx)
2519	req.ApplyOptions(opts...)
2520	return out, req.Send()
2521}
2522
2523const opListTagsForResource = "ListTagsForResource"
2524
2525// ListTagsForResourceRequest generates a "aws/request.Request" representing the
2526// client's request for the ListTagsForResource operation. The "output" return
2527// value will be populated with the request's response once the request complets
2528// successfuly.
2529//
2530// Use "Send" method on the returned Request to send the API call to the service.
2531// the "output" return value is not valid until after Send returns without error.
2532//
2533// See ListTagsForResource for more information on using the ListTagsForResource
2534// API call, and error handling.
2535//
2536// This method is useful when you want to inject custom logic or configuration
2537// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2538//
2539//
2540//    // Example sending a request using the ListTagsForResourceRequest method.
2541//    req, resp := client.ListTagsForResourceRequest(params)
2542//
2543//    err := req.Send()
2544//    if err == nil { // resp is now filled
2545//        fmt.Println(resp)
2546//    }
2547//
2548// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ListTagsForResource
2549func (c *ElasticBeanstalk) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) {
2550	op := &request.Operation{
2551		Name:       opListTagsForResource,
2552		HTTPMethod: "POST",
2553		HTTPPath:   "/",
2554	}
2555
2556	if input == nil {
2557		input = &ListTagsForResourceInput{}
2558	}
2559
2560	output = &ListTagsForResourceOutput{}
2561	req = c.newRequest(op, input, output)
2562	return
2563}
2564
2565// ListTagsForResource API operation for AWS Elastic Beanstalk.
2566//
2567// Returns the tags applied to an AWS Elastic Beanstalk resource. The response
2568// contains a list of tag key-value pairs.
2569//
2570// Currently, Elastic Beanstalk only supports tagging of Elastic Beanstalk environments.
2571// For details about environment tagging, see Tagging Resources in Your Elastic
2572// Beanstalk Environment (http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/using-features.tagging.html).
2573//
2574// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2575// with awserr.Error's Code and Message methods to get detailed information about
2576// the error.
2577//
2578// See the AWS API reference guide for AWS Elastic Beanstalk's
2579// API operation ListTagsForResource for usage and error information.
2580//
2581// Returned Error Codes:
2582//   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
2583//   The specified account does not have sufficient privileges for one of more
2584//   AWS services.
2585//
2586//   * ErrCodeResourceNotFoundException "ResourceNotFoundException"
2587//   A resource doesn't exist for the specified Amazon Resource Name (ARN).
2588//
2589//   * ErrCodeResourceTypeNotSupportedException "ResourceTypeNotSupportedException"
2590//   The type of the specified Amazon Resource Name (ARN) isn't supported for
2591//   this operation.
2592//
2593// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ListTagsForResource
2594func (c *ElasticBeanstalk) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) {
2595	req, out := c.ListTagsForResourceRequest(input)
2596	return out, req.Send()
2597}
2598
2599// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of
2600// the ability to pass a context and additional request options.
2601//
2602// See ListTagsForResource for details on how to use this API operation.
2603//
2604// The context must be non-nil and will be used for request cancellation. If
2605// the context is nil a panic will occur. In the future the SDK may create
2606// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2607// for more information on using Contexts.
2608func (c *ElasticBeanstalk) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) {
2609	req, out := c.ListTagsForResourceRequest(input)
2610	req.SetContext(ctx)
2611	req.ApplyOptions(opts...)
2612	return out, req.Send()
2613}
2614
2615const opRebuildEnvironment = "RebuildEnvironment"
2616
2617// RebuildEnvironmentRequest generates a "aws/request.Request" representing the
2618// client's request for the RebuildEnvironment operation. The "output" return
2619// value will be populated with the request's response once the request complets
2620// successfuly.
2621//
2622// Use "Send" method on the returned Request to send the API call to the service.
2623// the "output" return value is not valid until after Send returns without error.
2624//
2625// See RebuildEnvironment for more information on using the RebuildEnvironment
2626// API call, and error handling.
2627//
2628// This method is useful when you want to inject custom logic or configuration
2629// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2630//
2631//
2632//    // Example sending a request using the RebuildEnvironmentRequest method.
2633//    req, resp := client.RebuildEnvironmentRequest(params)
2634//
2635//    err := req.Send()
2636//    if err == nil { // resp is now filled
2637//        fmt.Println(resp)
2638//    }
2639//
2640// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/RebuildEnvironment
2641func (c *ElasticBeanstalk) RebuildEnvironmentRequest(input *RebuildEnvironmentInput) (req *request.Request, output *RebuildEnvironmentOutput) {
2642	op := &request.Operation{
2643		Name:       opRebuildEnvironment,
2644		HTTPMethod: "POST",
2645		HTTPPath:   "/",
2646	}
2647
2648	if input == nil {
2649		input = &RebuildEnvironmentInput{}
2650	}
2651
2652	output = &RebuildEnvironmentOutput{}
2653	req = c.newRequest(op, input, output)
2654	req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
2655	req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
2656	return
2657}
2658
2659// RebuildEnvironment API operation for AWS Elastic Beanstalk.
2660//
2661// Deletes and recreates all of the AWS resources (for example: the Auto Scaling
2662// group, load balancer, etc.) for a specified environment and forces a restart.
2663//
2664// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2665// with awserr.Error's Code and Message methods to get detailed information about
2666// the error.
2667//
2668// See the AWS API reference guide for AWS Elastic Beanstalk's
2669// API operation RebuildEnvironment for usage and error information.
2670//
2671// Returned Error Codes:
2672//   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
2673//   The specified account does not have sufficient privileges for one of more
2674//   AWS services.
2675//
2676// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/RebuildEnvironment
2677func (c *ElasticBeanstalk) RebuildEnvironment(input *RebuildEnvironmentInput) (*RebuildEnvironmentOutput, error) {
2678	req, out := c.RebuildEnvironmentRequest(input)
2679	return out, req.Send()
2680}
2681
2682// RebuildEnvironmentWithContext is the same as RebuildEnvironment with the addition of
2683// the ability to pass a context and additional request options.
2684//
2685// See RebuildEnvironment for details on how to use this API operation.
2686//
2687// The context must be non-nil and will be used for request cancellation. If
2688// the context is nil a panic will occur. In the future the SDK may create
2689// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2690// for more information on using Contexts.
2691func (c *ElasticBeanstalk) RebuildEnvironmentWithContext(ctx aws.Context, input *RebuildEnvironmentInput, opts ...request.Option) (*RebuildEnvironmentOutput, error) {
2692	req, out := c.RebuildEnvironmentRequest(input)
2693	req.SetContext(ctx)
2694	req.ApplyOptions(opts...)
2695	return out, req.Send()
2696}
2697
2698const opRequestEnvironmentInfo = "RequestEnvironmentInfo"
2699
2700// RequestEnvironmentInfoRequest generates a "aws/request.Request" representing the
2701// client's request for the RequestEnvironmentInfo operation. The "output" return
2702// value will be populated with the request's response once the request complets
2703// successfuly.
2704//
2705// Use "Send" method on the returned Request to send the API call to the service.
2706// the "output" return value is not valid until after Send returns without error.
2707//
2708// See RequestEnvironmentInfo for more information on using the RequestEnvironmentInfo
2709// API call, and error handling.
2710//
2711// This method is useful when you want to inject custom logic or configuration
2712// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2713//
2714//
2715//    // Example sending a request using the RequestEnvironmentInfoRequest method.
2716//    req, resp := client.RequestEnvironmentInfoRequest(params)
2717//
2718//    err := req.Send()
2719//    if err == nil { // resp is now filled
2720//        fmt.Println(resp)
2721//    }
2722//
2723// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/RequestEnvironmentInfo
2724func (c *ElasticBeanstalk) RequestEnvironmentInfoRequest(input *RequestEnvironmentInfoInput) (req *request.Request, output *RequestEnvironmentInfoOutput) {
2725	op := &request.Operation{
2726		Name:       opRequestEnvironmentInfo,
2727		HTTPMethod: "POST",
2728		HTTPPath:   "/",
2729	}
2730
2731	if input == nil {
2732		input = &RequestEnvironmentInfoInput{}
2733	}
2734
2735	output = &RequestEnvironmentInfoOutput{}
2736	req = c.newRequest(op, input, output)
2737	req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
2738	req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
2739	return
2740}
2741
2742// RequestEnvironmentInfo API operation for AWS Elastic Beanstalk.
2743//
2744// Initiates a request to compile the specified type of information of the deployed
2745// environment.
2746//
2747// Setting the InfoType to tail compiles the last lines from the application
2748// server log files of every Amazon EC2 instance in your environment.
2749//
2750// Setting the InfoType to bundle compresses the application server log files
2751// for every Amazon EC2 instance into a .zip file. Legacy and .NET containers
2752// do not support bundle logs.
2753//
2754// Use RetrieveEnvironmentInfo to obtain the set of logs.
2755//
2756// Related Topics
2757//
2758//    * RetrieveEnvironmentInfo
2759//
2760// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2761// with awserr.Error's Code and Message methods to get detailed information about
2762// the error.
2763//
2764// See the AWS API reference guide for AWS Elastic Beanstalk's
2765// API operation RequestEnvironmentInfo for usage and error information.
2766// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/RequestEnvironmentInfo
2767func (c *ElasticBeanstalk) RequestEnvironmentInfo(input *RequestEnvironmentInfoInput) (*RequestEnvironmentInfoOutput, error) {
2768	req, out := c.RequestEnvironmentInfoRequest(input)
2769	return out, req.Send()
2770}
2771
2772// RequestEnvironmentInfoWithContext is the same as RequestEnvironmentInfo with the addition of
2773// the ability to pass a context and additional request options.
2774//
2775// See RequestEnvironmentInfo for details on how to use this API operation.
2776//
2777// The context must be non-nil and will be used for request cancellation. If
2778// the context is nil a panic will occur. In the future the SDK may create
2779// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2780// for more information on using Contexts.
2781func (c *ElasticBeanstalk) RequestEnvironmentInfoWithContext(ctx aws.Context, input *RequestEnvironmentInfoInput, opts ...request.Option) (*RequestEnvironmentInfoOutput, error) {
2782	req, out := c.RequestEnvironmentInfoRequest(input)
2783	req.SetContext(ctx)
2784	req.ApplyOptions(opts...)
2785	return out, req.Send()
2786}
2787
2788const opRestartAppServer = "RestartAppServer"
2789
2790// RestartAppServerRequest generates a "aws/request.Request" representing the
2791// client's request for the RestartAppServer operation. The "output" return
2792// value will be populated with the request's response once the request complets
2793// successfuly.
2794//
2795// Use "Send" method on the returned Request to send the API call to the service.
2796// the "output" return value is not valid until after Send returns without error.
2797//
2798// See RestartAppServer for more information on using the RestartAppServer
2799// API call, and error handling.
2800//
2801// This method is useful when you want to inject custom logic or configuration
2802// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2803//
2804//
2805//    // Example sending a request using the RestartAppServerRequest method.
2806//    req, resp := client.RestartAppServerRequest(params)
2807//
2808//    err := req.Send()
2809//    if err == nil { // resp is now filled
2810//        fmt.Println(resp)
2811//    }
2812//
2813// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/RestartAppServer
2814func (c *ElasticBeanstalk) RestartAppServerRequest(input *RestartAppServerInput) (req *request.Request, output *RestartAppServerOutput) {
2815	op := &request.Operation{
2816		Name:       opRestartAppServer,
2817		HTTPMethod: "POST",
2818		HTTPPath:   "/",
2819	}
2820
2821	if input == nil {
2822		input = &RestartAppServerInput{}
2823	}
2824
2825	output = &RestartAppServerOutput{}
2826	req = c.newRequest(op, input, output)
2827	req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
2828	req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
2829	return
2830}
2831
2832// RestartAppServer API operation for AWS Elastic Beanstalk.
2833//
2834// Causes the environment to restart the application container server running
2835// on each Amazon EC2 instance.
2836//
2837// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2838// with awserr.Error's Code and Message methods to get detailed information about
2839// the error.
2840//
2841// See the AWS API reference guide for AWS Elastic Beanstalk's
2842// API operation RestartAppServer for usage and error information.
2843// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/RestartAppServer
2844func (c *ElasticBeanstalk) RestartAppServer(input *RestartAppServerInput) (*RestartAppServerOutput, error) {
2845	req, out := c.RestartAppServerRequest(input)
2846	return out, req.Send()
2847}
2848
2849// RestartAppServerWithContext is the same as RestartAppServer with the addition of
2850// the ability to pass a context and additional request options.
2851//
2852// See RestartAppServer for details on how to use this API operation.
2853//
2854// The context must be non-nil and will be used for request cancellation. If
2855// the context is nil a panic will occur. In the future the SDK may create
2856// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2857// for more information on using Contexts.
2858func (c *ElasticBeanstalk) RestartAppServerWithContext(ctx aws.Context, input *RestartAppServerInput, opts ...request.Option) (*RestartAppServerOutput, error) {
2859	req, out := c.RestartAppServerRequest(input)
2860	req.SetContext(ctx)
2861	req.ApplyOptions(opts...)
2862	return out, req.Send()
2863}
2864
2865const opRetrieveEnvironmentInfo = "RetrieveEnvironmentInfo"
2866
2867// RetrieveEnvironmentInfoRequest generates a "aws/request.Request" representing the
2868// client's request for the RetrieveEnvironmentInfo operation. The "output" return
2869// value will be populated with the request's response once the request complets
2870// successfuly.
2871//
2872// Use "Send" method on the returned Request to send the API call to the service.
2873// the "output" return value is not valid until after Send returns without error.
2874//
2875// See RetrieveEnvironmentInfo for more information on using the RetrieveEnvironmentInfo
2876// API call, and error handling.
2877//
2878// This method is useful when you want to inject custom logic or configuration
2879// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2880//
2881//
2882//    // Example sending a request using the RetrieveEnvironmentInfoRequest method.
2883//    req, resp := client.RetrieveEnvironmentInfoRequest(params)
2884//
2885//    err := req.Send()
2886//    if err == nil { // resp is now filled
2887//        fmt.Println(resp)
2888//    }
2889//
2890// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/RetrieveEnvironmentInfo
2891func (c *ElasticBeanstalk) RetrieveEnvironmentInfoRequest(input *RetrieveEnvironmentInfoInput) (req *request.Request, output *RetrieveEnvironmentInfoOutput) {
2892	op := &request.Operation{
2893		Name:       opRetrieveEnvironmentInfo,
2894		HTTPMethod: "POST",
2895		HTTPPath:   "/",
2896	}
2897
2898	if input == nil {
2899		input = &RetrieveEnvironmentInfoInput{}
2900	}
2901
2902	output = &RetrieveEnvironmentInfoOutput{}
2903	req = c.newRequest(op, input, output)
2904	return
2905}
2906
2907// RetrieveEnvironmentInfo API operation for AWS Elastic Beanstalk.
2908//
2909// Retrieves the compiled information from a RequestEnvironmentInfo request.
2910//
2911// Related Topics
2912//
2913//    * RequestEnvironmentInfo
2914//
2915// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2916// with awserr.Error's Code and Message methods to get detailed information about
2917// the error.
2918//
2919// See the AWS API reference guide for AWS Elastic Beanstalk's
2920// API operation RetrieveEnvironmentInfo for usage and error information.
2921// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/RetrieveEnvironmentInfo
2922func (c *ElasticBeanstalk) RetrieveEnvironmentInfo(input *RetrieveEnvironmentInfoInput) (*RetrieveEnvironmentInfoOutput, error) {
2923	req, out := c.RetrieveEnvironmentInfoRequest(input)
2924	return out, req.Send()
2925}
2926
2927// RetrieveEnvironmentInfoWithContext is the same as RetrieveEnvironmentInfo with the addition of
2928// the ability to pass a context and additional request options.
2929//
2930// See RetrieveEnvironmentInfo for details on how to use this API operation.
2931//
2932// The context must be non-nil and will be used for request cancellation. If
2933// the context is nil a panic will occur. In the future the SDK may create
2934// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2935// for more information on using Contexts.
2936func (c *ElasticBeanstalk) RetrieveEnvironmentInfoWithContext(ctx aws.Context, input *RetrieveEnvironmentInfoInput, opts ...request.Option) (*RetrieveEnvironmentInfoOutput, error) {
2937	req, out := c.RetrieveEnvironmentInfoRequest(input)
2938	req.SetContext(ctx)
2939	req.ApplyOptions(opts...)
2940	return out, req.Send()
2941}
2942
2943const opSwapEnvironmentCNAMEs = "SwapEnvironmentCNAMEs"
2944
2945// SwapEnvironmentCNAMEsRequest generates a "aws/request.Request" representing the
2946// client's request for the SwapEnvironmentCNAMEs operation. The "output" return
2947// value will be populated with the request's response once the request complets
2948// successfuly.
2949//
2950// Use "Send" method on the returned Request to send the API call to the service.
2951// the "output" return value is not valid until after Send returns without error.
2952//
2953// See SwapEnvironmentCNAMEs for more information on using the SwapEnvironmentCNAMEs
2954// API call, and error handling.
2955//
2956// This method is useful when you want to inject custom logic or configuration
2957// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2958//
2959//
2960//    // Example sending a request using the SwapEnvironmentCNAMEsRequest method.
2961//    req, resp := client.SwapEnvironmentCNAMEsRequest(params)
2962//
2963//    err := req.Send()
2964//    if err == nil { // resp is now filled
2965//        fmt.Println(resp)
2966//    }
2967//
2968// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/SwapEnvironmentCNAMEs
2969func (c *ElasticBeanstalk) SwapEnvironmentCNAMEsRequest(input *SwapEnvironmentCNAMEsInput) (req *request.Request, output *SwapEnvironmentCNAMEsOutput) {
2970	op := &request.Operation{
2971		Name:       opSwapEnvironmentCNAMEs,
2972		HTTPMethod: "POST",
2973		HTTPPath:   "/",
2974	}
2975
2976	if input == nil {
2977		input = &SwapEnvironmentCNAMEsInput{}
2978	}
2979
2980	output = &SwapEnvironmentCNAMEsOutput{}
2981	req = c.newRequest(op, input, output)
2982	req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
2983	req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
2984	return
2985}
2986
2987// SwapEnvironmentCNAMEs API operation for AWS Elastic Beanstalk.
2988//
2989// Swaps the CNAMEs of two environments.
2990//
2991// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2992// with awserr.Error's Code and Message methods to get detailed information about
2993// the error.
2994//
2995// See the AWS API reference guide for AWS Elastic Beanstalk's
2996// API operation SwapEnvironmentCNAMEs for usage and error information.
2997// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/SwapEnvironmentCNAMEs
2998func (c *ElasticBeanstalk) SwapEnvironmentCNAMEs(input *SwapEnvironmentCNAMEsInput) (*SwapEnvironmentCNAMEsOutput, error) {
2999	req, out := c.SwapEnvironmentCNAMEsRequest(input)
3000	return out, req.Send()
3001}
3002
3003// SwapEnvironmentCNAMEsWithContext is the same as SwapEnvironmentCNAMEs with the addition of
3004// the ability to pass a context and additional request options.
3005//
3006// See SwapEnvironmentCNAMEs for details on how to use this API operation.
3007//
3008// The context must be non-nil and will be used for request cancellation. If
3009// the context is nil a panic will occur. In the future the SDK may create
3010// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3011// for more information on using Contexts.
3012func (c *ElasticBeanstalk) SwapEnvironmentCNAMEsWithContext(ctx aws.Context, input *SwapEnvironmentCNAMEsInput, opts ...request.Option) (*SwapEnvironmentCNAMEsOutput, error) {
3013	req, out := c.SwapEnvironmentCNAMEsRequest(input)
3014	req.SetContext(ctx)
3015	req.ApplyOptions(opts...)
3016	return out, req.Send()
3017}
3018
3019const opTerminateEnvironment = "TerminateEnvironment"
3020
3021// TerminateEnvironmentRequest generates a "aws/request.Request" representing the
3022// client's request for the TerminateEnvironment operation. The "output" return
3023// value will be populated with the request's response once the request complets
3024// successfuly.
3025//
3026// Use "Send" method on the returned Request to send the API call to the service.
3027// the "output" return value is not valid until after Send returns without error.
3028//
3029// See TerminateEnvironment for more information on using the TerminateEnvironment
3030// API call, and error handling.
3031//
3032// This method is useful when you want to inject custom logic or configuration
3033// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3034//
3035//
3036//    // Example sending a request using the TerminateEnvironmentRequest method.
3037//    req, resp := client.TerminateEnvironmentRequest(params)
3038//
3039//    err := req.Send()
3040//    if err == nil { // resp is now filled
3041//        fmt.Println(resp)
3042//    }
3043//
3044// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/TerminateEnvironment
3045func (c *ElasticBeanstalk) TerminateEnvironmentRequest(input *TerminateEnvironmentInput) (req *request.Request, output *EnvironmentDescription) {
3046	op := &request.Operation{
3047		Name:       opTerminateEnvironment,
3048		HTTPMethod: "POST",
3049		HTTPPath:   "/",
3050	}
3051
3052	if input == nil {
3053		input = &TerminateEnvironmentInput{}
3054	}
3055
3056	output = &EnvironmentDescription{}
3057	req = c.newRequest(op, input, output)
3058	return
3059}
3060
3061// TerminateEnvironment API operation for AWS Elastic Beanstalk.
3062//
3063// Terminates the specified environment.
3064//
3065// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3066// with awserr.Error's Code and Message methods to get detailed information about
3067// the error.
3068//
3069// See the AWS API reference guide for AWS Elastic Beanstalk's
3070// API operation TerminateEnvironment for usage and error information.
3071//
3072// Returned Error Codes:
3073//   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
3074//   The specified account does not have sufficient privileges for one of more
3075//   AWS services.
3076//
3077// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/TerminateEnvironment
3078func (c *ElasticBeanstalk) TerminateEnvironment(input *TerminateEnvironmentInput) (*EnvironmentDescription, error) {
3079	req, out := c.TerminateEnvironmentRequest(input)
3080	return out, req.Send()
3081}
3082
3083// TerminateEnvironmentWithContext is the same as TerminateEnvironment with the addition of
3084// the ability to pass a context and additional request options.
3085//
3086// See TerminateEnvironment for details on how to use this API operation.
3087//
3088// The context must be non-nil and will be used for request cancellation. If
3089// the context is nil a panic will occur. In the future the SDK may create
3090// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3091// for more information on using Contexts.
3092func (c *ElasticBeanstalk) TerminateEnvironmentWithContext(ctx aws.Context, input *TerminateEnvironmentInput, opts ...request.Option) (*EnvironmentDescription, error) {
3093	req, out := c.TerminateEnvironmentRequest(input)
3094	req.SetContext(ctx)
3095	req.ApplyOptions(opts...)
3096	return out, req.Send()
3097}
3098
3099const opUpdateApplication = "UpdateApplication"
3100
3101// UpdateApplicationRequest generates a "aws/request.Request" representing the
3102// client's request for the UpdateApplication operation. The "output" return
3103// value will be populated with the request's response once the request complets
3104// successfuly.
3105//
3106// Use "Send" method on the returned Request to send the API call to the service.
3107// the "output" return value is not valid until after Send returns without error.
3108//
3109// See UpdateApplication for more information on using the UpdateApplication
3110// API call, and error handling.
3111//
3112// This method is useful when you want to inject custom logic or configuration
3113// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3114//
3115//
3116//    // Example sending a request using the UpdateApplicationRequest method.
3117//    req, resp := client.UpdateApplicationRequest(params)
3118//
3119//    err := req.Send()
3120//    if err == nil { // resp is now filled
3121//        fmt.Println(resp)
3122//    }
3123//
3124// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/UpdateApplication
3125func (c *ElasticBeanstalk) UpdateApplicationRequest(input *UpdateApplicationInput) (req *request.Request, output *ApplicationDescriptionMessage) {
3126	op := &request.Operation{
3127		Name:       opUpdateApplication,
3128		HTTPMethod: "POST",
3129		HTTPPath:   "/",
3130	}
3131
3132	if input == nil {
3133		input = &UpdateApplicationInput{}
3134	}
3135
3136	output = &ApplicationDescriptionMessage{}
3137	req = c.newRequest(op, input, output)
3138	return
3139}
3140
3141// UpdateApplication API operation for AWS Elastic Beanstalk.
3142//
3143// Updates the specified application to have the specified properties.
3144//
3145// If a property (for example, description) is not provided, the value remains
3146// unchanged. To clear these properties, specify an empty string.
3147//
3148// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3149// with awserr.Error's Code and Message methods to get detailed information about
3150// the error.
3151//
3152// See the AWS API reference guide for AWS Elastic Beanstalk's
3153// API operation UpdateApplication for usage and error information.
3154// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/UpdateApplication
3155func (c *ElasticBeanstalk) UpdateApplication(input *UpdateApplicationInput) (*ApplicationDescriptionMessage, error) {
3156	req, out := c.UpdateApplicationRequest(input)
3157	return out, req.Send()
3158}
3159
3160// UpdateApplicationWithContext is the same as UpdateApplication with the addition of
3161// the ability to pass a context and additional request options.
3162//
3163// See UpdateApplication for details on how to use this API operation.
3164//
3165// The context must be non-nil and will be used for request cancellation. If
3166// the context is nil a panic will occur. In the future the SDK may create
3167// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3168// for more information on using Contexts.
3169func (c *ElasticBeanstalk) UpdateApplicationWithContext(ctx aws.Context, input *UpdateApplicationInput, opts ...request.Option) (*ApplicationDescriptionMessage, error) {
3170	req, out := c.UpdateApplicationRequest(input)
3171	req.SetContext(ctx)
3172	req.ApplyOptions(opts...)
3173	return out, req.Send()
3174}
3175
3176const opUpdateApplicationResourceLifecycle = "UpdateApplicationResourceLifecycle"
3177
3178// UpdateApplicationResourceLifecycleRequest generates a "aws/request.Request" representing the
3179// client's request for the UpdateApplicationResourceLifecycle operation. The "output" return
3180// value will be populated with the request's response once the request complets
3181// successfuly.
3182//
3183// Use "Send" method on the returned Request to send the API call to the service.
3184// the "output" return value is not valid until after Send returns without error.
3185//
3186// See UpdateApplicationResourceLifecycle for more information on using the UpdateApplicationResourceLifecycle
3187// API call, and error handling.
3188//
3189// This method is useful when you want to inject custom logic or configuration
3190// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3191//
3192//
3193//    // Example sending a request using the UpdateApplicationResourceLifecycleRequest method.
3194//    req, resp := client.UpdateApplicationResourceLifecycleRequest(params)
3195//
3196//    err := req.Send()
3197//    if err == nil { // resp is now filled
3198//        fmt.Println(resp)
3199//    }
3200//
3201// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/UpdateApplicationResourceLifecycle
3202func (c *ElasticBeanstalk) UpdateApplicationResourceLifecycleRequest(input *UpdateApplicationResourceLifecycleInput) (req *request.Request, output *UpdateApplicationResourceLifecycleOutput) {
3203	op := &request.Operation{
3204		Name:       opUpdateApplicationResourceLifecycle,
3205		HTTPMethod: "POST",
3206		HTTPPath:   "/",
3207	}
3208
3209	if input == nil {
3210		input = &UpdateApplicationResourceLifecycleInput{}
3211	}
3212
3213	output = &UpdateApplicationResourceLifecycleOutput{}
3214	req = c.newRequest(op, input, output)
3215	return
3216}
3217
3218// UpdateApplicationResourceLifecycle API operation for AWS Elastic Beanstalk.
3219//
3220// Modifies lifecycle settings for an application.
3221//
3222// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3223// with awserr.Error's Code and Message methods to get detailed information about
3224// the error.
3225//
3226// See the AWS API reference guide for AWS Elastic Beanstalk's
3227// API operation UpdateApplicationResourceLifecycle for usage and error information.
3228//
3229// Returned Error Codes:
3230//   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
3231//   The specified account does not have sufficient privileges for one of more
3232//   AWS services.
3233//
3234// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/UpdateApplicationResourceLifecycle
3235func (c *ElasticBeanstalk) UpdateApplicationResourceLifecycle(input *UpdateApplicationResourceLifecycleInput) (*UpdateApplicationResourceLifecycleOutput, error) {
3236	req, out := c.UpdateApplicationResourceLifecycleRequest(input)
3237	return out, req.Send()
3238}
3239
3240// UpdateApplicationResourceLifecycleWithContext is the same as UpdateApplicationResourceLifecycle with the addition of
3241// the ability to pass a context and additional request options.
3242//
3243// See UpdateApplicationResourceLifecycle for details on how to use this API operation.
3244//
3245// The context must be non-nil and will be used for request cancellation. If
3246// the context is nil a panic will occur. In the future the SDK may create
3247// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3248// for more information on using Contexts.
3249func (c *ElasticBeanstalk) UpdateApplicationResourceLifecycleWithContext(ctx aws.Context, input *UpdateApplicationResourceLifecycleInput, opts ...request.Option) (*UpdateApplicationResourceLifecycleOutput, error) {
3250	req, out := c.UpdateApplicationResourceLifecycleRequest(input)
3251	req.SetContext(ctx)
3252	req.ApplyOptions(opts...)
3253	return out, req.Send()
3254}
3255
3256const opUpdateApplicationVersion = "UpdateApplicationVersion"
3257
3258// UpdateApplicationVersionRequest generates a "aws/request.Request" representing the
3259// client's request for the UpdateApplicationVersion operation. The "output" return
3260// value will be populated with the request's response once the request complets
3261// successfuly.
3262//
3263// Use "Send" method on the returned Request to send the API call to the service.
3264// the "output" return value is not valid until after Send returns without error.
3265//
3266// See UpdateApplicationVersion for more information on using the UpdateApplicationVersion
3267// API call, and error handling.
3268//
3269// This method is useful when you want to inject custom logic or configuration
3270// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3271//
3272//
3273//    // Example sending a request using the UpdateApplicationVersionRequest method.
3274//    req, resp := client.UpdateApplicationVersionRequest(params)
3275//
3276//    err := req.Send()
3277//    if err == nil { // resp is now filled
3278//        fmt.Println(resp)
3279//    }
3280//
3281// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/UpdateApplicationVersion
3282func (c *ElasticBeanstalk) UpdateApplicationVersionRequest(input *UpdateApplicationVersionInput) (req *request.Request, output *ApplicationVersionDescriptionMessage) {
3283	op := &request.Operation{
3284		Name:       opUpdateApplicationVersion,
3285		HTTPMethod: "POST",
3286		HTTPPath:   "/",
3287	}
3288
3289	if input == nil {
3290		input = &UpdateApplicationVersionInput{}
3291	}
3292
3293	output = &ApplicationVersionDescriptionMessage{}
3294	req = c.newRequest(op, input, output)
3295	return
3296}
3297
3298// UpdateApplicationVersion API operation for AWS Elastic Beanstalk.
3299//
3300// Updates the specified application version to have the specified properties.
3301//
3302// If a property (for example, description) is not provided, the value remains
3303// unchanged. To clear properties, specify an empty string.
3304//
3305// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3306// with awserr.Error's Code and Message methods to get detailed information about
3307// the error.
3308//
3309// See the AWS API reference guide for AWS Elastic Beanstalk's
3310// API operation UpdateApplicationVersion for usage and error information.
3311// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/UpdateApplicationVersion
3312func (c *ElasticBeanstalk) UpdateApplicationVersion(input *UpdateApplicationVersionInput) (*ApplicationVersionDescriptionMessage, error) {
3313	req, out := c.UpdateApplicationVersionRequest(input)
3314	return out, req.Send()
3315}
3316
3317// UpdateApplicationVersionWithContext is the same as UpdateApplicationVersion with the addition of
3318// the ability to pass a context and additional request options.
3319//
3320// See UpdateApplicationVersion for details on how to use this API operation.
3321//
3322// The context must be non-nil and will be used for request cancellation. If
3323// the context is nil a panic will occur. In the future the SDK may create
3324// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3325// for more information on using Contexts.
3326func (c *ElasticBeanstalk) UpdateApplicationVersionWithContext(ctx aws.Context, input *UpdateApplicationVersionInput, opts ...request.Option) (*ApplicationVersionDescriptionMessage, error) {
3327	req, out := c.UpdateApplicationVersionRequest(input)
3328	req.SetContext(ctx)
3329	req.ApplyOptions(opts...)
3330	return out, req.Send()
3331}
3332
3333const opUpdateConfigurationTemplate = "UpdateConfigurationTemplate"
3334
3335// UpdateConfigurationTemplateRequest generates a "aws/request.Request" representing the
3336// client's request for the UpdateConfigurationTemplate operation. The "output" return
3337// value will be populated with the request's response once the request complets
3338// successfuly.
3339//
3340// Use "Send" method on the returned Request to send the API call to the service.
3341// the "output" return value is not valid until after Send returns without error.
3342//
3343// See UpdateConfigurationTemplate for more information on using the UpdateConfigurationTemplate
3344// API call, and error handling.
3345//
3346// This method is useful when you want to inject custom logic or configuration
3347// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3348//
3349//
3350//    // Example sending a request using the UpdateConfigurationTemplateRequest method.
3351//    req, resp := client.UpdateConfigurationTemplateRequest(params)
3352//
3353//    err := req.Send()
3354//    if err == nil { // resp is now filled
3355//        fmt.Println(resp)
3356//    }
3357//
3358// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/UpdateConfigurationTemplate
3359func (c *ElasticBeanstalk) UpdateConfigurationTemplateRequest(input *UpdateConfigurationTemplateInput) (req *request.Request, output *ConfigurationSettingsDescription) {
3360	op := &request.Operation{
3361		Name:       opUpdateConfigurationTemplate,
3362		HTTPMethod: "POST",
3363		HTTPPath:   "/",
3364	}
3365
3366	if input == nil {
3367		input = &UpdateConfigurationTemplateInput{}
3368	}
3369
3370	output = &ConfigurationSettingsDescription{}
3371	req = c.newRequest(op, input, output)
3372	return
3373}
3374
3375// UpdateConfigurationTemplate API operation for AWS Elastic Beanstalk.
3376//
3377// Updates the specified configuration template to have the specified properties
3378// or configuration option values.
3379//
3380// If a property (for example, ApplicationName) is not provided, its value remains
3381// unchanged. To clear such properties, specify an empty string.
3382//
3383// Related Topics
3384//
3385//    * DescribeConfigurationOptions
3386//
3387// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3388// with awserr.Error's Code and Message methods to get detailed information about
3389// the error.
3390//
3391// See the AWS API reference guide for AWS Elastic Beanstalk's
3392// API operation UpdateConfigurationTemplate for usage and error information.
3393//
3394// Returned Error Codes:
3395//   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
3396//   The specified account does not have sufficient privileges for one of more
3397//   AWS services.
3398//
3399//   * ErrCodeTooManyBucketsException "TooManyBucketsException"
3400//   The specified account has reached its limit of Amazon S3 buckets.
3401//
3402// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/UpdateConfigurationTemplate
3403func (c *ElasticBeanstalk) UpdateConfigurationTemplate(input *UpdateConfigurationTemplateInput) (*ConfigurationSettingsDescription, error) {
3404	req, out := c.UpdateConfigurationTemplateRequest(input)
3405	return out, req.Send()
3406}
3407
3408// UpdateConfigurationTemplateWithContext is the same as UpdateConfigurationTemplate with the addition of
3409// the ability to pass a context and additional request options.
3410//
3411// See UpdateConfigurationTemplate for details on how to use this API operation.
3412//
3413// The context must be non-nil and will be used for request cancellation. If
3414// the context is nil a panic will occur. In the future the SDK may create
3415// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3416// for more information on using Contexts.
3417func (c *ElasticBeanstalk) UpdateConfigurationTemplateWithContext(ctx aws.Context, input *UpdateConfigurationTemplateInput, opts ...request.Option) (*ConfigurationSettingsDescription, error) {
3418	req, out := c.UpdateConfigurationTemplateRequest(input)
3419	req.SetContext(ctx)
3420	req.ApplyOptions(opts...)
3421	return out, req.Send()
3422}
3423
3424const opUpdateEnvironment = "UpdateEnvironment"
3425
3426// UpdateEnvironmentRequest generates a "aws/request.Request" representing the
3427// client's request for the UpdateEnvironment operation. The "output" return
3428// value will be populated with the request's response once the request complets
3429// successfuly.
3430//
3431// Use "Send" method on the returned Request to send the API call to the service.
3432// the "output" return value is not valid until after Send returns without error.
3433//
3434// See UpdateEnvironment for more information on using the UpdateEnvironment
3435// API call, and error handling.
3436//
3437// This method is useful when you want to inject custom logic or configuration
3438// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3439//
3440//
3441//    // Example sending a request using the UpdateEnvironmentRequest method.
3442//    req, resp := client.UpdateEnvironmentRequest(params)
3443//
3444//    err := req.Send()
3445//    if err == nil { // resp is now filled
3446//        fmt.Println(resp)
3447//    }
3448//
3449// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/UpdateEnvironment
3450func (c *ElasticBeanstalk) UpdateEnvironmentRequest(input *UpdateEnvironmentInput) (req *request.Request, output *EnvironmentDescription) {
3451	op := &request.Operation{
3452		Name:       opUpdateEnvironment,
3453		HTTPMethod: "POST",
3454		HTTPPath:   "/",
3455	}
3456
3457	if input == nil {
3458		input = &UpdateEnvironmentInput{}
3459	}
3460
3461	output = &EnvironmentDescription{}
3462	req = c.newRequest(op, input, output)
3463	return
3464}
3465
3466// UpdateEnvironment API operation for AWS Elastic Beanstalk.
3467//
3468// Updates the environment description, deploys a new application version, updates
3469// the configuration settings to an entirely new configuration template, or
3470// updates select configuration option values in the running environment.
3471//
3472// Attempting to update both the release and configuration is not allowed and
3473// AWS Elastic Beanstalk returns an InvalidParameterCombination error.
3474//
3475// When updating the configuration settings to a new template or individual
3476// settings, a draft configuration is created and DescribeConfigurationSettings
3477// for this environment returns two setting descriptions with different DeploymentStatus
3478// values.
3479//
3480// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3481// with awserr.Error's Code and Message methods to get detailed information about
3482// the error.
3483//
3484// See the AWS API reference guide for AWS Elastic Beanstalk's
3485// API operation UpdateEnvironment for usage and error information.
3486//
3487// Returned Error Codes:
3488//   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
3489//   The specified account does not have sufficient privileges for one of more
3490//   AWS services.
3491//
3492//   * ErrCodeTooManyBucketsException "TooManyBucketsException"
3493//   The specified account has reached its limit of Amazon S3 buckets.
3494//
3495// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/UpdateEnvironment
3496func (c *ElasticBeanstalk) UpdateEnvironment(input *UpdateEnvironmentInput) (*EnvironmentDescription, error) {
3497	req, out := c.UpdateEnvironmentRequest(input)
3498	return out, req.Send()
3499}
3500
3501// UpdateEnvironmentWithContext is the same as UpdateEnvironment with the addition of
3502// the ability to pass a context and additional request options.
3503//
3504// See UpdateEnvironment for details on how to use this API operation.
3505//
3506// The context must be non-nil and will be used for request cancellation. If
3507// the context is nil a panic will occur. In the future the SDK may create
3508// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3509// for more information on using Contexts.
3510func (c *ElasticBeanstalk) UpdateEnvironmentWithContext(ctx aws.Context, input *UpdateEnvironmentInput, opts ...request.Option) (*EnvironmentDescription, error) {
3511	req, out := c.UpdateEnvironmentRequest(input)
3512	req.SetContext(ctx)
3513	req.ApplyOptions(opts...)
3514	return out, req.Send()
3515}
3516
3517const opUpdateTagsForResource = "UpdateTagsForResource"
3518
3519// UpdateTagsForResourceRequest generates a "aws/request.Request" representing the
3520// client's request for the UpdateTagsForResource operation. The "output" return
3521// value will be populated with the request's response once the request complets
3522// successfuly.
3523//
3524// Use "Send" method on the returned Request to send the API call to the service.
3525// the "output" return value is not valid until after Send returns without error.
3526//
3527// See UpdateTagsForResource for more information on using the UpdateTagsForResource
3528// API call, and error handling.
3529//
3530// This method is useful when you want to inject custom logic or configuration
3531// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3532//
3533//
3534//    // Example sending a request using the UpdateTagsForResourceRequest method.
3535//    req, resp := client.UpdateTagsForResourceRequest(params)
3536//
3537//    err := req.Send()
3538//    if err == nil { // resp is now filled
3539//        fmt.Println(resp)
3540//    }
3541//
3542// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/UpdateTagsForResource
3543func (c *ElasticBeanstalk) UpdateTagsForResourceRequest(input *UpdateTagsForResourceInput) (req *request.Request, output *UpdateTagsForResourceOutput) {
3544	op := &request.Operation{
3545		Name:       opUpdateTagsForResource,
3546		HTTPMethod: "POST",
3547		HTTPPath:   "/",
3548	}
3549
3550	if input == nil {
3551		input = &UpdateTagsForResourceInput{}
3552	}
3553
3554	output = &UpdateTagsForResourceOutput{}
3555	req = c.newRequest(op, input, output)
3556	req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
3557	req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
3558	return
3559}
3560
3561// UpdateTagsForResource API operation for AWS Elastic Beanstalk.
3562//
3563// Update the list of tags applied to an AWS Elastic Beanstalk resource. Two
3564// lists can be passed: TagsToAdd for tags to add or update, and TagsToRemove.
3565//
3566// Currently, Elastic Beanstalk only supports tagging of Elastic Beanstalk environments.
3567// For details about environment tagging, see Tagging Resources in Your Elastic
3568// Beanstalk Environment (http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/using-features.tagging.html).
3569//
3570// If you create a custom IAM user policy to control permission to this operation,
3571// specify one of the following two virtual actions (or both) instead of the
3572// API operation name:
3573//
3574// elasticbeanstalk:AddTagsControls permission to call UpdateTagsForResource
3575// and pass a list of tags to add in the TagsToAdd parameter.
3576//
3577// elasticbeanstalk:RemoveTagsControls permission to call UpdateTagsForResource
3578// and pass a list of tag keys to remove in the TagsToRemove parameter.
3579//
3580// For details about creating a custom user policy, see Creating a Custom User
3581// Policy (http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/AWSHowTo.iam.managed-policies.html#AWSHowTo.iam.policies).
3582//
3583// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3584// with awserr.Error's Code and Message methods to get detailed information about
3585// the error.
3586//
3587// See the AWS API reference guide for AWS Elastic Beanstalk's
3588// API operation UpdateTagsForResource for usage and error information.
3589//
3590// Returned Error Codes:
3591//   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
3592//   The specified account does not have sufficient privileges for one of more
3593//   AWS services.
3594//
3595//   * ErrCodeOperationInProgressException "OperationInProgressFailure"
3596//   Unable to perform the specified operation because another operation that
3597//   effects an element in this activity is already in progress.
3598//
3599//   * ErrCodeTooManyTagsException "TooManyTagsException"
3600//   The number of tags in the resource would exceed the number of tags that each
3601//   resource can have.
3602//
3603//   To calculate this, the operation considers both the number of tags the resource
3604//   already has and the tags this operation would add if it succeeded.
3605//
3606//   * ErrCodeResourceNotFoundException "ResourceNotFoundException"
3607//   A resource doesn't exist for the specified Amazon Resource Name (ARN).
3608//
3609//   * ErrCodeResourceTypeNotSupportedException "ResourceTypeNotSupportedException"
3610//   The type of the specified Amazon Resource Name (ARN) isn't supported for
3611//   this operation.
3612//
3613// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/UpdateTagsForResource
3614func (c *ElasticBeanstalk) UpdateTagsForResource(input *UpdateTagsForResourceInput) (*UpdateTagsForResourceOutput, error) {
3615	req, out := c.UpdateTagsForResourceRequest(input)
3616	return out, req.Send()
3617}
3618
3619// UpdateTagsForResourceWithContext is the same as UpdateTagsForResource with the addition of
3620// the ability to pass a context and additional request options.
3621//
3622// See UpdateTagsForResource for details on how to use this API operation.
3623//
3624// The context must be non-nil and will be used for request cancellation. If
3625// the context is nil a panic will occur. In the future the SDK may create
3626// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3627// for more information on using Contexts.
3628func (c *ElasticBeanstalk) UpdateTagsForResourceWithContext(ctx aws.Context, input *UpdateTagsForResourceInput, opts ...request.Option) (*UpdateTagsForResourceOutput, error) {
3629	req, out := c.UpdateTagsForResourceRequest(input)
3630	req.SetContext(ctx)
3631	req.ApplyOptions(opts...)
3632	return out, req.Send()
3633}
3634
3635const opValidateConfigurationSettings = "ValidateConfigurationSettings"
3636
3637// ValidateConfigurationSettingsRequest generates a "aws/request.Request" representing the
3638// client's request for the ValidateConfigurationSettings operation. The "output" return
3639// value will be populated with the request's response once the request complets
3640// successfuly.
3641//
3642// Use "Send" method on the returned Request to send the API call to the service.
3643// the "output" return value is not valid until after Send returns without error.
3644//
3645// See ValidateConfigurationSettings for more information on using the ValidateConfigurationSettings
3646// API call, and error handling.
3647//
3648// This method is useful when you want to inject custom logic or configuration
3649// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3650//
3651//
3652//    // Example sending a request using the ValidateConfigurationSettingsRequest method.
3653//    req, resp := client.ValidateConfigurationSettingsRequest(params)
3654//
3655//    err := req.Send()
3656//    if err == nil { // resp is now filled
3657//        fmt.Println(resp)
3658//    }
3659//
3660// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ValidateConfigurationSettings
3661func (c *ElasticBeanstalk) ValidateConfigurationSettingsRequest(input *ValidateConfigurationSettingsInput) (req *request.Request, output *ValidateConfigurationSettingsOutput) {
3662	op := &request.Operation{
3663		Name:       opValidateConfigurationSettings,
3664		HTTPMethod: "POST",
3665		HTTPPath:   "/",
3666	}
3667
3668	if input == nil {
3669		input = &ValidateConfigurationSettingsInput{}
3670	}
3671
3672	output = &ValidateConfigurationSettingsOutput{}
3673	req = c.newRequest(op, input, output)
3674	return
3675}
3676
3677// ValidateConfigurationSettings API operation for AWS Elastic Beanstalk.
3678//
3679// Takes a set of configuration settings and either a configuration template
3680// or environment, and determines whether those values are valid.
3681//
3682// This action returns a list of messages indicating any errors or warnings
3683// associated with the selection of option values.
3684//
3685// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3686// with awserr.Error's Code and Message methods to get detailed information about
3687// the error.
3688//
3689// See the AWS API reference guide for AWS Elastic Beanstalk's
3690// API operation ValidateConfigurationSettings for usage and error information.
3691//
3692// Returned Error Codes:
3693//   * ErrCodeInsufficientPrivilegesException "InsufficientPrivilegesException"
3694//   The specified account does not have sufficient privileges for one of more
3695//   AWS services.
3696//
3697//   * ErrCodeTooManyBucketsException "TooManyBucketsException"
3698//   The specified account has reached its limit of Amazon S3 buckets.
3699//
3700// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ValidateConfigurationSettings
3701func (c *ElasticBeanstalk) ValidateConfigurationSettings(input *ValidateConfigurationSettingsInput) (*ValidateConfigurationSettingsOutput, error) {
3702	req, out := c.ValidateConfigurationSettingsRequest(input)
3703	return out, req.Send()
3704}
3705
3706// ValidateConfigurationSettingsWithContext is the same as ValidateConfigurationSettings with the addition of
3707// the ability to pass a context and additional request options.
3708//
3709// See ValidateConfigurationSettings for details on how to use this API operation.
3710//
3711// The context must be non-nil and will be used for request cancellation. If
3712// the context is nil a panic will occur. In the future the SDK may create
3713// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3714// for more information on using Contexts.
3715func (c *ElasticBeanstalk) ValidateConfigurationSettingsWithContext(ctx aws.Context, input *ValidateConfigurationSettingsInput, opts ...request.Option) (*ValidateConfigurationSettingsOutput, error) {
3716	req, out := c.ValidateConfigurationSettingsRequest(input)
3717	req.SetContext(ctx)
3718	req.ApplyOptions(opts...)
3719	return out, req.Send()
3720}
3721
3722// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/AbortEnvironmentUpdateMessage
3723type AbortEnvironmentUpdateInput struct {
3724	_ struct{} `type:"structure"`
3725
3726	// This specifies the ID of the environment with the in-progress update that
3727	// you want to cancel.
3728	EnvironmentId *string `type:"string"`
3729
3730	// This specifies the name of the environment with the in-progress update that
3731	// you want to cancel.
3732	EnvironmentName *string `min:"4" type:"string"`
3733}
3734
3735// String returns the string representation
3736func (s AbortEnvironmentUpdateInput) String() string {
3737	return awsutil.Prettify(s)
3738}
3739
3740// GoString returns the string representation
3741func (s AbortEnvironmentUpdateInput) GoString() string {
3742	return s.String()
3743}
3744
3745// Validate inspects the fields of the type to determine if they are valid.
3746func (s *AbortEnvironmentUpdateInput) Validate() error {
3747	invalidParams := request.ErrInvalidParams{Context: "AbortEnvironmentUpdateInput"}
3748	if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 {
3749		invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4))
3750	}
3751
3752	if invalidParams.Len() > 0 {
3753		return invalidParams
3754	}
3755	return nil
3756}
3757
3758// SetEnvironmentId sets the EnvironmentId field's value.
3759func (s *AbortEnvironmentUpdateInput) SetEnvironmentId(v string) *AbortEnvironmentUpdateInput {
3760	s.EnvironmentId = &v
3761	return s
3762}
3763
3764// SetEnvironmentName sets the EnvironmentName field's value.
3765func (s *AbortEnvironmentUpdateInput) SetEnvironmentName(v string) *AbortEnvironmentUpdateInput {
3766	s.EnvironmentName = &v
3767	return s
3768}
3769
3770// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/AbortEnvironmentUpdateOutput
3771type AbortEnvironmentUpdateOutput struct {
3772	_ struct{} `type:"structure"`
3773}
3774
3775// String returns the string representation
3776func (s AbortEnvironmentUpdateOutput) String() string {
3777	return awsutil.Prettify(s)
3778}
3779
3780// GoString returns the string representation
3781func (s AbortEnvironmentUpdateOutput) GoString() string {
3782	return s.String()
3783}
3784
3785// Describes the properties of an application.
3786// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ApplicationDescription
3787type ApplicationDescription struct {
3788	_ struct{} `type:"structure"`
3789
3790	// The name of the application.
3791	ApplicationName *string `min:"1" type:"string"`
3792
3793	// The names of the configuration templates associated with this application.
3794	ConfigurationTemplates []*string `type:"list"`
3795
3796	// The date when the application was created.
3797	DateCreated *time.Time `type:"timestamp" timestampFormat:"iso8601"`
3798
3799	// The date when the application was last modified.
3800	DateUpdated *time.Time `type:"timestamp" timestampFormat:"iso8601"`
3801
3802	// User-defined description of the application.
3803	Description *string `type:"string"`
3804
3805	// The lifecycle settings for the application.
3806	ResourceLifecycleConfig *ApplicationResourceLifecycleConfig `type:"structure"`
3807
3808	// The names of the versions for this application.
3809	Versions []*string `type:"list"`
3810}
3811
3812// String returns the string representation
3813func (s ApplicationDescription) String() string {
3814	return awsutil.Prettify(s)
3815}
3816
3817// GoString returns the string representation
3818func (s ApplicationDescription) GoString() string {
3819	return s.String()
3820}
3821
3822// SetApplicationName sets the ApplicationName field's value.
3823func (s *ApplicationDescription) SetApplicationName(v string) *ApplicationDescription {
3824	s.ApplicationName = &v
3825	return s
3826}
3827
3828// SetConfigurationTemplates sets the ConfigurationTemplates field's value.
3829func (s *ApplicationDescription) SetConfigurationTemplates(v []*string) *ApplicationDescription {
3830	s.ConfigurationTemplates = v
3831	return s
3832}
3833
3834// SetDateCreated sets the DateCreated field's value.
3835func (s *ApplicationDescription) SetDateCreated(v time.Time) *ApplicationDescription {
3836	s.DateCreated = &v
3837	return s
3838}
3839
3840// SetDateUpdated sets the DateUpdated field's value.
3841func (s *ApplicationDescription) SetDateUpdated(v time.Time) *ApplicationDescription {
3842	s.DateUpdated = &v
3843	return s
3844}
3845
3846// SetDescription sets the Description field's value.
3847func (s *ApplicationDescription) SetDescription(v string) *ApplicationDescription {
3848	s.Description = &v
3849	return s
3850}
3851
3852// SetResourceLifecycleConfig sets the ResourceLifecycleConfig field's value.
3853func (s *ApplicationDescription) SetResourceLifecycleConfig(v *ApplicationResourceLifecycleConfig) *ApplicationDescription {
3854	s.ResourceLifecycleConfig = v
3855	return s
3856}
3857
3858// SetVersions sets the Versions field's value.
3859func (s *ApplicationDescription) SetVersions(v []*string) *ApplicationDescription {
3860	s.Versions = v
3861	return s
3862}
3863
3864// Result message containing a single description of an application.
3865// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ApplicationDescriptionMessage
3866type ApplicationDescriptionMessage struct {
3867	_ struct{} `type:"structure"`
3868
3869	// The ApplicationDescription of the application.
3870	Application *ApplicationDescription `type:"structure"`
3871}
3872
3873// String returns the string representation
3874func (s ApplicationDescriptionMessage) String() string {
3875	return awsutil.Prettify(s)
3876}
3877
3878// GoString returns the string representation
3879func (s ApplicationDescriptionMessage) GoString() string {
3880	return s.String()
3881}
3882
3883// SetApplication sets the Application field's value.
3884func (s *ApplicationDescriptionMessage) SetApplication(v *ApplicationDescription) *ApplicationDescriptionMessage {
3885	s.Application = v
3886	return s
3887}
3888
3889// Application request metrics for an AWS Elastic Beanstalk environment.
3890// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ApplicationMetrics
3891type ApplicationMetrics struct {
3892	_ struct{} `type:"structure"`
3893
3894	// The amount of time that the metrics cover (usually 10 seconds). For example,
3895	// you might have 5 requests (request_count) within the most recent time slice
3896	// of 10 seconds (duration).
3897	Duration *int64 `type:"integer"`
3898
3899	// Represents the average latency for the slowest X percent of requests over
3900	// the last 10 seconds. Latencies are in seconds with one millisecond resolution.
3901	Latency *Latency `type:"structure"`
3902
3903	// Average number of requests handled by the web server per second over the
3904	// last 10 seconds.
3905	RequestCount *int64 `type:"integer"`
3906
3907	// Represents the percentage of requests over the last 10 seconds that resulted
3908	// in each type of status code response.
3909	StatusCodes *StatusCodes `type:"structure"`
3910}
3911
3912// String returns the string representation
3913func (s ApplicationMetrics) String() string {
3914	return awsutil.Prettify(s)
3915}
3916
3917// GoString returns the string representation
3918func (s ApplicationMetrics) GoString() string {
3919	return s.String()
3920}
3921
3922// SetDuration sets the Duration field's value.
3923func (s *ApplicationMetrics) SetDuration(v int64) *ApplicationMetrics {
3924	s.Duration = &v
3925	return s
3926}
3927
3928// SetLatency sets the Latency field's value.
3929func (s *ApplicationMetrics) SetLatency(v *Latency) *ApplicationMetrics {
3930	s.Latency = v
3931	return s
3932}
3933
3934// SetRequestCount sets the RequestCount field's value.
3935func (s *ApplicationMetrics) SetRequestCount(v int64) *ApplicationMetrics {
3936	s.RequestCount = &v
3937	return s
3938}
3939
3940// SetStatusCodes sets the StatusCodes field's value.
3941func (s *ApplicationMetrics) SetStatusCodes(v *StatusCodes) *ApplicationMetrics {
3942	s.StatusCodes = v
3943	return s
3944}
3945
3946// The resource lifecycle configuration for an application. Defines lifecycle
3947// settings for resources that belong to the application, and the service role
3948// that Elastic Beanstalk assumes in order to apply lifecycle settings. The
3949// version lifecycle configuration defines lifecycle settings for application
3950// versions.
3951// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ApplicationResourceLifecycleConfig
3952type ApplicationResourceLifecycleConfig struct {
3953	_ struct{} `type:"structure"`
3954
3955	// The ARN of an IAM service role that Elastic Beanstalk has permission to assume.
3956	ServiceRole *string `type:"string"`
3957
3958	// The application version lifecycle configuration.
3959	VersionLifecycleConfig *ApplicationVersionLifecycleConfig `type:"structure"`
3960}
3961
3962// String returns the string representation
3963func (s ApplicationResourceLifecycleConfig) String() string {
3964	return awsutil.Prettify(s)
3965}
3966
3967// GoString returns the string representation
3968func (s ApplicationResourceLifecycleConfig) GoString() string {
3969	return s.String()
3970}
3971
3972// Validate inspects the fields of the type to determine if they are valid.
3973func (s *ApplicationResourceLifecycleConfig) Validate() error {
3974	invalidParams := request.ErrInvalidParams{Context: "ApplicationResourceLifecycleConfig"}
3975	if s.VersionLifecycleConfig != nil {
3976		if err := s.VersionLifecycleConfig.Validate(); err != nil {
3977			invalidParams.AddNested("VersionLifecycleConfig", err.(request.ErrInvalidParams))
3978		}
3979	}
3980
3981	if invalidParams.Len() > 0 {
3982		return invalidParams
3983	}
3984	return nil
3985}
3986
3987// SetServiceRole sets the ServiceRole field's value.
3988func (s *ApplicationResourceLifecycleConfig) SetServiceRole(v string) *ApplicationResourceLifecycleConfig {
3989	s.ServiceRole = &v
3990	return s
3991}
3992
3993// SetVersionLifecycleConfig sets the VersionLifecycleConfig field's value.
3994func (s *ApplicationResourceLifecycleConfig) SetVersionLifecycleConfig(v *ApplicationVersionLifecycleConfig) *ApplicationResourceLifecycleConfig {
3995	s.VersionLifecycleConfig = v
3996	return s
3997}
3998
3999// Describes the properties of an application version.
4000// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ApplicationVersionDescription
4001type ApplicationVersionDescription struct {
4002	_ struct{} `type:"structure"`
4003
4004	// The name of the application to which the application version belongs.
4005	ApplicationName *string `min:"1" type:"string"`
4006
4007	// Reference to the artifact from the AWS CodeBuild build.
4008	BuildArn *string `type:"string"`
4009
4010	// The creation date of the application version.
4011	DateCreated *time.Time `type:"timestamp" timestampFormat:"iso8601"`
4012
4013	// The last modified date of the application version.
4014	DateUpdated *time.Time `type:"timestamp" timestampFormat:"iso8601"`
4015
4016	// The description of the application version.
4017	Description *string `type:"string"`
4018
4019	// If the version's source code was retrieved from AWS CodeCommit, the location
4020	// of the source code for the application version.
4021	SourceBuildInformation *SourceBuildInformation `type:"structure"`
4022
4023	// The storage location of the application version's source bundle in Amazon
4024	// S3.
4025	SourceBundle *S3Location `type:"structure"`
4026
4027	// The processing status of the application version.
4028	Status *string `type:"string" enum:"ApplicationVersionStatus"`
4029
4030	// A unique identifier for the application version.
4031	VersionLabel *string `min:"1" type:"string"`
4032}
4033
4034// String returns the string representation
4035func (s ApplicationVersionDescription) String() string {
4036	return awsutil.Prettify(s)
4037}
4038
4039// GoString returns the string representation
4040func (s ApplicationVersionDescription) GoString() string {
4041	return s.String()
4042}
4043
4044// SetApplicationName sets the ApplicationName field's value.
4045func (s *ApplicationVersionDescription) SetApplicationName(v string) *ApplicationVersionDescription {
4046	s.ApplicationName = &v
4047	return s
4048}
4049
4050// SetBuildArn sets the BuildArn field's value.
4051func (s *ApplicationVersionDescription) SetBuildArn(v string) *ApplicationVersionDescription {
4052	s.BuildArn = &v
4053	return s
4054}
4055
4056// SetDateCreated sets the DateCreated field's value.
4057func (s *ApplicationVersionDescription) SetDateCreated(v time.Time) *ApplicationVersionDescription {
4058	s.DateCreated = &v
4059	return s
4060}
4061
4062// SetDateUpdated sets the DateUpdated field's value.
4063func (s *ApplicationVersionDescription) SetDateUpdated(v time.Time) *ApplicationVersionDescription {
4064	s.DateUpdated = &v
4065	return s
4066}
4067
4068// SetDescription sets the Description field's value.
4069func (s *ApplicationVersionDescription) SetDescription(v string) *ApplicationVersionDescription {
4070	s.Description = &v
4071	return s
4072}
4073
4074// SetSourceBuildInformation sets the SourceBuildInformation field's value.
4075func (s *ApplicationVersionDescription) SetSourceBuildInformation(v *SourceBuildInformation) *ApplicationVersionDescription {
4076	s.SourceBuildInformation = v
4077	return s
4078}
4079
4080// SetSourceBundle sets the SourceBundle field's value.
4081func (s *ApplicationVersionDescription) SetSourceBundle(v *S3Location) *ApplicationVersionDescription {
4082	s.SourceBundle = v
4083	return s
4084}
4085
4086// SetStatus sets the Status field's value.
4087func (s *ApplicationVersionDescription) SetStatus(v string) *ApplicationVersionDescription {
4088	s.Status = &v
4089	return s
4090}
4091
4092// SetVersionLabel sets the VersionLabel field's value.
4093func (s *ApplicationVersionDescription) SetVersionLabel(v string) *ApplicationVersionDescription {
4094	s.VersionLabel = &v
4095	return s
4096}
4097
4098// Result message wrapping a single description of an application version.
4099// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ApplicationVersionDescriptionMessage
4100type ApplicationVersionDescriptionMessage struct {
4101	_ struct{} `type:"structure"`
4102
4103	// The ApplicationVersionDescription of the application version.
4104	ApplicationVersion *ApplicationVersionDescription `type:"structure"`
4105}
4106
4107// String returns the string representation
4108func (s ApplicationVersionDescriptionMessage) String() string {
4109	return awsutil.Prettify(s)
4110}
4111
4112// GoString returns the string representation
4113func (s ApplicationVersionDescriptionMessage) GoString() string {
4114	return s.String()
4115}
4116
4117// SetApplicationVersion sets the ApplicationVersion field's value.
4118func (s *ApplicationVersionDescriptionMessage) SetApplicationVersion(v *ApplicationVersionDescription) *ApplicationVersionDescriptionMessage {
4119	s.ApplicationVersion = v
4120	return s
4121}
4122
4123// The application version lifecycle settings for an application. Defines the
4124// rules that Elastic Beanstalk applies to an application's versions in order
4125// to avoid hitting the per-region limit for application versions.
4126//
4127// When Elastic Beanstalk deletes an application version from its database,
4128// you can no longer deploy that version to an environment. The source bundle
4129// remains in S3 unless you configure the rule to delete it.
4130// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ApplicationVersionLifecycleConfig
4131type ApplicationVersionLifecycleConfig struct {
4132	_ struct{} `type:"structure"`
4133
4134	// Specify a max age rule to restrict the length of time that application versions
4135	// are retained for an application.
4136	MaxAgeRule *MaxAgeRule `type:"structure"`
4137
4138	// Specify a max count rule to restrict the number of application versions that
4139	// are retained for an application.
4140	MaxCountRule *MaxCountRule `type:"structure"`
4141}
4142
4143// String returns the string representation
4144func (s ApplicationVersionLifecycleConfig) String() string {
4145	return awsutil.Prettify(s)
4146}
4147
4148// GoString returns the string representation
4149func (s ApplicationVersionLifecycleConfig) GoString() string {
4150	return s.String()
4151}
4152
4153// Validate inspects the fields of the type to determine if they are valid.
4154func (s *ApplicationVersionLifecycleConfig) Validate() error {
4155	invalidParams := request.ErrInvalidParams{Context: "ApplicationVersionLifecycleConfig"}
4156	if s.MaxAgeRule != nil {
4157		if err := s.MaxAgeRule.Validate(); err != nil {
4158			invalidParams.AddNested("MaxAgeRule", err.(request.ErrInvalidParams))
4159		}
4160	}
4161	if s.MaxCountRule != nil {
4162		if err := s.MaxCountRule.Validate(); err != nil {
4163			invalidParams.AddNested("MaxCountRule", err.(request.ErrInvalidParams))
4164		}
4165	}
4166
4167	if invalidParams.Len() > 0 {
4168		return invalidParams
4169	}
4170	return nil
4171}
4172
4173// SetMaxAgeRule sets the MaxAgeRule field's value.
4174func (s *ApplicationVersionLifecycleConfig) SetMaxAgeRule(v *MaxAgeRule) *ApplicationVersionLifecycleConfig {
4175	s.MaxAgeRule = v
4176	return s
4177}
4178
4179// SetMaxCountRule sets the MaxCountRule field's value.
4180func (s *ApplicationVersionLifecycleConfig) SetMaxCountRule(v *MaxCountRule) *ApplicationVersionLifecycleConfig {
4181	s.MaxCountRule = v
4182	return s
4183}
4184
4185// Request to execute a scheduled managed action immediately.
4186// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ApplyEnvironmentManagedActionRequest
4187type ApplyEnvironmentManagedActionInput struct {
4188	_ struct{} `type:"structure"`
4189
4190	// The action ID of the scheduled managed action to execute.
4191	//
4192	// ActionId is a required field
4193	ActionId *string `type:"string" required:"true"`
4194
4195	// The environment ID of the target environment.
4196	EnvironmentId *string `type:"string"`
4197
4198	// The name of the target environment.
4199	EnvironmentName *string `type:"string"`
4200}
4201
4202// String returns the string representation
4203func (s ApplyEnvironmentManagedActionInput) String() string {
4204	return awsutil.Prettify(s)
4205}
4206
4207// GoString returns the string representation
4208func (s ApplyEnvironmentManagedActionInput) GoString() string {
4209	return s.String()
4210}
4211
4212// Validate inspects the fields of the type to determine if they are valid.
4213func (s *ApplyEnvironmentManagedActionInput) Validate() error {
4214	invalidParams := request.ErrInvalidParams{Context: "ApplyEnvironmentManagedActionInput"}
4215	if s.ActionId == nil {
4216		invalidParams.Add(request.NewErrParamRequired("ActionId"))
4217	}
4218
4219	if invalidParams.Len() > 0 {
4220		return invalidParams
4221	}
4222	return nil
4223}
4224
4225// SetActionId sets the ActionId field's value.
4226func (s *ApplyEnvironmentManagedActionInput) SetActionId(v string) *ApplyEnvironmentManagedActionInput {
4227	s.ActionId = &v
4228	return s
4229}
4230
4231// SetEnvironmentId sets the EnvironmentId field's value.
4232func (s *ApplyEnvironmentManagedActionInput) SetEnvironmentId(v string) *ApplyEnvironmentManagedActionInput {
4233	s.EnvironmentId = &v
4234	return s
4235}
4236
4237// SetEnvironmentName sets the EnvironmentName field's value.
4238func (s *ApplyEnvironmentManagedActionInput) SetEnvironmentName(v string) *ApplyEnvironmentManagedActionInput {
4239	s.EnvironmentName = &v
4240	return s
4241}
4242
4243// The result message containing information about the managed action.
4244// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ApplyEnvironmentManagedActionResult
4245type ApplyEnvironmentManagedActionOutput struct {
4246	_ struct{} `type:"structure"`
4247
4248	// A description of the managed action.
4249	ActionDescription *string `type:"string"`
4250
4251	// The action ID of the managed action.
4252	ActionId *string `type:"string"`
4253
4254	// The type of managed action.
4255	ActionType *string `type:"string" enum:"ActionType"`
4256
4257	// The status of the managed action.
4258	Status *string `type:"string"`
4259}
4260
4261// String returns the string representation
4262func (s ApplyEnvironmentManagedActionOutput) String() string {
4263	return awsutil.Prettify(s)
4264}
4265
4266// GoString returns the string representation
4267func (s ApplyEnvironmentManagedActionOutput) GoString() string {
4268	return s.String()
4269}
4270
4271// SetActionDescription sets the ActionDescription field's value.
4272func (s *ApplyEnvironmentManagedActionOutput) SetActionDescription(v string) *ApplyEnvironmentManagedActionOutput {
4273	s.ActionDescription = &v
4274	return s
4275}
4276
4277// SetActionId sets the ActionId field's value.
4278func (s *ApplyEnvironmentManagedActionOutput) SetActionId(v string) *ApplyEnvironmentManagedActionOutput {
4279	s.ActionId = &v
4280	return s
4281}
4282
4283// SetActionType sets the ActionType field's value.
4284func (s *ApplyEnvironmentManagedActionOutput) SetActionType(v string) *ApplyEnvironmentManagedActionOutput {
4285	s.ActionType = &v
4286	return s
4287}
4288
4289// SetStatus sets the Status field's value.
4290func (s *ApplyEnvironmentManagedActionOutput) SetStatus(v string) *ApplyEnvironmentManagedActionOutput {
4291	s.Status = &v
4292	return s
4293}
4294
4295// Describes an Auto Scaling launch configuration.
4296// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/AutoScalingGroup
4297type AutoScalingGroup struct {
4298	_ struct{} `type:"structure"`
4299
4300	// The name of the AutoScalingGroup .
4301	Name *string `type:"string"`
4302}
4303
4304// String returns the string representation
4305func (s AutoScalingGroup) String() string {
4306	return awsutil.Prettify(s)
4307}
4308
4309// GoString returns the string representation
4310func (s AutoScalingGroup) GoString() string {
4311	return s.String()
4312}
4313
4314// SetName sets the Name field's value.
4315func (s *AutoScalingGroup) SetName(v string) *AutoScalingGroup {
4316	s.Name = &v
4317	return s
4318}
4319
4320// Settings for an AWS CodeBuild build.
4321// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/BuildConfiguration
4322type BuildConfiguration struct {
4323	_ struct{} `type:"structure"`
4324
4325	// The name of the artifact of the CodeBuild build. If provided, Elastic Beanstalk
4326	// stores the build artifact in the S3 location S3-bucket/resources/application-name/codebuild/codebuild-version-label-artifact-name.zip.
4327	// If not provided, Elastic Beanstalk stores the build artifact in the S3 location
4328	// S3-bucket/resources/application-name/codebuild/codebuild-version-label.zip.
4329	ArtifactName *string `type:"string"`
4330
4331	// The Amazon Resource Name (ARN) of the AWS Identity and Access Management
4332	// (IAM) role that enables AWS CodeBuild to interact with dependent AWS services
4333	// on behalf of the AWS account.
4334	//
4335	// CodeBuildServiceRole is a required field
4336	CodeBuildServiceRole *string `type:"string" required:"true"`
4337
4338	// Information about the compute resources the build project will use.
4339	//
4340	//    * BUILD_GENERAL1_SMALL: Use up to 3 GB memory and 2 vCPUs for builds
4341	//
4342	//    * BUILD_GENERAL1_MEDIUM: Use up to 7 GB memory and 4 vCPUs for builds
4343	//
4344	//    * BUILD_GENERAL1_LARGE: Use up to 15 GB memory and 8 vCPUs for builds
4345	ComputeType *string `type:"string" enum:"ComputeType"`
4346
4347	// The ID of the Docker image to use for this build project.
4348	//
4349	// Image is a required field
4350	Image *string `type:"string" required:"true"`
4351
4352	// How long in minutes, from 5 to 480 (8 hours), for AWS CodeBuild to wait until
4353	// timing out any related build that does not get marked as completed. The default
4354	// is 60 minutes.
4355	TimeoutInMinutes *int64 `type:"integer"`
4356}
4357
4358// String returns the string representation
4359func (s BuildConfiguration) String() string {
4360	return awsutil.Prettify(s)
4361}
4362
4363// GoString returns the string representation
4364func (s BuildConfiguration) GoString() string {
4365	return s.String()
4366}
4367
4368// Validate inspects the fields of the type to determine if they are valid.
4369func (s *BuildConfiguration) Validate() error {
4370	invalidParams := request.ErrInvalidParams{Context: "BuildConfiguration"}
4371	if s.CodeBuildServiceRole == nil {
4372		invalidParams.Add(request.NewErrParamRequired("CodeBuildServiceRole"))
4373	}
4374	if s.Image == nil {
4375		invalidParams.Add(request.NewErrParamRequired("Image"))
4376	}
4377
4378	if invalidParams.Len() > 0 {
4379		return invalidParams
4380	}
4381	return nil
4382}
4383
4384// SetArtifactName sets the ArtifactName field's value.
4385func (s *BuildConfiguration) SetArtifactName(v string) *BuildConfiguration {
4386	s.ArtifactName = &v
4387	return s
4388}
4389
4390// SetCodeBuildServiceRole sets the CodeBuildServiceRole field's value.
4391func (s *BuildConfiguration) SetCodeBuildServiceRole(v string) *BuildConfiguration {
4392	s.CodeBuildServiceRole = &v
4393	return s
4394}
4395
4396// SetComputeType sets the ComputeType field's value.
4397func (s *BuildConfiguration) SetComputeType(v string) *BuildConfiguration {
4398	s.ComputeType = &v
4399	return s
4400}
4401
4402// SetImage sets the Image field's value.
4403func (s *BuildConfiguration) SetImage(v string) *BuildConfiguration {
4404	s.Image = &v
4405	return s
4406}
4407
4408// SetTimeoutInMinutes sets the TimeoutInMinutes field's value.
4409func (s *BuildConfiguration) SetTimeoutInMinutes(v int64) *BuildConfiguration {
4410	s.TimeoutInMinutes = &v
4411	return s
4412}
4413
4414// The builder used to build the custom platform.
4415// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/Builder
4416type Builder struct {
4417	_ struct{} `type:"structure"`
4418
4419	// The ARN of the builder.
4420	ARN *string `type:"string"`
4421}
4422
4423// String returns the string representation
4424func (s Builder) String() string {
4425	return awsutil.Prettify(s)
4426}
4427
4428// GoString returns the string representation
4429func (s Builder) GoString() string {
4430	return s.String()
4431}
4432
4433// SetARN sets the ARN field's value.
4434func (s *Builder) SetARN(v string) *Builder {
4435	s.ARN = &v
4436	return s
4437}
4438
4439// CPU utilization metrics for an instance.
4440// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/CPUUtilization
4441type CPUUtilization struct {
4442	_ struct{} `type:"structure"`
4443
4444	// Percentage of time that the CPU has spent in the I/O Wait state over the
4445	// last 10 seconds.
4446	IOWait *float64 `type:"double"`
4447
4448	// Percentage of time that the CPU has spent in the IRQ state over the last
4449	// 10 seconds.
4450	IRQ *float64 `type:"double"`
4451
4452	// Percentage of time that the CPU has spent in the Idle state over the last
4453	// 10 seconds.
4454	Idle *float64 `type:"double"`
4455
4456	// Percentage of time that the CPU has spent in the Nice state over the last
4457	// 10 seconds.
4458	Nice *float64 `type:"double"`
4459
4460	// Percentage of time that the CPU has spent in the SoftIRQ state over the last
4461	// 10 seconds.
4462	SoftIRQ *float64 `type:"double"`
4463
4464	// Percentage of time that the CPU has spent in the System state over the last
4465	// 10 seconds.
4466	System *float64 `type:"double"`
4467
4468	// Percentage of time that the CPU has spent in the User state over the last
4469	// 10 seconds.
4470	User *float64 `type:"double"`
4471}
4472
4473// String returns the string representation
4474func (s CPUUtilization) String() string {
4475	return awsutil.Prettify(s)
4476}
4477
4478// GoString returns the string representation
4479func (s CPUUtilization) GoString() string {
4480	return s.String()
4481}
4482
4483// SetIOWait sets the IOWait field's value.
4484func (s *CPUUtilization) SetIOWait(v float64) *CPUUtilization {
4485	s.IOWait = &v
4486	return s
4487}
4488
4489// SetIRQ sets the IRQ field's value.
4490func (s *CPUUtilization) SetIRQ(v float64) *CPUUtilization {
4491	s.IRQ = &v
4492	return s
4493}
4494
4495// SetIdle sets the Idle field's value.
4496func (s *CPUUtilization) SetIdle(v float64) *CPUUtilization {
4497	s.Idle = &v
4498	return s
4499}
4500
4501// SetNice sets the Nice field's value.
4502func (s *CPUUtilization) SetNice(v float64) *CPUUtilization {
4503	s.Nice = &v
4504	return s
4505}
4506
4507// SetSoftIRQ sets the SoftIRQ field's value.
4508func (s *CPUUtilization) SetSoftIRQ(v float64) *CPUUtilization {
4509	s.SoftIRQ = &v
4510	return s
4511}
4512
4513// SetSystem sets the System field's value.
4514func (s *CPUUtilization) SetSystem(v float64) *CPUUtilization {
4515	s.System = &v
4516	return s
4517}
4518
4519// SetUser sets the User field's value.
4520func (s *CPUUtilization) SetUser(v float64) *CPUUtilization {
4521	s.User = &v
4522	return s
4523}
4524
4525// Results message indicating whether a CNAME is available.
4526// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/CheckDNSAvailabilityMessage
4527type CheckDNSAvailabilityInput struct {
4528	_ struct{} `type:"structure"`
4529
4530	// The prefix used when this CNAME is reserved.
4531	//
4532	// CNAMEPrefix is a required field
4533	CNAMEPrefix *string `min:"4" type:"string" required:"true"`
4534}
4535
4536// String returns the string representation
4537func (s CheckDNSAvailabilityInput) String() string {
4538	return awsutil.Prettify(s)
4539}
4540
4541// GoString returns the string representation
4542func (s CheckDNSAvailabilityInput) GoString() string {
4543	return s.String()
4544}
4545
4546// Validate inspects the fields of the type to determine if they are valid.
4547func (s *CheckDNSAvailabilityInput) Validate() error {
4548	invalidParams := request.ErrInvalidParams{Context: "CheckDNSAvailabilityInput"}
4549	if s.CNAMEPrefix == nil {
4550		invalidParams.Add(request.NewErrParamRequired("CNAMEPrefix"))
4551	}
4552	if s.CNAMEPrefix != nil && len(*s.CNAMEPrefix) < 4 {
4553		invalidParams.Add(request.NewErrParamMinLen("CNAMEPrefix", 4))
4554	}
4555
4556	if invalidParams.Len() > 0 {
4557		return invalidParams
4558	}
4559	return nil
4560}
4561
4562// SetCNAMEPrefix sets the CNAMEPrefix field's value.
4563func (s *CheckDNSAvailabilityInput) SetCNAMEPrefix(v string) *CheckDNSAvailabilityInput {
4564	s.CNAMEPrefix = &v
4565	return s
4566}
4567
4568// Indicates if the specified CNAME is available.
4569// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/CheckDNSAvailabilityResultMessage
4570type CheckDNSAvailabilityOutput struct {
4571	_ struct{} `type:"structure"`
4572
4573	// Indicates if the specified CNAME is available:
4574	//
4575	//    * true : The CNAME is available.
4576	//
4577	//    * false : The CNAME is not available.
4578	Available *bool `type:"boolean"`
4579
4580	// The fully qualified CNAME to reserve when CreateEnvironment is called with
4581	// the provided prefix.
4582	FullyQualifiedCNAME *string `min:"1" type:"string"`
4583}
4584
4585// String returns the string representation
4586func (s CheckDNSAvailabilityOutput) String() string {
4587	return awsutil.Prettify(s)
4588}
4589
4590// GoString returns the string representation
4591func (s CheckDNSAvailabilityOutput) GoString() string {
4592	return s.String()
4593}
4594
4595// SetAvailable sets the Available field's value.
4596func (s *CheckDNSAvailabilityOutput) SetAvailable(v bool) *CheckDNSAvailabilityOutput {
4597	s.Available = &v
4598	return s
4599}
4600
4601// SetFullyQualifiedCNAME sets the FullyQualifiedCNAME field's value.
4602func (s *CheckDNSAvailabilityOutput) SetFullyQualifiedCNAME(v string) *CheckDNSAvailabilityOutput {
4603	s.FullyQualifiedCNAME = &v
4604	return s
4605}
4606
4607// Request to create or update a group of environments.
4608// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ComposeEnvironmentsMessage
4609type ComposeEnvironmentsInput struct {
4610	_ struct{} `type:"structure"`
4611
4612	// The name of the application to which the specified source bundles belong.
4613	ApplicationName *string `min:"1" type:"string"`
4614
4615	// The name of the group to which the target environments belong. Specify a
4616	// group name only if the environment name defined in each target environment's
4617	// manifest ends with a + (plus) character. See Environment Manifest (env.yaml)
4618	// (http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/environment-cfg-manifest.html)
4619	// for details.
4620	GroupName *string `min:"1" type:"string"`
4621
4622	// A list of version labels, specifying one or more application source bundles
4623	// that belong to the target application. Each source bundle must include an
4624	// environment manifest that specifies the name of the environment and the name
4625	// of the solution stack to use, and optionally can specify environment links
4626	// to create.
4627	VersionLabels []*string `type:"list"`
4628}
4629
4630// String returns the string representation
4631func (s ComposeEnvironmentsInput) String() string {
4632	return awsutil.Prettify(s)
4633}
4634
4635// GoString returns the string representation
4636func (s ComposeEnvironmentsInput) GoString() string {
4637	return s.String()
4638}
4639
4640// Validate inspects the fields of the type to determine if they are valid.
4641func (s *ComposeEnvironmentsInput) Validate() error {
4642	invalidParams := request.ErrInvalidParams{Context: "ComposeEnvironmentsInput"}
4643	if s.ApplicationName != nil && len(*s.ApplicationName) < 1 {
4644		invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1))
4645	}
4646	if s.GroupName != nil && len(*s.GroupName) < 1 {
4647		invalidParams.Add(request.NewErrParamMinLen("GroupName", 1))
4648	}
4649
4650	if invalidParams.Len() > 0 {
4651		return invalidParams
4652	}
4653	return nil
4654}
4655
4656// SetApplicationName sets the ApplicationName field's value.
4657func (s *ComposeEnvironmentsInput) SetApplicationName(v string) *ComposeEnvironmentsInput {
4658	s.ApplicationName = &v
4659	return s
4660}
4661
4662// SetGroupName sets the GroupName field's value.
4663func (s *ComposeEnvironmentsInput) SetGroupName(v string) *ComposeEnvironmentsInput {
4664	s.GroupName = &v
4665	return s
4666}
4667
4668// SetVersionLabels sets the VersionLabels field's value.
4669func (s *ComposeEnvironmentsInput) SetVersionLabels(v []*string) *ComposeEnvironmentsInput {
4670	s.VersionLabels = v
4671	return s
4672}
4673
4674// Describes the possible values for a configuration option.
4675// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ConfigurationOptionDescription
4676type ConfigurationOptionDescription struct {
4677	_ struct{} `type:"structure"`
4678
4679	// An indication of which action is required if the value for this configuration
4680	// option changes:
4681	//
4682	//    * NoInterruption : There is no interruption to the environment or application
4683	//    availability.
4684	//
4685	//    * RestartEnvironment : The environment is entirely restarted, all AWS
4686	//    resources are deleted and recreated, and the environment is unavailable
4687	//    during the process.
4688	//
4689	//    * RestartApplicationServer : The environment is available the entire time.
4690	//    However, a short application outage occurs when the application servers
4691	//    on the running Amazon EC2 instances are restarted.
4692	ChangeSeverity *string `type:"string"`
4693
4694	// The default value for this configuration option.
4695	DefaultValue *string `type:"string"`
4696
4697	// If specified, the configuration option must be a string value no longer than
4698	// this value.
4699	MaxLength *int64 `type:"integer"`
4700
4701	// If specified, the configuration option must be a numeric value less than
4702	// this value.
4703	MaxValue *int64 `type:"integer"`
4704
4705	// If specified, the configuration option must be a numeric value greater than
4706	// this value.
4707	MinValue *int64 `type:"integer"`
4708
4709	// The name of the configuration option.
4710	Name *string `type:"string"`
4711
4712	// A unique namespace identifying the option's associated AWS resource.
4713	Namespace *string `type:"string"`
4714
4715	// If specified, the configuration option must be a string value that satisfies
4716	// this regular expression.
4717	Regex *OptionRestrictionRegex `type:"structure"`
4718
4719	// An indication of whether the user defined this configuration option:
4720	//
4721	//    * true : This configuration option was defined by the user. It is a valid
4722	//    choice for specifying if this as an Option to Remove when updating configuration
4723	//    settings.
4724	//
4725	//    * false : This configuration was not defined by the user.
4726	//
4727	// Constraint: You can remove only UserDefined options from a configuration.
4728	//
4729	// Valid Values: true | false
4730	UserDefined *bool `type:"boolean"`
4731
4732	// If specified, values for the configuration option are selected from this
4733	// list.
4734	ValueOptions []*string `type:"list"`
4735
4736	// An indication of which type of values this option has and whether it is allowable
4737	// to select one or more than one of the possible values:
4738	//
4739	//    * Scalar : Values for this option are a single selection from the possible
4740	//    values, or an unformatted string, or numeric value governed by the MIN/MAX/Regex
4741	//    constraints.
4742	//
4743	//    * List : Values for this option are multiple selections from the possible
4744	//    values.
4745	//
4746	//    * Boolean : Values for this option are either true or false .
4747	//
4748	//    * Json : Values for this option are a JSON representation of a ConfigDocument.
4749	ValueType *string `type:"string" enum:"ConfigurationOptionValueType"`
4750}
4751
4752// String returns the string representation
4753func (s ConfigurationOptionDescription) String() string {
4754	return awsutil.Prettify(s)
4755}
4756
4757// GoString returns the string representation
4758func (s ConfigurationOptionDescription) GoString() string {
4759	return s.String()
4760}
4761
4762// SetChangeSeverity sets the ChangeSeverity field's value.
4763func (s *ConfigurationOptionDescription) SetChangeSeverity(v string) *ConfigurationOptionDescription {
4764	s.ChangeSeverity = &v
4765	return s
4766}
4767
4768// SetDefaultValue sets the DefaultValue field's value.
4769func (s *ConfigurationOptionDescription) SetDefaultValue(v string) *ConfigurationOptionDescription {
4770	s.DefaultValue = &v
4771	return s
4772}
4773
4774// SetMaxLength sets the MaxLength field's value.
4775func (s *ConfigurationOptionDescription) SetMaxLength(v int64) *ConfigurationOptionDescription {
4776	s.MaxLength = &v
4777	return s
4778}
4779
4780// SetMaxValue sets the MaxValue field's value.
4781func (s *ConfigurationOptionDescription) SetMaxValue(v int64) *ConfigurationOptionDescription {
4782	s.MaxValue = &v
4783	return s
4784}
4785
4786// SetMinValue sets the MinValue field's value.
4787func (s *ConfigurationOptionDescription) SetMinValue(v int64) *ConfigurationOptionDescription {
4788	s.MinValue = &v
4789	return s
4790}
4791
4792// SetName sets the Name field's value.
4793func (s *ConfigurationOptionDescription) SetName(v string) *ConfigurationOptionDescription {
4794	s.Name = &v
4795	return s
4796}
4797
4798// SetNamespace sets the Namespace field's value.
4799func (s *ConfigurationOptionDescription) SetNamespace(v string) *ConfigurationOptionDescription {
4800	s.Namespace = &v
4801	return s
4802}
4803
4804// SetRegex sets the Regex field's value.
4805func (s *ConfigurationOptionDescription) SetRegex(v *OptionRestrictionRegex) *ConfigurationOptionDescription {
4806	s.Regex = v
4807	return s
4808}
4809
4810// SetUserDefined sets the UserDefined field's value.
4811func (s *ConfigurationOptionDescription) SetUserDefined(v bool) *ConfigurationOptionDescription {
4812	s.UserDefined = &v
4813	return s
4814}
4815
4816// SetValueOptions sets the ValueOptions field's value.
4817func (s *ConfigurationOptionDescription) SetValueOptions(v []*string) *ConfigurationOptionDescription {
4818	s.ValueOptions = v
4819	return s
4820}
4821
4822// SetValueType sets the ValueType field's value.
4823func (s *ConfigurationOptionDescription) SetValueType(v string) *ConfigurationOptionDescription {
4824	s.ValueType = &v
4825	return s
4826}
4827
4828// A specification identifying an individual configuration option along with
4829// its current value. For a list of possible option values, go to Option Values
4830// (http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/command-options.html)
4831// in the AWS Elastic Beanstalk Developer Guide.
4832// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ConfigurationOptionSetting
4833type ConfigurationOptionSetting struct {
4834	_ struct{} `type:"structure"`
4835
4836	// A unique namespace identifying the option's associated AWS resource.
4837	Namespace *string `type:"string"`
4838
4839	// The name of the configuration option.
4840	OptionName *string `type:"string"`
4841
4842	// A unique resource name for a time-based scaling configuration option.
4843	ResourceName *string `min:"1" type:"string"`
4844
4845	// The current value for the configuration option.
4846	Value *string `type:"string"`
4847}
4848
4849// String returns the string representation
4850func (s ConfigurationOptionSetting) String() string {
4851	return awsutil.Prettify(s)
4852}
4853
4854// GoString returns the string representation
4855func (s ConfigurationOptionSetting) GoString() string {
4856	return s.String()
4857}
4858
4859// Validate inspects the fields of the type to determine if they are valid.
4860func (s *ConfigurationOptionSetting) Validate() error {
4861	invalidParams := request.ErrInvalidParams{Context: "ConfigurationOptionSetting"}
4862	if s.ResourceName != nil && len(*s.ResourceName) < 1 {
4863		invalidParams.Add(request.NewErrParamMinLen("ResourceName", 1))
4864	}
4865
4866	if invalidParams.Len() > 0 {
4867		return invalidParams
4868	}
4869	return nil
4870}
4871
4872// SetNamespace sets the Namespace field's value.
4873func (s *ConfigurationOptionSetting) SetNamespace(v string) *ConfigurationOptionSetting {
4874	s.Namespace = &v
4875	return s
4876}
4877
4878// SetOptionName sets the OptionName field's value.
4879func (s *ConfigurationOptionSetting) SetOptionName(v string) *ConfigurationOptionSetting {
4880	s.OptionName = &v
4881	return s
4882}
4883
4884// SetResourceName sets the ResourceName field's value.
4885func (s *ConfigurationOptionSetting) SetResourceName(v string) *ConfigurationOptionSetting {
4886	s.ResourceName = &v
4887	return s
4888}
4889
4890// SetValue sets the Value field's value.
4891func (s *ConfigurationOptionSetting) SetValue(v string) *ConfigurationOptionSetting {
4892	s.Value = &v
4893	return s
4894}
4895
4896// Describes the settings for a configuration set.
4897// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ConfigurationSettingsDescription
4898type ConfigurationSettingsDescription struct {
4899	_ struct{} `type:"structure"`
4900
4901	// The name of the application associated with this configuration set.
4902	ApplicationName *string `min:"1" type:"string"`
4903
4904	// The date (in UTC time) when this configuration set was created.
4905	DateCreated *time.Time `type:"timestamp" timestampFormat:"iso8601"`
4906
4907	// The date (in UTC time) when this configuration set was last modified.
4908	DateUpdated *time.Time `type:"timestamp" timestampFormat:"iso8601"`
4909
4910	// If this configuration set is associated with an environment, the DeploymentStatus
4911	// parameter indicates the deployment status of this configuration set:
4912	//
4913	//    * null: This configuration is not associated with a running environment.
4914	//
4915	//    * pending: This is a draft configuration that is not deployed to the associated
4916	//    environment but is in the process of deploying.
4917	//
4918	//    * deployed: This is the configuration that is currently deployed to the
4919	//    associated running environment.
4920	//
4921	//    * failed: This is a draft configuration that failed to successfully deploy.
4922	DeploymentStatus *string `type:"string" enum:"ConfigurationDeploymentStatus"`
4923
4924	// Describes this configuration set.
4925	Description *string `type:"string"`
4926
4927	// If not null, the name of the environment for this configuration set.
4928	EnvironmentName *string `min:"4" type:"string"`
4929
4930	// A list of the configuration options and their values in this configuration
4931	// set.
4932	OptionSettings []*ConfigurationOptionSetting `type:"list"`
4933
4934	// The ARN of the platform.
4935	PlatformArn *string `type:"string"`
4936
4937	// The name of the solution stack this configuration set uses.
4938	SolutionStackName *string `type:"string"`
4939
4940	// If not null, the name of the configuration template for this configuration
4941	// set.
4942	TemplateName *string `min:"1" type:"string"`
4943}
4944
4945// String returns the string representation
4946func (s ConfigurationSettingsDescription) String() string {
4947	return awsutil.Prettify(s)
4948}
4949
4950// GoString returns the string representation
4951func (s ConfigurationSettingsDescription) GoString() string {
4952	return s.String()
4953}
4954
4955// SetApplicationName sets the ApplicationName field's value.
4956func (s *ConfigurationSettingsDescription) SetApplicationName(v string) *ConfigurationSettingsDescription {
4957	s.ApplicationName = &v
4958	return s
4959}
4960
4961// SetDateCreated sets the DateCreated field's value.
4962func (s *ConfigurationSettingsDescription) SetDateCreated(v time.Time) *ConfigurationSettingsDescription {
4963	s.DateCreated = &v
4964	return s
4965}
4966
4967// SetDateUpdated sets the DateUpdated field's value.
4968func (s *ConfigurationSettingsDescription) SetDateUpdated(v time.Time) *ConfigurationSettingsDescription {
4969	s.DateUpdated = &v
4970	return s
4971}
4972
4973// SetDeploymentStatus sets the DeploymentStatus field's value.
4974func (s *ConfigurationSettingsDescription) SetDeploymentStatus(v string) *ConfigurationSettingsDescription {
4975	s.DeploymentStatus = &v
4976	return s
4977}
4978
4979// SetDescription sets the Description field's value.
4980func (s *ConfigurationSettingsDescription) SetDescription(v string) *ConfigurationSettingsDescription {
4981	s.Description = &v
4982	return s
4983}
4984
4985// SetEnvironmentName sets the EnvironmentName field's value.
4986func (s *ConfigurationSettingsDescription) SetEnvironmentName(v string) *ConfigurationSettingsDescription {
4987	s.EnvironmentName = &v
4988	return s
4989}
4990
4991// SetOptionSettings sets the OptionSettings field's value.
4992func (s *ConfigurationSettingsDescription) SetOptionSettings(v []*ConfigurationOptionSetting) *ConfigurationSettingsDescription {
4993	s.OptionSettings = v
4994	return s
4995}
4996
4997// SetPlatformArn sets the PlatformArn field's value.
4998func (s *ConfigurationSettingsDescription) SetPlatformArn(v string) *ConfigurationSettingsDescription {
4999	s.PlatformArn = &v
5000	return s
5001}
5002
5003// SetSolutionStackName sets the SolutionStackName field's value.
5004func (s *ConfigurationSettingsDescription) SetSolutionStackName(v string) *ConfigurationSettingsDescription {
5005	s.SolutionStackName = &v
5006	return s
5007}
5008
5009// SetTemplateName sets the TemplateName field's value.
5010func (s *ConfigurationSettingsDescription) SetTemplateName(v string) *ConfigurationSettingsDescription {
5011	s.TemplateName = &v
5012	return s
5013}
5014
5015// Request to create an application.
5016// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/CreateApplicationMessage
5017type CreateApplicationInput struct {
5018	_ struct{} `type:"structure"`
5019
5020	// The name of the application.
5021	//
5022	// Constraint: This name must be unique within your account. If the specified
5023	// name already exists, the action returns an InvalidParameterValue error.
5024	//
5025	// ApplicationName is a required field
5026	ApplicationName *string `min:"1" type:"string" required:"true"`
5027
5028	// Describes the application.
5029	Description *string `type:"string"`
5030
5031	// Specify an application resource lifecycle configuration to prevent your application
5032	// from accumulating too many versions.
5033	ResourceLifecycleConfig *ApplicationResourceLifecycleConfig `type:"structure"`
5034}
5035
5036// String returns the string representation
5037func (s CreateApplicationInput) String() string {
5038	return awsutil.Prettify(s)
5039}
5040
5041// GoString returns the string representation
5042func (s CreateApplicationInput) GoString() string {
5043	return s.String()
5044}
5045
5046// Validate inspects the fields of the type to determine if they are valid.
5047func (s *CreateApplicationInput) Validate() error {
5048	invalidParams := request.ErrInvalidParams{Context: "CreateApplicationInput"}
5049	if s.ApplicationName == nil {
5050		invalidParams.Add(request.NewErrParamRequired("ApplicationName"))
5051	}
5052	if s.ApplicationName != nil && len(*s.ApplicationName) < 1 {
5053		invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1))
5054	}
5055	if s.ResourceLifecycleConfig != nil {
5056		if err := s.ResourceLifecycleConfig.Validate(); err != nil {
5057			invalidParams.AddNested("ResourceLifecycleConfig", err.(request.ErrInvalidParams))
5058		}
5059	}
5060
5061	if invalidParams.Len() > 0 {
5062		return invalidParams
5063	}
5064	return nil
5065}
5066
5067// SetApplicationName sets the ApplicationName field's value.
5068func (s *CreateApplicationInput) SetApplicationName(v string) *CreateApplicationInput {
5069	s.ApplicationName = &v
5070	return s
5071}
5072
5073// SetDescription sets the Description field's value.
5074func (s *CreateApplicationInput) SetDescription(v string) *CreateApplicationInput {
5075	s.Description = &v
5076	return s
5077}
5078
5079// SetResourceLifecycleConfig sets the ResourceLifecycleConfig field's value.
5080func (s *CreateApplicationInput) SetResourceLifecycleConfig(v *ApplicationResourceLifecycleConfig) *CreateApplicationInput {
5081	s.ResourceLifecycleConfig = v
5082	return s
5083}
5084
5085// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/CreateApplicationVersionMessage
5086type CreateApplicationVersionInput struct {
5087	_ struct{} `type:"structure"`
5088
5089	// The name of the application. If no application is found with this name, and
5090	// AutoCreateApplication is false, returns an InvalidParameterValue error.
5091	//
5092	// ApplicationName is a required field
5093	ApplicationName *string `min:"1" type:"string" required:"true"`
5094
5095	// Set to true to create an application with the specified name if it doesn't
5096	// already exist.
5097	AutoCreateApplication *bool `type:"boolean"`
5098
5099	// Settings for an AWS CodeBuild build.
5100	BuildConfiguration *BuildConfiguration `type:"structure"`
5101
5102	// Describes this version.
5103	Description *string `type:"string"`
5104
5105	// Preprocesses and validates the environment manifest (env.yaml) and configuration
5106	// files (*.config files in the .ebextensions folder) in the source bundle.
5107	// Validating configuration files can identify issues prior to deploying the
5108	// application version to an environment.
5109	//
5110	// The Process option validates Elastic Beanstalk configuration files. It doesn't
5111	// validate your application's configuration files, like proxy server or Docker
5112	// configuration.
5113	Process *bool `type:"boolean"`
5114
5115	// Specify a commit in an AWS CodeCommit Git repository to use as the source
5116	// code for the application version.
5117	SourceBuildInformation *SourceBuildInformation `type:"structure"`
5118
5119	// The Amazon S3 bucket and key that identify the location of the source bundle
5120	// for this version.
5121	//
5122	// The Amazon S3 bucket must be in the same region as the environment.
5123	//
5124	// Specify a source bundle in S3 or a commit in an AWS CodeCommit repository
5125	// (with SourceBuildInformation), but not both. If neither SourceBundle nor
5126	// SourceBuildInformation are provided, Elastic Beanstalk uses a sample application.
5127	SourceBundle *S3Location `type:"structure"`
5128
5129	// A label identifying this version.
5130	//
5131	// Constraint: Must be unique per application. If an application version already
5132	// exists with this label for the specified application, AWS Elastic Beanstalk
5133	// returns an InvalidParameterValue error.
5134	//
5135	// VersionLabel is a required field
5136	VersionLabel *string `min:"1" type:"string" required:"true"`
5137}
5138
5139// String returns the string representation
5140func (s CreateApplicationVersionInput) String() string {
5141	return awsutil.Prettify(s)
5142}
5143
5144// GoString returns the string representation
5145func (s CreateApplicationVersionInput) GoString() string {
5146	return s.String()
5147}
5148
5149// Validate inspects the fields of the type to determine if they are valid.
5150func (s *CreateApplicationVersionInput) Validate() error {
5151	invalidParams := request.ErrInvalidParams{Context: "CreateApplicationVersionInput"}
5152	if s.ApplicationName == nil {
5153		invalidParams.Add(request.NewErrParamRequired("ApplicationName"))
5154	}
5155	if s.ApplicationName != nil && len(*s.ApplicationName) < 1 {
5156		invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1))
5157	}
5158	if s.VersionLabel == nil {
5159		invalidParams.Add(request.NewErrParamRequired("VersionLabel"))
5160	}
5161	if s.VersionLabel != nil && len(*s.VersionLabel) < 1 {
5162		invalidParams.Add(request.NewErrParamMinLen("VersionLabel", 1))
5163	}
5164	if s.BuildConfiguration != nil {
5165		if err := s.BuildConfiguration.Validate(); err != nil {
5166			invalidParams.AddNested("BuildConfiguration", err.(request.ErrInvalidParams))
5167		}
5168	}
5169	if s.SourceBuildInformation != nil {
5170		if err := s.SourceBuildInformation.Validate(); err != nil {
5171			invalidParams.AddNested("SourceBuildInformation", err.(request.ErrInvalidParams))
5172		}
5173	}
5174
5175	if invalidParams.Len() > 0 {
5176		return invalidParams
5177	}
5178	return nil
5179}
5180
5181// SetApplicationName sets the ApplicationName field's value.
5182func (s *CreateApplicationVersionInput) SetApplicationName(v string) *CreateApplicationVersionInput {
5183	s.ApplicationName = &v
5184	return s
5185}
5186
5187// SetAutoCreateApplication sets the AutoCreateApplication field's value.
5188func (s *CreateApplicationVersionInput) SetAutoCreateApplication(v bool) *CreateApplicationVersionInput {
5189	s.AutoCreateApplication = &v
5190	return s
5191}
5192
5193// SetBuildConfiguration sets the BuildConfiguration field's value.
5194func (s *CreateApplicationVersionInput) SetBuildConfiguration(v *BuildConfiguration) *CreateApplicationVersionInput {
5195	s.BuildConfiguration = v
5196	return s
5197}
5198
5199// SetDescription sets the Description field's value.
5200func (s *CreateApplicationVersionInput) SetDescription(v string) *CreateApplicationVersionInput {
5201	s.Description = &v
5202	return s
5203}
5204
5205// SetProcess sets the Process field's value.
5206func (s *CreateApplicationVersionInput) SetProcess(v bool) *CreateApplicationVersionInput {
5207	s.Process = &v
5208	return s
5209}
5210
5211// SetSourceBuildInformation sets the SourceBuildInformation field's value.
5212func (s *CreateApplicationVersionInput) SetSourceBuildInformation(v *SourceBuildInformation) *CreateApplicationVersionInput {
5213	s.SourceBuildInformation = v
5214	return s
5215}
5216
5217// SetSourceBundle sets the SourceBundle field's value.
5218func (s *CreateApplicationVersionInput) SetSourceBundle(v *S3Location) *CreateApplicationVersionInput {
5219	s.SourceBundle = v
5220	return s
5221}
5222
5223// SetVersionLabel sets the VersionLabel field's value.
5224func (s *CreateApplicationVersionInput) SetVersionLabel(v string) *CreateApplicationVersionInput {
5225	s.VersionLabel = &v
5226	return s
5227}
5228
5229// Request to create a configuration template.
5230// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/CreateConfigurationTemplateMessage
5231type CreateConfigurationTemplateInput struct {
5232	_ struct{} `type:"structure"`
5233
5234	// The name of the application to associate with this configuration template.
5235	// If no application is found with this name, AWS Elastic Beanstalk returns
5236	// an InvalidParameterValue error.
5237	//
5238	// ApplicationName is a required field
5239	ApplicationName *string `min:"1" type:"string" required:"true"`
5240
5241	// Describes this configuration.
5242	Description *string `type:"string"`
5243
5244	// The ID of the environment used with this configuration template.
5245	EnvironmentId *string `type:"string"`
5246
5247	// If specified, AWS Elastic Beanstalk sets the specified configuration option
5248	// to the requested value. The new value overrides the value obtained from the
5249	// solution stack or the source configuration template.
5250	OptionSettings []*ConfigurationOptionSetting `type:"list"`
5251
5252	// The ARN of the custom platform.
5253	PlatformArn *string `type:"string"`
5254
5255	// The name of the solution stack used by this configuration. The solution stack
5256	// specifies the operating system, architecture, and application server for
5257	// a configuration template. It determines the set of configuration options
5258	// as well as the possible and default values.
5259	//
5260	// Use ListAvailableSolutionStacks to obtain a list of available solution stacks.
5261	//
5262	// A solution stack name or a source configuration parameter must be specified,
5263	// otherwise AWS Elastic Beanstalk returns an InvalidParameterValue error.
5264	//
5265	// If a solution stack name is not specified and the source configuration parameter
5266	// is specified, AWS Elastic Beanstalk uses the same solution stack as the source
5267	// configuration template.
5268	SolutionStackName *string `type:"string"`
5269
5270	// If specified, AWS Elastic Beanstalk uses the configuration values from the
5271	// specified configuration template to create a new configuration.
5272	//
5273	// Values specified in the OptionSettings parameter of this call overrides any
5274	// values obtained from the SourceConfiguration.
5275	//
5276	// If no configuration template is found, returns an InvalidParameterValue error.
5277	//
5278	// Constraint: If both the solution stack name parameter and the source configuration
5279	// parameters are specified, the solution stack of the source configuration
5280	// template must match the specified solution stack name or else AWS Elastic
5281	// Beanstalk returns an InvalidParameterCombination error.
5282	SourceConfiguration *SourceConfiguration `type:"structure"`
5283
5284	// The name of the configuration template.
5285	//
5286	// Constraint: This name must be unique per application.
5287	//
5288	// Default: If a configuration template already exists with this name, AWS Elastic
5289	// Beanstalk returns an InvalidParameterValue error.
5290	//
5291	// TemplateName is a required field
5292	TemplateName *string `min:"1" type:"string" required:"true"`
5293}
5294
5295// String returns the string representation
5296func (s CreateConfigurationTemplateInput) String() string {
5297	return awsutil.Prettify(s)
5298}
5299
5300// GoString returns the string representation
5301func (s CreateConfigurationTemplateInput) GoString() string {
5302	return s.String()
5303}
5304
5305// Validate inspects the fields of the type to determine if they are valid.
5306func (s *CreateConfigurationTemplateInput) Validate() error {
5307	invalidParams := request.ErrInvalidParams{Context: "CreateConfigurationTemplateInput"}
5308	if s.ApplicationName == nil {
5309		invalidParams.Add(request.NewErrParamRequired("ApplicationName"))
5310	}
5311	if s.ApplicationName != nil && len(*s.ApplicationName) < 1 {
5312		invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1))
5313	}
5314	if s.TemplateName == nil {
5315		invalidParams.Add(request.NewErrParamRequired("TemplateName"))
5316	}
5317	if s.TemplateName != nil && len(*s.TemplateName) < 1 {
5318		invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1))
5319	}
5320	if s.OptionSettings != nil {
5321		for i, v := range s.OptionSettings {
5322			if v == nil {
5323				continue
5324			}
5325			if err := v.Validate(); err != nil {
5326				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OptionSettings", i), err.(request.ErrInvalidParams))
5327			}
5328		}
5329	}
5330	if s.SourceConfiguration != nil {
5331		if err := s.SourceConfiguration.Validate(); err != nil {
5332			invalidParams.AddNested("SourceConfiguration", err.(request.ErrInvalidParams))
5333		}
5334	}
5335
5336	if invalidParams.Len() > 0 {
5337		return invalidParams
5338	}
5339	return nil
5340}
5341
5342// SetApplicationName sets the ApplicationName field's value.
5343func (s *CreateConfigurationTemplateInput) SetApplicationName(v string) *CreateConfigurationTemplateInput {
5344	s.ApplicationName = &v
5345	return s
5346}
5347
5348// SetDescription sets the Description field's value.
5349func (s *CreateConfigurationTemplateInput) SetDescription(v string) *CreateConfigurationTemplateInput {
5350	s.Description = &v
5351	return s
5352}
5353
5354// SetEnvironmentId sets the EnvironmentId field's value.
5355func (s *CreateConfigurationTemplateInput) SetEnvironmentId(v string) *CreateConfigurationTemplateInput {
5356	s.EnvironmentId = &v
5357	return s
5358}
5359
5360// SetOptionSettings sets the OptionSettings field's value.
5361func (s *CreateConfigurationTemplateInput) SetOptionSettings(v []*ConfigurationOptionSetting) *CreateConfigurationTemplateInput {
5362	s.OptionSettings = v
5363	return s
5364}
5365
5366// SetPlatformArn sets the PlatformArn field's value.
5367func (s *CreateConfigurationTemplateInput) SetPlatformArn(v string) *CreateConfigurationTemplateInput {
5368	s.PlatformArn = &v
5369	return s
5370}
5371
5372// SetSolutionStackName sets the SolutionStackName field's value.
5373func (s *CreateConfigurationTemplateInput) SetSolutionStackName(v string) *CreateConfigurationTemplateInput {
5374	s.SolutionStackName = &v
5375	return s
5376}
5377
5378// SetSourceConfiguration sets the SourceConfiguration field's value.
5379func (s *CreateConfigurationTemplateInput) SetSourceConfiguration(v *SourceConfiguration) *CreateConfigurationTemplateInput {
5380	s.SourceConfiguration = v
5381	return s
5382}
5383
5384// SetTemplateName sets the TemplateName field's value.
5385func (s *CreateConfigurationTemplateInput) SetTemplateName(v string) *CreateConfigurationTemplateInput {
5386	s.TemplateName = &v
5387	return s
5388}
5389
5390// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/CreateEnvironmentMessage
5391type CreateEnvironmentInput struct {
5392	_ struct{} `type:"structure"`
5393
5394	// The name of the application that contains the version to be deployed.
5395	//
5396	// If no application is found with this name, CreateEnvironment returns an InvalidParameterValue
5397	// error.
5398	//
5399	// ApplicationName is a required field
5400	ApplicationName *string `min:"1" type:"string" required:"true"`
5401
5402	// If specified, the environment attempts to use this value as the prefix for
5403	// the CNAME. If not specified, the CNAME is generated automatically by appending
5404	// a random alphanumeric string to the environment name.
5405	CNAMEPrefix *string `min:"4" type:"string"`
5406
5407	// Describes this environment.
5408	Description *string `type:"string"`
5409
5410	// A unique name for the deployment environment. Used in the application URL.
5411	//
5412	// Constraint: Must be from 4 to 40 characters in length. The name can contain
5413	// only letters, numbers, and hyphens. It cannot start or end with a hyphen.
5414	// This name must be unique within a region in your account. If the specified
5415	// name already exists in the region, AWS Elastic Beanstalk returns an InvalidParameterValue
5416	// error.
5417	//
5418	// Default: If the CNAME parameter is not specified, the environment name becomes
5419	// part of the CNAME, and therefore part of the visible URL for your application.
5420	EnvironmentName *string `min:"4" type:"string"`
5421
5422	// The name of the group to which the target environment belongs. Specify a
5423	// group name only if the environment's name is specified in an environment
5424	// manifest and not with the environment name parameter. See Environment Manifest
5425	// (env.yaml) (http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/environment-cfg-manifest.html)
5426	// for details.
5427	GroupName *string `min:"1" type:"string"`
5428
5429	// If specified, AWS Elastic Beanstalk sets the specified configuration options
5430	// to the requested value in the configuration set for the new environment.
5431	// These override the values obtained from the solution stack or the configuration
5432	// template.
5433	OptionSettings []*ConfigurationOptionSetting `type:"list"`
5434
5435	// A list of custom user-defined configuration options to remove from the configuration
5436	// set for this new environment.
5437	OptionsToRemove []*OptionSpecification `type:"list"`
5438
5439	// The ARN of the platform.
5440	PlatformArn *string `type:"string"`
5441
5442	// This is an alternative to specifying a template name. If specified, AWS Elastic
5443	// Beanstalk sets the configuration values to the default values associated
5444	// with the specified solution stack.
5445	SolutionStackName *string `type:"string"`
5446
5447	// This specifies the tags applied to resources in the environment.
5448	Tags []*Tag `type:"list"`
5449
5450	// The name of the configuration template to use in deployment. If no configuration
5451	// template is found with this name, AWS Elastic Beanstalk returns an InvalidParameterValue
5452	// error.
5453	TemplateName *string `min:"1" type:"string"`
5454
5455	// This specifies the tier to use for creating this environment.
5456	Tier *EnvironmentTier `type:"structure"`
5457
5458	// The name of the application version to deploy.
5459	//
5460	// If the specified application has no associated application versions, AWS
5461	// Elastic Beanstalk UpdateEnvironment returns an InvalidParameterValue error.
5462	//
5463	// Default: If not specified, AWS Elastic Beanstalk attempts to launch the sample
5464	// application in the container.
5465	VersionLabel *string `min:"1" type:"string"`
5466}
5467
5468// String returns the string representation
5469func (s CreateEnvironmentInput) String() string {
5470	return awsutil.Prettify(s)
5471}
5472
5473// GoString returns the string representation
5474func (s CreateEnvironmentInput) GoString() string {
5475	return s.String()
5476}
5477
5478// Validate inspects the fields of the type to determine if they are valid.
5479func (s *CreateEnvironmentInput) Validate() error {
5480	invalidParams := request.ErrInvalidParams{Context: "CreateEnvironmentInput"}
5481	if s.ApplicationName == nil {
5482		invalidParams.Add(request.NewErrParamRequired("ApplicationName"))
5483	}
5484	if s.ApplicationName != nil && len(*s.ApplicationName) < 1 {
5485		invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1))
5486	}
5487	if s.CNAMEPrefix != nil && len(*s.CNAMEPrefix) < 4 {
5488		invalidParams.Add(request.NewErrParamMinLen("CNAMEPrefix", 4))
5489	}
5490	if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 {
5491		invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4))
5492	}
5493	if s.GroupName != nil && len(*s.GroupName) < 1 {
5494		invalidParams.Add(request.NewErrParamMinLen("GroupName", 1))
5495	}
5496	if s.TemplateName != nil && len(*s.TemplateName) < 1 {
5497		invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1))
5498	}
5499	if s.VersionLabel != nil && len(*s.VersionLabel) < 1 {
5500		invalidParams.Add(request.NewErrParamMinLen("VersionLabel", 1))
5501	}
5502	if s.OptionSettings != nil {
5503		for i, v := range s.OptionSettings {
5504			if v == nil {
5505				continue
5506			}
5507			if err := v.Validate(); err != nil {
5508				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OptionSettings", i), err.(request.ErrInvalidParams))
5509			}
5510		}
5511	}
5512	if s.OptionsToRemove != nil {
5513		for i, v := range s.OptionsToRemove {
5514			if v == nil {
5515				continue
5516			}
5517			if err := v.Validate(); err != nil {
5518				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OptionsToRemove", i), err.(request.ErrInvalidParams))
5519			}
5520		}
5521	}
5522	if s.Tags != nil {
5523		for i, v := range s.Tags {
5524			if v == nil {
5525				continue
5526			}
5527			if err := v.Validate(); err != nil {
5528				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
5529			}
5530		}
5531	}
5532
5533	if invalidParams.Len() > 0 {
5534		return invalidParams
5535	}
5536	return nil
5537}
5538
5539// SetApplicationName sets the ApplicationName field's value.
5540func (s *CreateEnvironmentInput) SetApplicationName(v string) *CreateEnvironmentInput {
5541	s.ApplicationName = &v
5542	return s
5543}
5544
5545// SetCNAMEPrefix sets the CNAMEPrefix field's value.
5546func (s *CreateEnvironmentInput) SetCNAMEPrefix(v string) *CreateEnvironmentInput {
5547	s.CNAMEPrefix = &v
5548	return s
5549}
5550
5551// SetDescription sets the Description field's value.
5552func (s *CreateEnvironmentInput) SetDescription(v string) *CreateEnvironmentInput {
5553	s.Description = &v
5554	return s
5555}
5556
5557// SetEnvironmentName sets the EnvironmentName field's value.
5558func (s *CreateEnvironmentInput) SetEnvironmentName(v string) *CreateEnvironmentInput {
5559	s.EnvironmentName = &v
5560	return s
5561}
5562
5563// SetGroupName sets the GroupName field's value.
5564func (s *CreateEnvironmentInput) SetGroupName(v string) *CreateEnvironmentInput {
5565	s.GroupName = &v
5566	return s
5567}
5568
5569// SetOptionSettings sets the OptionSettings field's value.
5570func (s *CreateEnvironmentInput) SetOptionSettings(v []*ConfigurationOptionSetting) *CreateEnvironmentInput {
5571	s.OptionSettings = v
5572	return s
5573}
5574
5575// SetOptionsToRemove sets the OptionsToRemove field's value.
5576func (s *CreateEnvironmentInput) SetOptionsToRemove(v []*OptionSpecification) *CreateEnvironmentInput {
5577	s.OptionsToRemove = v
5578	return s
5579}
5580
5581// SetPlatformArn sets the PlatformArn field's value.
5582func (s *CreateEnvironmentInput) SetPlatformArn(v string) *CreateEnvironmentInput {
5583	s.PlatformArn = &v
5584	return s
5585}
5586
5587// SetSolutionStackName sets the SolutionStackName field's value.
5588func (s *CreateEnvironmentInput) SetSolutionStackName(v string) *CreateEnvironmentInput {
5589	s.SolutionStackName = &v
5590	return s
5591}
5592
5593// SetTags sets the Tags field's value.
5594func (s *CreateEnvironmentInput) SetTags(v []*Tag) *CreateEnvironmentInput {
5595	s.Tags = v
5596	return s
5597}
5598
5599// SetTemplateName sets the TemplateName field's value.
5600func (s *CreateEnvironmentInput) SetTemplateName(v string) *CreateEnvironmentInput {
5601	s.TemplateName = &v
5602	return s
5603}
5604
5605// SetTier sets the Tier field's value.
5606func (s *CreateEnvironmentInput) SetTier(v *EnvironmentTier) *CreateEnvironmentInput {
5607	s.Tier = v
5608	return s
5609}
5610
5611// SetVersionLabel sets the VersionLabel field's value.
5612func (s *CreateEnvironmentInput) SetVersionLabel(v string) *CreateEnvironmentInput {
5613	s.VersionLabel = &v
5614	return s
5615}
5616
5617// Request to create a new platform version.
5618// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/CreatePlatformVersionRequest
5619type CreatePlatformVersionInput struct {
5620	_ struct{} `type:"structure"`
5621
5622	// The name of the builder environment.
5623	EnvironmentName *string `min:"4" type:"string"`
5624
5625	// The configuration option settings to apply to the builder environment.
5626	OptionSettings []*ConfigurationOptionSetting `type:"list"`
5627
5628	// The location of the platform definition archive in Amazon S3.
5629	//
5630	// PlatformDefinitionBundle is a required field
5631	PlatformDefinitionBundle *S3Location `type:"structure" required:"true"`
5632
5633	// The name of your custom platform.
5634	//
5635	// PlatformName is a required field
5636	PlatformName *string `type:"string" required:"true"`
5637
5638	// The number, such as 1.0.2, for the new platform version.
5639	//
5640	// PlatformVersion is a required field
5641	PlatformVersion *string `type:"string" required:"true"`
5642}
5643
5644// String returns the string representation
5645func (s CreatePlatformVersionInput) String() string {
5646	return awsutil.Prettify(s)
5647}
5648
5649// GoString returns the string representation
5650func (s CreatePlatformVersionInput) GoString() string {
5651	return s.String()
5652}
5653
5654// Validate inspects the fields of the type to determine if they are valid.
5655func (s *CreatePlatformVersionInput) Validate() error {
5656	invalidParams := request.ErrInvalidParams{Context: "CreatePlatformVersionInput"}
5657	if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 {
5658		invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4))
5659	}
5660	if s.PlatformDefinitionBundle == nil {
5661		invalidParams.Add(request.NewErrParamRequired("PlatformDefinitionBundle"))
5662	}
5663	if s.PlatformName == nil {
5664		invalidParams.Add(request.NewErrParamRequired("PlatformName"))
5665	}
5666	if s.PlatformVersion == nil {
5667		invalidParams.Add(request.NewErrParamRequired("PlatformVersion"))
5668	}
5669	if s.OptionSettings != nil {
5670		for i, v := range s.OptionSettings {
5671			if v == nil {
5672				continue
5673			}
5674			if err := v.Validate(); err != nil {
5675				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OptionSettings", i), err.(request.ErrInvalidParams))
5676			}
5677		}
5678	}
5679
5680	if invalidParams.Len() > 0 {
5681		return invalidParams
5682	}
5683	return nil
5684}
5685
5686// SetEnvironmentName sets the EnvironmentName field's value.
5687func (s *CreatePlatformVersionInput) SetEnvironmentName(v string) *CreatePlatformVersionInput {
5688	s.EnvironmentName = &v
5689	return s
5690}
5691
5692// SetOptionSettings sets the OptionSettings field's value.
5693func (s *CreatePlatformVersionInput) SetOptionSettings(v []*ConfigurationOptionSetting) *CreatePlatformVersionInput {
5694	s.OptionSettings = v
5695	return s
5696}
5697
5698// SetPlatformDefinitionBundle sets the PlatformDefinitionBundle field's value.
5699func (s *CreatePlatformVersionInput) SetPlatformDefinitionBundle(v *S3Location) *CreatePlatformVersionInput {
5700	s.PlatformDefinitionBundle = v
5701	return s
5702}
5703
5704// SetPlatformName sets the PlatformName field's value.
5705func (s *CreatePlatformVersionInput) SetPlatformName(v string) *CreatePlatformVersionInput {
5706	s.PlatformName = &v
5707	return s
5708}
5709
5710// SetPlatformVersion sets the PlatformVersion field's value.
5711func (s *CreatePlatformVersionInput) SetPlatformVersion(v string) *CreatePlatformVersionInput {
5712	s.PlatformVersion = &v
5713	return s
5714}
5715
5716// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/CreatePlatformVersionResult
5717type CreatePlatformVersionOutput struct {
5718	_ struct{} `type:"structure"`
5719
5720	// The builder used to create the custom platform.
5721	Builder *Builder `type:"structure"`
5722
5723	// Detailed information about the new version of the custom platform.
5724	PlatformSummary *PlatformSummary `type:"structure"`
5725}
5726
5727// String returns the string representation
5728func (s CreatePlatformVersionOutput) String() string {
5729	return awsutil.Prettify(s)
5730}
5731
5732// GoString returns the string representation
5733func (s CreatePlatformVersionOutput) GoString() string {
5734	return s.String()
5735}
5736
5737// SetBuilder sets the Builder field's value.
5738func (s *CreatePlatformVersionOutput) SetBuilder(v *Builder) *CreatePlatformVersionOutput {
5739	s.Builder = v
5740	return s
5741}
5742
5743// SetPlatformSummary sets the PlatformSummary field's value.
5744func (s *CreatePlatformVersionOutput) SetPlatformSummary(v *PlatformSummary) *CreatePlatformVersionOutput {
5745	s.PlatformSummary = v
5746	return s
5747}
5748
5749// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/CreateStorageLocationInput
5750type CreateStorageLocationInput struct {
5751	_ struct{} `type:"structure"`
5752}
5753
5754// String returns the string representation
5755func (s CreateStorageLocationInput) String() string {
5756	return awsutil.Prettify(s)
5757}
5758
5759// GoString returns the string representation
5760func (s CreateStorageLocationInput) GoString() string {
5761	return s.String()
5762}
5763
5764// Results of a CreateStorageLocationResult call.
5765// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/CreateStorageLocationResultMessage
5766type CreateStorageLocationOutput struct {
5767	_ struct{} `type:"structure"`
5768
5769	// The name of the Amazon S3 bucket created.
5770	S3Bucket *string `type:"string"`
5771}
5772
5773// String returns the string representation
5774func (s CreateStorageLocationOutput) String() string {
5775	return awsutil.Prettify(s)
5776}
5777
5778// GoString returns the string representation
5779func (s CreateStorageLocationOutput) GoString() string {
5780	return s.String()
5781}
5782
5783// SetS3Bucket sets the S3Bucket field's value.
5784func (s *CreateStorageLocationOutput) SetS3Bucket(v string) *CreateStorageLocationOutput {
5785	s.S3Bucket = &v
5786	return s
5787}
5788
5789// A custom AMI available to platforms.
5790// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/CustomAmi
5791type CustomAmi struct {
5792	_ struct{} `type:"structure"`
5793
5794	// THe ID of the image used to create the custom AMI.
5795	ImageId *string `type:"string"`
5796
5797	// The type of virtualization used to create the custom AMI.
5798	VirtualizationType *string `type:"string"`
5799}
5800
5801// String returns the string representation
5802func (s CustomAmi) String() string {
5803	return awsutil.Prettify(s)
5804}
5805
5806// GoString returns the string representation
5807func (s CustomAmi) GoString() string {
5808	return s.String()
5809}
5810
5811// SetImageId sets the ImageId field's value.
5812func (s *CustomAmi) SetImageId(v string) *CustomAmi {
5813	s.ImageId = &v
5814	return s
5815}
5816
5817// SetVirtualizationType sets the VirtualizationType field's value.
5818func (s *CustomAmi) SetVirtualizationType(v string) *CustomAmi {
5819	s.VirtualizationType = &v
5820	return s
5821}
5822
5823// Request to delete an application.
5824// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DeleteApplicationMessage
5825type DeleteApplicationInput struct {
5826	_ struct{} `type:"structure"`
5827
5828	// The name of the application to delete.
5829	//
5830	// ApplicationName is a required field
5831	ApplicationName *string `min:"1" type:"string" required:"true"`
5832
5833	// When set to true, running environments will be terminated before deleting
5834	// the application.
5835	TerminateEnvByForce *bool `type:"boolean"`
5836}
5837
5838// String returns the string representation
5839func (s DeleteApplicationInput) String() string {
5840	return awsutil.Prettify(s)
5841}
5842
5843// GoString returns the string representation
5844func (s DeleteApplicationInput) GoString() string {
5845	return s.String()
5846}
5847
5848// Validate inspects the fields of the type to determine if they are valid.
5849func (s *DeleteApplicationInput) Validate() error {
5850	invalidParams := request.ErrInvalidParams{Context: "DeleteApplicationInput"}
5851	if s.ApplicationName == nil {
5852		invalidParams.Add(request.NewErrParamRequired("ApplicationName"))
5853	}
5854	if s.ApplicationName != nil && len(*s.ApplicationName) < 1 {
5855		invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1))
5856	}
5857
5858	if invalidParams.Len() > 0 {
5859		return invalidParams
5860	}
5861	return nil
5862}
5863
5864// SetApplicationName sets the ApplicationName field's value.
5865func (s *DeleteApplicationInput) SetApplicationName(v string) *DeleteApplicationInput {
5866	s.ApplicationName = &v
5867	return s
5868}
5869
5870// SetTerminateEnvByForce sets the TerminateEnvByForce field's value.
5871func (s *DeleteApplicationInput) SetTerminateEnvByForce(v bool) *DeleteApplicationInput {
5872	s.TerminateEnvByForce = &v
5873	return s
5874}
5875
5876// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DeleteApplicationOutput
5877type DeleteApplicationOutput struct {
5878	_ struct{} `type:"structure"`
5879}
5880
5881// String returns the string representation
5882func (s DeleteApplicationOutput) String() string {
5883	return awsutil.Prettify(s)
5884}
5885
5886// GoString returns the string representation
5887func (s DeleteApplicationOutput) GoString() string {
5888	return s.String()
5889}
5890
5891// Request to delete an application version.
5892// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DeleteApplicationVersionMessage
5893type DeleteApplicationVersionInput struct {
5894	_ struct{} `type:"structure"`
5895
5896	// The name of the application to which the version belongs.
5897	//
5898	// ApplicationName is a required field
5899	ApplicationName *string `min:"1" type:"string" required:"true"`
5900
5901	// Set to true to delete the source bundle from your storage bucket. Otherwise,
5902	// the application version is deleted only from Elastic Beanstalk and the source
5903	// bundle remains in Amazon S3.
5904	DeleteSourceBundle *bool `type:"boolean"`
5905
5906	// The label of the version to delete.
5907	//
5908	// VersionLabel is a required field
5909	VersionLabel *string `min:"1" type:"string" required:"true"`
5910}
5911
5912// String returns the string representation
5913func (s DeleteApplicationVersionInput) String() string {
5914	return awsutil.Prettify(s)
5915}
5916
5917// GoString returns the string representation
5918func (s DeleteApplicationVersionInput) GoString() string {
5919	return s.String()
5920}
5921
5922// Validate inspects the fields of the type to determine if they are valid.
5923func (s *DeleteApplicationVersionInput) Validate() error {
5924	invalidParams := request.ErrInvalidParams{Context: "DeleteApplicationVersionInput"}
5925	if s.ApplicationName == nil {
5926		invalidParams.Add(request.NewErrParamRequired("ApplicationName"))
5927	}
5928	if s.ApplicationName != nil && len(*s.ApplicationName) < 1 {
5929		invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1))
5930	}
5931	if s.VersionLabel == nil {
5932		invalidParams.Add(request.NewErrParamRequired("VersionLabel"))
5933	}
5934	if s.VersionLabel != nil && len(*s.VersionLabel) < 1 {
5935		invalidParams.Add(request.NewErrParamMinLen("VersionLabel", 1))
5936	}
5937
5938	if invalidParams.Len() > 0 {
5939		return invalidParams
5940	}
5941	return nil
5942}
5943
5944// SetApplicationName sets the ApplicationName field's value.
5945func (s *DeleteApplicationVersionInput) SetApplicationName(v string) *DeleteApplicationVersionInput {
5946	s.ApplicationName = &v
5947	return s
5948}
5949
5950// SetDeleteSourceBundle sets the DeleteSourceBundle field's value.
5951func (s *DeleteApplicationVersionInput) SetDeleteSourceBundle(v bool) *DeleteApplicationVersionInput {
5952	s.DeleteSourceBundle = &v
5953	return s
5954}
5955
5956// SetVersionLabel sets the VersionLabel field's value.
5957func (s *DeleteApplicationVersionInput) SetVersionLabel(v string) *DeleteApplicationVersionInput {
5958	s.VersionLabel = &v
5959	return s
5960}
5961
5962// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DeleteApplicationVersionOutput
5963type DeleteApplicationVersionOutput struct {
5964	_ struct{} `type:"structure"`
5965}
5966
5967// String returns the string representation
5968func (s DeleteApplicationVersionOutput) String() string {
5969	return awsutil.Prettify(s)
5970}
5971
5972// GoString returns the string representation
5973func (s DeleteApplicationVersionOutput) GoString() string {
5974	return s.String()
5975}
5976
5977// Request to delete a configuration template.
5978// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DeleteConfigurationTemplateMessage
5979type DeleteConfigurationTemplateInput struct {
5980	_ struct{} `type:"structure"`
5981
5982	// The name of the application to delete the configuration template from.
5983	//
5984	// ApplicationName is a required field
5985	ApplicationName *string `min:"1" type:"string" required:"true"`
5986
5987	// The name of the configuration template to delete.
5988	//
5989	// TemplateName is a required field
5990	TemplateName *string `min:"1" type:"string" required:"true"`
5991}
5992
5993// String returns the string representation
5994func (s DeleteConfigurationTemplateInput) String() string {
5995	return awsutil.Prettify(s)
5996}
5997
5998// GoString returns the string representation
5999func (s DeleteConfigurationTemplateInput) GoString() string {
6000	return s.String()
6001}
6002
6003// Validate inspects the fields of the type to determine if they are valid.
6004func (s *DeleteConfigurationTemplateInput) Validate() error {
6005	invalidParams := request.ErrInvalidParams{Context: "DeleteConfigurationTemplateInput"}
6006	if s.ApplicationName == nil {
6007		invalidParams.Add(request.NewErrParamRequired("ApplicationName"))
6008	}
6009	if s.ApplicationName != nil && len(*s.ApplicationName) < 1 {
6010		invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1))
6011	}
6012	if s.TemplateName == nil {
6013		invalidParams.Add(request.NewErrParamRequired("TemplateName"))
6014	}
6015	if s.TemplateName != nil && len(*s.TemplateName) < 1 {
6016		invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1))
6017	}
6018
6019	if invalidParams.Len() > 0 {
6020		return invalidParams
6021	}
6022	return nil
6023}
6024
6025// SetApplicationName sets the ApplicationName field's value.
6026func (s *DeleteConfigurationTemplateInput) SetApplicationName(v string) *DeleteConfigurationTemplateInput {
6027	s.ApplicationName = &v
6028	return s
6029}
6030
6031// SetTemplateName sets the TemplateName field's value.
6032func (s *DeleteConfigurationTemplateInput) SetTemplateName(v string) *DeleteConfigurationTemplateInput {
6033	s.TemplateName = &v
6034	return s
6035}
6036
6037// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DeleteConfigurationTemplateOutput
6038type DeleteConfigurationTemplateOutput struct {
6039	_ struct{} `type:"structure"`
6040}
6041
6042// String returns the string representation
6043func (s DeleteConfigurationTemplateOutput) String() string {
6044	return awsutil.Prettify(s)
6045}
6046
6047// GoString returns the string representation
6048func (s DeleteConfigurationTemplateOutput) GoString() string {
6049	return s.String()
6050}
6051
6052// Request to delete a draft environment configuration.
6053// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DeleteEnvironmentConfigurationMessage
6054type DeleteEnvironmentConfigurationInput struct {
6055	_ struct{} `type:"structure"`
6056
6057	// The name of the application the environment is associated with.
6058	//
6059	// ApplicationName is a required field
6060	ApplicationName *string `min:"1" type:"string" required:"true"`
6061
6062	// The name of the environment to delete the draft configuration from.
6063	//
6064	// EnvironmentName is a required field
6065	EnvironmentName *string `min:"4" type:"string" required:"true"`
6066}
6067
6068// String returns the string representation
6069func (s DeleteEnvironmentConfigurationInput) String() string {
6070	return awsutil.Prettify(s)
6071}
6072
6073// GoString returns the string representation
6074func (s DeleteEnvironmentConfigurationInput) GoString() string {
6075	return s.String()
6076}
6077
6078// Validate inspects the fields of the type to determine if they are valid.
6079func (s *DeleteEnvironmentConfigurationInput) Validate() error {
6080	invalidParams := request.ErrInvalidParams{Context: "DeleteEnvironmentConfigurationInput"}
6081	if s.ApplicationName == nil {
6082		invalidParams.Add(request.NewErrParamRequired("ApplicationName"))
6083	}
6084	if s.ApplicationName != nil && len(*s.ApplicationName) < 1 {
6085		invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1))
6086	}
6087	if s.EnvironmentName == nil {
6088		invalidParams.Add(request.NewErrParamRequired("EnvironmentName"))
6089	}
6090	if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 {
6091		invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4))
6092	}
6093
6094	if invalidParams.Len() > 0 {
6095		return invalidParams
6096	}
6097	return nil
6098}
6099
6100// SetApplicationName sets the ApplicationName field's value.
6101func (s *DeleteEnvironmentConfigurationInput) SetApplicationName(v string) *DeleteEnvironmentConfigurationInput {
6102	s.ApplicationName = &v
6103	return s
6104}
6105
6106// SetEnvironmentName sets the EnvironmentName field's value.
6107func (s *DeleteEnvironmentConfigurationInput) SetEnvironmentName(v string) *DeleteEnvironmentConfigurationInput {
6108	s.EnvironmentName = &v
6109	return s
6110}
6111
6112// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DeleteEnvironmentConfigurationOutput
6113type DeleteEnvironmentConfigurationOutput struct {
6114	_ struct{} `type:"structure"`
6115}
6116
6117// String returns the string representation
6118func (s DeleteEnvironmentConfigurationOutput) String() string {
6119	return awsutil.Prettify(s)
6120}
6121
6122// GoString returns the string representation
6123func (s DeleteEnvironmentConfigurationOutput) GoString() string {
6124	return s.String()
6125}
6126
6127// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DeletePlatformVersionRequest
6128type DeletePlatformVersionInput struct {
6129	_ struct{} `type:"structure"`
6130
6131	// The ARN of the version of the custom platform.
6132	PlatformArn *string `type:"string"`
6133}
6134
6135// String returns the string representation
6136func (s DeletePlatformVersionInput) String() string {
6137	return awsutil.Prettify(s)
6138}
6139
6140// GoString returns the string representation
6141func (s DeletePlatformVersionInput) GoString() string {
6142	return s.String()
6143}
6144
6145// SetPlatformArn sets the PlatformArn field's value.
6146func (s *DeletePlatformVersionInput) SetPlatformArn(v string) *DeletePlatformVersionInput {
6147	s.PlatformArn = &v
6148	return s
6149}
6150
6151// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DeletePlatformVersionResult
6152type DeletePlatformVersionOutput struct {
6153	_ struct{} `type:"structure"`
6154
6155	// Detailed information about the version of the custom platform.
6156	PlatformSummary *PlatformSummary `type:"structure"`
6157}
6158
6159// String returns the string representation
6160func (s DeletePlatformVersionOutput) String() string {
6161	return awsutil.Prettify(s)
6162}
6163
6164// GoString returns the string representation
6165func (s DeletePlatformVersionOutput) GoString() string {
6166	return s.String()
6167}
6168
6169// SetPlatformSummary sets the PlatformSummary field's value.
6170func (s *DeletePlatformVersionOutput) SetPlatformSummary(v *PlatformSummary) *DeletePlatformVersionOutput {
6171	s.PlatformSummary = v
6172	return s
6173}
6174
6175// Information about an application version deployment.
6176// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/Deployment
6177type Deployment struct {
6178	_ struct{} `type:"structure"`
6179
6180	// The ID of the deployment. This number increases by one each time that you
6181	// deploy source code or change instance configuration settings.
6182	DeploymentId *int64 `type:"long"`
6183
6184	// For in-progress deployments, the time that the deployment started.
6185	//
6186	// For completed deployments, the time that the deployment ended.
6187	DeploymentTime *time.Time `type:"timestamp" timestampFormat:"iso8601"`
6188
6189	// The status of the deployment:
6190	//
6191	//    * In Progress : The deployment is in progress.
6192	//
6193	//    * Deployed : The deployment succeeded.
6194	//
6195	//    * Failed : The deployment failed.
6196	Status *string `type:"string"`
6197
6198	// The version label of the application version in the deployment.
6199	VersionLabel *string `type:"string"`
6200}
6201
6202// String returns the string representation
6203func (s Deployment) String() string {
6204	return awsutil.Prettify(s)
6205}
6206
6207// GoString returns the string representation
6208func (s Deployment) GoString() string {
6209	return s.String()
6210}
6211
6212// SetDeploymentId sets the DeploymentId field's value.
6213func (s *Deployment) SetDeploymentId(v int64) *Deployment {
6214	s.DeploymentId = &v
6215	return s
6216}
6217
6218// SetDeploymentTime sets the DeploymentTime field's value.
6219func (s *Deployment) SetDeploymentTime(v time.Time) *Deployment {
6220	s.DeploymentTime = &v
6221	return s
6222}
6223
6224// SetStatus sets the Status field's value.
6225func (s *Deployment) SetStatus(v string) *Deployment {
6226	s.Status = &v
6227	return s
6228}
6229
6230// SetVersionLabel sets the VersionLabel field's value.
6231func (s *Deployment) SetVersionLabel(v string) *Deployment {
6232	s.VersionLabel = &v
6233	return s
6234}
6235
6236// Request to describe application versions.
6237// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeApplicationVersionsMessage
6238type DescribeApplicationVersionsInput struct {
6239	_ struct{} `type:"structure"`
6240
6241	// Specify an application name to show only application versions for that application.
6242	ApplicationName *string `min:"1" type:"string"`
6243
6244	// For a paginated request. Specify a maximum number of application versions
6245	// to include in each response.
6246	//
6247	// If no MaxRecords is specified, all available application versions are retrieved
6248	// in a single response.
6249	MaxRecords *int64 `min:"1" type:"integer"`
6250
6251	// For a paginated request. Specify a token from a previous response page to
6252	// retrieve the next response page. All other parameter values must be identical
6253	// to the ones specified in the initial request.
6254	//
6255	// If no NextToken is specified, the first page is retrieved.
6256	NextToken *string `type:"string"`
6257
6258	// Specify a version label to show a specific application version.
6259	VersionLabels []*string `type:"list"`
6260}
6261
6262// String returns the string representation
6263func (s DescribeApplicationVersionsInput) String() string {
6264	return awsutil.Prettify(s)
6265}
6266
6267// GoString returns the string representation
6268func (s DescribeApplicationVersionsInput) GoString() string {
6269	return s.String()
6270}
6271
6272// Validate inspects the fields of the type to determine if they are valid.
6273func (s *DescribeApplicationVersionsInput) Validate() error {
6274	invalidParams := request.ErrInvalidParams{Context: "DescribeApplicationVersionsInput"}
6275	if s.ApplicationName != nil && len(*s.ApplicationName) < 1 {
6276		invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1))
6277	}
6278	if s.MaxRecords != nil && *s.MaxRecords < 1 {
6279		invalidParams.Add(request.NewErrParamMinValue("MaxRecords", 1))
6280	}
6281
6282	if invalidParams.Len() > 0 {
6283		return invalidParams
6284	}
6285	return nil
6286}
6287
6288// SetApplicationName sets the ApplicationName field's value.
6289func (s *DescribeApplicationVersionsInput) SetApplicationName(v string) *DescribeApplicationVersionsInput {
6290	s.ApplicationName = &v
6291	return s
6292}
6293
6294// SetMaxRecords sets the MaxRecords field's value.
6295func (s *DescribeApplicationVersionsInput) SetMaxRecords(v int64) *DescribeApplicationVersionsInput {
6296	s.MaxRecords = &v
6297	return s
6298}
6299
6300// SetNextToken sets the NextToken field's value.
6301func (s *DescribeApplicationVersionsInput) SetNextToken(v string) *DescribeApplicationVersionsInput {
6302	s.NextToken = &v
6303	return s
6304}
6305
6306// SetVersionLabels sets the VersionLabels field's value.
6307func (s *DescribeApplicationVersionsInput) SetVersionLabels(v []*string) *DescribeApplicationVersionsInput {
6308	s.VersionLabels = v
6309	return s
6310}
6311
6312// Result message wrapping a list of application version descriptions.
6313// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ApplicationVersionDescriptionsMessage
6314type DescribeApplicationVersionsOutput struct {
6315	_ struct{} `type:"structure"`
6316
6317	// List of ApplicationVersionDescription objects sorted in order of creation.
6318	ApplicationVersions []*ApplicationVersionDescription `type:"list"`
6319
6320	// In a paginated request, the token that you can pass in a subsequent request
6321	// to get the next response page.
6322	NextToken *string `type:"string"`
6323}
6324
6325// String returns the string representation
6326func (s DescribeApplicationVersionsOutput) String() string {
6327	return awsutil.Prettify(s)
6328}
6329
6330// GoString returns the string representation
6331func (s DescribeApplicationVersionsOutput) GoString() string {
6332	return s.String()
6333}
6334
6335// SetApplicationVersions sets the ApplicationVersions field's value.
6336func (s *DescribeApplicationVersionsOutput) SetApplicationVersions(v []*ApplicationVersionDescription) *DescribeApplicationVersionsOutput {
6337	s.ApplicationVersions = v
6338	return s
6339}
6340
6341// SetNextToken sets the NextToken field's value.
6342func (s *DescribeApplicationVersionsOutput) SetNextToken(v string) *DescribeApplicationVersionsOutput {
6343	s.NextToken = &v
6344	return s
6345}
6346
6347// Request to describe one or more applications.
6348// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeApplicationsMessage
6349type DescribeApplicationsInput struct {
6350	_ struct{} `type:"structure"`
6351
6352	// If specified, AWS Elastic Beanstalk restricts the returned descriptions to
6353	// only include those with the specified names.
6354	ApplicationNames []*string `type:"list"`
6355}
6356
6357// String returns the string representation
6358func (s DescribeApplicationsInput) String() string {
6359	return awsutil.Prettify(s)
6360}
6361
6362// GoString returns the string representation
6363func (s DescribeApplicationsInput) GoString() string {
6364	return s.String()
6365}
6366
6367// SetApplicationNames sets the ApplicationNames field's value.
6368func (s *DescribeApplicationsInput) SetApplicationNames(v []*string) *DescribeApplicationsInput {
6369	s.ApplicationNames = v
6370	return s
6371}
6372
6373// Result message containing a list of application descriptions.
6374// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ApplicationDescriptionsMessage
6375type DescribeApplicationsOutput struct {
6376	_ struct{} `type:"structure"`
6377
6378	// This parameter contains a list of ApplicationDescription.
6379	Applications []*ApplicationDescription `type:"list"`
6380}
6381
6382// String returns the string representation
6383func (s DescribeApplicationsOutput) String() string {
6384	return awsutil.Prettify(s)
6385}
6386
6387// GoString returns the string representation
6388func (s DescribeApplicationsOutput) GoString() string {
6389	return s.String()
6390}
6391
6392// SetApplications sets the Applications field's value.
6393func (s *DescribeApplicationsOutput) SetApplications(v []*ApplicationDescription) *DescribeApplicationsOutput {
6394	s.Applications = v
6395	return s
6396}
6397
6398// Result message containing a list of application version descriptions.
6399// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeConfigurationOptionsMessage
6400type DescribeConfigurationOptionsInput struct {
6401	_ struct{} `type:"structure"`
6402
6403	// The name of the application associated with the configuration template or
6404	// environment. Only needed if you want to describe the configuration options
6405	// associated with either the configuration template or environment.
6406	ApplicationName *string `min:"1" type:"string"`
6407
6408	// The name of the environment whose configuration options you want to describe.
6409	EnvironmentName *string `min:"4" type:"string"`
6410
6411	// If specified, restricts the descriptions to only the specified options.
6412	Options []*OptionSpecification `type:"list"`
6413
6414	// The ARN of the custom platform.
6415	PlatformArn *string `type:"string"`
6416
6417	// The name of the solution stack whose configuration options you want to describe.
6418	SolutionStackName *string `type:"string"`
6419
6420	// The name of the configuration template whose configuration options you want
6421	// to describe.
6422	TemplateName *string `min:"1" type:"string"`
6423}
6424
6425// String returns the string representation
6426func (s DescribeConfigurationOptionsInput) String() string {
6427	return awsutil.Prettify(s)
6428}
6429
6430// GoString returns the string representation
6431func (s DescribeConfigurationOptionsInput) GoString() string {
6432	return s.String()
6433}
6434
6435// Validate inspects the fields of the type to determine if they are valid.
6436func (s *DescribeConfigurationOptionsInput) Validate() error {
6437	invalidParams := request.ErrInvalidParams{Context: "DescribeConfigurationOptionsInput"}
6438	if s.ApplicationName != nil && len(*s.ApplicationName) < 1 {
6439		invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1))
6440	}
6441	if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 {
6442		invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4))
6443	}
6444	if s.TemplateName != nil && len(*s.TemplateName) < 1 {
6445		invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1))
6446	}
6447	if s.Options != nil {
6448		for i, v := range s.Options {
6449			if v == nil {
6450				continue
6451			}
6452			if err := v.Validate(); err != nil {
6453				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Options", i), err.(request.ErrInvalidParams))
6454			}
6455		}
6456	}
6457
6458	if invalidParams.Len() > 0 {
6459		return invalidParams
6460	}
6461	return nil
6462}
6463
6464// SetApplicationName sets the ApplicationName field's value.
6465func (s *DescribeConfigurationOptionsInput) SetApplicationName(v string) *DescribeConfigurationOptionsInput {
6466	s.ApplicationName = &v
6467	return s
6468}
6469
6470// SetEnvironmentName sets the EnvironmentName field's value.
6471func (s *DescribeConfigurationOptionsInput) SetEnvironmentName(v string) *DescribeConfigurationOptionsInput {
6472	s.EnvironmentName = &v
6473	return s
6474}
6475
6476// SetOptions sets the Options field's value.
6477func (s *DescribeConfigurationOptionsInput) SetOptions(v []*OptionSpecification) *DescribeConfigurationOptionsInput {
6478	s.Options = v
6479	return s
6480}
6481
6482// SetPlatformArn sets the PlatformArn field's value.
6483func (s *DescribeConfigurationOptionsInput) SetPlatformArn(v string) *DescribeConfigurationOptionsInput {
6484	s.PlatformArn = &v
6485	return s
6486}
6487
6488// SetSolutionStackName sets the SolutionStackName field's value.
6489func (s *DescribeConfigurationOptionsInput) SetSolutionStackName(v string) *DescribeConfigurationOptionsInput {
6490	s.SolutionStackName = &v
6491	return s
6492}
6493
6494// SetTemplateName sets the TemplateName field's value.
6495func (s *DescribeConfigurationOptionsInput) SetTemplateName(v string) *DescribeConfigurationOptionsInput {
6496	s.TemplateName = &v
6497	return s
6498}
6499
6500// Describes the settings for a specified configuration set.
6501// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ConfigurationOptionsDescription
6502type DescribeConfigurationOptionsOutput struct {
6503	_ struct{} `type:"structure"`
6504
6505	// A list of ConfigurationOptionDescription.
6506	Options []*ConfigurationOptionDescription `type:"list"`
6507
6508	// The ARN of the platform.
6509	PlatformArn *string `type:"string"`
6510
6511	// The name of the solution stack these configuration options belong to.
6512	SolutionStackName *string `type:"string"`
6513}
6514
6515// String returns the string representation
6516func (s DescribeConfigurationOptionsOutput) String() string {
6517	return awsutil.Prettify(s)
6518}
6519
6520// GoString returns the string representation
6521func (s DescribeConfigurationOptionsOutput) GoString() string {
6522	return s.String()
6523}
6524
6525// SetOptions sets the Options field's value.
6526func (s *DescribeConfigurationOptionsOutput) SetOptions(v []*ConfigurationOptionDescription) *DescribeConfigurationOptionsOutput {
6527	s.Options = v
6528	return s
6529}
6530
6531// SetPlatformArn sets the PlatformArn field's value.
6532func (s *DescribeConfigurationOptionsOutput) SetPlatformArn(v string) *DescribeConfigurationOptionsOutput {
6533	s.PlatformArn = &v
6534	return s
6535}
6536
6537// SetSolutionStackName sets the SolutionStackName field's value.
6538func (s *DescribeConfigurationOptionsOutput) SetSolutionStackName(v string) *DescribeConfigurationOptionsOutput {
6539	s.SolutionStackName = &v
6540	return s
6541}
6542
6543// Result message containing all of the configuration settings for a specified
6544// solution stack or configuration template.
6545// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeConfigurationSettingsMessage
6546type DescribeConfigurationSettingsInput struct {
6547	_ struct{} `type:"structure"`
6548
6549	// The application for the environment or configuration template.
6550	//
6551	// ApplicationName is a required field
6552	ApplicationName *string `min:"1" type:"string" required:"true"`
6553
6554	// The name of the environment to describe.
6555	//
6556	// Condition: You must specify either this or a TemplateName, but not both.
6557	// If you specify both, AWS Elastic Beanstalk returns an InvalidParameterCombination
6558	// error. If you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter
6559	// error.
6560	EnvironmentName *string `min:"4" type:"string"`
6561
6562	// The name of the configuration template to describe.
6563	//
6564	// Conditional: You must specify either this parameter or an EnvironmentName,
6565	// but not both. If you specify both, AWS Elastic Beanstalk returns an InvalidParameterCombination
6566	// error. If you do not specify either, AWS Elastic Beanstalk returns a MissingRequiredParameter
6567	// error.
6568	TemplateName *string `min:"1" type:"string"`
6569}
6570
6571// String returns the string representation
6572func (s DescribeConfigurationSettingsInput) String() string {
6573	return awsutil.Prettify(s)
6574}
6575
6576// GoString returns the string representation
6577func (s DescribeConfigurationSettingsInput) GoString() string {
6578	return s.String()
6579}
6580
6581// Validate inspects the fields of the type to determine if they are valid.
6582func (s *DescribeConfigurationSettingsInput) Validate() error {
6583	invalidParams := request.ErrInvalidParams{Context: "DescribeConfigurationSettingsInput"}
6584	if s.ApplicationName == nil {
6585		invalidParams.Add(request.NewErrParamRequired("ApplicationName"))
6586	}
6587	if s.ApplicationName != nil && len(*s.ApplicationName) < 1 {
6588		invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1))
6589	}
6590	if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 {
6591		invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4))
6592	}
6593	if s.TemplateName != nil && len(*s.TemplateName) < 1 {
6594		invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1))
6595	}
6596
6597	if invalidParams.Len() > 0 {
6598		return invalidParams
6599	}
6600	return nil
6601}
6602
6603// SetApplicationName sets the ApplicationName field's value.
6604func (s *DescribeConfigurationSettingsInput) SetApplicationName(v string) *DescribeConfigurationSettingsInput {
6605	s.ApplicationName = &v
6606	return s
6607}
6608
6609// SetEnvironmentName sets the EnvironmentName field's value.
6610func (s *DescribeConfigurationSettingsInput) SetEnvironmentName(v string) *DescribeConfigurationSettingsInput {
6611	s.EnvironmentName = &v
6612	return s
6613}
6614
6615// SetTemplateName sets the TemplateName field's value.
6616func (s *DescribeConfigurationSettingsInput) SetTemplateName(v string) *DescribeConfigurationSettingsInput {
6617	s.TemplateName = &v
6618	return s
6619}
6620
6621// The results from a request to change the configuration settings of an environment.
6622// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ConfigurationSettingsDescriptions
6623type DescribeConfigurationSettingsOutput struct {
6624	_ struct{} `type:"structure"`
6625
6626	// A list of ConfigurationSettingsDescription.
6627	ConfigurationSettings []*ConfigurationSettingsDescription `type:"list"`
6628}
6629
6630// String returns the string representation
6631func (s DescribeConfigurationSettingsOutput) String() string {
6632	return awsutil.Prettify(s)
6633}
6634
6635// GoString returns the string representation
6636func (s DescribeConfigurationSettingsOutput) GoString() string {
6637	return s.String()
6638}
6639
6640// SetConfigurationSettings sets the ConfigurationSettings field's value.
6641func (s *DescribeConfigurationSettingsOutput) SetConfigurationSettings(v []*ConfigurationSettingsDescription) *DescribeConfigurationSettingsOutput {
6642	s.ConfigurationSettings = v
6643	return s
6644}
6645
6646// See the example below to learn how to create a request body.
6647// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeEnvironmentHealthRequest
6648type DescribeEnvironmentHealthInput struct {
6649	_ struct{} `type:"structure"`
6650
6651	// Specify the response elements to return. To retrieve all attributes, set
6652	// to All. If no attribute names are specified, returns the name of the environment.
6653	AttributeNames []*string `type:"list"`
6654
6655	// Specify the environment by ID.
6656	//
6657	// You must specify either this or an EnvironmentName, or both.
6658	EnvironmentId *string `type:"string"`
6659
6660	// Specify the environment by name.
6661	//
6662	// You must specify either this or an EnvironmentName, or both.
6663	EnvironmentName *string `min:"4" type:"string"`
6664}
6665
6666// String returns the string representation
6667func (s DescribeEnvironmentHealthInput) String() string {
6668	return awsutil.Prettify(s)
6669}
6670
6671// GoString returns the string representation
6672func (s DescribeEnvironmentHealthInput) GoString() string {
6673	return s.String()
6674}
6675
6676// Validate inspects the fields of the type to determine if they are valid.
6677func (s *DescribeEnvironmentHealthInput) Validate() error {
6678	invalidParams := request.ErrInvalidParams{Context: "DescribeEnvironmentHealthInput"}
6679	if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 {
6680		invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4))
6681	}
6682
6683	if invalidParams.Len() > 0 {
6684		return invalidParams
6685	}
6686	return nil
6687}
6688
6689// SetAttributeNames sets the AttributeNames field's value.
6690func (s *DescribeEnvironmentHealthInput) SetAttributeNames(v []*string) *DescribeEnvironmentHealthInput {
6691	s.AttributeNames = v
6692	return s
6693}
6694
6695// SetEnvironmentId sets the EnvironmentId field's value.
6696func (s *DescribeEnvironmentHealthInput) SetEnvironmentId(v string) *DescribeEnvironmentHealthInput {
6697	s.EnvironmentId = &v
6698	return s
6699}
6700
6701// SetEnvironmentName sets the EnvironmentName field's value.
6702func (s *DescribeEnvironmentHealthInput) SetEnvironmentName(v string) *DescribeEnvironmentHealthInput {
6703	s.EnvironmentName = &v
6704	return s
6705}
6706
6707// Health details for an AWS Elastic Beanstalk environment.
6708// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeEnvironmentHealthResult
6709type DescribeEnvironmentHealthOutput struct {
6710	_ struct{} `type:"structure"`
6711
6712	// Application request metrics for the environment.
6713	ApplicationMetrics *ApplicationMetrics `type:"structure"`
6714
6715	// Descriptions of the data that contributed to the environment's current health
6716	// status.
6717	Causes []*string `type:"list"`
6718
6719	// The health color (http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/health-enhanced-status.html)
6720	// of the environment.
6721	Color *string `type:"string"`
6722
6723	// The environment's name.
6724	EnvironmentName *string `min:"4" type:"string"`
6725
6726	// The health status (http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/health-enhanced-status.html)
6727	// of the environment. For example, Ok.
6728	HealthStatus *string `type:"string"`
6729
6730	// Summary health information for the instances in the environment.
6731	InstancesHealth *InstanceHealthSummary `type:"structure"`
6732
6733	// The date and time that the health information was retrieved.
6734	RefreshedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"`
6735
6736	// The environment's operational status. Ready, Launching, Updating, Terminating,
6737	// or Terminated.
6738	Status *string `type:"string" enum:"EnvironmentHealth"`
6739}
6740
6741// String returns the string representation
6742func (s DescribeEnvironmentHealthOutput) String() string {
6743	return awsutil.Prettify(s)
6744}
6745
6746// GoString returns the string representation
6747func (s DescribeEnvironmentHealthOutput) GoString() string {
6748	return s.String()
6749}
6750
6751// SetApplicationMetrics sets the ApplicationMetrics field's value.
6752func (s *DescribeEnvironmentHealthOutput) SetApplicationMetrics(v *ApplicationMetrics) *DescribeEnvironmentHealthOutput {
6753	s.ApplicationMetrics = v
6754	return s
6755}
6756
6757// SetCauses sets the Causes field's value.
6758func (s *DescribeEnvironmentHealthOutput) SetCauses(v []*string) *DescribeEnvironmentHealthOutput {
6759	s.Causes = v
6760	return s
6761}
6762
6763// SetColor sets the Color field's value.
6764func (s *DescribeEnvironmentHealthOutput) SetColor(v string) *DescribeEnvironmentHealthOutput {
6765	s.Color = &v
6766	return s
6767}
6768
6769// SetEnvironmentName sets the EnvironmentName field's value.
6770func (s *DescribeEnvironmentHealthOutput) SetEnvironmentName(v string) *DescribeEnvironmentHealthOutput {
6771	s.EnvironmentName = &v
6772	return s
6773}
6774
6775// SetHealthStatus sets the HealthStatus field's value.
6776func (s *DescribeEnvironmentHealthOutput) SetHealthStatus(v string) *DescribeEnvironmentHealthOutput {
6777	s.HealthStatus = &v
6778	return s
6779}
6780
6781// SetInstancesHealth sets the InstancesHealth field's value.
6782func (s *DescribeEnvironmentHealthOutput) SetInstancesHealth(v *InstanceHealthSummary) *DescribeEnvironmentHealthOutput {
6783	s.InstancesHealth = v
6784	return s
6785}
6786
6787// SetRefreshedAt sets the RefreshedAt field's value.
6788func (s *DescribeEnvironmentHealthOutput) SetRefreshedAt(v time.Time) *DescribeEnvironmentHealthOutput {
6789	s.RefreshedAt = &v
6790	return s
6791}
6792
6793// SetStatus sets the Status field's value.
6794func (s *DescribeEnvironmentHealthOutput) SetStatus(v string) *DescribeEnvironmentHealthOutput {
6795	s.Status = &v
6796	return s
6797}
6798
6799// Request to list completed and failed managed actions.
6800// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeEnvironmentManagedActionHistoryRequest
6801type DescribeEnvironmentManagedActionHistoryInput struct {
6802	_ struct{} `type:"structure"`
6803
6804	// The environment ID of the target environment.
6805	EnvironmentId *string `type:"string"`
6806
6807	// The name of the target environment.
6808	EnvironmentName *string `min:"4" type:"string"`
6809
6810	// The maximum number of items to return for a single request.
6811	MaxItems *int64 `type:"integer"`
6812
6813	// The pagination token returned by a previous request.
6814	NextToken *string `type:"string"`
6815}
6816
6817// String returns the string representation
6818func (s DescribeEnvironmentManagedActionHistoryInput) String() string {
6819	return awsutil.Prettify(s)
6820}
6821
6822// GoString returns the string representation
6823func (s DescribeEnvironmentManagedActionHistoryInput) GoString() string {
6824	return s.String()
6825}
6826
6827// Validate inspects the fields of the type to determine if they are valid.
6828func (s *DescribeEnvironmentManagedActionHistoryInput) Validate() error {
6829	invalidParams := request.ErrInvalidParams{Context: "DescribeEnvironmentManagedActionHistoryInput"}
6830	if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 {
6831		invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4))
6832	}
6833
6834	if invalidParams.Len() > 0 {
6835		return invalidParams
6836	}
6837	return nil
6838}
6839
6840// SetEnvironmentId sets the EnvironmentId field's value.
6841func (s *DescribeEnvironmentManagedActionHistoryInput) SetEnvironmentId(v string) *DescribeEnvironmentManagedActionHistoryInput {
6842	s.EnvironmentId = &v
6843	return s
6844}
6845
6846// SetEnvironmentName sets the EnvironmentName field's value.
6847func (s *DescribeEnvironmentManagedActionHistoryInput) SetEnvironmentName(v string) *DescribeEnvironmentManagedActionHistoryInput {
6848	s.EnvironmentName = &v
6849	return s
6850}
6851
6852// SetMaxItems sets the MaxItems field's value.
6853func (s *DescribeEnvironmentManagedActionHistoryInput) SetMaxItems(v int64) *DescribeEnvironmentManagedActionHistoryInput {
6854	s.MaxItems = &v
6855	return s
6856}
6857
6858// SetNextToken sets the NextToken field's value.
6859func (s *DescribeEnvironmentManagedActionHistoryInput) SetNextToken(v string) *DescribeEnvironmentManagedActionHistoryInput {
6860	s.NextToken = &v
6861	return s
6862}
6863
6864// A result message containing a list of completed and failed managed actions.
6865// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeEnvironmentManagedActionHistoryResult
6866type DescribeEnvironmentManagedActionHistoryOutput struct {
6867	_ struct{} `type:"structure"`
6868
6869	// A list of completed and failed managed actions.
6870	ManagedActionHistoryItems []*ManagedActionHistoryItem `min:"1" type:"list"`
6871
6872	// A pagination token that you pass to DescribeEnvironmentManagedActionHistory
6873	// to get the next page of results.
6874	NextToken *string `type:"string"`
6875}
6876
6877// String returns the string representation
6878func (s DescribeEnvironmentManagedActionHistoryOutput) String() string {
6879	return awsutil.Prettify(s)
6880}
6881
6882// GoString returns the string representation
6883func (s DescribeEnvironmentManagedActionHistoryOutput) GoString() string {
6884	return s.String()
6885}
6886
6887// SetManagedActionHistoryItems sets the ManagedActionHistoryItems field's value.
6888func (s *DescribeEnvironmentManagedActionHistoryOutput) SetManagedActionHistoryItems(v []*ManagedActionHistoryItem) *DescribeEnvironmentManagedActionHistoryOutput {
6889	s.ManagedActionHistoryItems = v
6890	return s
6891}
6892
6893// SetNextToken sets the NextToken field's value.
6894func (s *DescribeEnvironmentManagedActionHistoryOutput) SetNextToken(v string) *DescribeEnvironmentManagedActionHistoryOutput {
6895	s.NextToken = &v
6896	return s
6897}
6898
6899// Request to list an environment's upcoming and in-progress managed actions.
6900// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeEnvironmentManagedActionsRequest
6901type DescribeEnvironmentManagedActionsInput struct {
6902	_ struct{} `type:"structure"`
6903
6904	// The environment ID of the target environment.
6905	EnvironmentId *string `type:"string"`
6906
6907	// The name of the target environment.
6908	EnvironmentName *string `type:"string"`
6909
6910	// To show only actions with a particular status, specify a status.
6911	Status *string `type:"string" enum:"ActionStatus"`
6912}
6913
6914// String returns the string representation
6915func (s DescribeEnvironmentManagedActionsInput) String() string {
6916	return awsutil.Prettify(s)
6917}
6918
6919// GoString returns the string representation
6920func (s DescribeEnvironmentManagedActionsInput) GoString() string {
6921	return s.String()
6922}
6923
6924// SetEnvironmentId sets the EnvironmentId field's value.
6925func (s *DescribeEnvironmentManagedActionsInput) SetEnvironmentId(v string) *DescribeEnvironmentManagedActionsInput {
6926	s.EnvironmentId = &v
6927	return s
6928}
6929
6930// SetEnvironmentName sets the EnvironmentName field's value.
6931func (s *DescribeEnvironmentManagedActionsInput) SetEnvironmentName(v string) *DescribeEnvironmentManagedActionsInput {
6932	s.EnvironmentName = &v
6933	return s
6934}
6935
6936// SetStatus sets the Status field's value.
6937func (s *DescribeEnvironmentManagedActionsInput) SetStatus(v string) *DescribeEnvironmentManagedActionsInput {
6938	s.Status = &v
6939	return s
6940}
6941
6942// The result message containing a list of managed actions.
6943// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeEnvironmentManagedActionsResult
6944type DescribeEnvironmentManagedActionsOutput struct {
6945	_ struct{} `type:"structure"`
6946
6947	// A list of upcoming and in-progress managed actions.
6948	ManagedActions []*ManagedAction `min:"1" type:"list"`
6949}
6950
6951// String returns the string representation
6952func (s DescribeEnvironmentManagedActionsOutput) String() string {
6953	return awsutil.Prettify(s)
6954}
6955
6956// GoString returns the string representation
6957func (s DescribeEnvironmentManagedActionsOutput) GoString() string {
6958	return s.String()
6959}
6960
6961// SetManagedActions sets the ManagedActions field's value.
6962func (s *DescribeEnvironmentManagedActionsOutput) SetManagedActions(v []*ManagedAction) *DescribeEnvironmentManagedActionsOutput {
6963	s.ManagedActions = v
6964	return s
6965}
6966
6967// Request to describe the resources in an environment.
6968// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeEnvironmentResourcesMessage
6969type DescribeEnvironmentResourcesInput struct {
6970	_ struct{} `type:"structure"`
6971
6972	// The ID of the environment to retrieve AWS resource usage data.
6973	//
6974	// Condition: You must specify either this or an EnvironmentName, or both. If
6975	// you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter
6976	// error.
6977	EnvironmentId *string `type:"string"`
6978
6979	// The name of the environment to retrieve AWS resource usage data.
6980	//
6981	// Condition: You must specify either this or an EnvironmentId, or both. If
6982	// you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter
6983	// error.
6984	EnvironmentName *string `min:"4" type:"string"`
6985}
6986
6987// String returns the string representation
6988func (s DescribeEnvironmentResourcesInput) String() string {
6989	return awsutil.Prettify(s)
6990}
6991
6992// GoString returns the string representation
6993func (s DescribeEnvironmentResourcesInput) GoString() string {
6994	return s.String()
6995}
6996
6997// Validate inspects the fields of the type to determine if they are valid.
6998func (s *DescribeEnvironmentResourcesInput) Validate() error {
6999	invalidParams := request.ErrInvalidParams{Context: "DescribeEnvironmentResourcesInput"}
7000	if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 {
7001		invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4))
7002	}
7003
7004	if invalidParams.Len() > 0 {
7005		return invalidParams
7006	}
7007	return nil
7008}
7009
7010// SetEnvironmentId sets the EnvironmentId field's value.
7011func (s *DescribeEnvironmentResourcesInput) SetEnvironmentId(v string) *DescribeEnvironmentResourcesInput {
7012	s.EnvironmentId = &v
7013	return s
7014}
7015
7016// SetEnvironmentName sets the EnvironmentName field's value.
7017func (s *DescribeEnvironmentResourcesInput) SetEnvironmentName(v string) *DescribeEnvironmentResourcesInput {
7018	s.EnvironmentName = &v
7019	return s
7020}
7021
7022// Result message containing a list of environment resource descriptions.
7023// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/EnvironmentResourceDescriptionsMessage
7024type DescribeEnvironmentResourcesOutput struct {
7025	_ struct{} `type:"structure"`
7026
7027	// A list of EnvironmentResourceDescription.
7028	EnvironmentResources *EnvironmentResourceDescription `type:"structure"`
7029}
7030
7031// String returns the string representation
7032func (s DescribeEnvironmentResourcesOutput) String() string {
7033	return awsutil.Prettify(s)
7034}
7035
7036// GoString returns the string representation
7037func (s DescribeEnvironmentResourcesOutput) GoString() string {
7038	return s.String()
7039}
7040
7041// SetEnvironmentResources sets the EnvironmentResources field's value.
7042func (s *DescribeEnvironmentResourcesOutput) SetEnvironmentResources(v *EnvironmentResourceDescription) *DescribeEnvironmentResourcesOutput {
7043	s.EnvironmentResources = v
7044	return s
7045}
7046
7047// Request to describe one or more environments.
7048// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeEnvironmentsMessage
7049type DescribeEnvironmentsInput struct {
7050	_ struct{} `type:"structure"`
7051
7052	// If specified, AWS Elastic Beanstalk restricts the returned descriptions to
7053	// include only those that are associated with this application.
7054	ApplicationName *string `min:"1" type:"string"`
7055
7056	// If specified, AWS Elastic Beanstalk restricts the returned descriptions to
7057	// include only those that have the specified IDs.
7058	EnvironmentIds []*string `type:"list"`
7059
7060	// If specified, AWS Elastic Beanstalk restricts the returned descriptions to
7061	// include only those that have the specified names.
7062	EnvironmentNames []*string `type:"list"`
7063
7064	// Indicates whether to include deleted environments:
7065	//
7066	// true: Environments that have been deleted after IncludedDeletedBackTo are
7067	// displayed.
7068	//
7069	// false: Do not include deleted environments.
7070	IncludeDeleted *bool `type:"boolean"`
7071
7072	// If specified when IncludeDeleted is set to true, then environments deleted
7073	// after this date are displayed.
7074	IncludedDeletedBackTo *time.Time `type:"timestamp" timestampFormat:"iso8601"`
7075
7076	// For a paginated request. Specify a maximum number of environments to include
7077	// in each response.
7078	//
7079	// If no MaxRecords is specified, all available environments are retrieved in
7080	// a single response.
7081	MaxRecords *int64 `min:"1" type:"integer"`
7082
7083	// For a paginated request. Specify a token from a previous response page to
7084	// retrieve the next response page. All other parameter values must be identical
7085	// to the ones specified in the initial request.
7086	//
7087	// If no NextToken is specified, the first page is retrieved.
7088	NextToken *string `type:"string"`
7089
7090	// If specified, AWS Elastic Beanstalk restricts the returned descriptions to
7091	// include only those that are associated with this application version.
7092	VersionLabel *string `min:"1" type:"string"`
7093}
7094
7095// String returns the string representation
7096func (s DescribeEnvironmentsInput) String() string {
7097	return awsutil.Prettify(s)
7098}
7099
7100// GoString returns the string representation
7101func (s DescribeEnvironmentsInput) GoString() string {
7102	return s.String()
7103}
7104
7105// Validate inspects the fields of the type to determine if they are valid.
7106func (s *DescribeEnvironmentsInput) Validate() error {
7107	invalidParams := request.ErrInvalidParams{Context: "DescribeEnvironmentsInput"}
7108	if s.ApplicationName != nil && len(*s.ApplicationName) < 1 {
7109		invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1))
7110	}
7111	if s.MaxRecords != nil && *s.MaxRecords < 1 {
7112		invalidParams.Add(request.NewErrParamMinValue("MaxRecords", 1))
7113	}
7114	if s.VersionLabel != nil && len(*s.VersionLabel) < 1 {
7115		invalidParams.Add(request.NewErrParamMinLen("VersionLabel", 1))
7116	}
7117
7118	if invalidParams.Len() > 0 {
7119		return invalidParams
7120	}
7121	return nil
7122}
7123
7124// SetApplicationName sets the ApplicationName field's value.
7125func (s *DescribeEnvironmentsInput) SetApplicationName(v string) *DescribeEnvironmentsInput {
7126	s.ApplicationName = &v
7127	return s
7128}
7129
7130// SetEnvironmentIds sets the EnvironmentIds field's value.
7131func (s *DescribeEnvironmentsInput) SetEnvironmentIds(v []*string) *DescribeEnvironmentsInput {
7132	s.EnvironmentIds = v
7133	return s
7134}
7135
7136// SetEnvironmentNames sets the EnvironmentNames field's value.
7137func (s *DescribeEnvironmentsInput) SetEnvironmentNames(v []*string) *DescribeEnvironmentsInput {
7138	s.EnvironmentNames = v
7139	return s
7140}
7141
7142// SetIncludeDeleted sets the IncludeDeleted field's value.
7143func (s *DescribeEnvironmentsInput) SetIncludeDeleted(v bool) *DescribeEnvironmentsInput {
7144	s.IncludeDeleted = &v
7145	return s
7146}
7147
7148// SetIncludedDeletedBackTo sets the IncludedDeletedBackTo field's value.
7149func (s *DescribeEnvironmentsInput) SetIncludedDeletedBackTo(v time.Time) *DescribeEnvironmentsInput {
7150	s.IncludedDeletedBackTo = &v
7151	return s
7152}
7153
7154// SetMaxRecords sets the MaxRecords field's value.
7155func (s *DescribeEnvironmentsInput) SetMaxRecords(v int64) *DescribeEnvironmentsInput {
7156	s.MaxRecords = &v
7157	return s
7158}
7159
7160// SetNextToken sets the NextToken field's value.
7161func (s *DescribeEnvironmentsInput) SetNextToken(v string) *DescribeEnvironmentsInput {
7162	s.NextToken = &v
7163	return s
7164}
7165
7166// SetVersionLabel sets the VersionLabel field's value.
7167func (s *DescribeEnvironmentsInput) SetVersionLabel(v string) *DescribeEnvironmentsInput {
7168	s.VersionLabel = &v
7169	return s
7170}
7171
7172// Request to retrieve a list of events for an environment.
7173// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeEventsMessage
7174type DescribeEventsInput struct {
7175	_ struct{} `type:"structure"`
7176
7177	// If specified, AWS Elastic Beanstalk restricts the returned descriptions to
7178	// include only those associated with this application.
7179	ApplicationName *string `min:"1" type:"string"`
7180
7181	// If specified, AWS Elastic Beanstalk restricts the returned descriptions to
7182	// those that occur up to, but not including, the EndTime.
7183	EndTime *time.Time `type:"timestamp" timestampFormat:"iso8601"`
7184
7185	// If specified, AWS Elastic Beanstalk restricts the returned descriptions to
7186	// those associated with this environment.
7187	EnvironmentId *string `type:"string"`
7188
7189	// If specified, AWS Elastic Beanstalk restricts the returned descriptions to
7190	// those associated with this environment.
7191	EnvironmentName *string `min:"4" type:"string"`
7192
7193	// Specifies the maximum number of events that can be returned, beginning with
7194	// the most recent event.
7195	MaxRecords *int64 `min:"1" type:"integer"`
7196
7197	// Pagination token. If specified, the events return the next batch of results.
7198	NextToken *string `type:"string"`
7199
7200	// The ARN of the version of the custom platform.
7201	PlatformArn *string `type:"string"`
7202
7203	// If specified, AWS Elastic Beanstalk restricts the described events to include
7204	// only those associated with this request ID.
7205	RequestId *string `type:"string"`
7206
7207	// If specified, limits the events returned from this call to include only those
7208	// with the specified severity or higher.
7209	Severity *string `type:"string" enum:"EventSeverity"`
7210
7211	// If specified, AWS Elastic Beanstalk restricts the returned descriptions to
7212	// those that occur on or after this time.
7213	StartTime *time.Time `type:"timestamp" timestampFormat:"iso8601"`
7214
7215	// If specified, AWS Elastic Beanstalk restricts the returned descriptions to
7216	// those that are associated with this environment configuration.
7217	TemplateName *string `min:"1" type:"string"`
7218
7219	// If specified, AWS Elastic Beanstalk restricts the returned descriptions to
7220	// those associated with this application version.
7221	VersionLabel *string `min:"1" type:"string"`
7222}
7223
7224// String returns the string representation
7225func (s DescribeEventsInput) String() string {
7226	return awsutil.Prettify(s)
7227}
7228
7229// GoString returns the string representation
7230func (s DescribeEventsInput) GoString() string {
7231	return s.String()
7232}
7233
7234// Validate inspects the fields of the type to determine if they are valid.
7235func (s *DescribeEventsInput) Validate() error {
7236	invalidParams := request.ErrInvalidParams{Context: "DescribeEventsInput"}
7237	if s.ApplicationName != nil && len(*s.ApplicationName) < 1 {
7238		invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1))
7239	}
7240	if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 {
7241		invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4))
7242	}
7243	if s.MaxRecords != nil && *s.MaxRecords < 1 {
7244		invalidParams.Add(request.NewErrParamMinValue("MaxRecords", 1))
7245	}
7246	if s.TemplateName != nil && len(*s.TemplateName) < 1 {
7247		invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1))
7248	}
7249	if s.VersionLabel != nil && len(*s.VersionLabel) < 1 {
7250		invalidParams.Add(request.NewErrParamMinLen("VersionLabel", 1))
7251	}
7252
7253	if invalidParams.Len() > 0 {
7254		return invalidParams
7255	}
7256	return nil
7257}
7258
7259// SetApplicationName sets the ApplicationName field's value.
7260func (s *DescribeEventsInput) SetApplicationName(v string) *DescribeEventsInput {
7261	s.ApplicationName = &v
7262	return s
7263}
7264
7265// SetEndTime sets the EndTime field's value.
7266func (s *DescribeEventsInput) SetEndTime(v time.Time) *DescribeEventsInput {
7267	s.EndTime = &v
7268	return s
7269}
7270
7271// SetEnvironmentId sets the EnvironmentId field's value.
7272func (s *DescribeEventsInput) SetEnvironmentId(v string) *DescribeEventsInput {
7273	s.EnvironmentId = &v
7274	return s
7275}
7276
7277// SetEnvironmentName sets the EnvironmentName field's value.
7278func (s *DescribeEventsInput) SetEnvironmentName(v string) *DescribeEventsInput {
7279	s.EnvironmentName = &v
7280	return s
7281}
7282
7283// SetMaxRecords sets the MaxRecords field's value.
7284func (s *DescribeEventsInput) SetMaxRecords(v int64) *DescribeEventsInput {
7285	s.MaxRecords = &v
7286	return s
7287}
7288
7289// SetNextToken sets the NextToken field's value.
7290func (s *DescribeEventsInput) SetNextToken(v string) *DescribeEventsInput {
7291	s.NextToken = &v
7292	return s
7293}
7294
7295// SetPlatformArn sets the PlatformArn field's value.
7296func (s *DescribeEventsInput) SetPlatformArn(v string) *DescribeEventsInput {
7297	s.PlatformArn = &v
7298	return s
7299}
7300
7301// SetRequestId sets the RequestId field's value.
7302func (s *DescribeEventsInput) SetRequestId(v string) *DescribeEventsInput {
7303	s.RequestId = &v
7304	return s
7305}
7306
7307// SetSeverity sets the Severity field's value.
7308func (s *DescribeEventsInput) SetSeverity(v string) *DescribeEventsInput {
7309	s.Severity = &v
7310	return s
7311}
7312
7313// SetStartTime sets the StartTime field's value.
7314func (s *DescribeEventsInput) SetStartTime(v time.Time) *DescribeEventsInput {
7315	s.StartTime = &v
7316	return s
7317}
7318
7319// SetTemplateName sets the TemplateName field's value.
7320func (s *DescribeEventsInput) SetTemplateName(v string) *DescribeEventsInput {
7321	s.TemplateName = &v
7322	return s
7323}
7324
7325// SetVersionLabel sets the VersionLabel field's value.
7326func (s *DescribeEventsInput) SetVersionLabel(v string) *DescribeEventsInput {
7327	s.VersionLabel = &v
7328	return s
7329}
7330
7331// Result message wrapping a list of event descriptions.
7332// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/EventDescriptionsMessage
7333type DescribeEventsOutput struct {
7334	_ struct{} `type:"structure"`
7335
7336	// A list of EventDescription.
7337	Events []*EventDescription `type:"list"`
7338
7339	// If returned, this indicates that there are more results to obtain. Use this
7340	// token in the next DescribeEvents call to get the next batch of events.
7341	NextToken *string `type:"string"`
7342}
7343
7344// String returns the string representation
7345func (s DescribeEventsOutput) String() string {
7346	return awsutil.Prettify(s)
7347}
7348
7349// GoString returns the string representation
7350func (s DescribeEventsOutput) GoString() string {
7351	return s.String()
7352}
7353
7354// SetEvents sets the Events field's value.
7355func (s *DescribeEventsOutput) SetEvents(v []*EventDescription) *DescribeEventsOutput {
7356	s.Events = v
7357	return s
7358}
7359
7360// SetNextToken sets the NextToken field's value.
7361func (s *DescribeEventsOutput) SetNextToken(v string) *DescribeEventsOutput {
7362	s.NextToken = &v
7363	return s
7364}
7365
7366// Parameters for a call to DescribeInstancesHealth.
7367// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeInstancesHealthRequest
7368type DescribeInstancesHealthInput struct {
7369	_ struct{} `type:"structure"`
7370
7371	// Specifies the response elements you wish to receive. To retrieve all attributes,
7372	// set to All. If no attribute names are specified, returns a list of instances.
7373	AttributeNames []*string `type:"list"`
7374
7375	// Specify the AWS Elastic Beanstalk environment by ID.
7376	EnvironmentId *string `type:"string"`
7377
7378	// Specify the AWS Elastic Beanstalk environment by name.
7379	EnvironmentName *string `min:"4" type:"string"`
7380
7381	// Specify the pagination token returned by a previous call.
7382	NextToken *string `min:"1" type:"string"`
7383}
7384
7385// String returns the string representation
7386func (s DescribeInstancesHealthInput) String() string {
7387	return awsutil.Prettify(s)
7388}
7389
7390// GoString returns the string representation
7391func (s DescribeInstancesHealthInput) GoString() string {
7392	return s.String()
7393}
7394
7395// Validate inspects the fields of the type to determine if they are valid.
7396func (s *DescribeInstancesHealthInput) Validate() error {
7397	invalidParams := request.ErrInvalidParams{Context: "DescribeInstancesHealthInput"}
7398	if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 {
7399		invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4))
7400	}
7401	if s.NextToken != nil && len(*s.NextToken) < 1 {
7402		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
7403	}
7404
7405	if invalidParams.Len() > 0 {
7406		return invalidParams
7407	}
7408	return nil
7409}
7410
7411// SetAttributeNames sets the AttributeNames field's value.
7412func (s *DescribeInstancesHealthInput) SetAttributeNames(v []*string) *DescribeInstancesHealthInput {
7413	s.AttributeNames = v
7414	return s
7415}
7416
7417// SetEnvironmentId sets the EnvironmentId field's value.
7418func (s *DescribeInstancesHealthInput) SetEnvironmentId(v string) *DescribeInstancesHealthInput {
7419	s.EnvironmentId = &v
7420	return s
7421}
7422
7423// SetEnvironmentName sets the EnvironmentName field's value.
7424func (s *DescribeInstancesHealthInput) SetEnvironmentName(v string) *DescribeInstancesHealthInput {
7425	s.EnvironmentName = &v
7426	return s
7427}
7428
7429// SetNextToken sets the NextToken field's value.
7430func (s *DescribeInstancesHealthInput) SetNextToken(v string) *DescribeInstancesHealthInput {
7431	s.NextToken = &v
7432	return s
7433}
7434
7435// Detailed health information about the Amazon EC2 instances in an AWS Elastic
7436// Beanstalk environment.
7437// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribeInstancesHealthResult
7438type DescribeInstancesHealthOutput struct {
7439	_ struct{} `type:"structure"`
7440
7441	// Detailed health information about each instance.
7442	InstanceHealthList []*SingleInstanceHealth `type:"list"`
7443
7444	// Pagination token for the next page of results, if available.
7445	NextToken *string `min:"1" type:"string"`
7446
7447	// The date and time that the health information was retrieved.
7448	RefreshedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"`
7449}
7450
7451// String returns the string representation
7452func (s DescribeInstancesHealthOutput) String() string {
7453	return awsutil.Prettify(s)
7454}
7455
7456// GoString returns the string representation
7457func (s DescribeInstancesHealthOutput) GoString() string {
7458	return s.String()
7459}
7460
7461// SetInstanceHealthList sets the InstanceHealthList field's value.
7462func (s *DescribeInstancesHealthOutput) SetInstanceHealthList(v []*SingleInstanceHealth) *DescribeInstancesHealthOutput {
7463	s.InstanceHealthList = v
7464	return s
7465}
7466
7467// SetNextToken sets the NextToken field's value.
7468func (s *DescribeInstancesHealthOutput) SetNextToken(v string) *DescribeInstancesHealthOutput {
7469	s.NextToken = &v
7470	return s
7471}
7472
7473// SetRefreshedAt sets the RefreshedAt field's value.
7474func (s *DescribeInstancesHealthOutput) SetRefreshedAt(v time.Time) *DescribeInstancesHealthOutput {
7475	s.RefreshedAt = &v
7476	return s
7477}
7478
7479// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribePlatformVersionRequest
7480type DescribePlatformVersionInput struct {
7481	_ struct{} `type:"structure"`
7482
7483	// The ARN of the version of the platform.
7484	PlatformArn *string `type:"string"`
7485}
7486
7487// String returns the string representation
7488func (s DescribePlatformVersionInput) String() string {
7489	return awsutil.Prettify(s)
7490}
7491
7492// GoString returns the string representation
7493func (s DescribePlatformVersionInput) GoString() string {
7494	return s.String()
7495}
7496
7497// SetPlatformArn sets the PlatformArn field's value.
7498func (s *DescribePlatformVersionInput) SetPlatformArn(v string) *DescribePlatformVersionInput {
7499	s.PlatformArn = &v
7500	return s
7501}
7502
7503// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/DescribePlatformVersionResult
7504type DescribePlatformVersionOutput struct {
7505	_ struct{} `type:"structure"`
7506
7507	// Detailed information about the version of the platform.
7508	PlatformDescription *PlatformDescription `type:"structure"`
7509}
7510
7511// String returns the string representation
7512func (s DescribePlatformVersionOutput) String() string {
7513	return awsutil.Prettify(s)
7514}
7515
7516// GoString returns the string representation
7517func (s DescribePlatformVersionOutput) GoString() string {
7518	return s.String()
7519}
7520
7521// SetPlatformDescription sets the PlatformDescription field's value.
7522func (s *DescribePlatformVersionOutput) SetPlatformDescription(v *PlatformDescription) *DescribePlatformVersionOutput {
7523	s.PlatformDescription = v
7524	return s
7525}
7526
7527// Describes the properties of an environment.
7528// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/EnvironmentDescription
7529type EnvironmentDescription struct {
7530	_ struct{} `type:"structure"`
7531
7532	// Indicates if there is an in-progress environment configuration update or
7533	// application version deployment that you can cancel.
7534	//
7535	// true: There is an update in progress.
7536	//
7537	// false: There are no updates currently in progress.
7538	AbortableOperationInProgress *bool `type:"boolean"`
7539
7540	// The name of the application associated with this environment.
7541	ApplicationName *string `min:"1" type:"string"`
7542
7543	// The URL to the CNAME for this environment.
7544	CNAME *string `min:"1" type:"string"`
7545
7546	// The creation date for this environment.
7547	DateCreated *time.Time `type:"timestamp" timestampFormat:"iso8601"`
7548
7549	// The last modified date for this environment.
7550	DateUpdated *time.Time `type:"timestamp" timestampFormat:"iso8601"`
7551
7552	// Describes this environment.
7553	Description *string `type:"string"`
7554
7555	// For load-balanced, autoscaling environments, the URL to the LoadBalancer.
7556	// For single-instance environments, the IP address of the instance.
7557	EndpointURL *string `type:"string"`
7558
7559	// The environment's Amazon Resource Name (ARN), which can be used in other
7560	// API reuqests that require an ARN.
7561	EnvironmentArn *string `type:"string"`
7562
7563	// The ID of this environment.
7564	EnvironmentId *string `type:"string"`
7565
7566	// A list of links to other environments in the same group.
7567	EnvironmentLinks []*EnvironmentLink `type:"list"`
7568
7569	// The name of this environment.
7570	EnvironmentName *string `min:"4" type:"string"`
7571
7572	// Describes the health status of the environment. AWS Elastic Beanstalk indicates
7573	// the failure levels for a running environment:
7574	//
7575	//    * Red: Indicates the environment is not responsive. Occurs when three
7576	//    or more consecutive failures occur for an environment.
7577	//
7578	//    * Yellow: Indicates that something is wrong. Occurs when two consecutive
7579	//    failures occur for an environment.
7580	//
7581	//    * Green: Indicates the environment is healthy and fully functional.
7582	//
7583	//    * Grey: Default health for a new environment. The environment is not fully
7584	//    launched and health checks have not started or health checks are suspended
7585	//    during an UpdateEnvironment or RestartEnvironement request.
7586	//
7587	// Default: Grey
7588	Health *string `type:"string" enum:"EnvironmentHealth"`
7589
7590	// Returns the health status of the application running in your environment.
7591	// For more information, see Health Colors and Statuses (http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/health-enhanced-status.html).
7592	HealthStatus *string `type:"string" enum:"EnvironmentHealthStatus"`
7593
7594	// The ARN of the platform.
7595	PlatformArn *string `type:"string"`
7596
7597	// The description of the AWS resources used by this environment.
7598	Resources *EnvironmentResourcesDescription `type:"structure"`
7599
7600	// The name of the SolutionStack deployed with this environment.
7601	SolutionStackName *string `type:"string"`
7602
7603	// The current operational status of the environment:
7604	//
7605	//    * Launching: Environment is in the process of initial deployment.
7606	//
7607	//    * Updating: Environment is in the process of updating its configuration
7608	//    settings or application version.
7609	//
7610	//    * Ready: Environment is available to have an action performed on it, such
7611	//    as update or terminate.
7612	//
7613	//    * Terminating: Environment is in the shut-down process.
7614	//
7615	//    * Terminated: Environment is not running.
7616	Status *string `type:"string" enum:"EnvironmentStatus"`
7617
7618	// The name of the configuration template used to originally launch this environment.
7619	TemplateName *string `min:"1" type:"string"`
7620
7621	// Describes the current tier of this environment.
7622	Tier *EnvironmentTier `type:"structure"`
7623
7624	// The application version deployed in this environment.
7625	VersionLabel *string `min:"1" type:"string"`
7626}
7627
7628// String returns the string representation
7629func (s EnvironmentDescription) String() string {
7630	return awsutil.Prettify(s)
7631}
7632
7633// GoString returns the string representation
7634func (s EnvironmentDescription) GoString() string {
7635	return s.String()
7636}
7637
7638// SetAbortableOperationInProgress sets the AbortableOperationInProgress field's value.
7639func (s *EnvironmentDescription) SetAbortableOperationInProgress(v bool) *EnvironmentDescription {
7640	s.AbortableOperationInProgress = &v
7641	return s
7642}
7643
7644// SetApplicationName sets the ApplicationName field's value.
7645func (s *EnvironmentDescription) SetApplicationName(v string) *EnvironmentDescription {
7646	s.ApplicationName = &v
7647	return s
7648}
7649
7650// SetCNAME sets the CNAME field's value.
7651func (s *EnvironmentDescription) SetCNAME(v string) *EnvironmentDescription {
7652	s.CNAME = &v
7653	return s
7654}
7655
7656// SetDateCreated sets the DateCreated field's value.
7657func (s *EnvironmentDescription) SetDateCreated(v time.Time) *EnvironmentDescription {
7658	s.DateCreated = &v
7659	return s
7660}
7661
7662// SetDateUpdated sets the DateUpdated field's value.
7663func (s *EnvironmentDescription) SetDateUpdated(v time.Time) *EnvironmentDescription {
7664	s.DateUpdated = &v
7665	return s
7666}
7667
7668// SetDescription sets the Description field's value.
7669func (s *EnvironmentDescription) SetDescription(v string) *EnvironmentDescription {
7670	s.Description = &v
7671	return s
7672}
7673
7674// SetEndpointURL sets the EndpointURL field's value.
7675func (s *EnvironmentDescription) SetEndpointURL(v string) *EnvironmentDescription {
7676	s.EndpointURL = &v
7677	return s
7678}
7679
7680// SetEnvironmentArn sets the EnvironmentArn field's value.
7681func (s *EnvironmentDescription) SetEnvironmentArn(v string) *EnvironmentDescription {
7682	s.EnvironmentArn = &v
7683	return s
7684}
7685
7686// SetEnvironmentId sets the EnvironmentId field's value.
7687func (s *EnvironmentDescription) SetEnvironmentId(v string) *EnvironmentDescription {
7688	s.EnvironmentId = &v
7689	return s
7690}
7691
7692// SetEnvironmentLinks sets the EnvironmentLinks field's value.
7693func (s *EnvironmentDescription) SetEnvironmentLinks(v []*EnvironmentLink) *EnvironmentDescription {
7694	s.EnvironmentLinks = v
7695	return s
7696}
7697
7698// SetEnvironmentName sets the EnvironmentName field's value.
7699func (s *EnvironmentDescription) SetEnvironmentName(v string) *EnvironmentDescription {
7700	s.EnvironmentName = &v
7701	return s
7702}
7703
7704// SetHealth sets the Health field's value.
7705func (s *EnvironmentDescription) SetHealth(v string) *EnvironmentDescription {
7706	s.Health = &v
7707	return s
7708}
7709
7710// SetHealthStatus sets the HealthStatus field's value.
7711func (s *EnvironmentDescription) SetHealthStatus(v string) *EnvironmentDescription {
7712	s.HealthStatus = &v
7713	return s
7714}
7715
7716// SetPlatformArn sets the PlatformArn field's value.
7717func (s *EnvironmentDescription) SetPlatformArn(v string) *EnvironmentDescription {
7718	s.PlatformArn = &v
7719	return s
7720}
7721
7722// SetResources sets the Resources field's value.
7723func (s *EnvironmentDescription) SetResources(v *EnvironmentResourcesDescription) *EnvironmentDescription {
7724	s.Resources = v
7725	return s
7726}
7727
7728// SetSolutionStackName sets the SolutionStackName field's value.
7729func (s *EnvironmentDescription) SetSolutionStackName(v string) *EnvironmentDescription {
7730	s.SolutionStackName = &v
7731	return s
7732}
7733
7734// SetStatus sets the Status field's value.
7735func (s *EnvironmentDescription) SetStatus(v string) *EnvironmentDescription {
7736	s.Status = &v
7737	return s
7738}
7739
7740// SetTemplateName sets the TemplateName field's value.
7741func (s *EnvironmentDescription) SetTemplateName(v string) *EnvironmentDescription {
7742	s.TemplateName = &v
7743	return s
7744}
7745
7746// SetTier sets the Tier field's value.
7747func (s *EnvironmentDescription) SetTier(v *EnvironmentTier) *EnvironmentDescription {
7748	s.Tier = v
7749	return s
7750}
7751
7752// SetVersionLabel sets the VersionLabel field's value.
7753func (s *EnvironmentDescription) SetVersionLabel(v string) *EnvironmentDescription {
7754	s.VersionLabel = &v
7755	return s
7756}
7757
7758// Result message containing a list of environment descriptions.
7759// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/EnvironmentDescriptionsMessage
7760type EnvironmentDescriptionsMessage struct {
7761	_ struct{} `type:"structure"`
7762
7763	// Returns an EnvironmentDescription list.
7764	Environments []*EnvironmentDescription `type:"list"`
7765
7766	// In a paginated request, the token that you can pass in a subsequent request
7767	// to get the next response page.
7768	NextToken *string `type:"string"`
7769}
7770
7771// String returns the string representation
7772func (s EnvironmentDescriptionsMessage) String() string {
7773	return awsutil.Prettify(s)
7774}
7775
7776// GoString returns the string representation
7777func (s EnvironmentDescriptionsMessage) GoString() string {
7778	return s.String()
7779}
7780
7781// SetEnvironments sets the Environments field's value.
7782func (s *EnvironmentDescriptionsMessage) SetEnvironments(v []*EnvironmentDescription) *EnvironmentDescriptionsMessage {
7783	s.Environments = v
7784	return s
7785}
7786
7787// SetNextToken sets the NextToken field's value.
7788func (s *EnvironmentDescriptionsMessage) SetNextToken(v string) *EnvironmentDescriptionsMessage {
7789	s.NextToken = &v
7790	return s
7791}
7792
7793// The information retrieved from the Amazon EC2 instances.
7794// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/EnvironmentInfoDescription
7795type EnvironmentInfoDescription struct {
7796	_ struct{} `type:"structure"`
7797
7798	// The Amazon EC2 Instance ID for this information.
7799	Ec2InstanceId *string `type:"string"`
7800
7801	// The type of information retrieved.
7802	InfoType *string `type:"string" enum:"EnvironmentInfoType"`
7803
7804	// The retrieved information.
7805	Message *string `type:"string"`
7806
7807	// The time stamp when this information was retrieved.
7808	SampleTimestamp *time.Time `type:"timestamp" timestampFormat:"iso8601"`
7809}
7810
7811// String returns the string representation
7812func (s EnvironmentInfoDescription) String() string {
7813	return awsutil.Prettify(s)
7814}
7815
7816// GoString returns the string representation
7817func (s EnvironmentInfoDescription) GoString() string {
7818	return s.String()
7819}
7820
7821// SetEc2InstanceId sets the Ec2InstanceId field's value.
7822func (s *EnvironmentInfoDescription) SetEc2InstanceId(v string) *EnvironmentInfoDescription {
7823	s.Ec2InstanceId = &v
7824	return s
7825}
7826
7827// SetInfoType sets the InfoType field's value.
7828func (s *EnvironmentInfoDescription) SetInfoType(v string) *EnvironmentInfoDescription {
7829	s.InfoType = &v
7830	return s
7831}
7832
7833// SetMessage sets the Message field's value.
7834func (s *EnvironmentInfoDescription) SetMessage(v string) *EnvironmentInfoDescription {
7835	s.Message = &v
7836	return s
7837}
7838
7839// SetSampleTimestamp sets the SampleTimestamp field's value.
7840func (s *EnvironmentInfoDescription) SetSampleTimestamp(v time.Time) *EnvironmentInfoDescription {
7841	s.SampleTimestamp = &v
7842	return s
7843}
7844
7845// A link to another environment, defined in the environment's manifest. Links
7846// provide connection information in system properties that can be used to connect
7847// to another environment in the same group. See Environment Manifest (env.yaml)
7848// (http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/environment-cfg-manifest.html)
7849// for details.
7850// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/EnvironmentLink
7851type EnvironmentLink struct {
7852	_ struct{} `type:"structure"`
7853
7854	// The name of the linked environment (the dependency).
7855	EnvironmentName *string `type:"string"`
7856
7857	// The name of the link.
7858	LinkName *string `type:"string"`
7859}
7860
7861// String returns the string representation
7862func (s EnvironmentLink) String() string {
7863	return awsutil.Prettify(s)
7864}
7865
7866// GoString returns the string representation
7867func (s EnvironmentLink) GoString() string {
7868	return s.String()
7869}
7870
7871// SetEnvironmentName sets the EnvironmentName field's value.
7872func (s *EnvironmentLink) SetEnvironmentName(v string) *EnvironmentLink {
7873	s.EnvironmentName = &v
7874	return s
7875}
7876
7877// SetLinkName sets the LinkName field's value.
7878func (s *EnvironmentLink) SetLinkName(v string) *EnvironmentLink {
7879	s.LinkName = &v
7880	return s
7881}
7882
7883// Describes the AWS resources in use by this environment. This data is live.
7884// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/EnvironmentResourceDescription
7885type EnvironmentResourceDescription struct {
7886	_ struct{} `type:"structure"`
7887
7888	// The AutoScalingGroups used by this environment.
7889	AutoScalingGroups []*AutoScalingGroup `type:"list"`
7890
7891	// The name of the environment.
7892	EnvironmentName *string `min:"4" type:"string"`
7893
7894	// The Amazon EC2 instances used by this environment.
7895	Instances []*Instance `type:"list"`
7896
7897	// The Auto Scaling launch configurations in use by this environment.
7898	LaunchConfigurations []*LaunchConfiguration `type:"list"`
7899
7900	// The LoadBalancers in use by this environment.
7901	LoadBalancers []*LoadBalancer `type:"list"`
7902
7903	// The queues used by this environment.
7904	Queues []*Queue `type:"list"`
7905
7906	// The AutoScaling triggers in use by this environment.
7907	Triggers []*Trigger `type:"list"`
7908}
7909
7910// String returns the string representation
7911func (s EnvironmentResourceDescription) String() string {
7912	return awsutil.Prettify(s)
7913}
7914
7915// GoString returns the string representation
7916func (s EnvironmentResourceDescription) GoString() string {
7917	return s.String()
7918}
7919
7920// SetAutoScalingGroups sets the AutoScalingGroups field's value.
7921func (s *EnvironmentResourceDescription) SetAutoScalingGroups(v []*AutoScalingGroup) *EnvironmentResourceDescription {
7922	s.AutoScalingGroups = v
7923	return s
7924}
7925
7926// SetEnvironmentName sets the EnvironmentName field's value.
7927func (s *EnvironmentResourceDescription) SetEnvironmentName(v string) *EnvironmentResourceDescription {
7928	s.EnvironmentName = &v
7929	return s
7930}
7931
7932// SetInstances sets the Instances field's value.
7933func (s *EnvironmentResourceDescription) SetInstances(v []*Instance) *EnvironmentResourceDescription {
7934	s.Instances = v
7935	return s
7936}
7937
7938// SetLaunchConfigurations sets the LaunchConfigurations field's value.
7939func (s *EnvironmentResourceDescription) SetLaunchConfigurations(v []*LaunchConfiguration) *EnvironmentResourceDescription {
7940	s.LaunchConfigurations = v
7941	return s
7942}
7943
7944// SetLoadBalancers sets the LoadBalancers field's value.
7945func (s *EnvironmentResourceDescription) SetLoadBalancers(v []*LoadBalancer) *EnvironmentResourceDescription {
7946	s.LoadBalancers = v
7947	return s
7948}
7949
7950// SetQueues sets the Queues field's value.
7951func (s *EnvironmentResourceDescription) SetQueues(v []*Queue) *EnvironmentResourceDescription {
7952	s.Queues = v
7953	return s
7954}
7955
7956// SetTriggers sets the Triggers field's value.
7957func (s *EnvironmentResourceDescription) SetTriggers(v []*Trigger) *EnvironmentResourceDescription {
7958	s.Triggers = v
7959	return s
7960}
7961
7962// Describes the AWS resources in use by this environment. This data is not
7963// live data.
7964// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/EnvironmentResourcesDescription
7965type EnvironmentResourcesDescription struct {
7966	_ struct{} `type:"structure"`
7967
7968	// Describes the LoadBalancer.
7969	LoadBalancer *LoadBalancerDescription `type:"structure"`
7970}
7971
7972// String returns the string representation
7973func (s EnvironmentResourcesDescription) String() string {
7974	return awsutil.Prettify(s)
7975}
7976
7977// GoString returns the string representation
7978func (s EnvironmentResourcesDescription) GoString() string {
7979	return s.String()
7980}
7981
7982// SetLoadBalancer sets the LoadBalancer field's value.
7983func (s *EnvironmentResourcesDescription) SetLoadBalancer(v *LoadBalancerDescription) *EnvironmentResourcesDescription {
7984	s.LoadBalancer = v
7985	return s
7986}
7987
7988// Describes the properties of an environment tier
7989// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/EnvironmentTier
7990type EnvironmentTier struct {
7991	_ struct{} `type:"structure"`
7992
7993	// The name of this environment tier.
7994	Name *string `type:"string"`
7995
7996	// The type of this environment tier.
7997	Type *string `type:"string"`
7998
7999	// The version of this environment tier.
8000	Version *string `type:"string"`
8001}
8002
8003// String returns the string representation
8004func (s EnvironmentTier) String() string {
8005	return awsutil.Prettify(s)
8006}
8007
8008// GoString returns the string representation
8009func (s EnvironmentTier) GoString() string {
8010	return s.String()
8011}
8012
8013// SetName sets the Name field's value.
8014func (s *EnvironmentTier) SetName(v string) *EnvironmentTier {
8015	s.Name = &v
8016	return s
8017}
8018
8019// SetType sets the Type field's value.
8020func (s *EnvironmentTier) SetType(v string) *EnvironmentTier {
8021	s.Type = &v
8022	return s
8023}
8024
8025// SetVersion sets the Version field's value.
8026func (s *EnvironmentTier) SetVersion(v string) *EnvironmentTier {
8027	s.Version = &v
8028	return s
8029}
8030
8031// Describes an event.
8032// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/EventDescription
8033type EventDescription struct {
8034	_ struct{} `type:"structure"`
8035
8036	// The application associated with the event.
8037	ApplicationName *string `min:"1" type:"string"`
8038
8039	// The name of the environment associated with this event.
8040	EnvironmentName *string `min:"4" type:"string"`
8041
8042	// The date when the event occurred.
8043	EventDate *time.Time `type:"timestamp" timestampFormat:"iso8601"`
8044
8045	// The event message.
8046	Message *string `type:"string"`
8047
8048	// The ARN of the platform.
8049	PlatformArn *string `type:"string"`
8050
8051	// The web service request ID for the activity of this event.
8052	RequestId *string `type:"string"`
8053
8054	// The severity level of this event.
8055	Severity *string `type:"string" enum:"EventSeverity"`
8056
8057	// The name of the configuration associated with this event.
8058	TemplateName *string `min:"1" type:"string"`
8059
8060	// The release label for the application version associated with this event.
8061	VersionLabel *string `min:"1" type:"string"`
8062}
8063
8064// String returns the string representation
8065func (s EventDescription) String() string {
8066	return awsutil.Prettify(s)
8067}
8068
8069// GoString returns the string representation
8070func (s EventDescription) GoString() string {
8071	return s.String()
8072}
8073
8074// SetApplicationName sets the ApplicationName field's value.
8075func (s *EventDescription) SetApplicationName(v string) *EventDescription {
8076	s.ApplicationName = &v
8077	return s
8078}
8079
8080// SetEnvironmentName sets the EnvironmentName field's value.
8081func (s *EventDescription) SetEnvironmentName(v string) *EventDescription {
8082	s.EnvironmentName = &v
8083	return s
8084}
8085
8086// SetEventDate sets the EventDate field's value.
8087func (s *EventDescription) SetEventDate(v time.Time) *EventDescription {
8088	s.EventDate = &v
8089	return s
8090}
8091
8092// SetMessage sets the Message field's value.
8093func (s *EventDescription) SetMessage(v string) *EventDescription {
8094	s.Message = &v
8095	return s
8096}
8097
8098// SetPlatformArn sets the PlatformArn field's value.
8099func (s *EventDescription) SetPlatformArn(v string) *EventDescription {
8100	s.PlatformArn = &v
8101	return s
8102}
8103
8104// SetRequestId sets the RequestId field's value.
8105func (s *EventDescription) SetRequestId(v string) *EventDescription {
8106	s.RequestId = &v
8107	return s
8108}
8109
8110// SetSeverity sets the Severity field's value.
8111func (s *EventDescription) SetSeverity(v string) *EventDescription {
8112	s.Severity = &v
8113	return s
8114}
8115
8116// SetTemplateName sets the TemplateName field's value.
8117func (s *EventDescription) SetTemplateName(v string) *EventDescription {
8118	s.TemplateName = &v
8119	return s
8120}
8121
8122// SetVersionLabel sets the VersionLabel field's value.
8123func (s *EventDescription) SetVersionLabel(v string) *EventDescription {
8124	s.VersionLabel = &v
8125	return s
8126}
8127
8128// The description of an Amazon EC2 instance.
8129// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/Instance
8130type Instance struct {
8131	_ struct{} `type:"structure"`
8132
8133	// The ID of the Amazon EC2 instance.
8134	Id *string `type:"string"`
8135}
8136
8137// String returns the string representation
8138func (s Instance) String() string {
8139	return awsutil.Prettify(s)
8140}
8141
8142// GoString returns the string representation
8143func (s Instance) GoString() string {
8144	return s.String()
8145}
8146
8147// SetId sets the Id field's value.
8148func (s *Instance) SetId(v string) *Instance {
8149	s.Id = &v
8150	return s
8151}
8152
8153// Represents summary information about the health of an instance. For more
8154// information, see Health Colors and Statuses (http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/health-enhanced-status.html).
8155// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/InstanceHealthSummary
8156type InstanceHealthSummary struct {
8157	_ struct{} `type:"structure"`
8158
8159	// Red. The health agent is reporting a high number of request failures or other
8160	// issues for an instance or environment.
8161	Degraded *int64 `type:"integer"`
8162
8163	// Green. An operation is in progress on an instance.
8164	Info *int64 `type:"integer"`
8165
8166	// Grey. AWS Elastic Beanstalk and the health agent are reporting no data on
8167	// an instance.
8168	NoData *int64 `type:"integer"`
8169
8170	// Green. An instance is passing health checks and the health agent is not reporting
8171	// any problems.
8172	Ok *int64 `type:"integer"`
8173
8174	// Grey. An operation is in progress on an instance within the command timeout.
8175	Pending *int64 `type:"integer"`
8176
8177	// Red. The health agent is reporting a very high number of request failures
8178	// or other issues for an instance or environment.
8179	Severe *int64 `type:"integer"`
8180
8181	// Grey. AWS Elastic Beanstalk and the health agent are reporting an insufficient
8182	// amount of data on an instance.
8183	Unknown *int64 `type:"integer"`
8184
8185	// Yellow. The health agent is reporting a moderate number of request failures
8186	// or other issues for an instance or environment.
8187	Warning *int64 `type:"integer"`
8188}
8189
8190// String returns the string representation
8191func (s InstanceHealthSummary) String() string {
8192	return awsutil.Prettify(s)
8193}
8194
8195// GoString returns the string representation
8196func (s InstanceHealthSummary) GoString() string {
8197	return s.String()
8198}
8199
8200// SetDegraded sets the Degraded field's value.
8201func (s *InstanceHealthSummary) SetDegraded(v int64) *InstanceHealthSummary {
8202	s.Degraded = &v
8203	return s
8204}
8205
8206// SetInfo sets the Info field's value.
8207func (s *InstanceHealthSummary) SetInfo(v int64) *InstanceHealthSummary {
8208	s.Info = &v
8209	return s
8210}
8211
8212// SetNoData sets the NoData field's value.
8213func (s *InstanceHealthSummary) SetNoData(v int64) *InstanceHealthSummary {
8214	s.NoData = &v
8215	return s
8216}
8217
8218// SetOk sets the Ok field's value.
8219func (s *InstanceHealthSummary) SetOk(v int64) *InstanceHealthSummary {
8220	s.Ok = &v
8221	return s
8222}
8223
8224// SetPending sets the Pending field's value.
8225func (s *InstanceHealthSummary) SetPending(v int64) *InstanceHealthSummary {
8226	s.Pending = &v
8227	return s
8228}
8229
8230// SetSevere sets the Severe field's value.
8231func (s *InstanceHealthSummary) SetSevere(v int64) *InstanceHealthSummary {
8232	s.Severe = &v
8233	return s
8234}
8235
8236// SetUnknown sets the Unknown field's value.
8237func (s *InstanceHealthSummary) SetUnknown(v int64) *InstanceHealthSummary {
8238	s.Unknown = &v
8239	return s
8240}
8241
8242// SetWarning sets the Warning field's value.
8243func (s *InstanceHealthSummary) SetWarning(v int64) *InstanceHealthSummary {
8244	s.Warning = &v
8245	return s
8246}
8247
8248// Represents the average latency for the slowest X percent of requests over
8249// the last 10 seconds.
8250// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/Latency
8251type Latency struct {
8252	_ struct{} `type:"structure"`
8253
8254	// The average latency for the slowest 90 percent of requests over the last
8255	// 10 seconds.
8256	P10 *float64 `type:"double"`
8257
8258	// The average latency for the slowest 50 percent of requests over the last
8259	// 10 seconds.
8260	P50 *float64 `type:"double"`
8261
8262	// The average latency for the slowest 25 percent of requests over the last
8263	// 10 seconds.
8264	P75 *float64 `type:"double"`
8265
8266	// The average latency for the slowest 15 percent of requests over the last
8267	// 10 seconds.
8268	P85 *float64 `type:"double"`
8269
8270	// The average latency for the slowest 10 percent of requests over the last
8271	// 10 seconds.
8272	P90 *float64 `type:"double"`
8273
8274	// The average latency for the slowest 5 percent of requests over the last 10
8275	// seconds.
8276	P95 *float64 `type:"double"`
8277
8278	// The average latency for the slowest 1 percent of requests over the last 10
8279	// seconds.
8280	P99 *float64 `type:"double"`
8281
8282	// The average latency for the slowest 0.1 percent of requests over the last
8283	// 10 seconds.
8284	P999 *float64 `type:"double"`
8285}
8286
8287// String returns the string representation
8288func (s Latency) String() string {
8289	return awsutil.Prettify(s)
8290}
8291
8292// GoString returns the string representation
8293func (s Latency) GoString() string {
8294	return s.String()
8295}
8296
8297// SetP10 sets the P10 field's value.
8298func (s *Latency) SetP10(v float64) *Latency {
8299	s.P10 = &v
8300	return s
8301}
8302
8303// SetP50 sets the P50 field's value.
8304func (s *Latency) SetP50(v float64) *Latency {
8305	s.P50 = &v
8306	return s
8307}
8308
8309// SetP75 sets the P75 field's value.
8310func (s *Latency) SetP75(v float64) *Latency {
8311	s.P75 = &v
8312	return s
8313}
8314
8315// SetP85 sets the P85 field's value.
8316func (s *Latency) SetP85(v float64) *Latency {
8317	s.P85 = &v
8318	return s
8319}
8320
8321// SetP90 sets the P90 field's value.
8322func (s *Latency) SetP90(v float64) *Latency {
8323	s.P90 = &v
8324	return s
8325}
8326
8327// SetP95 sets the P95 field's value.
8328func (s *Latency) SetP95(v float64) *Latency {
8329	s.P95 = &v
8330	return s
8331}
8332
8333// SetP99 sets the P99 field's value.
8334func (s *Latency) SetP99(v float64) *Latency {
8335	s.P99 = &v
8336	return s
8337}
8338
8339// SetP999 sets the P999 field's value.
8340func (s *Latency) SetP999(v float64) *Latency {
8341	s.P999 = &v
8342	return s
8343}
8344
8345// Describes an Auto Scaling launch configuration.
8346// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/LaunchConfiguration
8347type LaunchConfiguration struct {
8348	_ struct{} `type:"structure"`
8349
8350	// The name of the launch configuration.
8351	Name *string `type:"string"`
8352}
8353
8354// String returns the string representation
8355func (s LaunchConfiguration) String() string {
8356	return awsutil.Prettify(s)
8357}
8358
8359// GoString returns the string representation
8360func (s LaunchConfiguration) GoString() string {
8361	return s.String()
8362}
8363
8364// SetName sets the Name field's value.
8365func (s *LaunchConfiguration) SetName(v string) *LaunchConfiguration {
8366	s.Name = &v
8367	return s
8368}
8369
8370// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ListAvailableSolutionStacksInput
8371type ListAvailableSolutionStacksInput struct {
8372	_ struct{} `type:"structure"`
8373}
8374
8375// String returns the string representation
8376func (s ListAvailableSolutionStacksInput) String() string {
8377	return awsutil.Prettify(s)
8378}
8379
8380// GoString returns the string representation
8381func (s ListAvailableSolutionStacksInput) GoString() string {
8382	return s.String()
8383}
8384
8385// A list of available AWS Elastic Beanstalk solution stacks.
8386// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ListAvailableSolutionStacksResultMessage
8387type ListAvailableSolutionStacksOutput struct {
8388	_ struct{} `type:"structure"`
8389
8390	// A list of available solution stacks and their SolutionStackDescription.
8391	SolutionStackDetails []*SolutionStackDescription `type:"list"`
8392
8393	// A list of available solution stacks.
8394	SolutionStacks []*string `type:"list"`
8395}
8396
8397// String returns the string representation
8398func (s ListAvailableSolutionStacksOutput) String() string {
8399	return awsutil.Prettify(s)
8400}
8401
8402// GoString returns the string representation
8403func (s ListAvailableSolutionStacksOutput) GoString() string {
8404	return s.String()
8405}
8406
8407// SetSolutionStackDetails sets the SolutionStackDetails field's value.
8408func (s *ListAvailableSolutionStacksOutput) SetSolutionStackDetails(v []*SolutionStackDescription) *ListAvailableSolutionStacksOutput {
8409	s.SolutionStackDetails = v
8410	return s
8411}
8412
8413// SetSolutionStacks sets the SolutionStacks field's value.
8414func (s *ListAvailableSolutionStacksOutput) SetSolutionStacks(v []*string) *ListAvailableSolutionStacksOutput {
8415	s.SolutionStacks = v
8416	return s
8417}
8418
8419// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ListPlatformVersionsRequest
8420type ListPlatformVersionsInput struct {
8421	_ struct{} `type:"structure"`
8422
8423	// List only the platforms where the platform member value relates to one of
8424	// the supplied values.
8425	Filters []*PlatformFilter `type:"list"`
8426
8427	// The maximum number of platform values returned in one call.
8428	MaxRecords *int64 `min:"1" type:"integer"`
8429
8430	// The starting index into the remaining list of platforms. Use the NextToken
8431	// value from a previous ListPlatformVersion call.
8432	NextToken *string `type:"string"`
8433}
8434
8435// String returns the string representation
8436func (s ListPlatformVersionsInput) String() string {
8437	return awsutil.Prettify(s)
8438}
8439
8440// GoString returns the string representation
8441func (s ListPlatformVersionsInput) GoString() string {
8442	return s.String()
8443}
8444
8445// Validate inspects the fields of the type to determine if they are valid.
8446func (s *ListPlatformVersionsInput) Validate() error {
8447	invalidParams := request.ErrInvalidParams{Context: "ListPlatformVersionsInput"}
8448	if s.MaxRecords != nil && *s.MaxRecords < 1 {
8449		invalidParams.Add(request.NewErrParamMinValue("MaxRecords", 1))
8450	}
8451
8452	if invalidParams.Len() > 0 {
8453		return invalidParams
8454	}
8455	return nil
8456}
8457
8458// SetFilters sets the Filters field's value.
8459func (s *ListPlatformVersionsInput) SetFilters(v []*PlatformFilter) *ListPlatformVersionsInput {
8460	s.Filters = v
8461	return s
8462}
8463
8464// SetMaxRecords sets the MaxRecords field's value.
8465func (s *ListPlatformVersionsInput) SetMaxRecords(v int64) *ListPlatformVersionsInput {
8466	s.MaxRecords = &v
8467	return s
8468}
8469
8470// SetNextToken sets the NextToken field's value.
8471func (s *ListPlatformVersionsInput) SetNextToken(v string) *ListPlatformVersionsInput {
8472	s.NextToken = &v
8473	return s
8474}
8475
8476// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ListPlatformVersionsResult
8477type ListPlatformVersionsOutput struct {
8478	_ struct{} `type:"structure"`
8479
8480	// The starting index into the remaining list of platforms. if this value is
8481	// not null, you can use it in a subsequent ListPlatformVersion call.
8482	NextToken *string `type:"string"`
8483
8484	// Detailed information about the platforms.
8485	PlatformSummaryList []*PlatformSummary `type:"list"`
8486}
8487
8488// String returns the string representation
8489func (s ListPlatformVersionsOutput) String() string {
8490	return awsutil.Prettify(s)
8491}
8492
8493// GoString returns the string representation
8494func (s ListPlatformVersionsOutput) GoString() string {
8495	return s.String()
8496}
8497
8498// SetNextToken sets the NextToken field's value.
8499func (s *ListPlatformVersionsOutput) SetNextToken(v string) *ListPlatformVersionsOutput {
8500	s.NextToken = &v
8501	return s
8502}
8503
8504// SetPlatformSummaryList sets the PlatformSummaryList field's value.
8505func (s *ListPlatformVersionsOutput) SetPlatformSummaryList(v []*PlatformSummary) *ListPlatformVersionsOutput {
8506	s.PlatformSummaryList = v
8507	return s
8508}
8509
8510// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ListTagsForResourceMessage
8511type ListTagsForResourceInput struct {
8512	_ struct{} `type:"structure"`
8513
8514	// The Amazon Resource Name (ARN) of the resouce for which a tag list is requested.
8515	//
8516	// Must be the ARN of an Elastic Beanstalk environment.
8517	//
8518	// ResourceArn is a required field
8519	ResourceArn *string `type:"string" required:"true"`
8520}
8521
8522// String returns the string representation
8523func (s ListTagsForResourceInput) String() string {
8524	return awsutil.Prettify(s)
8525}
8526
8527// GoString returns the string representation
8528func (s ListTagsForResourceInput) GoString() string {
8529	return s.String()
8530}
8531
8532// Validate inspects the fields of the type to determine if they are valid.
8533func (s *ListTagsForResourceInput) Validate() error {
8534	invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"}
8535	if s.ResourceArn == nil {
8536		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
8537	}
8538
8539	if invalidParams.Len() > 0 {
8540		return invalidParams
8541	}
8542	return nil
8543}
8544
8545// SetResourceArn sets the ResourceArn field's value.
8546func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput {
8547	s.ResourceArn = &v
8548	return s
8549}
8550
8551// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ResourceTagsDescriptionMessage
8552type ListTagsForResourceOutput struct {
8553	_ struct{} `type:"structure"`
8554
8555	// The Amazon Resource Name (ARN) of the resouce for which a tag list was requested.
8556	ResourceArn *string `type:"string"`
8557
8558	// A list of tag key-value pairs.
8559	ResourceTags []*Tag `type:"list"`
8560}
8561
8562// String returns the string representation
8563func (s ListTagsForResourceOutput) String() string {
8564	return awsutil.Prettify(s)
8565}
8566
8567// GoString returns the string representation
8568func (s ListTagsForResourceOutput) GoString() string {
8569	return s.String()
8570}
8571
8572// SetResourceArn sets the ResourceArn field's value.
8573func (s *ListTagsForResourceOutput) SetResourceArn(v string) *ListTagsForResourceOutput {
8574	s.ResourceArn = &v
8575	return s
8576}
8577
8578// SetResourceTags sets the ResourceTags field's value.
8579func (s *ListTagsForResourceOutput) SetResourceTags(v []*Tag) *ListTagsForResourceOutput {
8580	s.ResourceTags = v
8581	return s
8582}
8583
8584// Describes the properties of a Listener for the LoadBalancer.
8585// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/Listener
8586type Listener struct {
8587	_ struct{} `type:"structure"`
8588
8589	// The port that is used by the Listener.
8590	Port *int64 `type:"integer"`
8591
8592	// The protocol that is used by the Listener.
8593	Protocol *string `type:"string"`
8594}
8595
8596// String returns the string representation
8597func (s Listener) String() string {
8598	return awsutil.Prettify(s)
8599}
8600
8601// GoString returns the string representation
8602func (s Listener) GoString() string {
8603	return s.String()
8604}
8605
8606// SetPort sets the Port field's value.
8607func (s *Listener) SetPort(v int64) *Listener {
8608	s.Port = &v
8609	return s
8610}
8611
8612// SetProtocol sets the Protocol field's value.
8613func (s *Listener) SetProtocol(v string) *Listener {
8614	s.Protocol = &v
8615	return s
8616}
8617
8618// Describes a LoadBalancer.
8619// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/LoadBalancer
8620type LoadBalancer struct {
8621	_ struct{} `type:"structure"`
8622
8623	// The name of the LoadBalancer.
8624	Name *string `type:"string"`
8625}
8626
8627// String returns the string representation
8628func (s LoadBalancer) String() string {
8629	return awsutil.Prettify(s)
8630}
8631
8632// GoString returns the string representation
8633func (s LoadBalancer) GoString() string {
8634	return s.String()
8635}
8636
8637// SetName sets the Name field's value.
8638func (s *LoadBalancer) SetName(v string) *LoadBalancer {
8639	s.Name = &v
8640	return s
8641}
8642
8643// Describes the details of a LoadBalancer.
8644// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/LoadBalancerDescription
8645type LoadBalancerDescription struct {
8646	_ struct{} `type:"structure"`
8647
8648	// The domain name of the LoadBalancer.
8649	Domain *string `type:"string"`
8650
8651	// A list of Listeners used by the LoadBalancer.
8652	Listeners []*Listener `type:"list"`
8653
8654	// The name of the LoadBalancer.
8655	LoadBalancerName *string `type:"string"`
8656}
8657
8658// String returns the string representation
8659func (s LoadBalancerDescription) String() string {
8660	return awsutil.Prettify(s)
8661}
8662
8663// GoString returns the string representation
8664func (s LoadBalancerDescription) GoString() string {
8665	return s.String()
8666}
8667
8668// SetDomain sets the Domain field's value.
8669func (s *LoadBalancerDescription) SetDomain(v string) *LoadBalancerDescription {
8670	s.Domain = &v
8671	return s
8672}
8673
8674// SetListeners sets the Listeners field's value.
8675func (s *LoadBalancerDescription) SetListeners(v []*Listener) *LoadBalancerDescription {
8676	s.Listeners = v
8677	return s
8678}
8679
8680// SetLoadBalancerName sets the LoadBalancerName field's value.
8681func (s *LoadBalancerDescription) SetLoadBalancerName(v string) *LoadBalancerDescription {
8682	s.LoadBalancerName = &v
8683	return s
8684}
8685
8686// The record of an upcoming or in-progress managed action.
8687// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ManagedAction
8688type ManagedAction struct {
8689	_ struct{} `type:"structure"`
8690
8691	// A description of the managed action.
8692	ActionDescription *string `type:"string"`
8693
8694	// A unique identifier for the managed action.
8695	ActionId *string `type:"string"`
8696
8697	// The type of managed action.
8698	ActionType *string `type:"string" enum:"ActionType"`
8699
8700	// The status of the managed action. If the action is Scheduled, you can apply
8701	// it immediately with ApplyEnvironmentManagedAction.
8702	Status *string `type:"string" enum:"ActionStatus"`
8703
8704	// The start time of the maintenance window in which the managed action will
8705	// execute.
8706	WindowStartTime *time.Time `type:"timestamp" timestampFormat:"iso8601"`
8707}
8708
8709// String returns the string representation
8710func (s ManagedAction) String() string {
8711	return awsutil.Prettify(s)
8712}
8713
8714// GoString returns the string representation
8715func (s ManagedAction) GoString() string {
8716	return s.String()
8717}
8718
8719// SetActionDescription sets the ActionDescription field's value.
8720func (s *ManagedAction) SetActionDescription(v string) *ManagedAction {
8721	s.ActionDescription = &v
8722	return s
8723}
8724
8725// SetActionId sets the ActionId field's value.
8726func (s *ManagedAction) SetActionId(v string) *ManagedAction {
8727	s.ActionId = &v
8728	return s
8729}
8730
8731// SetActionType sets the ActionType field's value.
8732func (s *ManagedAction) SetActionType(v string) *ManagedAction {
8733	s.ActionType = &v
8734	return s
8735}
8736
8737// SetStatus sets the Status field's value.
8738func (s *ManagedAction) SetStatus(v string) *ManagedAction {
8739	s.Status = &v
8740	return s
8741}
8742
8743// SetWindowStartTime sets the WindowStartTime field's value.
8744func (s *ManagedAction) SetWindowStartTime(v time.Time) *ManagedAction {
8745	s.WindowStartTime = &v
8746	return s
8747}
8748
8749// The record of a completed or failed managed action.
8750// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ManagedActionHistoryItem
8751type ManagedActionHistoryItem struct {
8752	_ struct{} `type:"structure"`
8753
8754	// A description of the managed action.
8755	ActionDescription *string `type:"string"`
8756
8757	// A unique identifier for the managed action.
8758	ActionId *string `type:"string"`
8759
8760	// The type of the managed action.
8761	ActionType *string `type:"string" enum:"ActionType"`
8762
8763	// The date and time that the action started executing.
8764	ExecutedTime *time.Time `type:"timestamp" timestampFormat:"iso8601"`
8765
8766	// If the action failed, a description of the failure.
8767	FailureDescription *string `type:"string"`
8768
8769	// If the action failed, the type of failure.
8770	FailureType *string `type:"string" enum:"FailureType"`
8771
8772	// The date and time that the action finished executing.
8773	FinishedTime *time.Time `type:"timestamp" timestampFormat:"iso8601"`
8774
8775	// The status of the action.
8776	Status *string `type:"string" enum:"ActionHistoryStatus"`
8777}
8778
8779// String returns the string representation
8780func (s ManagedActionHistoryItem) String() string {
8781	return awsutil.Prettify(s)
8782}
8783
8784// GoString returns the string representation
8785func (s ManagedActionHistoryItem) GoString() string {
8786	return s.String()
8787}
8788
8789// SetActionDescription sets the ActionDescription field's value.
8790func (s *ManagedActionHistoryItem) SetActionDescription(v string) *ManagedActionHistoryItem {
8791	s.ActionDescription = &v
8792	return s
8793}
8794
8795// SetActionId sets the ActionId field's value.
8796func (s *ManagedActionHistoryItem) SetActionId(v string) *ManagedActionHistoryItem {
8797	s.ActionId = &v
8798	return s
8799}
8800
8801// SetActionType sets the ActionType field's value.
8802func (s *ManagedActionHistoryItem) SetActionType(v string) *ManagedActionHistoryItem {
8803	s.ActionType = &v
8804	return s
8805}
8806
8807// SetExecutedTime sets the ExecutedTime field's value.
8808func (s *ManagedActionHistoryItem) SetExecutedTime(v time.Time) *ManagedActionHistoryItem {
8809	s.ExecutedTime = &v
8810	return s
8811}
8812
8813// SetFailureDescription sets the FailureDescription field's value.
8814func (s *ManagedActionHistoryItem) SetFailureDescription(v string) *ManagedActionHistoryItem {
8815	s.FailureDescription = &v
8816	return s
8817}
8818
8819// SetFailureType sets the FailureType field's value.
8820func (s *ManagedActionHistoryItem) SetFailureType(v string) *ManagedActionHistoryItem {
8821	s.FailureType = &v
8822	return s
8823}
8824
8825// SetFinishedTime sets the FinishedTime field's value.
8826func (s *ManagedActionHistoryItem) SetFinishedTime(v time.Time) *ManagedActionHistoryItem {
8827	s.FinishedTime = &v
8828	return s
8829}
8830
8831// SetStatus sets the Status field's value.
8832func (s *ManagedActionHistoryItem) SetStatus(v string) *ManagedActionHistoryItem {
8833	s.Status = &v
8834	return s
8835}
8836
8837// A lifecycle rule that deletes application versions after the specified number
8838// of days.
8839// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/MaxAgeRule
8840type MaxAgeRule struct {
8841	_ struct{} `type:"structure"`
8842
8843	// Set to true to delete a version's source bundle from Amazon S3 when Elastic
8844	// Beanstalk deletes the application version.
8845	DeleteSourceFromS3 *bool `type:"boolean"`
8846
8847	// Specify true to apply the rule, or false to disable it.
8848	//
8849	// Enabled is a required field
8850	Enabled *bool `type:"boolean" required:"true"`
8851
8852	// Specify the number of days to retain an application versions.
8853	MaxAgeInDays *int64 `type:"integer"`
8854}
8855
8856// String returns the string representation
8857func (s MaxAgeRule) String() string {
8858	return awsutil.Prettify(s)
8859}
8860
8861// GoString returns the string representation
8862func (s MaxAgeRule) GoString() string {
8863	return s.String()
8864}
8865
8866// Validate inspects the fields of the type to determine if they are valid.
8867func (s *MaxAgeRule) Validate() error {
8868	invalidParams := request.ErrInvalidParams{Context: "MaxAgeRule"}
8869	if s.Enabled == nil {
8870		invalidParams.Add(request.NewErrParamRequired("Enabled"))
8871	}
8872
8873	if invalidParams.Len() > 0 {
8874		return invalidParams
8875	}
8876	return nil
8877}
8878
8879// SetDeleteSourceFromS3 sets the DeleteSourceFromS3 field's value.
8880func (s *MaxAgeRule) SetDeleteSourceFromS3(v bool) *MaxAgeRule {
8881	s.DeleteSourceFromS3 = &v
8882	return s
8883}
8884
8885// SetEnabled sets the Enabled field's value.
8886func (s *MaxAgeRule) SetEnabled(v bool) *MaxAgeRule {
8887	s.Enabled = &v
8888	return s
8889}
8890
8891// SetMaxAgeInDays sets the MaxAgeInDays field's value.
8892func (s *MaxAgeRule) SetMaxAgeInDays(v int64) *MaxAgeRule {
8893	s.MaxAgeInDays = &v
8894	return s
8895}
8896
8897// A lifecycle rule that deletes the oldest application version when the maximum
8898// count is exceeded.
8899// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/MaxCountRule
8900type MaxCountRule struct {
8901	_ struct{} `type:"structure"`
8902
8903	// Set to true to delete a version's source bundle from Amazon S3 when Elastic
8904	// Beanstalk deletes the application version.
8905	DeleteSourceFromS3 *bool `type:"boolean"`
8906
8907	// Specify true to apply the rule, or false to disable it.
8908	//
8909	// Enabled is a required field
8910	Enabled *bool `type:"boolean" required:"true"`
8911
8912	// Specify the maximum number of application versions to retain.
8913	MaxCount *int64 `type:"integer"`
8914}
8915
8916// String returns the string representation
8917func (s MaxCountRule) String() string {
8918	return awsutil.Prettify(s)
8919}
8920
8921// GoString returns the string representation
8922func (s MaxCountRule) GoString() string {
8923	return s.String()
8924}
8925
8926// Validate inspects the fields of the type to determine if they are valid.
8927func (s *MaxCountRule) Validate() error {
8928	invalidParams := request.ErrInvalidParams{Context: "MaxCountRule"}
8929	if s.Enabled == nil {
8930		invalidParams.Add(request.NewErrParamRequired("Enabled"))
8931	}
8932
8933	if invalidParams.Len() > 0 {
8934		return invalidParams
8935	}
8936	return nil
8937}
8938
8939// SetDeleteSourceFromS3 sets the DeleteSourceFromS3 field's value.
8940func (s *MaxCountRule) SetDeleteSourceFromS3(v bool) *MaxCountRule {
8941	s.DeleteSourceFromS3 = &v
8942	return s
8943}
8944
8945// SetEnabled sets the Enabled field's value.
8946func (s *MaxCountRule) SetEnabled(v bool) *MaxCountRule {
8947	s.Enabled = &v
8948	return s
8949}
8950
8951// SetMaxCount sets the MaxCount field's value.
8952func (s *MaxCountRule) SetMaxCount(v int64) *MaxCountRule {
8953	s.MaxCount = &v
8954	return s
8955}
8956
8957// A regular expression representing a restriction on a string configuration
8958// option value.
8959// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/OptionRestrictionRegex
8960type OptionRestrictionRegex struct {
8961	_ struct{} `type:"structure"`
8962
8963	// A unique name representing this regular expression.
8964	Label *string `type:"string"`
8965
8966	// The regular expression pattern that a string configuration option value with
8967	// this restriction must match.
8968	Pattern *string `type:"string"`
8969}
8970
8971// String returns the string representation
8972func (s OptionRestrictionRegex) String() string {
8973	return awsutil.Prettify(s)
8974}
8975
8976// GoString returns the string representation
8977func (s OptionRestrictionRegex) GoString() string {
8978	return s.String()
8979}
8980
8981// SetLabel sets the Label field's value.
8982func (s *OptionRestrictionRegex) SetLabel(v string) *OptionRestrictionRegex {
8983	s.Label = &v
8984	return s
8985}
8986
8987// SetPattern sets the Pattern field's value.
8988func (s *OptionRestrictionRegex) SetPattern(v string) *OptionRestrictionRegex {
8989	s.Pattern = &v
8990	return s
8991}
8992
8993// A specification identifying an individual configuration option.
8994// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/OptionSpecification
8995type OptionSpecification struct {
8996	_ struct{} `type:"structure"`
8997
8998	// A unique namespace identifying the option's associated AWS resource.
8999	Namespace *string `type:"string"`
9000
9001	// The name of the configuration option.
9002	OptionName *string `type:"string"`
9003
9004	// A unique resource name for a time-based scaling configuration option.
9005	ResourceName *string `min:"1" type:"string"`
9006}
9007
9008// String returns the string representation
9009func (s OptionSpecification) String() string {
9010	return awsutil.Prettify(s)
9011}
9012
9013// GoString returns the string representation
9014func (s OptionSpecification) GoString() string {
9015	return s.String()
9016}
9017
9018// Validate inspects the fields of the type to determine if they are valid.
9019func (s *OptionSpecification) Validate() error {
9020	invalidParams := request.ErrInvalidParams{Context: "OptionSpecification"}
9021	if s.ResourceName != nil && len(*s.ResourceName) < 1 {
9022		invalidParams.Add(request.NewErrParamMinLen("ResourceName", 1))
9023	}
9024
9025	if invalidParams.Len() > 0 {
9026		return invalidParams
9027	}
9028	return nil
9029}
9030
9031// SetNamespace sets the Namespace field's value.
9032func (s *OptionSpecification) SetNamespace(v string) *OptionSpecification {
9033	s.Namespace = &v
9034	return s
9035}
9036
9037// SetOptionName sets the OptionName field's value.
9038func (s *OptionSpecification) SetOptionName(v string) *OptionSpecification {
9039	s.OptionName = &v
9040	return s
9041}
9042
9043// SetResourceName sets the ResourceName field's value.
9044func (s *OptionSpecification) SetResourceName(v string) *OptionSpecification {
9045	s.ResourceName = &v
9046	return s
9047}
9048
9049// Detailed information about a platform.
9050// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/PlatformDescription
9051type PlatformDescription struct {
9052	_ struct{} `type:"structure"`
9053
9054	// The custom AMIs supported by the platform.
9055	CustomAmiList []*CustomAmi `type:"list"`
9056
9057	// The date when the platform was created.
9058	DateCreated *time.Time `type:"timestamp" timestampFormat:"iso8601"`
9059
9060	// The date when the platform was last updated.
9061	DateUpdated *time.Time `type:"timestamp" timestampFormat:"iso8601"`
9062
9063	// The description of the platform.
9064	Description *string `type:"string"`
9065
9066	// The frameworks supported by the platform.
9067	Frameworks []*PlatformFramework `type:"list"`
9068
9069	// Information about the maintainer of the platform.
9070	Maintainer *string `type:"string"`
9071
9072	// The operating system used by the platform.
9073	OperatingSystemName *string `type:"string"`
9074
9075	// The version of the operating system used by the platform.
9076	OperatingSystemVersion *string `type:"string"`
9077
9078	// The ARN of the platform.
9079	PlatformArn *string `type:"string"`
9080
9081	// The category of the platform.
9082	PlatformCategory *string `type:"string"`
9083
9084	// The name of the platform.
9085	PlatformName *string `type:"string"`
9086
9087	// The AWS account ID of the person who created the platform.
9088	PlatformOwner *string `type:"string"`
9089
9090	// The status of the platform.
9091	PlatformStatus *string `type:"string" enum:"PlatformStatus"`
9092
9093	// The version of the platform.
9094	PlatformVersion *string `type:"string"`
9095
9096	// The programming languages supported by the platform.
9097	ProgrammingLanguages []*PlatformProgrammingLanguage `type:"list"`
9098
9099	// The name of the solution stack used by the platform.
9100	SolutionStackName *string `type:"string"`
9101
9102	// The additions supported by the platform.
9103	SupportedAddonList []*string `type:"list"`
9104
9105	// The tiers supported by the platform.
9106	SupportedTierList []*string `type:"list"`
9107}
9108
9109// String returns the string representation
9110func (s PlatformDescription) String() string {
9111	return awsutil.Prettify(s)
9112}
9113
9114// GoString returns the string representation
9115func (s PlatformDescription) GoString() string {
9116	return s.String()
9117}
9118
9119// SetCustomAmiList sets the CustomAmiList field's value.
9120func (s *PlatformDescription) SetCustomAmiList(v []*CustomAmi) *PlatformDescription {
9121	s.CustomAmiList = v
9122	return s
9123}
9124
9125// SetDateCreated sets the DateCreated field's value.
9126func (s *PlatformDescription) SetDateCreated(v time.Time) *PlatformDescription {
9127	s.DateCreated = &v
9128	return s
9129}
9130
9131// SetDateUpdated sets the DateUpdated field's value.
9132func (s *PlatformDescription) SetDateUpdated(v time.Time) *PlatformDescription {
9133	s.DateUpdated = &v
9134	return s
9135}
9136
9137// SetDescription sets the Description field's value.
9138func (s *PlatformDescription) SetDescription(v string) *PlatformDescription {
9139	s.Description = &v
9140	return s
9141}
9142
9143// SetFrameworks sets the Frameworks field's value.
9144func (s *PlatformDescription) SetFrameworks(v []*PlatformFramework) *PlatformDescription {
9145	s.Frameworks = v
9146	return s
9147}
9148
9149// SetMaintainer sets the Maintainer field's value.
9150func (s *PlatformDescription) SetMaintainer(v string) *PlatformDescription {
9151	s.Maintainer = &v
9152	return s
9153}
9154
9155// SetOperatingSystemName sets the OperatingSystemName field's value.
9156func (s *PlatformDescription) SetOperatingSystemName(v string) *PlatformDescription {
9157	s.OperatingSystemName = &v
9158	return s
9159}
9160
9161// SetOperatingSystemVersion sets the OperatingSystemVersion field's value.
9162func (s *PlatformDescription) SetOperatingSystemVersion(v string) *PlatformDescription {
9163	s.OperatingSystemVersion = &v
9164	return s
9165}
9166
9167// SetPlatformArn sets the PlatformArn field's value.
9168func (s *PlatformDescription) SetPlatformArn(v string) *PlatformDescription {
9169	s.PlatformArn = &v
9170	return s
9171}
9172
9173// SetPlatformCategory sets the PlatformCategory field's value.
9174func (s *PlatformDescription) SetPlatformCategory(v string) *PlatformDescription {
9175	s.PlatformCategory = &v
9176	return s
9177}
9178
9179// SetPlatformName sets the PlatformName field's value.
9180func (s *PlatformDescription) SetPlatformName(v string) *PlatformDescription {
9181	s.PlatformName = &v
9182	return s
9183}
9184
9185// SetPlatformOwner sets the PlatformOwner field's value.
9186func (s *PlatformDescription) SetPlatformOwner(v string) *PlatformDescription {
9187	s.PlatformOwner = &v
9188	return s
9189}
9190
9191// SetPlatformStatus sets the PlatformStatus field's value.
9192func (s *PlatformDescription) SetPlatformStatus(v string) *PlatformDescription {
9193	s.PlatformStatus = &v
9194	return s
9195}
9196
9197// SetPlatformVersion sets the PlatformVersion field's value.
9198func (s *PlatformDescription) SetPlatformVersion(v string) *PlatformDescription {
9199	s.PlatformVersion = &v
9200	return s
9201}
9202
9203// SetProgrammingLanguages sets the ProgrammingLanguages field's value.
9204func (s *PlatformDescription) SetProgrammingLanguages(v []*PlatformProgrammingLanguage) *PlatformDescription {
9205	s.ProgrammingLanguages = v
9206	return s
9207}
9208
9209// SetSolutionStackName sets the SolutionStackName field's value.
9210func (s *PlatformDescription) SetSolutionStackName(v string) *PlatformDescription {
9211	s.SolutionStackName = &v
9212	return s
9213}
9214
9215// SetSupportedAddonList sets the SupportedAddonList field's value.
9216func (s *PlatformDescription) SetSupportedAddonList(v []*string) *PlatformDescription {
9217	s.SupportedAddonList = v
9218	return s
9219}
9220
9221// SetSupportedTierList sets the SupportedTierList field's value.
9222func (s *PlatformDescription) SetSupportedTierList(v []*string) *PlatformDescription {
9223	s.SupportedTierList = v
9224	return s
9225}
9226
9227// Specify criteria to restrict the results when listing custom platforms.
9228//
9229// The filter is evaluated as the expression:
9230//
9231// TypeOperatorValues[i]
9232// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/PlatformFilter
9233type PlatformFilter struct {
9234	_ struct{} `type:"structure"`
9235
9236	// The operator to apply to the Type with each of the Values.
9237	//
9238	// Valid Values: = (equal to) | != (not equal to) | < (less than) | <= (less
9239	// than or equal to) | > (greater than) | >= (greater than or equal to) | contains
9240	// | begins_with | ends_with
9241	Operator *string `type:"string"`
9242
9243	// The custom platform attribute to which the filter values are applied.
9244	//
9245	// Valid Values: PlatformName | PlatformVersion | PlatformStatus | PlatformOwner
9246	Type *string `type:"string"`
9247
9248	// The list of values applied to the custom platform attribute.
9249	Values []*string `type:"list"`
9250}
9251
9252// String returns the string representation
9253func (s PlatformFilter) String() string {
9254	return awsutil.Prettify(s)
9255}
9256
9257// GoString returns the string representation
9258func (s PlatformFilter) GoString() string {
9259	return s.String()
9260}
9261
9262// SetOperator sets the Operator field's value.
9263func (s *PlatformFilter) SetOperator(v string) *PlatformFilter {
9264	s.Operator = &v
9265	return s
9266}
9267
9268// SetType sets the Type field's value.
9269func (s *PlatformFilter) SetType(v string) *PlatformFilter {
9270	s.Type = &v
9271	return s
9272}
9273
9274// SetValues sets the Values field's value.
9275func (s *PlatformFilter) SetValues(v []*string) *PlatformFilter {
9276	s.Values = v
9277	return s
9278}
9279
9280// A framework supported by the custom platform.
9281// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/PlatformFramework
9282type PlatformFramework struct {
9283	_ struct{} `type:"structure"`
9284
9285	// The name of the framework.
9286	Name *string `type:"string"`
9287
9288	// The version of the framework.
9289	Version *string `type:"string"`
9290}
9291
9292// String returns the string representation
9293func (s PlatformFramework) String() string {
9294	return awsutil.Prettify(s)
9295}
9296
9297// GoString returns the string representation
9298func (s PlatformFramework) GoString() string {
9299	return s.String()
9300}
9301
9302// SetName sets the Name field's value.
9303func (s *PlatformFramework) SetName(v string) *PlatformFramework {
9304	s.Name = &v
9305	return s
9306}
9307
9308// SetVersion sets the Version field's value.
9309func (s *PlatformFramework) SetVersion(v string) *PlatformFramework {
9310	s.Version = &v
9311	return s
9312}
9313
9314// A programming language supported by the platform.
9315// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/PlatformProgrammingLanguage
9316type PlatformProgrammingLanguage struct {
9317	_ struct{} `type:"structure"`
9318
9319	// The name of the programming language.
9320	Name *string `type:"string"`
9321
9322	// The version of the programming language.
9323	Version *string `type:"string"`
9324}
9325
9326// String returns the string representation
9327func (s PlatformProgrammingLanguage) String() string {
9328	return awsutil.Prettify(s)
9329}
9330
9331// GoString returns the string representation
9332func (s PlatformProgrammingLanguage) GoString() string {
9333	return s.String()
9334}
9335
9336// SetName sets the Name field's value.
9337func (s *PlatformProgrammingLanguage) SetName(v string) *PlatformProgrammingLanguage {
9338	s.Name = &v
9339	return s
9340}
9341
9342// SetVersion sets the Version field's value.
9343func (s *PlatformProgrammingLanguage) SetVersion(v string) *PlatformProgrammingLanguage {
9344	s.Version = &v
9345	return s
9346}
9347
9348// Detailed information about a platform.
9349// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/PlatformSummary
9350type PlatformSummary struct {
9351	_ struct{} `type:"structure"`
9352
9353	// The operating system used by the platform.
9354	OperatingSystemName *string `type:"string"`
9355
9356	// The version of the operating system used by the platform.
9357	OperatingSystemVersion *string `type:"string"`
9358
9359	// The ARN of the platform.
9360	PlatformArn *string `type:"string"`
9361
9362	// The category of platform.
9363	PlatformCategory *string `type:"string"`
9364
9365	// The AWS account ID of the person who created the platform.
9366	PlatformOwner *string `type:"string"`
9367
9368	// The status of the platform. You can create an environment from the platform
9369	// once it is ready.
9370	PlatformStatus *string `type:"string" enum:"PlatformStatus"`
9371
9372	// The additions associated with the platform.
9373	SupportedAddonList []*string `type:"list"`
9374
9375	// The tiers in which the platform runs.
9376	SupportedTierList []*string `type:"list"`
9377}
9378
9379// String returns the string representation
9380func (s PlatformSummary) String() string {
9381	return awsutil.Prettify(s)
9382}
9383
9384// GoString returns the string representation
9385func (s PlatformSummary) GoString() string {
9386	return s.String()
9387}
9388
9389// SetOperatingSystemName sets the OperatingSystemName field's value.
9390func (s *PlatformSummary) SetOperatingSystemName(v string) *PlatformSummary {
9391	s.OperatingSystemName = &v
9392	return s
9393}
9394
9395// SetOperatingSystemVersion sets the OperatingSystemVersion field's value.
9396func (s *PlatformSummary) SetOperatingSystemVersion(v string) *PlatformSummary {
9397	s.OperatingSystemVersion = &v
9398	return s
9399}
9400
9401// SetPlatformArn sets the PlatformArn field's value.
9402func (s *PlatformSummary) SetPlatformArn(v string) *PlatformSummary {
9403	s.PlatformArn = &v
9404	return s
9405}
9406
9407// SetPlatformCategory sets the PlatformCategory field's value.
9408func (s *PlatformSummary) SetPlatformCategory(v string) *PlatformSummary {
9409	s.PlatformCategory = &v
9410	return s
9411}
9412
9413// SetPlatformOwner sets the PlatformOwner field's value.
9414func (s *PlatformSummary) SetPlatformOwner(v string) *PlatformSummary {
9415	s.PlatformOwner = &v
9416	return s
9417}
9418
9419// SetPlatformStatus sets the PlatformStatus field's value.
9420func (s *PlatformSummary) SetPlatformStatus(v string) *PlatformSummary {
9421	s.PlatformStatus = &v
9422	return s
9423}
9424
9425// SetSupportedAddonList sets the SupportedAddonList field's value.
9426func (s *PlatformSummary) SetSupportedAddonList(v []*string) *PlatformSummary {
9427	s.SupportedAddonList = v
9428	return s
9429}
9430
9431// SetSupportedTierList sets the SupportedTierList field's value.
9432func (s *PlatformSummary) SetSupportedTierList(v []*string) *PlatformSummary {
9433	s.SupportedTierList = v
9434	return s
9435}
9436
9437// Describes a queue.
9438// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/Queue
9439type Queue struct {
9440	_ struct{} `type:"structure"`
9441
9442	// The name of the queue.
9443	Name *string `type:"string"`
9444
9445	// The URL of the queue.
9446	URL *string `type:"string"`
9447}
9448
9449// String returns the string representation
9450func (s Queue) String() string {
9451	return awsutil.Prettify(s)
9452}
9453
9454// GoString returns the string representation
9455func (s Queue) GoString() string {
9456	return s.String()
9457}
9458
9459// SetName sets the Name field's value.
9460func (s *Queue) SetName(v string) *Queue {
9461	s.Name = &v
9462	return s
9463}
9464
9465// SetURL sets the URL field's value.
9466func (s *Queue) SetURL(v string) *Queue {
9467	s.URL = &v
9468	return s
9469}
9470
9471// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/RebuildEnvironmentMessage
9472type RebuildEnvironmentInput struct {
9473	_ struct{} `type:"structure"`
9474
9475	// The ID of the environment to rebuild.
9476	//
9477	// Condition: You must specify either this or an EnvironmentName, or both. If
9478	// you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter
9479	// error.
9480	EnvironmentId *string `type:"string"`
9481
9482	// The name of the environment to rebuild.
9483	//
9484	// Condition: You must specify either this or an EnvironmentId, or both. If
9485	// you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter
9486	// error.
9487	EnvironmentName *string `min:"4" type:"string"`
9488}
9489
9490// String returns the string representation
9491func (s RebuildEnvironmentInput) String() string {
9492	return awsutil.Prettify(s)
9493}
9494
9495// GoString returns the string representation
9496func (s RebuildEnvironmentInput) GoString() string {
9497	return s.String()
9498}
9499
9500// Validate inspects the fields of the type to determine if they are valid.
9501func (s *RebuildEnvironmentInput) Validate() error {
9502	invalidParams := request.ErrInvalidParams{Context: "RebuildEnvironmentInput"}
9503	if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 {
9504		invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4))
9505	}
9506
9507	if invalidParams.Len() > 0 {
9508		return invalidParams
9509	}
9510	return nil
9511}
9512
9513// SetEnvironmentId sets the EnvironmentId field's value.
9514func (s *RebuildEnvironmentInput) SetEnvironmentId(v string) *RebuildEnvironmentInput {
9515	s.EnvironmentId = &v
9516	return s
9517}
9518
9519// SetEnvironmentName sets the EnvironmentName field's value.
9520func (s *RebuildEnvironmentInput) SetEnvironmentName(v string) *RebuildEnvironmentInput {
9521	s.EnvironmentName = &v
9522	return s
9523}
9524
9525// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/RebuildEnvironmentOutput
9526type RebuildEnvironmentOutput struct {
9527	_ struct{} `type:"structure"`
9528}
9529
9530// String returns the string representation
9531func (s RebuildEnvironmentOutput) String() string {
9532	return awsutil.Prettify(s)
9533}
9534
9535// GoString returns the string representation
9536func (s RebuildEnvironmentOutput) GoString() string {
9537	return s.String()
9538}
9539
9540// Request to retrieve logs from an environment and store them in your Elastic
9541// Beanstalk storage bucket.
9542// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/RequestEnvironmentInfoMessage
9543type RequestEnvironmentInfoInput struct {
9544	_ struct{} `type:"structure"`
9545
9546	// The ID of the environment of the requested data.
9547	//
9548	// If no such environment is found, RequestEnvironmentInfo returns an InvalidParameterValue
9549	// error.
9550	//
9551	// Condition: You must specify either this or an EnvironmentName, or both. If
9552	// you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter
9553	// error.
9554	EnvironmentId *string `type:"string"`
9555
9556	// The name of the environment of the requested data.
9557	//
9558	// If no such environment is found, RequestEnvironmentInfo returns an InvalidParameterValue
9559	// error.
9560	//
9561	// Condition: You must specify either this or an EnvironmentId, or both. If
9562	// you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter
9563	// error.
9564	EnvironmentName *string `min:"4" type:"string"`
9565
9566	// The type of information to request.
9567	//
9568	// InfoType is a required field
9569	InfoType *string `type:"string" required:"true" enum:"EnvironmentInfoType"`
9570}
9571
9572// String returns the string representation
9573func (s RequestEnvironmentInfoInput) String() string {
9574	return awsutil.Prettify(s)
9575}
9576
9577// GoString returns the string representation
9578func (s RequestEnvironmentInfoInput) GoString() string {
9579	return s.String()
9580}
9581
9582// Validate inspects the fields of the type to determine if they are valid.
9583func (s *RequestEnvironmentInfoInput) Validate() error {
9584	invalidParams := request.ErrInvalidParams{Context: "RequestEnvironmentInfoInput"}
9585	if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 {
9586		invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4))
9587	}
9588	if s.InfoType == nil {
9589		invalidParams.Add(request.NewErrParamRequired("InfoType"))
9590	}
9591
9592	if invalidParams.Len() > 0 {
9593		return invalidParams
9594	}
9595	return nil
9596}
9597
9598// SetEnvironmentId sets the EnvironmentId field's value.
9599func (s *RequestEnvironmentInfoInput) SetEnvironmentId(v string) *RequestEnvironmentInfoInput {
9600	s.EnvironmentId = &v
9601	return s
9602}
9603
9604// SetEnvironmentName sets the EnvironmentName field's value.
9605func (s *RequestEnvironmentInfoInput) SetEnvironmentName(v string) *RequestEnvironmentInfoInput {
9606	s.EnvironmentName = &v
9607	return s
9608}
9609
9610// SetInfoType sets the InfoType field's value.
9611func (s *RequestEnvironmentInfoInput) SetInfoType(v string) *RequestEnvironmentInfoInput {
9612	s.InfoType = &v
9613	return s
9614}
9615
9616// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/RequestEnvironmentInfoOutput
9617type RequestEnvironmentInfoOutput struct {
9618	_ struct{} `type:"structure"`
9619}
9620
9621// String returns the string representation
9622func (s RequestEnvironmentInfoOutput) String() string {
9623	return awsutil.Prettify(s)
9624}
9625
9626// GoString returns the string representation
9627func (s RequestEnvironmentInfoOutput) GoString() string {
9628	return s.String()
9629}
9630
9631// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/RestartAppServerMessage
9632type RestartAppServerInput struct {
9633	_ struct{} `type:"structure"`
9634
9635	// The ID of the environment to restart the server for.
9636	//
9637	// Condition: You must specify either this or an EnvironmentName, or both. If
9638	// you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter
9639	// error.
9640	EnvironmentId *string `type:"string"`
9641
9642	// The name of the environment to restart the server for.
9643	//
9644	// Condition: You must specify either this or an EnvironmentId, or both. If
9645	// you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter
9646	// error.
9647	EnvironmentName *string `min:"4" type:"string"`
9648}
9649
9650// String returns the string representation
9651func (s RestartAppServerInput) String() string {
9652	return awsutil.Prettify(s)
9653}
9654
9655// GoString returns the string representation
9656func (s RestartAppServerInput) GoString() string {
9657	return s.String()
9658}
9659
9660// Validate inspects the fields of the type to determine if they are valid.
9661func (s *RestartAppServerInput) Validate() error {
9662	invalidParams := request.ErrInvalidParams{Context: "RestartAppServerInput"}
9663	if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 {
9664		invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4))
9665	}
9666
9667	if invalidParams.Len() > 0 {
9668		return invalidParams
9669	}
9670	return nil
9671}
9672
9673// SetEnvironmentId sets the EnvironmentId field's value.
9674func (s *RestartAppServerInput) SetEnvironmentId(v string) *RestartAppServerInput {
9675	s.EnvironmentId = &v
9676	return s
9677}
9678
9679// SetEnvironmentName sets the EnvironmentName field's value.
9680func (s *RestartAppServerInput) SetEnvironmentName(v string) *RestartAppServerInput {
9681	s.EnvironmentName = &v
9682	return s
9683}
9684
9685// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/RestartAppServerOutput
9686type RestartAppServerOutput struct {
9687	_ struct{} `type:"structure"`
9688}
9689
9690// String returns the string representation
9691func (s RestartAppServerOutput) String() string {
9692	return awsutil.Prettify(s)
9693}
9694
9695// GoString returns the string representation
9696func (s RestartAppServerOutput) GoString() string {
9697	return s.String()
9698}
9699
9700// Request to download logs retrieved with RequestEnvironmentInfo.
9701// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/RetrieveEnvironmentInfoMessage
9702type RetrieveEnvironmentInfoInput struct {
9703	_ struct{} `type:"structure"`
9704
9705	// The ID of the data's environment.
9706	//
9707	// If no such environment is found, returns an InvalidParameterValue error.
9708	//
9709	// Condition: You must specify either this or an EnvironmentName, or both. If
9710	// you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter
9711	// error.
9712	EnvironmentId *string `type:"string"`
9713
9714	// The name of the data's environment.
9715	//
9716	// If no such environment is found, returns an InvalidParameterValue error.
9717	//
9718	// Condition: You must specify either this or an EnvironmentId, or both. If
9719	// you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter
9720	// error.
9721	EnvironmentName *string `min:"4" type:"string"`
9722
9723	// The type of information to retrieve.
9724	//
9725	// InfoType is a required field
9726	InfoType *string `type:"string" required:"true" enum:"EnvironmentInfoType"`
9727}
9728
9729// String returns the string representation
9730func (s RetrieveEnvironmentInfoInput) String() string {
9731	return awsutil.Prettify(s)
9732}
9733
9734// GoString returns the string representation
9735func (s RetrieveEnvironmentInfoInput) GoString() string {
9736	return s.String()
9737}
9738
9739// Validate inspects the fields of the type to determine if they are valid.
9740func (s *RetrieveEnvironmentInfoInput) Validate() error {
9741	invalidParams := request.ErrInvalidParams{Context: "RetrieveEnvironmentInfoInput"}
9742	if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 {
9743		invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4))
9744	}
9745	if s.InfoType == nil {
9746		invalidParams.Add(request.NewErrParamRequired("InfoType"))
9747	}
9748
9749	if invalidParams.Len() > 0 {
9750		return invalidParams
9751	}
9752	return nil
9753}
9754
9755// SetEnvironmentId sets the EnvironmentId field's value.
9756func (s *RetrieveEnvironmentInfoInput) SetEnvironmentId(v string) *RetrieveEnvironmentInfoInput {
9757	s.EnvironmentId = &v
9758	return s
9759}
9760
9761// SetEnvironmentName sets the EnvironmentName field's value.
9762func (s *RetrieveEnvironmentInfoInput) SetEnvironmentName(v string) *RetrieveEnvironmentInfoInput {
9763	s.EnvironmentName = &v
9764	return s
9765}
9766
9767// SetInfoType sets the InfoType field's value.
9768func (s *RetrieveEnvironmentInfoInput) SetInfoType(v string) *RetrieveEnvironmentInfoInput {
9769	s.InfoType = &v
9770	return s
9771}
9772
9773// Result message containing a description of the requested environment info.
9774// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/RetrieveEnvironmentInfoResultMessage
9775type RetrieveEnvironmentInfoOutput struct {
9776	_ struct{} `type:"structure"`
9777
9778	// The EnvironmentInfoDescription of the environment.
9779	EnvironmentInfo []*EnvironmentInfoDescription `type:"list"`
9780}
9781
9782// String returns the string representation
9783func (s RetrieveEnvironmentInfoOutput) String() string {
9784	return awsutil.Prettify(s)
9785}
9786
9787// GoString returns the string representation
9788func (s RetrieveEnvironmentInfoOutput) GoString() string {
9789	return s.String()
9790}
9791
9792// SetEnvironmentInfo sets the EnvironmentInfo field's value.
9793func (s *RetrieveEnvironmentInfoOutput) SetEnvironmentInfo(v []*EnvironmentInfoDescription) *RetrieveEnvironmentInfoOutput {
9794	s.EnvironmentInfo = v
9795	return s
9796}
9797
9798// The bucket and key of an item stored in Amazon S3.
9799// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/S3Location
9800type S3Location struct {
9801	_ struct{} `type:"structure"`
9802
9803	// The Amazon S3 bucket where the data is located.
9804	S3Bucket *string `type:"string"`
9805
9806	// The Amazon S3 key where the data is located.
9807	S3Key *string `type:"string"`
9808}
9809
9810// String returns the string representation
9811func (s S3Location) String() string {
9812	return awsutil.Prettify(s)
9813}
9814
9815// GoString returns the string representation
9816func (s S3Location) GoString() string {
9817	return s.String()
9818}
9819
9820// SetS3Bucket sets the S3Bucket field's value.
9821func (s *S3Location) SetS3Bucket(v string) *S3Location {
9822	s.S3Bucket = &v
9823	return s
9824}
9825
9826// SetS3Key sets the S3Key field's value.
9827func (s *S3Location) SetS3Key(v string) *S3Location {
9828	s.S3Key = &v
9829	return s
9830}
9831
9832// Detailed health information about an Amazon EC2 instance in your Elastic
9833// Beanstalk environment.
9834// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/SingleInstanceHealth
9835type SingleInstanceHealth struct {
9836	_ struct{} `type:"structure"`
9837
9838	// Request metrics from your application.
9839	ApplicationMetrics *ApplicationMetrics `type:"structure"`
9840
9841	// The availability zone in which the instance runs.
9842	AvailabilityZone *string `type:"string"`
9843
9844	// Represents the causes, which provide more information about the current health
9845	// status.
9846	Causes []*string `type:"list"`
9847
9848	// Represents the color indicator that gives you information about the health
9849	// of the EC2 instance. For more information, see Health Colors and Statuses
9850	// (http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/health-enhanced-status.html).
9851	Color *string `type:"string"`
9852
9853	// Information about the most recent deployment to an instance.
9854	Deployment *Deployment `type:"structure"`
9855
9856	// Returns the health status of the specified instance. For more information,
9857	// see Health Colors and Statuses (http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/health-enhanced-status.html).
9858	HealthStatus *string `type:"string"`
9859
9860	// The ID of the Amazon EC2 instance.
9861	InstanceId *string `min:"1" type:"string"`
9862
9863	// The instance's type.
9864	InstanceType *string `type:"string"`
9865
9866	// The time at which the EC2 instance was launched.
9867	LaunchedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"`
9868
9869	// Operating system metrics from the instance.
9870	System *SystemStatus `type:"structure"`
9871}
9872
9873// String returns the string representation
9874func (s SingleInstanceHealth) String() string {
9875	return awsutil.Prettify(s)
9876}
9877
9878// GoString returns the string representation
9879func (s SingleInstanceHealth) GoString() string {
9880	return s.String()
9881}
9882
9883// SetApplicationMetrics sets the ApplicationMetrics field's value.
9884func (s *SingleInstanceHealth) SetApplicationMetrics(v *ApplicationMetrics) *SingleInstanceHealth {
9885	s.ApplicationMetrics = v
9886	return s
9887}
9888
9889// SetAvailabilityZone sets the AvailabilityZone field's value.
9890func (s *SingleInstanceHealth) SetAvailabilityZone(v string) *SingleInstanceHealth {
9891	s.AvailabilityZone = &v
9892	return s
9893}
9894
9895// SetCauses sets the Causes field's value.
9896func (s *SingleInstanceHealth) SetCauses(v []*string) *SingleInstanceHealth {
9897	s.Causes = v
9898	return s
9899}
9900
9901// SetColor sets the Color field's value.
9902func (s *SingleInstanceHealth) SetColor(v string) *SingleInstanceHealth {
9903	s.Color = &v
9904	return s
9905}
9906
9907// SetDeployment sets the Deployment field's value.
9908func (s *SingleInstanceHealth) SetDeployment(v *Deployment) *SingleInstanceHealth {
9909	s.Deployment = v
9910	return s
9911}
9912
9913// SetHealthStatus sets the HealthStatus field's value.
9914func (s *SingleInstanceHealth) SetHealthStatus(v string) *SingleInstanceHealth {
9915	s.HealthStatus = &v
9916	return s
9917}
9918
9919// SetInstanceId sets the InstanceId field's value.
9920func (s *SingleInstanceHealth) SetInstanceId(v string) *SingleInstanceHealth {
9921	s.InstanceId = &v
9922	return s
9923}
9924
9925// SetInstanceType sets the InstanceType field's value.
9926func (s *SingleInstanceHealth) SetInstanceType(v string) *SingleInstanceHealth {
9927	s.InstanceType = &v
9928	return s
9929}
9930
9931// SetLaunchedAt sets the LaunchedAt field's value.
9932func (s *SingleInstanceHealth) SetLaunchedAt(v time.Time) *SingleInstanceHealth {
9933	s.LaunchedAt = &v
9934	return s
9935}
9936
9937// SetSystem sets the System field's value.
9938func (s *SingleInstanceHealth) SetSystem(v *SystemStatus) *SingleInstanceHealth {
9939	s.System = v
9940	return s
9941}
9942
9943// Describes the solution stack.
9944// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/SolutionStackDescription
9945type SolutionStackDescription struct {
9946	_ struct{} `type:"structure"`
9947
9948	// The permitted file types allowed for a solution stack.
9949	PermittedFileTypes []*string `type:"list"`
9950
9951	// The name of the solution stack.
9952	SolutionStackName *string `type:"string"`
9953}
9954
9955// String returns the string representation
9956func (s SolutionStackDescription) String() string {
9957	return awsutil.Prettify(s)
9958}
9959
9960// GoString returns the string representation
9961func (s SolutionStackDescription) GoString() string {
9962	return s.String()
9963}
9964
9965// SetPermittedFileTypes sets the PermittedFileTypes field's value.
9966func (s *SolutionStackDescription) SetPermittedFileTypes(v []*string) *SolutionStackDescription {
9967	s.PermittedFileTypes = v
9968	return s
9969}
9970
9971// SetSolutionStackName sets the SolutionStackName field's value.
9972func (s *SolutionStackDescription) SetSolutionStackName(v string) *SolutionStackDescription {
9973	s.SolutionStackName = &v
9974	return s
9975}
9976
9977// Location of the source code for an application version.
9978// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/SourceBuildInformation
9979type SourceBuildInformation struct {
9980	_ struct{} `type:"structure"`
9981
9982	// The location of the source code, as a formatted string, depending on the
9983	// value of SourceRepository
9984	//
9985	//    * For CodeCommit, the format is the repository name and commit ID, separated
9986	//    by a forward slash. For example, my-git-repo/265cfa0cf6af46153527f55d6503ec030551f57a.
9987	//
9988	//    * For S3, the format is the S3 bucket name and object key, separated by
9989	//    a forward slash. For example, my-s3-bucket/Folders/my-source-file.
9990	//
9991	// SourceLocation is a required field
9992	SourceLocation *string `min:"3" type:"string" required:"true"`
9993
9994	// Location where the repository is stored.
9995	//
9996	//    * CodeCommit
9997	//
9998	//    * S3
9999	//
10000	// SourceRepository is a required field
10001	SourceRepository *string `type:"string" required:"true" enum:"SourceRepository"`
10002
10003	// The type of repository.
10004	//
10005	//    * Git
10006	//
10007	//    * Zip
10008	//
10009	// SourceType is a required field
10010	SourceType *string `type:"string" required:"true" enum:"SourceType"`
10011}
10012
10013// String returns the string representation
10014func (s SourceBuildInformation) String() string {
10015	return awsutil.Prettify(s)
10016}
10017
10018// GoString returns the string representation
10019func (s SourceBuildInformation) GoString() string {
10020	return s.String()
10021}
10022
10023// Validate inspects the fields of the type to determine if they are valid.
10024func (s *SourceBuildInformation) Validate() error {
10025	invalidParams := request.ErrInvalidParams{Context: "SourceBuildInformation"}
10026	if s.SourceLocation == nil {
10027		invalidParams.Add(request.NewErrParamRequired("SourceLocation"))
10028	}
10029	if s.SourceLocation != nil && len(*s.SourceLocation) < 3 {
10030		invalidParams.Add(request.NewErrParamMinLen("SourceLocation", 3))
10031	}
10032	if s.SourceRepository == nil {
10033		invalidParams.Add(request.NewErrParamRequired("SourceRepository"))
10034	}
10035	if s.SourceType == nil {
10036		invalidParams.Add(request.NewErrParamRequired("SourceType"))
10037	}
10038
10039	if invalidParams.Len() > 0 {
10040		return invalidParams
10041	}
10042	return nil
10043}
10044
10045// SetSourceLocation sets the SourceLocation field's value.
10046func (s *SourceBuildInformation) SetSourceLocation(v string) *SourceBuildInformation {
10047	s.SourceLocation = &v
10048	return s
10049}
10050
10051// SetSourceRepository sets the SourceRepository field's value.
10052func (s *SourceBuildInformation) SetSourceRepository(v string) *SourceBuildInformation {
10053	s.SourceRepository = &v
10054	return s
10055}
10056
10057// SetSourceType sets the SourceType field's value.
10058func (s *SourceBuildInformation) SetSourceType(v string) *SourceBuildInformation {
10059	s.SourceType = &v
10060	return s
10061}
10062
10063// A specification for an environment configuration
10064// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/SourceConfiguration
10065type SourceConfiguration struct {
10066	_ struct{} `type:"structure"`
10067
10068	// The name of the application associated with the configuration.
10069	ApplicationName *string `min:"1" type:"string"`
10070
10071	// The name of the configuration template.
10072	TemplateName *string `min:"1" type:"string"`
10073}
10074
10075// String returns the string representation
10076func (s SourceConfiguration) String() string {
10077	return awsutil.Prettify(s)
10078}
10079
10080// GoString returns the string representation
10081func (s SourceConfiguration) GoString() string {
10082	return s.String()
10083}
10084
10085// Validate inspects the fields of the type to determine if they are valid.
10086func (s *SourceConfiguration) Validate() error {
10087	invalidParams := request.ErrInvalidParams{Context: "SourceConfiguration"}
10088	if s.ApplicationName != nil && len(*s.ApplicationName) < 1 {
10089		invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1))
10090	}
10091	if s.TemplateName != nil && len(*s.TemplateName) < 1 {
10092		invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1))
10093	}
10094
10095	if invalidParams.Len() > 0 {
10096		return invalidParams
10097	}
10098	return nil
10099}
10100
10101// SetApplicationName sets the ApplicationName field's value.
10102func (s *SourceConfiguration) SetApplicationName(v string) *SourceConfiguration {
10103	s.ApplicationName = &v
10104	return s
10105}
10106
10107// SetTemplateName sets the TemplateName field's value.
10108func (s *SourceConfiguration) SetTemplateName(v string) *SourceConfiguration {
10109	s.TemplateName = &v
10110	return s
10111}
10112
10113// Represents the percentage of requests over the last 10 seconds that resulted
10114// in each type of status code response. For more information, see Status Code
10115// Definitions (http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html).
10116// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/StatusCodes
10117type StatusCodes struct {
10118	_ struct{} `type:"structure"`
10119
10120	// The percentage of requests over the last 10 seconds that resulted in a 2xx
10121	// (200, 201, etc.) status code.
10122	Status2xx *int64 `type:"integer"`
10123
10124	// The percentage of requests over the last 10 seconds that resulted in a 3xx
10125	// (300, 301, etc.) status code.
10126	Status3xx *int64 `type:"integer"`
10127
10128	// The percentage of requests over the last 10 seconds that resulted in a 4xx
10129	// (400, 401, etc.) status code.
10130	Status4xx *int64 `type:"integer"`
10131
10132	// The percentage of requests over the last 10 seconds that resulted in a 5xx
10133	// (500, 501, etc.) status code.
10134	Status5xx *int64 `type:"integer"`
10135}
10136
10137// String returns the string representation
10138func (s StatusCodes) String() string {
10139	return awsutil.Prettify(s)
10140}
10141
10142// GoString returns the string representation
10143func (s StatusCodes) GoString() string {
10144	return s.String()
10145}
10146
10147// SetStatus2xx sets the Status2xx field's value.
10148func (s *StatusCodes) SetStatus2xx(v int64) *StatusCodes {
10149	s.Status2xx = &v
10150	return s
10151}
10152
10153// SetStatus3xx sets the Status3xx field's value.
10154func (s *StatusCodes) SetStatus3xx(v int64) *StatusCodes {
10155	s.Status3xx = &v
10156	return s
10157}
10158
10159// SetStatus4xx sets the Status4xx field's value.
10160func (s *StatusCodes) SetStatus4xx(v int64) *StatusCodes {
10161	s.Status4xx = &v
10162	return s
10163}
10164
10165// SetStatus5xx sets the Status5xx field's value.
10166func (s *StatusCodes) SetStatus5xx(v int64) *StatusCodes {
10167	s.Status5xx = &v
10168	return s
10169}
10170
10171// Swaps the CNAMEs of two environments.
10172// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/SwapEnvironmentCNAMEsMessage
10173type SwapEnvironmentCNAMEsInput struct {
10174	_ struct{} `type:"structure"`
10175
10176	// The ID of the destination environment.
10177	//
10178	// Condition: You must specify at least the DestinationEnvironmentID or the
10179	// DestinationEnvironmentName. You may also specify both. You must specify the
10180	// SourceEnvironmentId with the DestinationEnvironmentId.
10181	DestinationEnvironmentId *string `type:"string"`
10182
10183	// The name of the destination environment.
10184	//
10185	// Condition: You must specify at least the DestinationEnvironmentID or the
10186	// DestinationEnvironmentName. You may also specify both. You must specify the
10187	// SourceEnvironmentName with the DestinationEnvironmentName.
10188	DestinationEnvironmentName *string `min:"4" type:"string"`
10189
10190	// The ID of the source environment.
10191	//
10192	// Condition: You must specify at least the SourceEnvironmentID or the SourceEnvironmentName.
10193	// You may also specify both. If you specify the SourceEnvironmentId, you must
10194	// specify the DestinationEnvironmentId.
10195	SourceEnvironmentId *string `type:"string"`
10196
10197	// The name of the source environment.
10198	//
10199	// Condition: You must specify at least the SourceEnvironmentID or the SourceEnvironmentName.
10200	// You may also specify both. If you specify the SourceEnvironmentName, you
10201	// must specify the DestinationEnvironmentName.
10202	SourceEnvironmentName *string `min:"4" type:"string"`
10203}
10204
10205// String returns the string representation
10206func (s SwapEnvironmentCNAMEsInput) String() string {
10207	return awsutil.Prettify(s)
10208}
10209
10210// GoString returns the string representation
10211func (s SwapEnvironmentCNAMEsInput) GoString() string {
10212	return s.String()
10213}
10214
10215// Validate inspects the fields of the type to determine if they are valid.
10216func (s *SwapEnvironmentCNAMEsInput) Validate() error {
10217	invalidParams := request.ErrInvalidParams{Context: "SwapEnvironmentCNAMEsInput"}
10218	if s.DestinationEnvironmentName != nil && len(*s.DestinationEnvironmentName) < 4 {
10219		invalidParams.Add(request.NewErrParamMinLen("DestinationEnvironmentName", 4))
10220	}
10221	if s.SourceEnvironmentName != nil && len(*s.SourceEnvironmentName) < 4 {
10222		invalidParams.Add(request.NewErrParamMinLen("SourceEnvironmentName", 4))
10223	}
10224
10225	if invalidParams.Len() > 0 {
10226		return invalidParams
10227	}
10228	return nil
10229}
10230
10231// SetDestinationEnvironmentId sets the DestinationEnvironmentId field's value.
10232func (s *SwapEnvironmentCNAMEsInput) SetDestinationEnvironmentId(v string) *SwapEnvironmentCNAMEsInput {
10233	s.DestinationEnvironmentId = &v
10234	return s
10235}
10236
10237// SetDestinationEnvironmentName sets the DestinationEnvironmentName field's value.
10238func (s *SwapEnvironmentCNAMEsInput) SetDestinationEnvironmentName(v string) *SwapEnvironmentCNAMEsInput {
10239	s.DestinationEnvironmentName = &v
10240	return s
10241}
10242
10243// SetSourceEnvironmentId sets the SourceEnvironmentId field's value.
10244func (s *SwapEnvironmentCNAMEsInput) SetSourceEnvironmentId(v string) *SwapEnvironmentCNAMEsInput {
10245	s.SourceEnvironmentId = &v
10246	return s
10247}
10248
10249// SetSourceEnvironmentName sets the SourceEnvironmentName field's value.
10250func (s *SwapEnvironmentCNAMEsInput) SetSourceEnvironmentName(v string) *SwapEnvironmentCNAMEsInput {
10251	s.SourceEnvironmentName = &v
10252	return s
10253}
10254
10255// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/SwapEnvironmentCNAMEsOutput
10256type SwapEnvironmentCNAMEsOutput struct {
10257	_ struct{} `type:"structure"`
10258}
10259
10260// String returns the string representation
10261func (s SwapEnvironmentCNAMEsOutput) String() string {
10262	return awsutil.Prettify(s)
10263}
10264
10265// GoString returns the string representation
10266func (s SwapEnvironmentCNAMEsOutput) GoString() string {
10267	return s.String()
10268}
10269
10270// CPU utilization and load average metrics for an Amazon EC2 instance.
10271// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/SystemStatus
10272type SystemStatus struct {
10273	_ struct{} `type:"structure"`
10274
10275	// CPU utilization metrics for the instance.
10276	CPUUtilization *CPUUtilization `type:"structure"`
10277
10278	// Load average in the last 1-minute, 5-minute, and 15-minute periods. For more
10279	// information, see Operating System Metrics (http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/health-enhanced-metrics.html#health-enhanced-metrics-os).
10280	LoadAverage []*float64 `type:"list"`
10281}
10282
10283// String returns the string representation
10284func (s SystemStatus) String() string {
10285	return awsutil.Prettify(s)
10286}
10287
10288// GoString returns the string representation
10289func (s SystemStatus) GoString() string {
10290	return s.String()
10291}
10292
10293// SetCPUUtilization sets the CPUUtilization field's value.
10294func (s *SystemStatus) SetCPUUtilization(v *CPUUtilization) *SystemStatus {
10295	s.CPUUtilization = v
10296	return s
10297}
10298
10299// SetLoadAverage sets the LoadAverage field's value.
10300func (s *SystemStatus) SetLoadAverage(v []*float64) *SystemStatus {
10301	s.LoadAverage = v
10302	return s
10303}
10304
10305// Describes a tag applied to a resource in an environment.
10306// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/Tag
10307type Tag struct {
10308	_ struct{} `type:"structure"`
10309
10310	// The key of the tag.
10311	Key *string `min:"1" type:"string"`
10312
10313	// The value of the tag.
10314	Value *string `min:"1" type:"string"`
10315}
10316
10317// String returns the string representation
10318func (s Tag) String() string {
10319	return awsutil.Prettify(s)
10320}
10321
10322// GoString returns the string representation
10323func (s Tag) GoString() string {
10324	return s.String()
10325}
10326
10327// Validate inspects the fields of the type to determine if they are valid.
10328func (s *Tag) Validate() error {
10329	invalidParams := request.ErrInvalidParams{Context: "Tag"}
10330	if s.Key != nil && len(*s.Key) < 1 {
10331		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
10332	}
10333	if s.Value != nil && len(*s.Value) < 1 {
10334		invalidParams.Add(request.NewErrParamMinLen("Value", 1))
10335	}
10336
10337	if invalidParams.Len() > 0 {
10338		return invalidParams
10339	}
10340	return nil
10341}
10342
10343// SetKey sets the Key field's value.
10344func (s *Tag) SetKey(v string) *Tag {
10345	s.Key = &v
10346	return s
10347}
10348
10349// SetValue sets the Value field's value.
10350func (s *Tag) SetValue(v string) *Tag {
10351	s.Value = &v
10352	return s
10353}
10354
10355// Request to terminate an environment.
10356// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/TerminateEnvironmentMessage
10357type TerminateEnvironmentInput struct {
10358	_ struct{} `type:"structure"`
10359
10360	// The ID of the environment to terminate.
10361	//
10362	// Condition: You must specify either this or an EnvironmentName, or both. If
10363	// you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter
10364	// error.
10365	EnvironmentId *string `type:"string"`
10366
10367	// The name of the environment to terminate.
10368	//
10369	// Condition: You must specify either this or an EnvironmentId, or both. If
10370	// you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter
10371	// error.
10372	EnvironmentName *string `min:"4" type:"string"`
10373
10374	// Terminates the target environment even if another environment in the same
10375	// group is dependent on it.
10376	ForceTerminate *bool `type:"boolean"`
10377
10378	// Indicates whether the associated AWS resources should shut down when the
10379	// environment is terminated:
10380	//
10381	//    * true: The specified environment as well as the associated AWS resources,
10382	//    such as Auto Scaling group and LoadBalancer, are terminated.
10383	//
10384	//    * false: AWS Elastic Beanstalk resource management is removed from the
10385	//    environment, but the AWS resources continue to operate.
10386	//
10387	// For more information, see the  AWS Elastic Beanstalk User Guide.  (http://docs.aws.amazon.com/elasticbeanstalk/latest/ug/)
10388	//
10389	// Default: true
10390	//
10391	// Valid Values: true | false
10392	TerminateResources *bool `type:"boolean"`
10393}
10394
10395// String returns the string representation
10396func (s TerminateEnvironmentInput) String() string {
10397	return awsutil.Prettify(s)
10398}
10399
10400// GoString returns the string representation
10401func (s TerminateEnvironmentInput) GoString() string {
10402	return s.String()
10403}
10404
10405// Validate inspects the fields of the type to determine if they are valid.
10406func (s *TerminateEnvironmentInput) Validate() error {
10407	invalidParams := request.ErrInvalidParams{Context: "TerminateEnvironmentInput"}
10408	if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 {
10409		invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4))
10410	}
10411
10412	if invalidParams.Len() > 0 {
10413		return invalidParams
10414	}
10415	return nil
10416}
10417
10418// SetEnvironmentId sets the EnvironmentId field's value.
10419func (s *TerminateEnvironmentInput) SetEnvironmentId(v string) *TerminateEnvironmentInput {
10420	s.EnvironmentId = &v
10421	return s
10422}
10423
10424// SetEnvironmentName sets the EnvironmentName field's value.
10425func (s *TerminateEnvironmentInput) SetEnvironmentName(v string) *TerminateEnvironmentInput {
10426	s.EnvironmentName = &v
10427	return s
10428}
10429
10430// SetForceTerminate sets the ForceTerminate field's value.
10431func (s *TerminateEnvironmentInput) SetForceTerminate(v bool) *TerminateEnvironmentInput {
10432	s.ForceTerminate = &v
10433	return s
10434}
10435
10436// SetTerminateResources sets the TerminateResources field's value.
10437func (s *TerminateEnvironmentInput) SetTerminateResources(v bool) *TerminateEnvironmentInput {
10438	s.TerminateResources = &v
10439	return s
10440}
10441
10442// Describes a trigger.
10443// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/Trigger
10444type Trigger struct {
10445	_ struct{} `type:"structure"`
10446
10447	// The name of the trigger.
10448	Name *string `type:"string"`
10449}
10450
10451// String returns the string representation
10452func (s Trigger) String() string {
10453	return awsutil.Prettify(s)
10454}
10455
10456// GoString returns the string representation
10457func (s Trigger) GoString() string {
10458	return s.String()
10459}
10460
10461// SetName sets the Name field's value.
10462func (s *Trigger) SetName(v string) *Trigger {
10463	s.Name = &v
10464	return s
10465}
10466
10467// Request to update an application.
10468// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/UpdateApplicationMessage
10469type UpdateApplicationInput struct {
10470	_ struct{} `type:"structure"`
10471
10472	// The name of the application to update. If no such application is found, UpdateApplication
10473	// returns an InvalidParameterValue error.
10474	//
10475	// ApplicationName is a required field
10476	ApplicationName *string `min:"1" type:"string" required:"true"`
10477
10478	// A new description for the application.
10479	//
10480	// Default: If not specified, AWS Elastic Beanstalk does not update the description.
10481	Description *string `type:"string"`
10482}
10483
10484// String returns the string representation
10485func (s UpdateApplicationInput) String() string {
10486	return awsutil.Prettify(s)
10487}
10488
10489// GoString returns the string representation
10490func (s UpdateApplicationInput) GoString() string {
10491	return s.String()
10492}
10493
10494// Validate inspects the fields of the type to determine if they are valid.
10495func (s *UpdateApplicationInput) Validate() error {
10496	invalidParams := request.ErrInvalidParams{Context: "UpdateApplicationInput"}
10497	if s.ApplicationName == nil {
10498		invalidParams.Add(request.NewErrParamRequired("ApplicationName"))
10499	}
10500	if s.ApplicationName != nil && len(*s.ApplicationName) < 1 {
10501		invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1))
10502	}
10503
10504	if invalidParams.Len() > 0 {
10505		return invalidParams
10506	}
10507	return nil
10508}
10509
10510// SetApplicationName sets the ApplicationName field's value.
10511func (s *UpdateApplicationInput) SetApplicationName(v string) *UpdateApplicationInput {
10512	s.ApplicationName = &v
10513	return s
10514}
10515
10516// SetDescription sets the Description field's value.
10517func (s *UpdateApplicationInput) SetDescription(v string) *UpdateApplicationInput {
10518	s.Description = &v
10519	return s
10520}
10521
10522// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/UpdateApplicationResourceLifecycleMessage
10523type UpdateApplicationResourceLifecycleInput struct {
10524	_ struct{} `type:"structure"`
10525
10526	// The name of the application.
10527	//
10528	// ApplicationName is a required field
10529	ApplicationName *string `min:"1" type:"string" required:"true"`
10530
10531	// The lifecycle configuration.
10532	//
10533	// ResourceLifecycleConfig is a required field
10534	ResourceLifecycleConfig *ApplicationResourceLifecycleConfig `type:"structure" required:"true"`
10535}
10536
10537// String returns the string representation
10538func (s UpdateApplicationResourceLifecycleInput) String() string {
10539	return awsutil.Prettify(s)
10540}
10541
10542// GoString returns the string representation
10543func (s UpdateApplicationResourceLifecycleInput) GoString() string {
10544	return s.String()
10545}
10546
10547// Validate inspects the fields of the type to determine if they are valid.
10548func (s *UpdateApplicationResourceLifecycleInput) Validate() error {
10549	invalidParams := request.ErrInvalidParams{Context: "UpdateApplicationResourceLifecycleInput"}
10550	if s.ApplicationName == nil {
10551		invalidParams.Add(request.NewErrParamRequired("ApplicationName"))
10552	}
10553	if s.ApplicationName != nil && len(*s.ApplicationName) < 1 {
10554		invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1))
10555	}
10556	if s.ResourceLifecycleConfig == nil {
10557		invalidParams.Add(request.NewErrParamRequired("ResourceLifecycleConfig"))
10558	}
10559	if s.ResourceLifecycleConfig != nil {
10560		if err := s.ResourceLifecycleConfig.Validate(); err != nil {
10561			invalidParams.AddNested("ResourceLifecycleConfig", err.(request.ErrInvalidParams))
10562		}
10563	}
10564
10565	if invalidParams.Len() > 0 {
10566		return invalidParams
10567	}
10568	return nil
10569}
10570
10571// SetApplicationName sets the ApplicationName field's value.
10572func (s *UpdateApplicationResourceLifecycleInput) SetApplicationName(v string) *UpdateApplicationResourceLifecycleInput {
10573	s.ApplicationName = &v
10574	return s
10575}
10576
10577// SetResourceLifecycleConfig sets the ResourceLifecycleConfig field's value.
10578func (s *UpdateApplicationResourceLifecycleInput) SetResourceLifecycleConfig(v *ApplicationResourceLifecycleConfig) *UpdateApplicationResourceLifecycleInput {
10579	s.ResourceLifecycleConfig = v
10580	return s
10581}
10582
10583// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ApplicationResourceLifecycleDescriptionMessage
10584type UpdateApplicationResourceLifecycleOutput struct {
10585	_ struct{} `type:"structure"`
10586
10587	// The name of the application.
10588	ApplicationName *string `min:"1" type:"string"`
10589
10590	// The lifecycle configuration.
10591	ResourceLifecycleConfig *ApplicationResourceLifecycleConfig `type:"structure"`
10592}
10593
10594// String returns the string representation
10595func (s UpdateApplicationResourceLifecycleOutput) String() string {
10596	return awsutil.Prettify(s)
10597}
10598
10599// GoString returns the string representation
10600func (s UpdateApplicationResourceLifecycleOutput) GoString() string {
10601	return s.String()
10602}
10603
10604// SetApplicationName sets the ApplicationName field's value.
10605func (s *UpdateApplicationResourceLifecycleOutput) SetApplicationName(v string) *UpdateApplicationResourceLifecycleOutput {
10606	s.ApplicationName = &v
10607	return s
10608}
10609
10610// SetResourceLifecycleConfig sets the ResourceLifecycleConfig field's value.
10611func (s *UpdateApplicationResourceLifecycleOutput) SetResourceLifecycleConfig(v *ApplicationResourceLifecycleConfig) *UpdateApplicationResourceLifecycleOutput {
10612	s.ResourceLifecycleConfig = v
10613	return s
10614}
10615
10616// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/UpdateApplicationVersionMessage
10617type UpdateApplicationVersionInput struct {
10618	_ struct{} `type:"structure"`
10619
10620	// The name of the application associated with this version.
10621	//
10622	// If no application is found with this name, UpdateApplication returns an InvalidParameterValue
10623	// error.
10624	//
10625	// ApplicationName is a required field
10626	ApplicationName *string `min:"1" type:"string" required:"true"`
10627
10628	// A new description for this version.
10629	Description *string `type:"string"`
10630
10631	// The name of the version to update.
10632	//
10633	// If no application version is found with this label, UpdateApplication returns
10634	// an InvalidParameterValue error.
10635	//
10636	// VersionLabel is a required field
10637	VersionLabel *string `min:"1" type:"string" required:"true"`
10638}
10639
10640// String returns the string representation
10641func (s UpdateApplicationVersionInput) String() string {
10642	return awsutil.Prettify(s)
10643}
10644
10645// GoString returns the string representation
10646func (s UpdateApplicationVersionInput) GoString() string {
10647	return s.String()
10648}
10649
10650// Validate inspects the fields of the type to determine if they are valid.
10651func (s *UpdateApplicationVersionInput) Validate() error {
10652	invalidParams := request.ErrInvalidParams{Context: "UpdateApplicationVersionInput"}
10653	if s.ApplicationName == nil {
10654		invalidParams.Add(request.NewErrParamRequired("ApplicationName"))
10655	}
10656	if s.ApplicationName != nil && len(*s.ApplicationName) < 1 {
10657		invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1))
10658	}
10659	if s.VersionLabel == nil {
10660		invalidParams.Add(request.NewErrParamRequired("VersionLabel"))
10661	}
10662	if s.VersionLabel != nil && len(*s.VersionLabel) < 1 {
10663		invalidParams.Add(request.NewErrParamMinLen("VersionLabel", 1))
10664	}
10665
10666	if invalidParams.Len() > 0 {
10667		return invalidParams
10668	}
10669	return nil
10670}
10671
10672// SetApplicationName sets the ApplicationName field's value.
10673func (s *UpdateApplicationVersionInput) SetApplicationName(v string) *UpdateApplicationVersionInput {
10674	s.ApplicationName = &v
10675	return s
10676}
10677
10678// SetDescription sets the Description field's value.
10679func (s *UpdateApplicationVersionInput) SetDescription(v string) *UpdateApplicationVersionInput {
10680	s.Description = &v
10681	return s
10682}
10683
10684// SetVersionLabel sets the VersionLabel field's value.
10685func (s *UpdateApplicationVersionInput) SetVersionLabel(v string) *UpdateApplicationVersionInput {
10686	s.VersionLabel = &v
10687	return s
10688}
10689
10690// The result message containing the options for the specified solution stack.
10691// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/UpdateConfigurationTemplateMessage
10692type UpdateConfigurationTemplateInput struct {
10693	_ struct{} `type:"structure"`
10694
10695	// The name of the application associated with the configuration template to
10696	// update.
10697	//
10698	// If no application is found with this name, UpdateConfigurationTemplate returns
10699	// an InvalidParameterValue error.
10700	//
10701	// ApplicationName is a required field
10702	ApplicationName *string `min:"1" type:"string" required:"true"`
10703
10704	// A new description for the configuration.
10705	Description *string `type:"string"`
10706
10707	// A list of configuration option settings to update with the new specified
10708	// option value.
10709	OptionSettings []*ConfigurationOptionSetting `type:"list"`
10710
10711	// A list of configuration options to remove from the configuration set.
10712	//
10713	// Constraint: You can remove only UserDefined configuration options.
10714	OptionsToRemove []*OptionSpecification `type:"list"`
10715
10716	// The name of the configuration template to update.
10717	//
10718	// If no configuration template is found with this name, UpdateConfigurationTemplate
10719	// returns an InvalidParameterValue error.
10720	//
10721	// TemplateName is a required field
10722	TemplateName *string `min:"1" type:"string" required:"true"`
10723}
10724
10725// String returns the string representation
10726func (s UpdateConfigurationTemplateInput) String() string {
10727	return awsutil.Prettify(s)
10728}
10729
10730// GoString returns the string representation
10731func (s UpdateConfigurationTemplateInput) GoString() string {
10732	return s.String()
10733}
10734
10735// Validate inspects the fields of the type to determine if they are valid.
10736func (s *UpdateConfigurationTemplateInput) Validate() error {
10737	invalidParams := request.ErrInvalidParams{Context: "UpdateConfigurationTemplateInput"}
10738	if s.ApplicationName == nil {
10739		invalidParams.Add(request.NewErrParamRequired("ApplicationName"))
10740	}
10741	if s.ApplicationName != nil && len(*s.ApplicationName) < 1 {
10742		invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1))
10743	}
10744	if s.TemplateName == nil {
10745		invalidParams.Add(request.NewErrParamRequired("TemplateName"))
10746	}
10747	if s.TemplateName != nil && len(*s.TemplateName) < 1 {
10748		invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1))
10749	}
10750	if s.OptionSettings != nil {
10751		for i, v := range s.OptionSettings {
10752			if v == nil {
10753				continue
10754			}
10755			if err := v.Validate(); err != nil {
10756				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OptionSettings", i), err.(request.ErrInvalidParams))
10757			}
10758		}
10759	}
10760	if s.OptionsToRemove != nil {
10761		for i, v := range s.OptionsToRemove {
10762			if v == nil {
10763				continue
10764			}
10765			if err := v.Validate(); err != nil {
10766				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OptionsToRemove", i), err.(request.ErrInvalidParams))
10767			}
10768		}
10769	}
10770
10771	if invalidParams.Len() > 0 {
10772		return invalidParams
10773	}
10774	return nil
10775}
10776
10777// SetApplicationName sets the ApplicationName field's value.
10778func (s *UpdateConfigurationTemplateInput) SetApplicationName(v string) *UpdateConfigurationTemplateInput {
10779	s.ApplicationName = &v
10780	return s
10781}
10782
10783// SetDescription sets the Description field's value.
10784func (s *UpdateConfigurationTemplateInput) SetDescription(v string) *UpdateConfigurationTemplateInput {
10785	s.Description = &v
10786	return s
10787}
10788
10789// SetOptionSettings sets the OptionSettings field's value.
10790func (s *UpdateConfigurationTemplateInput) SetOptionSettings(v []*ConfigurationOptionSetting) *UpdateConfigurationTemplateInput {
10791	s.OptionSettings = v
10792	return s
10793}
10794
10795// SetOptionsToRemove sets the OptionsToRemove field's value.
10796func (s *UpdateConfigurationTemplateInput) SetOptionsToRemove(v []*OptionSpecification) *UpdateConfigurationTemplateInput {
10797	s.OptionsToRemove = v
10798	return s
10799}
10800
10801// SetTemplateName sets the TemplateName field's value.
10802func (s *UpdateConfigurationTemplateInput) SetTemplateName(v string) *UpdateConfigurationTemplateInput {
10803	s.TemplateName = &v
10804	return s
10805}
10806
10807// Request to update an environment.
10808// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/UpdateEnvironmentMessage
10809type UpdateEnvironmentInput struct {
10810	_ struct{} `type:"structure"`
10811
10812	// The name of the application with which the environment is associated.
10813	ApplicationName *string `min:"1" type:"string"`
10814
10815	// If this parameter is specified, AWS Elastic Beanstalk updates the description
10816	// of this environment.
10817	Description *string `type:"string"`
10818
10819	// The ID of the environment to update.
10820	//
10821	// If no environment with this ID exists, AWS Elastic Beanstalk returns an InvalidParameterValue
10822	// error.
10823	//
10824	// Condition: You must specify either this or an EnvironmentName, or both. If
10825	// you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter
10826	// error.
10827	EnvironmentId *string `type:"string"`
10828
10829	// The name of the environment to update. If no environment with this name exists,
10830	// AWS Elastic Beanstalk returns an InvalidParameterValue error.
10831	//
10832	// Condition: You must specify either this or an EnvironmentId, or both. If
10833	// you do not specify either, AWS Elastic Beanstalk returns MissingRequiredParameter
10834	// error.
10835	EnvironmentName *string `min:"4" type:"string"`
10836
10837	// The name of the group to which the target environment belongs. Specify a
10838	// group name only if the environment's name is specified in an environment
10839	// manifest and not with the environment name or environment ID parameters.
10840	// See Environment Manifest (env.yaml) (http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/environment-cfg-manifest.html)
10841	// for details.
10842	GroupName *string `min:"1" type:"string"`
10843
10844	// If specified, AWS Elastic Beanstalk updates the configuration set associated
10845	// with the running environment and sets the specified configuration options
10846	// to the requested value.
10847	OptionSettings []*ConfigurationOptionSetting `type:"list"`
10848
10849	// A list of custom user-defined configuration options to remove from the configuration
10850	// set for this environment.
10851	OptionsToRemove []*OptionSpecification `type:"list"`
10852
10853	// The ARN of the platform, if used.
10854	PlatformArn *string `type:"string"`
10855
10856	// This specifies the platform version that the environment will run after the
10857	// environment is updated.
10858	SolutionStackName *string `type:"string"`
10859
10860	// If this parameter is specified, AWS Elastic Beanstalk deploys this configuration
10861	// template to the environment. If no such configuration template is found,
10862	// AWS Elastic Beanstalk returns an InvalidParameterValue error.
10863	TemplateName *string `min:"1" type:"string"`
10864
10865	// This specifies the tier to use to update the environment.
10866	//
10867	// Condition: At this time, if you change the tier version, name, or type, AWS
10868	// Elastic Beanstalk returns InvalidParameterValue error.
10869	Tier *EnvironmentTier `type:"structure"`
10870
10871	// If this parameter is specified, AWS Elastic Beanstalk deploys the named application
10872	// version to the environment. If no such application version is found, returns
10873	// an InvalidParameterValue error.
10874	VersionLabel *string `min:"1" type:"string"`
10875}
10876
10877// String returns the string representation
10878func (s UpdateEnvironmentInput) String() string {
10879	return awsutil.Prettify(s)
10880}
10881
10882// GoString returns the string representation
10883func (s UpdateEnvironmentInput) GoString() string {
10884	return s.String()
10885}
10886
10887// Validate inspects the fields of the type to determine if they are valid.
10888func (s *UpdateEnvironmentInput) Validate() error {
10889	invalidParams := request.ErrInvalidParams{Context: "UpdateEnvironmentInput"}
10890	if s.ApplicationName != nil && len(*s.ApplicationName) < 1 {
10891		invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1))
10892	}
10893	if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 {
10894		invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4))
10895	}
10896	if s.GroupName != nil && len(*s.GroupName) < 1 {
10897		invalidParams.Add(request.NewErrParamMinLen("GroupName", 1))
10898	}
10899	if s.TemplateName != nil && len(*s.TemplateName) < 1 {
10900		invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1))
10901	}
10902	if s.VersionLabel != nil && len(*s.VersionLabel) < 1 {
10903		invalidParams.Add(request.NewErrParamMinLen("VersionLabel", 1))
10904	}
10905	if s.OptionSettings != nil {
10906		for i, v := range s.OptionSettings {
10907			if v == nil {
10908				continue
10909			}
10910			if err := v.Validate(); err != nil {
10911				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OptionSettings", i), err.(request.ErrInvalidParams))
10912			}
10913		}
10914	}
10915	if s.OptionsToRemove != nil {
10916		for i, v := range s.OptionsToRemove {
10917			if v == nil {
10918				continue
10919			}
10920			if err := v.Validate(); err != nil {
10921				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OptionsToRemove", i), err.(request.ErrInvalidParams))
10922			}
10923		}
10924	}
10925
10926	if invalidParams.Len() > 0 {
10927		return invalidParams
10928	}
10929	return nil
10930}
10931
10932// SetApplicationName sets the ApplicationName field's value.
10933func (s *UpdateEnvironmentInput) SetApplicationName(v string) *UpdateEnvironmentInput {
10934	s.ApplicationName = &v
10935	return s
10936}
10937
10938// SetDescription sets the Description field's value.
10939func (s *UpdateEnvironmentInput) SetDescription(v string) *UpdateEnvironmentInput {
10940	s.Description = &v
10941	return s
10942}
10943
10944// SetEnvironmentId sets the EnvironmentId field's value.
10945func (s *UpdateEnvironmentInput) SetEnvironmentId(v string) *UpdateEnvironmentInput {
10946	s.EnvironmentId = &v
10947	return s
10948}
10949
10950// SetEnvironmentName sets the EnvironmentName field's value.
10951func (s *UpdateEnvironmentInput) SetEnvironmentName(v string) *UpdateEnvironmentInput {
10952	s.EnvironmentName = &v
10953	return s
10954}
10955
10956// SetGroupName sets the GroupName field's value.
10957func (s *UpdateEnvironmentInput) SetGroupName(v string) *UpdateEnvironmentInput {
10958	s.GroupName = &v
10959	return s
10960}
10961
10962// SetOptionSettings sets the OptionSettings field's value.
10963func (s *UpdateEnvironmentInput) SetOptionSettings(v []*ConfigurationOptionSetting) *UpdateEnvironmentInput {
10964	s.OptionSettings = v
10965	return s
10966}
10967
10968// SetOptionsToRemove sets the OptionsToRemove field's value.
10969func (s *UpdateEnvironmentInput) SetOptionsToRemove(v []*OptionSpecification) *UpdateEnvironmentInput {
10970	s.OptionsToRemove = v
10971	return s
10972}
10973
10974// SetPlatformArn sets the PlatformArn field's value.
10975func (s *UpdateEnvironmentInput) SetPlatformArn(v string) *UpdateEnvironmentInput {
10976	s.PlatformArn = &v
10977	return s
10978}
10979
10980// SetSolutionStackName sets the SolutionStackName field's value.
10981func (s *UpdateEnvironmentInput) SetSolutionStackName(v string) *UpdateEnvironmentInput {
10982	s.SolutionStackName = &v
10983	return s
10984}
10985
10986// SetTemplateName sets the TemplateName field's value.
10987func (s *UpdateEnvironmentInput) SetTemplateName(v string) *UpdateEnvironmentInput {
10988	s.TemplateName = &v
10989	return s
10990}
10991
10992// SetTier sets the Tier field's value.
10993func (s *UpdateEnvironmentInput) SetTier(v *EnvironmentTier) *UpdateEnvironmentInput {
10994	s.Tier = v
10995	return s
10996}
10997
10998// SetVersionLabel sets the VersionLabel field's value.
10999func (s *UpdateEnvironmentInput) SetVersionLabel(v string) *UpdateEnvironmentInput {
11000	s.VersionLabel = &v
11001	return s
11002}
11003
11004// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/UpdateTagsForResourceMessage
11005type UpdateTagsForResourceInput struct {
11006	_ struct{} `type:"structure"`
11007
11008	// The Amazon Resource Name (ARN) of the resouce to be updated.
11009	//
11010	// Must be the ARN of an Elastic Beanstalk environment.
11011	//
11012	// ResourceArn is a required field
11013	ResourceArn *string `type:"string" required:"true"`
11014
11015	// A list of tags to add or update.
11016	//
11017	// If a key of an existing tag is added, the tag's value is updated.
11018	TagsToAdd []*Tag `type:"list"`
11019
11020	// A list of tag keys to remove.
11021	//
11022	// If a tag key doesn't exist, it is silently ignored.
11023	TagsToRemove []*string `type:"list"`
11024}
11025
11026// String returns the string representation
11027func (s UpdateTagsForResourceInput) String() string {
11028	return awsutil.Prettify(s)
11029}
11030
11031// GoString returns the string representation
11032func (s UpdateTagsForResourceInput) GoString() string {
11033	return s.String()
11034}
11035
11036// Validate inspects the fields of the type to determine if they are valid.
11037func (s *UpdateTagsForResourceInput) Validate() error {
11038	invalidParams := request.ErrInvalidParams{Context: "UpdateTagsForResourceInput"}
11039	if s.ResourceArn == nil {
11040		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
11041	}
11042	if s.TagsToAdd != nil {
11043		for i, v := range s.TagsToAdd {
11044			if v == nil {
11045				continue
11046			}
11047			if err := v.Validate(); err != nil {
11048				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TagsToAdd", i), err.(request.ErrInvalidParams))
11049			}
11050		}
11051	}
11052
11053	if invalidParams.Len() > 0 {
11054		return invalidParams
11055	}
11056	return nil
11057}
11058
11059// SetResourceArn sets the ResourceArn field's value.
11060func (s *UpdateTagsForResourceInput) SetResourceArn(v string) *UpdateTagsForResourceInput {
11061	s.ResourceArn = &v
11062	return s
11063}
11064
11065// SetTagsToAdd sets the TagsToAdd field's value.
11066func (s *UpdateTagsForResourceInput) SetTagsToAdd(v []*Tag) *UpdateTagsForResourceInput {
11067	s.TagsToAdd = v
11068	return s
11069}
11070
11071// SetTagsToRemove sets the TagsToRemove field's value.
11072func (s *UpdateTagsForResourceInput) SetTagsToRemove(v []*string) *UpdateTagsForResourceInput {
11073	s.TagsToRemove = v
11074	return s
11075}
11076
11077// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/UpdateTagsForResourceOutput
11078type UpdateTagsForResourceOutput struct {
11079	_ struct{} `type:"structure"`
11080}
11081
11082// String returns the string representation
11083func (s UpdateTagsForResourceOutput) String() string {
11084	return awsutil.Prettify(s)
11085}
11086
11087// GoString returns the string representation
11088func (s UpdateTagsForResourceOutput) GoString() string {
11089	return s.String()
11090}
11091
11092// A list of validation messages for a specified configuration template.
11093// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ValidateConfigurationSettingsMessage
11094type ValidateConfigurationSettingsInput struct {
11095	_ struct{} `type:"structure"`
11096
11097	// The name of the application that the configuration template or environment
11098	// belongs to.
11099	//
11100	// ApplicationName is a required field
11101	ApplicationName *string `min:"1" type:"string" required:"true"`
11102
11103	// The name of the environment to validate the settings against.
11104	//
11105	// Condition: You cannot specify both this and a configuration template name.
11106	EnvironmentName *string `min:"4" type:"string"`
11107
11108	// A list of the options and desired values to evaluate.
11109	//
11110	// OptionSettings is a required field
11111	OptionSettings []*ConfigurationOptionSetting `type:"list" required:"true"`
11112
11113	// The name of the configuration template to validate the settings against.
11114	//
11115	// Condition: You cannot specify both this and an environment name.
11116	TemplateName *string `min:"1" type:"string"`
11117}
11118
11119// String returns the string representation
11120func (s ValidateConfigurationSettingsInput) String() string {
11121	return awsutil.Prettify(s)
11122}
11123
11124// GoString returns the string representation
11125func (s ValidateConfigurationSettingsInput) GoString() string {
11126	return s.String()
11127}
11128
11129// Validate inspects the fields of the type to determine if they are valid.
11130func (s *ValidateConfigurationSettingsInput) Validate() error {
11131	invalidParams := request.ErrInvalidParams{Context: "ValidateConfigurationSettingsInput"}
11132	if s.ApplicationName == nil {
11133		invalidParams.Add(request.NewErrParamRequired("ApplicationName"))
11134	}
11135	if s.ApplicationName != nil && len(*s.ApplicationName) < 1 {
11136		invalidParams.Add(request.NewErrParamMinLen("ApplicationName", 1))
11137	}
11138	if s.EnvironmentName != nil && len(*s.EnvironmentName) < 4 {
11139		invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 4))
11140	}
11141	if s.OptionSettings == nil {
11142		invalidParams.Add(request.NewErrParamRequired("OptionSettings"))
11143	}
11144	if s.TemplateName != nil && len(*s.TemplateName) < 1 {
11145		invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1))
11146	}
11147	if s.OptionSettings != nil {
11148		for i, v := range s.OptionSettings {
11149			if v == nil {
11150				continue
11151			}
11152			if err := v.Validate(); err != nil {
11153				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OptionSettings", i), err.(request.ErrInvalidParams))
11154			}
11155		}
11156	}
11157
11158	if invalidParams.Len() > 0 {
11159		return invalidParams
11160	}
11161	return nil
11162}
11163
11164// SetApplicationName sets the ApplicationName field's value.
11165func (s *ValidateConfigurationSettingsInput) SetApplicationName(v string) *ValidateConfigurationSettingsInput {
11166	s.ApplicationName = &v
11167	return s
11168}
11169
11170// SetEnvironmentName sets the EnvironmentName field's value.
11171func (s *ValidateConfigurationSettingsInput) SetEnvironmentName(v string) *ValidateConfigurationSettingsInput {
11172	s.EnvironmentName = &v
11173	return s
11174}
11175
11176// SetOptionSettings sets the OptionSettings field's value.
11177func (s *ValidateConfigurationSettingsInput) SetOptionSettings(v []*ConfigurationOptionSetting) *ValidateConfigurationSettingsInput {
11178	s.OptionSettings = v
11179	return s
11180}
11181
11182// SetTemplateName sets the TemplateName field's value.
11183func (s *ValidateConfigurationSettingsInput) SetTemplateName(v string) *ValidateConfigurationSettingsInput {
11184	s.TemplateName = &v
11185	return s
11186}
11187
11188// Provides a list of validation messages.
11189// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ConfigurationSettingsValidationMessages
11190type ValidateConfigurationSettingsOutput struct {
11191	_ struct{} `type:"structure"`
11192
11193	// A list of ValidationMessage.
11194	Messages []*ValidationMessage `type:"list"`
11195}
11196
11197// String returns the string representation
11198func (s ValidateConfigurationSettingsOutput) String() string {
11199	return awsutil.Prettify(s)
11200}
11201
11202// GoString returns the string representation
11203func (s ValidateConfigurationSettingsOutput) GoString() string {
11204	return s.String()
11205}
11206
11207// SetMessages sets the Messages field's value.
11208func (s *ValidateConfigurationSettingsOutput) SetMessages(v []*ValidationMessage) *ValidateConfigurationSettingsOutput {
11209	s.Messages = v
11210	return s
11211}
11212
11213// An error or warning for a desired configuration option value.
11214// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticbeanstalk-2010-12-01/ValidationMessage
11215type ValidationMessage struct {
11216	_ struct{} `type:"structure"`
11217
11218	// A message describing the error or warning.
11219	Message *string `type:"string"`
11220
11221	// The namespace to which the option belongs.
11222	Namespace *string `type:"string"`
11223
11224	// The name of the option.
11225	OptionName *string `type:"string"`
11226
11227	// An indication of the severity of this message:
11228	//
11229	//    * error: This message indicates that this is not a valid setting for an
11230	//    option.
11231	//
11232	//    * warning: This message is providing information you should take into
11233	//    account.
11234	Severity *string `type:"string" enum:"ValidationSeverity"`
11235}
11236
11237// String returns the string representation
11238func (s ValidationMessage) String() string {
11239	return awsutil.Prettify(s)
11240}
11241
11242// GoString returns the string representation
11243func (s ValidationMessage) GoString() string {
11244	return s.String()
11245}
11246
11247// SetMessage sets the Message field's value.
11248func (s *ValidationMessage) SetMessage(v string) *ValidationMessage {
11249	s.Message = &v
11250	return s
11251}
11252
11253// SetNamespace sets the Namespace field's value.
11254func (s *ValidationMessage) SetNamespace(v string) *ValidationMessage {
11255	s.Namespace = &v
11256	return s
11257}
11258
11259// SetOptionName sets the OptionName field's value.
11260func (s *ValidationMessage) SetOptionName(v string) *ValidationMessage {
11261	s.OptionName = &v
11262	return s
11263}
11264
11265// SetSeverity sets the Severity field's value.
11266func (s *ValidationMessage) SetSeverity(v string) *ValidationMessage {
11267	s.Severity = &v
11268	return s
11269}
11270
11271const (
11272	// ActionHistoryStatusCompleted is a ActionHistoryStatus enum value
11273	ActionHistoryStatusCompleted = "Completed"
11274
11275	// ActionHistoryStatusFailed is a ActionHistoryStatus enum value
11276	ActionHistoryStatusFailed = "Failed"
11277
11278	// ActionHistoryStatusUnknown is a ActionHistoryStatus enum value
11279	ActionHistoryStatusUnknown = "Unknown"
11280)
11281
11282const (
11283	// ActionStatusScheduled is a ActionStatus enum value
11284	ActionStatusScheduled = "Scheduled"
11285
11286	// ActionStatusPending is a ActionStatus enum value
11287	ActionStatusPending = "Pending"
11288
11289	// ActionStatusRunning is a ActionStatus enum value
11290	ActionStatusRunning = "Running"
11291
11292	// ActionStatusUnknown is a ActionStatus enum value
11293	ActionStatusUnknown = "Unknown"
11294)
11295
11296const (
11297	// ActionTypeInstanceRefresh is a ActionType enum value
11298	ActionTypeInstanceRefresh = "InstanceRefresh"
11299
11300	// ActionTypePlatformUpdate is a ActionType enum value
11301	ActionTypePlatformUpdate = "PlatformUpdate"
11302
11303	// ActionTypeUnknown is a ActionType enum value
11304	ActionTypeUnknown = "Unknown"
11305)
11306
11307const (
11308	// ApplicationVersionStatusProcessed is a ApplicationVersionStatus enum value
11309	ApplicationVersionStatusProcessed = "Processed"
11310
11311	// ApplicationVersionStatusUnprocessed is a ApplicationVersionStatus enum value
11312	ApplicationVersionStatusUnprocessed = "Unprocessed"
11313
11314	// ApplicationVersionStatusFailed is a ApplicationVersionStatus enum value
11315	ApplicationVersionStatusFailed = "Failed"
11316
11317	// ApplicationVersionStatusProcessing is a ApplicationVersionStatus enum value
11318	ApplicationVersionStatusProcessing = "Processing"
11319
11320	// ApplicationVersionStatusBuilding is a ApplicationVersionStatus enum value
11321	ApplicationVersionStatusBuilding = "Building"
11322)
11323
11324const (
11325	// ComputeTypeBuildGeneral1Small is a ComputeType enum value
11326	ComputeTypeBuildGeneral1Small = "BUILD_GENERAL1_SMALL"
11327
11328	// ComputeTypeBuildGeneral1Medium is a ComputeType enum value
11329	ComputeTypeBuildGeneral1Medium = "BUILD_GENERAL1_MEDIUM"
11330
11331	// ComputeTypeBuildGeneral1Large is a ComputeType enum value
11332	ComputeTypeBuildGeneral1Large = "BUILD_GENERAL1_LARGE"
11333)
11334
11335const (
11336	// ConfigurationDeploymentStatusDeployed is a ConfigurationDeploymentStatus enum value
11337	ConfigurationDeploymentStatusDeployed = "deployed"
11338
11339	// ConfigurationDeploymentStatusPending is a ConfigurationDeploymentStatus enum value
11340	ConfigurationDeploymentStatusPending = "pending"
11341
11342	// ConfigurationDeploymentStatusFailed is a ConfigurationDeploymentStatus enum value
11343	ConfigurationDeploymentStatusFailed = "failed"
11344)
11345
11346const (
11347	// ConfigurationOptionValueTypeScalar is a ConfigurationOptionValueType enum value
11348	ConfigurationOptionValueTypeScalar = "Scalar"
11349
11350	// ConfigurationOptionValueTypeList is a ConfigurationOptionValueType enum value
11351	ConfigurationOptionValueTypeList = "List"
11352)
11353
11354const (
11355	// EnvironmentHealthGreen is a EnvironmentHealth enum value
11356	EnvironmentHealthGreen = "Green"
11357
11358	// EnvironmentHealthYellow is a EnvironmentHealth enum value
11359	EnvironmentHealthYellow = "Yellow"
11360
11361	// EnvironmentHealthRed is a EnvironmentHealth enum value
11362	EnvironmentHealthRed = "Red"
11363
11364	// EnvironmentHealthGrey is a EnvironmentHealth enum value
11365	EnvironmentHealthGrey = "Grey"
11366)
11367
11368const (
11369	// EnvironmentHealthAttributeStatus is a EnvironmentHealthAttribute enum value
11370	EnvironmentHealthAttributeStatus = "Status"
11371
11372	// EnvironmentHealthAttributeColor is a EnvironmentHealthAttribute enum value
11373	EnvironmentHealthAttributeColor = "Color"
11374
11375	// EnvironmentHealthAttributeCauses is a EnvironmentHealthAttribute enum value
11376	EnvironmentHealthAttributeCauses = "Causes"
11377
11378	// EnvironmentHealthAttributeApplicationMetrics is a EnvironmentHealthAttribute enum value
11379	EnvironmentHealthAttributeApplicationMetrics = "ApplicationMetrics"
11380
11381	// EnvironmentHealthAttributeInstancesHealth is a EnvironmentHealthAttribute enum value
11382	EnvironmentHealthAttributeInstancesHealth = "InstancesHealth"
11383
11384	// EnvironmentHealthAttributeAll is a EnvironmentHealthAttribute enum value
11385	EnvironmentHealthAttributeAll = "All"
11386
11387	// EnvironmentHealthAttributeHealthStatus is a EnvironmentHealthAttribute enum value
11388	EnvironmentHealthAttributeHealthStatus = "HealthStatus"
11389
11390	// EnvironmentHealthAttributeRefreshedAt is a EnvironmentHealthAttribute enum value
11391	EnvironmentHealthAttributeRefreshedAt = "RefreshedAt"
11392)
11393
11394const (
11395	// EnvironmentHealthStatusNoData is a EnvironmentHealthStatus enum value
11396	EnvironmentHealthStatusNoData = "NoData"
11397
11398	// EnvironmentHealthStatusUnknown is a EnvironmentHealthStatus enum value
11399	EnvironmentHealthStatusUnknown = "Unknown"
11400
11401	// EnvironmentHealthStatusPending is a EnvironmentHealthStatus enum value
11402	EnvironmentHealthStatusPending = "Pending"
11403
11404	// EnvironmentHealthStatusOk is a EnvironmentHealthStatus enum value
11405	EnvironmentHealthStatusOk = "Ok"
11406
11407	// EnvironmentHealthStatusInfo is a EnvironmentHealthStatus enum value
11408	EnvironmentHealthStatusInfo = "Info"
11409
11410	// EnvironmentHealthStatusWarning is a EnvironmentHealthStatus enum value
11411	EnvironmentHealthStatusWarning = "Warning"
11412
11413	// EnvironmentHealthStatusDegraded is a EnvironmentHealthStatus enum value
11414	EnvironmentHealthStatusDegraded = "Degraded"
11415
11416	// EnvironmentHealthStatusSevere is a EnvironmentHealthStatus enum value
11417	EnvironmentHealthStatusSevere = "Severe"
11418)
11419
11420const (
11421	// EnvironmentInfoTypeTail is a EnvironmentInfoType enum value
11422	EnvironmentInfoTypeTail = "tail"
11423
11424	// EnvironmentInfoTypeBundle is a EnvironmentInfoType enum value
11425	EnvironmentInfoTypeBundle = "bundle"
11426)
11427
11428const (
11429	// EnvironmentStatusLaunching is a EnvironmentStatus enum value
11430	EnvironmentStatusLaunching = "Launching"
11431
11432	// EnvironmentStatusUpdating is a EnvironmentStatus enum value
11433	EnvironmentStatusUpdating = "Updating"
11434
11435	// EnvironmentStatusReady is a EnvironmentStatus enum value
11436	EnvironmentStatusReady = "Ready"
11437
11438	// EnvironmentStatusTerminating is a EnvironmentStatus enum value
11439	EnvironmentStatusTerminating = "Terminating"
11440
11441	// EnvironmentStatusTerminated is a EnvironmentStatus enum value
11442	EnvironmentStatusTerminated = "Terminated"
11443)
11444
11445const (
11446	// EventSeverityTrace is a EventSeverity enum value
11447	EventSeverityTrace = "TRACE"
11448
11449	// EventSeverityDebug is a EventSeverity enum value
11450	EventSeverityDebug = "DEBUG"
11451
11452	// EventSeverityInfo is a EventSeverity enum value
11453	EventSeverityInfo = "INFO"
11454
11455	// EventSeverityWarn is a EventSeverity enum value
11456	EventSeverityWarn = "WARN"
11457
11458	// EventSeverityError is a EventSeverity enum value
11459	EventSeverityError = "ERROR"
11460
11461	// EventSeverityFatal is a EventSeverity enum value
11462	EventSeverityFatal = "FATAL"
11463)
11464
11465const (
11466	// FailureTypeUpdateCancelled is a FailureType enum value
11467	FailureTypeUpdateCancelled = "UpdateCancelled"
11468
11469	// FailureTypeCancellationFailed is a FailureType enum value
11470	FailureTypeCancellationFailed = "CancellationFailed"
11471
11472	// FailureTypeRollbackFailed is a FailureType enum value
11473	FailureTypeRollbackFailed = "RollbackFailed"
11474
11475	// FailureTypeRollbackSuccessful is a FailureType enum value
11476	FailureTypeRollbackSuccessful = "RollbackSuccessful"
11477
11478	// FailureTypeInternalFailure is a FailureType enum value
11479	FailureTypeInternalFailure = "InternalFailure"
11480
11481	// FailureTypeInvalidEnvironmentState is a FailureType enum value
11482	FailureTypeInvalidEnvironmentState = "InvalidEnvironmentState"
11483
11484	// FailureTypePermissionsError is a FailureType enum value
11485	FailureTypePermissionsError = "PermissionsError"
11486)
11487
11488const (
11489	// InstancesHealthAttributeHealthStatus is a InstancesHealthAttribute enum value
11490	InstancesHealthAttributeHealthStatus = "HealthStatus"
11491
11492	// InstancesHealthAttributeColor is a InstancesHealthAttribute enum value
11493	InstancesHealthAttributeColor = "Color"
11494
11495	// InstancesHealthAttributeCauses is a InstancesHealthAttribute enum value
11496	InstancesHealthAttributeCauses = "Causes"
11497
11498	// InstancesHealthAttributeApplicationMetrics is a InstancesHealthAttribute enum value
11499	InstancesHealthAttributeApplicationMetrics = "ApplicationMetrics"
11500
11501	// InstancesHealthAttributeRefreshedAt is a InstancesHealthAttribute enum value
11502	InstancesHealthAttributeRefreshedAt = "RefreshedAt"
11503
11504	// InstancesHealthAttributeLaunchedAt is a InstancesHealthAttribute enum value
11505	InstancesHealthAttributeLaunchedAt = "LaunchedAt"
11506
11507	// InstancesHealthAttributeSystem is a InstancesHealthAttribute enum value
11508	InstancesHealthAttributeSystem = "System"
11509
11510	// InstancesHealthAttributeDeployment is a InstancesHealthAttribute enum value
11511	InstancesHealthAttributeDeployment = "Deployment"
11512
11513	// InstancesHealthAttributeAvailabilityZone is a InstancesHealthAttribute enum value
11514	InstancesHealthAttributeAvailabilityZone = "AvailabilityZone"
11515
11516	// InstancesHealthAttributeInstanceType is a InstancesHealthAttribute enum value
11517	InstancesHealthAttributeInstanceType = "InstanceType"
11518
11519	// InstancesHealthAttributeAll is a InstancesHealthAttribute enum value
11520	InstancesHealthAttributeAll = "All"
11521)
11522
11523const (
11524	// PlatformStatusCreating is a PlatformStatus enum value
11525	PlatformStatusCreating = "Creating"
11526
11527	// PlatformStatusFailed is a PlatformStatus enum value
11528	PlatformStatusFailed = "Failed"
11529
11530	// PlatformStatusReady is a PlatformStatus enum value
11531	PlatformStatusReady = "Ready"
11532
11533	// PlatformStatusDeleting is a PlatformStatus enum value
11534	PlatformStatusDeleting = "Deleting"
11535
11536	// PlatformStatusDeleted is a PlatformStatus enum value
11537	PlatformStatusDeleted = "Deleted"
11538)
11539
11540const (
11541	// SourceRepositoryCodeCommit is a SourceRepository enum value
11542	SourceRepositoryCodeCommit = "CodeCommit"
11543
11544	// SourceRepositoryS3 is a SourceRepository enum value
11545	SourceRepositoryS3 = "S3"
11546)
11547
11548const (
11549	// SourceTypeGit is a SourceType enum value
11550	SourceTypeGit = "Git"
11551
11552	// SourceTypeZip is a SourceType enum value
11553	SourceTypeZip = "Zip"
11554)
11555
11556const (
11557	// ValidationSeverityError is a ValidationSeverity enum value
11558	ValidationSeverityError = "error"
11559
11560	// ValidationSeverityWarning is a ValidationSeverity enum value
11561	ValidationSeverityWarning = "warning"
11562)
11563