1// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
2
3package lambda
4
5import (
6	"fmt"
7	"io"
8	"time"
9
10	"github.com/aws/aws-sdk-go/aws"
11	"github.com/aws/aws-sdk-go/aws/awsutil"
12	"github.com/aws/aws-sdk-go/aws/request"
13	"github.com/aws/aws-sdk-go/private/protocol"
14	"github.com/aws/aws-sdk-go/private/protocol/restjson"
15)
16
17const opAddLayerVersionPermission = "AddLayerVersionPermission"
18
19// AddLayerVersionPermissionRequest generates a "aws/request.Request" representing the
20// client's request for the AddLayerVersionPermission operation. The "output" return
21// value will be populated with the request's response once the request completes
22// successfully.
23//
24// Use "Send" method on the returned Request to send the API call to the service.
25// the "output" return value is not valid until after Send returns without error.
26//
27// See AddLayerVersionPermission for more information on using the AddLayerVersionPermission
28// API call, and error handling.
29//
30// This method is useful when you want to inject custom logic or configuration
31// into the SDK's request lifecycle. Such as custom headers, or retry logic.
32//
33//
34//    // Example sending a request using the AddLayerVersionPermissionRequest method.
35//    req, resp := client.AddLayerVersionPermissionRequest(params)
36//
37//    err := req.Send()
38//    if err == nil { // resp is now filled
39//        fmt.Println(resp)
40//    }
41//
42// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/AddLayerVersionPermission
43func (c *Lambda) AddLayerVersionPermissionRequest(input *AddLayerVersionPermissionInput) (req *request.Request, output *AddLayerVersionPermissionOutput) {
44	op := &request.Operation{
45		Name:       opAddLayerVersionPermission,
46		HTTPMethod: "POST",
47		HTTPPath:   "/2018-10-31/layers/{LayerName}/versions/{VersionNumber}/policy",
48	}
49
50	if input == nil {
51		input = &AddLayerVersionPermissionInput{}
52	}
53
54	output = &AddLayerVersionPermissionOutput{}
55	req = c.newRequest(op, input, output)
56	return
57}
58
59// AddLayerVersionPermission API operation for AWS Lambda.
60//
61// Adds permissions to the resource-based policy of a version of an AWS Lambda
62// layer (https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html).
63// Use this action to grant layer usage permission to other accounts. You can
64// grant permission to a single account, all AWS accounts, or all accounts in
65// an organization.
66//
67// To revoke permission, call RemoveLayerVersionPermission with the statement
68// ID that you specified when you added it.
69//
70// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
71// with awserr.Error's Code and Message methods to get detailed information about
72// the error.
73//
74// See the AWS API reference guide for AWS Lambda's
75// API operation AddLayerVersionPermission for usage and error information.
76//
77// Returned Error Types:
78//   * ServiceException
79//   The AWS Lambda service encountered an internal error.
80//
81//   * ResourceNotFoundException
82//   The resource specified in the request does not exist.
83//
84//   * ResourceConflictException
85//   The resource already exists, or another operation is in progress.
86//
87//   * TooManyRequestsException
88//   The request throughput limit was exceeded.
89//
90//   * InvalidParameterValueException
91//   One of the parameters in the request is invalid.
92//
93//   * PolicyLengthExceededException
94//   The permissions policy for the resource is too large. Learn more (https://docs.aws.amazon.com/lambda/latest/dg/limits.html)
95//
96//   * PreconditionFailedException
97//   The RevisionId provided does not match the latest RevisionId for the Lambda
98//   function or alias. Call the GetFunction or the GetAlias API to retrieve the
99//   latest RevisionId for your resource.
100//
101// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/AddLayerVersionPermission
102func (c *Lambda) AddLayerVersionPermission(input *AddLayerVersionPermissionInput) (*AddLayerVersionPermissionOutput, error) {
103	req, out := c.AddLayerVersionPermissionRequest(input)
104	return out, req.Send()
105}
106
107// AddLayerVersionPermissionWithContext is the same as AddLayerVersionPermission with the addition of
108// the ability to pass a context and additional request options.
109//
110// See AddLayerVersionPermission for details on how to use this API operation.
111//
112// The context must be non-nil and will be used for request cancellation. If
113// the context is nil a panic will occur. In the future the SDK may create
114// sub-contexts for http.Requests. See https://golang.org/pkg/context/
115// for more information on using Contexts.
116func (c *Lambda) AddLayerVersionPermissionWithContext(ctx aws.Context, input *AddLayerVersionPermissionInput, opts ...request.Option) (*AddLayerVersionPermissionOutput, error) {
117	req, out := c.AddLayerVersionPermissionRequest(input)
118	req.SetContext(ctx)
119	req.ApplyOptions(opts...)
120	return out, req.Send()
121}
122
123const opAddPermission = "AddPermission"
124
125// AddPermissionRequest generates a "aws/request.Request" representing the
126// client's request for the AddPermission operation. The "output" return
127// value will be populated with the request's response once the request completes
128// successfully.
129//
130// Use "Send" method on the returned Request to send the API call to the service.
131// the "output" return value is not valid until after Send returns without error.
132//
133// See AddPermission for more information on using the AddPermission
134// API call, and error handling.
135//
136// This method is useful when you want to inject custom logic or configuration
137// into the SDK's request lifecycle. Such as custom headers, or retry logic.
138//
139//
140//    // Example sending a request using the AddPermissionRequest method.
141//    req, resp := client.AddPermissionRequest(params)
142//
143//    err := req.Send()
144//    if err == nil { // resp is now filled
145//        fmt.Println(resp)
146//    }
147//
148// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/AddPermission
149func (c *Lambda) AddPermissionRequest(input *AddPermissionInput) (req *request.Request, output *AddPermissionOutput) {
150	op := &request.Operation{
151		Name:       opAddPermission,
152		HTTPMethod: "POST",
153		HTTPPath:   "/2015-03-31/functions/{FunctionName}/policy",
154	}
155
156	if input == nil {
157		input = &AddPermissionInput{}
158	}
159
160	output = &AddPermissionOutput{}
161	req = c.newRequest(op, input, output)
162	return
163}
164
165// AddPermission API operation for AWS Lambda.
166//
167// Grants an AWS service or another account permission to use a function. You
168// can apply the policy at the function level, or specify a qualifier to restrict
169// access to a single version or alias. If you use a qualifier, the invoker
170// must use the full Amazon Resource Name (ARN) of that version or alias to
171// invoke the function.
172//
173// To grant permission to another account, specify the account ID as the Principal.
174// For AWS services, the principal is a domain-style identifier defined by the
175// service, like s3.amazonaws.com or sns.amazonaws.com. For AWS services, you
176// can also specify the ARN of the associated resource as the SourceArn. If
177// you grant permission to a service principal without specifying the source,
178// other accounts could potentially configure resources in their account to
179// invoke your Lambda function.
180//
181// This action adds a statement to a resource-based permissions policy for the
182// function. For more information about function policies, see Lambda Function
183// Policies (https://docs.aws.amazon.com/lambda/latest/dg/access-control-resource-based.html).
184//
185// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
186// with awserr.Error's Code and Message methods to get detailed information about
187// the error.
188//
189// See the AWS API reference guide for AWS Lambda's
190// API operation AddPermission for usage and error information.
191//
192// Returned Error Types:
193//   * ServiceException
194//   The AWS Lambda service encountered an internal error.
195//
196//   * ResourceNotFoundException
197//   The resource specified in the request does not exist.
198//
199//   * ResourceConflictException
200//   The resource already exists, or another operation is in progress.
201//
202//   * InvalidParameterValueException
203//   One of the parameters in the request is invalid.
204//
205//   * PolicyLengthExceededException
206//   The permissions policy for the resource is too large. Learn more (https://docs.aws.amazon.com/lambda/latest/dg/limits.html)
207//
208//   * TooManyRequestsException
209//   The request throughput limit was exceeded.
210//
211//   * PreconditionFailedException
212//   The RevisionId provided does not match the latest RevisionId for the Lambda
213//   function or alias. Call the GetFunction or the GetAlias API to retrieve the
214//   latest RevisionId for your resource.
215//
216// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/AddPermission
217func (c *Lambda) AddPermission(input *AddPermissionInput) (*AddPermissionOutput, error) {
218	req, out := c.AddPermissionRequest(input)
219	return out, req.Send()
220}
221
222// AddPermissionWithContext is the same as AddPermission with the addition of
223// the ability to pass a context and additional request options.
224//
225// See AddPermission for details on how to use this API operation.
226//
227// The context must be non-nil and will be used for request cancellation. If
228// the context is nil a panic will occur. In the future the SDK may create
229// sub-contexts for http.Requests. See https://golang.org/pkg/context/
230// for more information on using Contexts.
231func (c *Lambda) AddPermissionWithContext(ctx aws.Context, input *AddPermissionInput, opts ...request.Option) (*AddPermissionOutput, error) {
232	req, out := c.AddPermissionRequest(input)
233	req.SetContext(ctx)
234	req.ApplyOptions(opts...)
235	return out, req.Send()
236}
237
238const opCreateAlias = "CreateAlias"
239
240// CreateAliasRequest generates a "aws/request.Request" representing the
241// client's request for the CreateAlias operation. The "output" return
242// value will be populated with the request's response once the request completes
243// successfully.
244//
245// Use "Send" method on the returned Request to send the API call to the service.
246// the "output" return value is not valid until after Send returns without error.
247//
248// See CreateAlias for more information on using the CreateAlias
249// API call, and error handling.
250//
251// This method is useful when you want to inject custom logic or configuration
252// into the SDK's request lifecycle. Such as custom headers, or retry logic.
253//
254//
255//    // Example sending a request using the CreateAliasRequest method.
256//    req, resp := client.CreateAliasRequest(params)
257//
258//    err := req.Send()
259//    if err == nil { // resp is now filled
260//        fmt.Println(resp)
261//    }
262//
263// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/CreateAlias
264func (c *Lambda) CreateAliasRequest(input *CreateAliasInput) (req *request.Request, output *AliasConfiguration) {
265	op := &request.Operation{
266		Name:       opCreateAlias,
267		HTTPMethod: "POST",
268		HTTPPath:   "/2015-03-31/functions/{FunctionName}/aliases",
269	}
270
271	if input == nil {
272		input = &CreateAliasInput{}
273	}
274
275	output = &AliasConfiguration{}
276	req = c.newRequest(op, input, output)
277	return
278}
279
280// CreateAlias API operation for AWS Lambda.
281//
282// Creates an alias (https://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html)
283// for a Lambda function version. Use aliases to provide clients with a function
284// identifier that you can update to invoke a different version.
285//
286// You can also map an alias to split invocation requests between two versions.
287// Use the RoutingConfig parameter to specify a second version and the percentage
288// of invocation requests that it receives.
289//
290// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
291// with awserr.Error's Code and Message methods to get detailed information about
292// the error.
293//
294// See the AWS API reference guide for AWS Lambda's
295// API operation CreateAlias for usage and error information.
296//
297// Returned Error Types:
298//   * ServiceException
299//   The AWS Lambda service encountered an internal error.
300//
301//   * ResourceNotFoundException
302//   The resource specified in the request does not exist.
303//
304//   * ResourceConflictException
305//   The resource already exists, or another operation is in progress.
306//
307//   * InvalidParameterValueException
308//   One of the parameters in the request is invalid.
309//
310//   * TooManyRequestsException
311//   The request throughput limit was exceeded.
312//
313// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/CreateAlias
314func (c *Lambda) CreateAlias(input *CreateAliasInput) (*AliasConfiguration, error) {
315	req, out := c.CreateAliasRequest(input)
316	return out, req.Send()
317}
318
319// CreateAliasWithContext is the same as CreateAlias with the addition of
320// the ability to pass a context and additional request options.
321//
322// See CreateAlias for details on how to use this API operation.
323//
324// The context must be non-nil and will be used for request cancellation. If
325// the context is nil a panic will occur. In the future the SDK may create
326// sub-contexts for http.Requests. See https://golang.org/pkg/context/
327// for more information on using Contexts.
328func (c *Lambda) CreateAliasWithContext(ctx aws.Context, input *CreateAliasInput, opts ...request.Option) (*AliasConfiguration, error) {
329	req, out := c.CreateAliasRequest(input)
330	req.SetContext(ctx)
331	req.ApplyOptions(opts...)
332	return out, req.Send()
333}
334
335const opCreateEventSourceMapping = "CreateEventSourceMapping"
336
337// CreateEventSourceMappingRequest generates a "aws/request.Request" representing the
338// client's request for the CreateEventSourceMapping operation. The "output" return
339// value will be populated with the request's response once the request completes
340// successfully.
341//
342// Use "Send" method on the returned Request to send the API call to the service.
343// the "output" return value is not valid until after Send returns without error.
344//
345// See CreateEventSourceMapping for more information on using the CreateEventSourceMapping
346// API call, and error handling.
347//
348// This method is useful when you want to inject custom logic or configuration
349// into the SDK's request lifecycle. Such as custom headers, or retry logic.
350//
351//
352//    // Example sending a request using the CreateEventSourceMappingRequest method.
353//    req, resp := client.CreateEventSourceMappingRequest(params)
354//
355//    err := req.Send()
356//    if err == nil { // resp is now filled
357//        fmt.Println(resp)
358//    }
359//
360// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/CreateEventSourceMapping
361func (c *Lambda) CreateEventSourceMappingRequest(input *CreateEventSourceMappingInput) (req *request.Request, output *EventSourceMappingConfiguration) {
362	op := &request.Operation{
363		Name:       opCreateEventSourceMapping,
364		HTTPMethod: "POST",
365		HTTPPath:   "/2015-03-31/event-source-mappings/",
366	}
367
368	if input == nil {
369		input = &CreateEventSourceMappingInput{}
370	}
371
372	output = &EventSourceMappingConfiguration{}
373	req = c.newRequest(op, input, output)
374	return
375}
376
377// CreateEventSourceMapping API operation for AWS Lambda.
378//
379// Creates a mapping between an event source and an AWS Lambda function. Lambda
380// reads items from the event source and triggers the function.
381//
382// For details about each event source type, see the following topics.
383//
384//    * Using AWS Lambda with Amazon DynamoDB (https://docs.aws.amazon.com/lambda/latest/dg/with-ddb.html)
385//
386//    * Using AWS Lambda with Amazon Kinesis (https://docs.aws.amazon.com/lambda/latest/dg/with-kinesis.html)
387//
388//    * Using AWS Lambda with Amazon SQS (https://docs.aws.amazon.com/lambda/latest/dg/with-sqs.html)
389//
390// The following error handling options are only available for stream sources
391// (DynamoDB and Kinesis):
392//
393//    * BisectBatchOnFunctionError - If the function returns an error, split
394//    the batch in two and retry.
395//
396//    * DestinationConfig - Send discarded records to an Amazon SQS queue or
397//    Amazon SNS topic.
398//
399//    * MaximumRecordAgeInSeconds - Discard records older than the specified
400//    age.
401//
402//    * MaximumRetryAttempts - Discard records after the specified number of
403//    retries.
404//
405//    * ParallelizationFactor - Process multiple batches from each shard concurrently.
406//
407// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
408// with awserr.Error's Code and Message methods to get detailed information about
409// the error.
410//
411// See the AWS API reference guide for AWS Lambda's
412// API operation CreateEventSourceMapping for usage and error information.
413//
414// Returned Error Types:
415//   * ServiceException
416//   The AWS Lambda service encountered an internal error.
417//
418//   * InvalidParameterValueException
419//   One of the parameters in the request is invalid.
420//
421//   * ResourceConflictException
422//   The resource already exists, or another operation is in progress.
423//
424//   * TooManyRequestsException
425//   The request throughput limit was exceeded.
426//
427//   * ResourceNotFoundException
428//   The resource specified in the request does not exist.
429//
430// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/CreateEventSourceMapping
431func (c *Lambda) CreateEventSourceMapping(input *CreateEventSourceMappingInput) (*EventSourceMappingConfiguration, error) {
432	req, out := c.CreateEventSourceMappingRequest(input)
433	return out, req.Send()
434}
435
436// CreateEventSourceMappingWithContext is the same as CreateEventSourceMapping with the addition of
437// the ability to pass a context and additional request options.
438//
439// See CreateEventSourceMapping for details on how to use this API operation.
440//
441// The context must be non-nil and will be used for request cancellation. If
442// the context is nil a panic will occur. In the future the SDK may create
443// sub-contexts for http.Requests. See https://golang.org/pkg/context/
444// for more information on using Contexts.
445func (c *Lambda) CreateEventSourceMappingWithContext(ctx aws.Context, input *CreateEventSourceMappingInput, opts ...request.Option) (*EventSourceMappingConfiguration, error) {
446	req, out := c.CreateEventSourceMappingRequest(input)
447	req.SetContext(ctx)
448	req.ApplyOptions(opts...)
449	return out, req.Send()
450}
451
452const opCreateFunction = "CreateFunction"
453
454// CreateFunctionRequest generates a "aws/request.Request" representing the
455// client's request for the CreateFunction operation. The "output" return
456// value will be populated with the request's response once the request completes
457// successfully.
458//
459// Use "Send" method on the returned Request to send the API call to the service.
460// the "output" return value is not valid until after Send returns without error.
461//
462// See CreateFunction for more information on using the CreateFunction
463// API call, and error handling.
464//
465// This method is useful when you want to inject custom logic or configuration
466// into the SDK's request lifecycle. Such as custom headers, or retry logic.
467//
468//
469//    // Example sending a request using the CreateFunctionRequest method.
470//    req, resp := client.CreateFunctionRequest(params)
471//
472//    err := req.Send()
473//    if err == nil { // resp is now filled
474//        fmt.Println(resp)
475//    }
476//
477// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/CreateFunction
478func (c *Lambda) CreateFunctionRequest(input *CreateFunctionInput) (req *request.Request, output *FunctionConfiguration) {
479	op := &request.Operation{
480		Name:       opCreateFunction,
481		HTTPMethod: "POST",
482		HTTPPath:   "/2015-03-31/functions",
483	}
484
485	if input == nil {
486		input = &CreateFunctionInput{}
487	}
488
489	output = &FunctionConfiguration{}
490	req = c.newRequest(op, input, output)
491	return
492}
493
494// CreateFunction API operation for AWS Lambda.
495//
496// Creates a Lambda function. To create a function, you need a deployment package
497// (https://docs.aws.amazon.com/lambda/latest/dg/deployment-package-v2.html)
498// and an execution role (https://docs.aws.amazon.com/lambda/latest/dg/intro-permission-model.html#lambda-intro-execution-role).
499// The deployment package contains your function code. The execution role grants
500// the function permission to use AWS services, such as Amazon CloudWatch Logs
501// for log streaming and AWS X-Ray for request tracing.
502//
503// When you create a function, Lambda provisions an instance of the function
504// and its supporting resources. If your function connects to a VPC, this process
505// can take a minute or so. During this time, you can't invoke or modify the
506// function. The State, StateReason, and StateReasonCode fields in the response
507// from GetFunctionConfiguration indicate when the function is ready to invoke.
508// For more information, see Function States (https://docs.aws.amazon.com/lambda/latest/dg/functions-states.html).
509//
510// A function has an unpublished version, and can have published versions and
511// aliases. The unpublished version changes when you update your function's
512// code and configuration. A published version is a snapshot of your function
513// code and configuration that can't be changed. An alias is a named resource
514// that maps to a version, and can be changed to map to a different version.
515// Use the Publish parameter to create version 1 of your function from its initial
516// configuration.
517//
518// The other parameters let you configure version-specific and function-level
519// settings. You can modify version-specific settings later with UpdateFunctionConfiguration.
520// Function-level settings apply to both the unpublished and published versions
521// of the function, and include tags (TagResource) and per-function concurrency
522// limits (PutFunctionConcurrency).
523//
524// If another account or an AWS service invokes your function, use AddPermission
525// to grant permission by creating a resource-based IAM policy. You can grant
526// permissions at the function level, on a version, or on an alias.
527//
528// To invoke your function directly, use Invoke. To invoke your function in
529// response to events in other AWS services, create an event source mapping
530// (CreateEventSourceMapping), or configure a function trigger in the other
531// service. For more information, see Invoking Functions (https://docs.aws.amazon.com/lambda/latest/dg/lambda-invocation.html).
532//
533// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
534// with awserr.Error's Code and Message methods to get detailed information about
535// the error.
536//
537// See the AWS API reference guide for AWS Lambda's
538// API operation CreateFunction for usage and error information.
539//
540// Returned Error Types:
541//   * ServiceException
542//   The AWS Lambda service encountered an internal error.
543//
544//   * InvalidParameterValueException
545//   One of the parameters in the request is invalid.
546//
547//   * ResourceNotFoundException
548//   The resource specified in the request does not exist.
549//
550//   * ResourceConflictException
551//   The resource already exists, or another operation is in progress.
552//
553//   * TooManyRequestsException
554//   The request throughput limit was exceeded.
555//
556//   * CodeStorageExceededException
557//   You have exceeded your maximum total code size per account. Learn more (https://docs.aws.amazon.com/lambda/latest/dg/limits.html)
558//
559// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/CreateFunction
560func (c *Lambda) CreateFunction(input *CreateFunctionInput) (*FunctionConfiguration, error) {
561	req, out := c.CreateFunctionRequest(input)
562	return out, req.Send()
563}
564
565// CreateFunctionWithContext is the same as CreateFunction with the addition of
566// the ability to pass a context and additional request options.
567//
568// See CreateFunction for details on how to use this API operation.
569//
570// The context must be non-nil and will be used for request cancellation. If
571// the context is nil a panic will occur. In the future the SDK may create
572// sub-contexts for http.Requests. See https://golang.org/pkg/context/
573// for more information on using Contexts.
574func (c *Lambda) CreateFunctionWithContext(ctx aws.Context, input *CreateFunctionInput, opts ...request.Option) (*FunctionConfiguration, error) {
575	req, out := c.CreateFunctionRequest(input)
576	req.SetContext(ctx)
577	req.ApplyOptions(opts...)
578	return out, req.Send()
579}
580
581const opDeleteAlias = "DeleteAlias"
582
583// DeleteAliasRequest generates a "aws/request.Request" representing the
584// client's request for the DeleteAlias operation. The "output" return
585// value will be populated with the request's response once the request completes
586// successfully.
587//
588// Use "Send" method on the returned Request to send the API call to the service.
589// the "output" return value is not valid until after Send returns without error.
590//
591// See DeleteAlias for more information on using the DeleteAlias
592// API call, and error handling.
593//
594// This method is useful when you want to inject custom logic or configuration
595// into the SDK's request lifecycle. Such as custom headers, or retry logic.
596//
597//
598//    // Example sending a request using the DeleteAliasRequest method.
599//    req, resp := client.DeleteAliasRequest(params)
600//
601//    err := req.Send()
602//    if err == nil { // resp is now filled
603//        fmt.Println(resp)
604//    }
605//
606// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/DeleteAlias
607func (c *Lambda) DeleteAliasRequest(input *DeleteAliasInput) (req *request.Request, output *DeleteAliasOutput) {
608	op := &request.Operation{
609		Name:       opDeleteAlias,
610		HTTPMethod: "DELETE",
611		HTTPPath:   "/2015-03-31/functions/{FunctionName}/aliases/{Name}",
612	}
613
614	if input == nil {
615		input = &DeleteAliasInput{}
616	}
617
618	output = &DeleteAliasOutput{}
619	req = c.newRequest(op, input, output)
620	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
621	return
622}
623
624// DeleteAlias API operation for AWS Lambda.
625//
626// Deletes a Lambda function alias (https://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html).
627//
628// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
629// with awserr.Error's Code and Message methods to get detailed information about
630// the error.
631//
632// See the AWS API reference guide for AWS Lambda's
633// API operation DeleteAlias for usage and error information.
634//
635// Returned Error Types:
636//   * ServiceException
637//   The AWS Lambda service encountered an internal error.
638//
639//   * InvalidParameterValueException
640//   One of the parameters in the request is invalid.
641//
642//   * ResourceConflictException
643//   The resource already exists, or another operation is in progress.
644//
645//   * TooManyRequestsException
646//   The request throughput limit was exceeded.
647//
648// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/DeleteAlias
649func (c *Lambda) DeleteAlias(input *DeleteAliasInput) (*DeleteAliasOutput, error) {
650	req, out := c.DeleteAliasRequest(input)
651	return out, req.Send()
652}
653
654// DeleteAliasWithContext is the same as DeleteAlias with the addition of
655// the ability to pass a context and additional request options.
656//
657// See DeleteAlias for details on how to use this API operation.
658//
659// The context must be non-nil and will be used for request cancellation. If
660// the context is nil a panic will occur. In the future the SDK may create
661// sub-contexts for http.Requests. See https://golang.org/pkg/context/
662// for more information on using Contexts.
663func (c *Lambda) DeleteAliasWithContext(ctx aws.Context, input *DeleteAliasInput, opts ...request.Option) (*DeleteAliasOutput, error) {
664	req, out := c.DeleteAliasRequest(input)
665	req.SetContext(ctx)
666	req.ApplyOptions(opts...)
667	return out, req.Send()
668}
669
670const opDeleteEventSourceMapping = "DeleteEventSourceMapping"
671
672// DeleteEventSourceMappingRequest generates a "aws/request.Request" representing the
673// client's request for the DeleteEventSourceMapping operation. The "output" return
674// value will be populated with the request's response once the request completes
675// successfully.
676//
677// Use "Send" method on the returned Request to send the API call to the service.
678// the "output" return value is not valid until after Send returns without error.
679//
680// See DeleteEventSourceMapping for more information on using the DeleteEventSourceMapping
681// API call, and error handling.
682//
683// This method is useful when you want to inject custom logic or configuration
684// into the SDK's request lifecycle. Such as custom headers, or retry logic.
685//
686//
687//    // Example sending a request using the DeleteEventSourceMappingRequest method.
688//    req, resp := client.DeleteEventSourceMappingRequest(params)
689//
690//    err := req.Send()
691//    if err == nil { // resp is now filled
692//        fmt.Println(resp)
693//    }
694//
695// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/DeleteEventSourceMapping
696func (c *Lambda) DeleteEventSourceMappingRequest(input *DeleteEventSourceMappingInput) (req *request.Request, output *EventSourceMappingConfiguration) {
697	op := &request.Operation{
698		Name:       opDeleteEventSourceMapping,
699		HTTPMethod: "DELETE",
700		HTTPPath:   "/2015-03-31/event-source-mappings/{UUID}",
701	}
702
703	if input == nil {
704		input = &DeleteEventSourceMappingInput{}
705	}
706
707	output = &EventSourceMappingConfiguration{}
708	req = c.newRequest(op, input, output)
709	return
710}
711
712// DeleteEventSourceMapping API operation for AWS Lambda.
713//
714// Deletes an event source mapping (https://docs.aws.amazon.com/lambda/latest/dg/intro-invocation-modes.html).
715// You can get the identifier of a mapping from the output of ListEventSourceMappings.
716//
717// When you delete an event source mapping, it enters a Deleting state and might
718// not be completely deleted for several seconds.
719//
720// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
721// with awserr.Error's Code and Message methods to get detailed information about
722// the error.
723//
724// See the AWS API reference guide for AWS Lambda's
725// API operation DeleteEventSourceMapping for usage and error information.
726//
727// Returned Error Types:
728//   * ServiceException
729//   The AWS Lambda service encountered an internal error.
730//
731//   * ResourceNotFoundException
732//   The resource specified in the request does not exist.
733//
734//   * InvalidParameterValueException
735//   One of the parameters in the request is invalid.
736//
737//   * TooManyRequestsException
738//   The request throughput limit was exceeded.
739//
740//   * ResourceInUseException
741//   The operation conflicts with the resource's availability. For example, you
742//   attempted to update an EventSource Mapping in CREATING, or tried to delete
743//   a EventSource mapping currently in the UPDATING state.
744//
745// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/DeleteEventSourceMapping
746func (c *Lambda) DeleteEventSourceMapping(input *DeleteEventSourceMappingInput) (*EventSourceMappingConfiguration, error) {
747	req, out := c.DeleteEventSourceMappingRequest(input)
748	return out, req.Send()
749}
750
751// DeleteEventSourceMappingWithContext is the same as DeleteEventSourceMapping with the addition of
752// the ability to pass a context and additional request options.
753//
754// See DeleteEventSourceMapping for details on how to use this API operation.
755//
756// The context must be non-nil and will be used for request cancellation. If
757// the context is nil a panic will occur. In the future the SDK may create
758// sub-contexts for http.Requests. See https://golang.org/pkg/context/
759// for more information on using Contexts.
760func (c *Lambda) DeleteEventSourceMappingWithContext(ctx aws.Context, input *DeleteEventSourceMappingInput, opts ...request.Option) (*EventSourceMappingConfiguration, error) {
761	req, out := c.DeleteEventSourceMappingRequest(input)
762	req.SetContext(ctx)
763	req.ApplyOptions(opts...)
764	return out, req.Send()
765}
766
767const opDeleteFunction = "DeleteFunction"
768
769// DeleteFunctionRequest generates a "aws/request.Request" representing the
770// client's request for the DeleteFunction operation. The "output" return
771// value will be populated with the request's response once the request completes
772// successfully.
773//
774// Use "Send" method on the returned Request to send the API call to the service.
775// the "output" return value is not valid until after Send returns without error.
776//
777// See DeleteFunction for more information on using the DeleteFunction
778// API call, and error handling.
779//
780// This method is useful when you want to inject custom logic or configuration
781// into the SDK's request lifecycle. Such as custom headers, or retry logic.
782//
783//
784//    // Example sending a request using the DeleteFunctionRequest method.
785//    req, resp := client.DeleteFunctionRequest(params)
786//
787//    err := req.Send()
788//    if err == nil { // resp is now filled
789//        fmt.Println(resp)
790//    }
791//
792// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/DeleteFunction
793func (c *Lambda) DeleteFunctionRequest(input *DeleteFunctionInput) (req *request.Request, output *DeleteFunctionOutput) {
794	op := &request.Operation{
795		Name:       opDeleteFunction,
796		HTTPMethod: "DELETE",
797		HTTPPath:   "/2015-03-31/functions/{FunctionName}",
798	}
799
800	if input == nil {
801		input = &DeleteFunctionInput{}
802	}
803
804	output = &DeleteFunctionOutput{}
805	req = c.newRequest(op, input, output)
806	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
807	return
808}
809
810// DeleteFunction API operation for AWS Lambda.
811//
812// Deletes a Lambda function. To delete a specific function version, use the
813// Qualifier parameter. Otherwise, all versions and aliases are deleted.
814//
815// To delete Lambda event source mappings that invoke a function, use DeleteEventSourceMapping.
816// For AWS services and resources that invoke your function directly, delete
817// the trigger in the service where you originally configured it.
818//
819// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
820// with awserr.Error's Code and Message methods to get detailed information about
821// the error.
822//
823// See the AWS API reference guide for AWS Lambda's
824// API operation DeleteFunction for usage and error information.
825//
826// Returned Error Types:
827//   * ServiceException
828//   The AWS Lambda service encountered an internal error.
829//
830//   * ResourceNotFoundException
831//   The resource specified in the request does not exist.
832//
833//   * TooManyRequestsException
834//   The request throughput limit was exceeded.
835//
836//   * InvalidParameterValueException
837//   One of the parameters in the request is invalid.
838//
839//   * ResourceConflictException
840//   The resource already exists, or another operation is in progress.
841//
842// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/DeleteFunction
843func (c *Lambda) DeleteFunction(input *DeleteFunctionInput) (*DeleteFunctionOutput, error) {
844	req, out := c.DeleteFunctionRequest(input)
845	return out, req.Send()
846}
847
848// DeleteFunctionWithContext is the same as DeleteFunction with the addition of
849// the ability to pass a context and additional request options.
850//
851// See DeleteFunction for details on how to use this API operation.
852//
853// The context must be non-nil and will be used for request cancellation. If
854// the context is nil a panic will occur. In the future the SDK may create
855// sub-contexts for http.Requests. See https://golang.org/pkg/context/
856// for more information on using Contexts.
857func (c *Lambda) DeleteFunctionWithContext(ctx aws.Context, input *DeleteFunctionInput, opts ...request.Option) (*DeleteFunctionOutput, error) {
858	req, out := c.DeleteFunctionRequest(input)
859	req.SetContext(ctx)
860	req.ApplyOptions(opts...)
861	return out, req.Send()
862}
863
864const opDeleteFunctionConcurrency = "DeleteFunctionConcurrency"
865
866// DeleteFunctionConcurrencyRequest generates a "aws/request.Request" representing the
867// client's request for the DeleteFunctionConcurrency operation. The "output" return
868// value will be populated with the request's response once the request completes
869// successfully.
870//
871// Use "Send" method on the returned Request to send the API call to the service.
872// the "output" return value is not valid until after Send returns without error.
873//
874// See DeleteFunctionConcurrency for more information on using the DeleteFunctionConcurrency
875// API call, and error handling.
876//
877// This method is useful when you want to inject custom logic or configuration
878// into the SDK's request lifecycle. Such as custom headers, or retry logic.
879//
880//
881//    // Example sending a request using the DeleteFunctionConcurrencyRequest method.
882//    req, resp := client.DeleteFunctionConcurrencyRequest(params)
883//
884//    err := req.Send()
885//    if err == nil { // resp is now filled
886//        fmt.Println(resp)
887//    }
888//
889// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/DeleteFunctionConcurrency
890func (c *Lambda) DeleteFunctionConcurrencyRequest(input *DeleteFunctionConcurrencyInput) (req *request.Request, output *DeleteFunctionConcurrencyOutput) {
891	op := &request.Operation{
892		Name:       opDeleteFunctionConcurrency,
893		HTTPMethod: "DELETE",
894		HTTPPath:   "/2017-10-31/functions/{FunctionName}/concurrency",
895	}
896
897	if input == nil {
898		input = &DeleteFunctionConcurrencyInput{}
899	}
900
901	output = &DeleteFunctionConcurrencyOutput{}
902	req = c.newRequest(op, input, output)
903	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
904	return
905}
906
907// DeleteFunctionConcurrency API operation for AWS Lambda.
908//
909// Removes a concurrent execution limit from a function.
910//
911// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
912// with awserr.Error's Code and Message methods to get detailed information about
913// the error.
914//
915// See the AWS API reference guide for AWS Lambda's
916// API operation DeleteFunctionConcurrency for usage and error information.
917//
918// Returned Error Types:
919//   * ServiceException
920//   The AWS Lambda service encountered an internal error.
921//
922//   * ResourceNotFoundException
923//   The resource specified in the request does not exist.
924//
925//   * TooManyRequestsException
926//   The request throughput limit was exceeded.
927//
928//   * InvalidParameterValueException
929//   One of the parameters in the request is invalid.
930//
931//   * ResourceConflictException
932//   The resource already exists, or another operation is in progress.
933//
934// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/DeleteFunctionConcurrency
935func (c *Lambda) DeleteFunctionConcurrency(input *DeleteFunctionConcurrencyInput) (*DeleteFunctionConcurrencyOutput, error) {
936	req, out := c.DeleteFunctionConcurrencyRequest(input)
937	return out, req.Send()
938}
939
940// DeleteFunctionConcurrencyWithContext is the same as DeleteFunctionConcurrency with the addition of
941// the ability to pass a context and additional request options.
942//
943// See DeleteFunctionConcurrency for details on how to use this API operation.
944//
945// The context must be non-nil and will be used for request cancellation. If
946// the context is nil a panic will occur. In the future the SDK may create
947// sub-contexts for http.Requests. See https://golang.org/pkg/context/
948// for more information on using Contexts.
949func (c *Lambda) DeleteFunctionConcurrencyWithContext(ctx aws.Context, input *DeleteFunctionConcurrencyInput, opts ...request.Option) (*DeleteFunctionConcurrencyOutput, error) {
950	req, out := c.DeleteFunctionConcurrencyRequest(input)
951	req.SetContext(ctx)
952	req.ApplyOptions(opts...)
953	return out, req.Send()
954}
955
956const opDeleteFunctionEventInvokeConfig = "DeleteFunctionEventInvokeConfig"
957
958// DeleteFunctionEventInvokeConfigRequest generates a "aws/request.Request" representing the
959// client's request for the DeleteFunctionEventInvokeConfig operation. The "output" return
960// value will be populated with the request's response once the request completes
961// successfully.
962//
963// Use "Send" method on the returned Request to send the API call to the service.
964// the "output" return value is not valid until after Send returns without error.
965//
966// See DeleteFunctionEventInvokeConfig for more information on using the DeleteFunctionEventInvokeConfig
967// API call, and error handling.
968//
969// This method is useful when you want to inject custom logic or configuration
970// into the SDK's request lifecycle. Such as custom headers, or retry logic.
971//
972//
973//    // Example sending a request using the DeleteFunctionEventInvokeConfigRequest method.
974//    req, resp := client.DeleteFunctionEventInvokeConfigRequest(params)
975//
976//    err := req.Send()
977//    if err == nil { // resp is now filled
978//        fmt.Println(resp)
979//    }
980//
981// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/DeleteFunctionEventInvokeConfig
982func (c *Lambda) DeleteFunctionEventInvokeConfigRequest(input *DeleteFunctionEventInvokeConfigInput) (req *request.Request, output *DeleteFunctionEventInvokeConfigOutput) {
983	op := &request.Operation{
984		Name:       opDeleteFunctionEventInvokeConfig,
985		HTTPMethod: "DELETE",
986		HTTPPath:   "/2019-09-25/functions/{FunctionName}/event-invoke-config",
987	}
988
989	if input == nil {
990		input = &DeleteFunctionEventInvokeConfigInput{}
991	}
992
993	output = &DeleteFunctionEventInvokeConfigOutput{}
994	req = c.newRequest(op, input, output)
995	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
996	return
997}
998
999// DeleteFunctionEventInvokeConfig API operation for AWS Lambda.
1000//
1001// Deletes the configuration for asynchronous invocation for a function, version,
1002// or alias.
1003//
1004// To configure options for asynchronous invocation, use PutFunctionEventInvokeConfig.
1005//
1006// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1007// with awserr.Error's Code and Message methods to get detailed information about
1008// the error.
1009//
1010// See the AWS API reference guide for AWS Lambda's
1011// API operation DeleteFunctionEventInvokeConfig for usage and error information.
1012//
1013// Returned Error Types:
1014//   * ServiceException
1015//   The AWS Lambda service encountered an internal error.
1016//
1017//   * ResourceNotFoundException
1018//   The resource specified in the request does not exist.
1019//
1020//   * InvalidParameterValueException
1021//   One of the parameters in the request is invalid.
1022//
1023//   * TooManyRequestsException
1024//   The request throughput limit was exceeded.
1025//
1026// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/DeleteFunctionEventInvokeConfig
1027func (c *Lambda) DeleteFunctionEventInvokeConfig(input *DeleteFunctionEventInvokeConfigInput) (*DeleteFunctionEventInvokeConfigOutput, error) {
1028	req, out := c.DeleteFunctionEventInvokeConfigRequest(input)
1029	return out, req.Send()
1030}
1031
1032// DeleteFunctionEventInvokeConfigWithContext is the same as DeleteFunctionEventInvokeConfig with the addition of
1033// the ability to pass a context and additional request options.
1034//
1035// See DeleteFunctionEventInvokeConfig for details on how to use this API operation.
1036//
1037// The context must be non-nil and will be used for request cancellation. If
1038// the context is nil a panic will occur. In the future the SDK may create
1039// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1040// for more information on using Contexts.
1041func (c *Lambda) DeleteFunctionEventInvokeConfigWithContext(ctx aws.Context, input *DeleteFunctionEventInvokeConfigInput, opts ...request.Option) (*DeleteFunctionEventInvokeConfigOutput, error) {
1042	req, out := c.DeleteFunctionEventInvokeConfigRequest(input)
1043	req.SetContext(ctx)
1044	req.ApplyOptions(opts...)
1045	return out, req.Send()
1046}
1047
1048const opDeleteLayerVersion = "DeleteLayerVersion"
1049
1050// DeleteLayerVersionRequest generates a "aws/request.Request" representing the
1051// client's request for the DeleteLayerVersion operation. The "output" return
1052// value will be populated with the request's response once the request completes
1053// successfully.
1054//
1055// Use "Send" method on the returned Request to send the API call to the service.
1056// the "output" return value is not valid until after Send returns without error.
1057//
1058// See DeleteLayerVersion for more information on using the DeleteLayerVersion
1059// API call, and error handling.
1060//
1061// This method is useful when you want to inject custom logic or configuration
1062// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1063//
1064//
1065//    // Example sending a request using the DeleteLayerVersionRequest method.
1066//    req, resp := client.DeleteLayerVersionRequest(params)
1067//
1068//    err := req.Send()
1069//    if err == nil { // resp is now filled
1070//        fmt.Println(resp)
1071//    }
1072//
1073// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/DeleteLayerVersion
1074func (c *Lambda) DeleteLayerVersionRequest(input *DeleteLayerVersionInput) (req *request.Request, output *DeleteLayerVersionOutput) {
1075	op := &request.Operation{
1076		Name:       opDeleteLayerVersion,
1077		HTTPMethod: "DELETE",
1078		HTTPPath:   "/2018-10-31/layers/{LayerName}/versions/{VersionNumber}",
1079	}
1080
1081	if input == nil {
1082		input = &DeleteLayerVersionInput{}
1083	}
1084
1085	output = &DeleteLayerVersionOutput{}
1086	req = c.newRequest(op, input, output)
1087	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1088	return
1089}
1090
1091// DeleteLayerVersion API operation for AWS Lambda.
1092//
1093// Deletes a version of an AWS Lambda layer (https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html).
1094// Deleted versions can no longer be viewed or added to functions. To avoid
1095// breaking functions, a copy of the version remains in Lambda until no functions
1096// refer to it.
1097//
1098// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1099// with awserr.Error's Code and Message methods to get detailed information about
1100// the error.
1101//
1102// See the AWS API reference guide for AWS Lambda's
1103// API operation DeleteLayerVersion for usage and error information.
1104//
1105// Returned Error Types:
1106//   * ServiceException
1107//   The AWS Lambda service encountered an internal error.
1108//
1109//   * TooManyRequestsException
1110//   The request throughput limit was exceeded.
1111//
1112// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/DeleteLayerVersion
1113func (c *Lambda) DeleteLayerVersion(input *DeleteLayerVersionInput) (*DeleteLayerVersionOutput, error) {
1114	req, out := c.DeleteLayerVersionRequest(input)
1115	return out, req.Send()
1116}
1117
1118// DeleteLayerVersionWithContext is the same as DeleteLayerVersion with the addition of
1119// the ability to pass a context and additional request options.
1120//
1121// See DeleteLayerVersion for details on how to use this API operation.
1122//
1123// The context must be non-nil and will be used for request cancellation. If
1124// the context is nil a panic will occur. In the future the SDK may create
1125// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1126// for more information on using Contexts.
1127func (c *Lambda) DeleteLayerVersionWithContext(ctx aws.Context, input *DeleteLayerVersionInput, opts ...request.Option) (*DeleteLayerVersionOutput, error) {
1128	req, out := c.DeleteLayerVersionRequest(input)
1129	req.SetContext(ctx)
1130	req.ApplyOptions(opts...)
1131	return out, req.Send()
1132}
1133
1134const opDeleteProvisionedConcurrencyConfig = "DeleteProvisionedConcurrencyConfig"
1135
1136// DeleteProvisionedConcurrencyConfigRequest generates a "aws/request.Request" representing the
1137// client's request for the DeleteProvisionedConcurrencyConfig operation. The "output" return
1138// value will be populated with the request's response once the request completes
1139// successfully.
1140//
1141// Use "Send" method on the returned Request to send the API call to the service.
1142// the "output" return value is not valid until after Send returns without error.
1143//
1144// See DeleteProvisionedConcurrencyConfig for more information on using the DeleteProvisionedConcurrencyConfig
1145// API call, and error handling.
1146//
1147// This method is useful when you want to inject custom logic or configuration
1148// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1149//
1150//
1151//    // Example sending a request using the DeleteProvisionedConcurrencyConfigRequest method.
1152//    req, resp := client.DeleteProvisionedConcurrencyConfigRequest(params)
1153//
1154//    err := req.Send()
1155//    if err == nil { // resp is now filled
1156//        fmt.Println(resp)
1157//    }
1158//
1159// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/DeleteProvisionedConcurrencyConfig
1160func (c *Lambda) DeleteProvisionedConcurrencyConfigRequest(input *DeleteProvisionedConcurrencyConfigInput) (req *request.Request, output *DeleteProvisionedConcurrencyConfigOutput) {
1161	op := &request.Operation{
1162		Name:       opDeleteProvisionedConcurrencyConfig,
1163		HTTPMethod: "DELETE",
1164		HTTPPath:   "/2019-09-30/functions/{FunctionName}/provisioned-concurrency",
1165	}
1166
1167	if input == nil {
1168		input = &DeleteProvisionedConcurrencyConfigInput{}
1169	}
1170
1171	output = &DeleteProvisionedConcurrencyConfigOutput{}
1172	req = c.newRequest(op, input, output)
1173	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1174	return
1175}
1176
1177// DeleteProvisionedConcurrencyConfig API operation for AWS Lambda.
1178//
1179// Deletes the provisioned concurrency configuration for a function.
1180//
1181// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1182// with awserr.Error's Code and Message methods to get detailed information about
1183// the error.
1184//
1185// See the AWS API reference guide for AWS Lambda's
1186// API operation DeleteProvisionedConcurrencyConfig for usage and error information.
1187//
1188// Returned Error Types:
1189//   * InvalidParameterValueException
1190//   One of the parameters in the request is invalid.
1191//
1192//   * ResourceConflictException
1193//   The resource already exists, or another operation is in progress.
1194//
1195//   * ResourceNotFoundException
1196//   The resource specified in the request does not exist.
1197//
1198//   * TooManyRequestsException
1199//   The request throughput limit was exceeded.
1200//
1201//   * ServiceException
1202//   The AWS Lambda service encountered an internal error.
1203//
1204// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/DeleteProvisionedConcurrencyConfig
1205func (c *Lambda) DeleteProvisionedConcurrencyConfig(input *DeleteProvisionedConcurrencyConfigInput) (*DeleteProvisionedConcurrencyConfigOutput, error) {
1206	req, out := c.DeleteProvisionedConcurrencyConfigRequest(input)
1207	return out, req.Send()
1208}
1209
1210// DeleteProvisionedConcurrencyConfigWithContext is the same as DeleteProvisionedConcurrencyConfig with the addition of
1211// the ability to pass a context and additional request options.
1212//
1213// See DeleteProvisionedConcurrencyConfig for details on how to use this API operation.
1214//
1215// The context must be non-nil and will be used for request cancellation. If
1216// the context is nil a panic will occur. In the future the SDK may create
1217// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1218// for more information on using Contexts.
1219func (c *Lambda) DeleteProvisionedConcurrencyConfigWithContext(ctx aws.Context, input *DeleteProvisionedConcurrencyConfigInput, opts ...request.Option) (*DeleteProvisionedConcurrencyConfigOutput, error) {
1220	req, out := c.DeleteProvisionedConcurrencyConfigRequest(input)
1221	req.SetContext(ctx)
1222	req.ApplyOptions(opts...)
1223	return out, req.Send()
1224}
1225
1226const opGetAccountSettings = "GetAccountSettings"
1227
1228// GetAccountSettingsRequest generates a "aws/request.Request" representing the
1229// client's request for the GetAccountSettings operation. The "output" return
1230// value will be populated with the request's response once the request completes
1231// successfully.
1232//
1233// Use "Send" method on the returned Request to send the API call to the service.
1234// the "output" return value is not valid until after Send returns without error.
1235//
1236// See GetAccountSettings for more information on using the GetAccountSettings
1237// API call, and error handling.
1238//
1239// This method is useful when you want to inject custom logic or configuration
1240// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1241//
1242//
1243//    // Example sending a request using the GetAccountSettingsRequest method.
1244//    req, resp := client.GetAccountSettingsRequest(params)
1245//
1246//    err := req.Send()
1247//    if err == nil { // resp is now filled
1248//        fmt.Println(resp)
1249//    }
1250//
1251// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetAccountSettings
1252func (c *Lambda) GetAccountSettingsRequest(input *GetAccountSettingsInput) (req *request.Request, output *GetAccountSettingsOutput) {
1253	op := &request.Operation{
1254		Name:       opGetAccountSettings,
1255		HTTPMethod: "GET",
1256		HTTPPath:   "/2016-08-19/account-settings/",
1257	}
1258
1259	if input == nil {
1260		input = &GetAccountSettingsInput{}
1261	}
1262
1263	output = &GetAccountSettingsOutput{}
1264	req = c.newRequest(op, input, output)
1265	return
1266}
1267
1268// GetAccountSettings API operation for AWS Lambda.
1269//
1270// Retrieves details about your account's limits (https://docs.aws.amazon.com/lambda/latest/dg/limits.html)
1271// and usage in an AWS Region.
1272//
1273// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1274// with awserr.Error's Code and Message methods to get detailed information about
1275// the error.
1276//
1277// See the AWS API reference guide for AWS Lambda's
1278// API operation GetAccountSettings for usage and error information.
1279//
1280// Returned Error Types:
1281//   * TooManyRequestsException
1282//   The request throughput limit was exceeded.
1283//
1284//   * ServiceException
1285//   The AWS Lambda service encountered an internal error.
1286//
1287// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetAccountSettings
1288func (c *Lambda) GetAccountSettings(input *GetAccountSettingsInput) (*GetAccountSettingsOutput, error) {
1289	req, out := c.GetAccountSettingsRequest(input)
1290	return out, req.Send()
1291}
1292
1293// GetAccountSettingsWithContext is the same as GetAccountSettings with the addition of
1294// the ability to pass a context and additional request options.
1295//
1296// See GetAccountSettings for details on how to use this API operation.
1297//
1298// The context must be non-nil and will be used for request cancellation. If
1299// the context is nil a panic will occur. In the future the SDK may create
1300// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1301// for more information on using Contexts.
1302func (c *Lambda) GetAccountSettingsWithContext(ctx aws.Context, input *GetAccountSettingsInput, opts ...request.Option) (*GetAccountSettingsOutput, error) {
1303	req, out := c.GetAccountSettingsRequest(input)
1304	req.SetContext(ctx)
1305	req.ApplyOptions(opts...)
1306	return out, req.Send()
1307}
1308
1309const opGetAlias = "GetAlias"
1310
1311// GetAliasRequest generates a "aws/request.Request" representing the
1312// client's request for the GetAlias operation. The "output" return
1313// value will be populated with the request's response once the request completes
1314// successfully.
1315//
1316// Use "Send" method on the returned Request to send the API call to the service.
1317// the "output" return value is not valid until after Send returns without error.
1318//
1319// See GetAlias for more information on using the GetAlias
1320// API call, and error handling.
1321//
1322// This method is useful when you want to inject custom logic or configuration
1323// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1324//
1325//
1326//    // Example sending a request using the GetAliasRequest method.
1327//    req, resp := client.GetAliasRequest(params)
1328//
1329//    err := req.Send()
1330//    if err == nil { // resp is now filled
1331//        fmt.Println(resp)
1332//    }
1333//
1334// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetAlias
1335func (c *Lambda) GetAliasRequest(input *GetAliasInput) (req *request.Request, output *AliasConfiguration) {
1336	op := &request.Operation{
1337		Name:       opGetAlias,
1338		HTTPMethod: "GET",
1339		HTTPPath:   "/2015-03-31/functions/{FunctionName}/aliases/{Name}",
1340	}
1341
1342	if input == nil {
1343		input = &GetAliasInput{}
1344	}
1345
1346	output = &AliasConfiguration{}
1347	req = c.newRequest(op, input, output)
1348	return
1349}
1350
1351// GetAlias API operation for AWS Lambda.
1352//
1353// Returns details about a Lambda function alias (https://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html).
1354//
1355// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1356// with awserr.Error's Code and Message methods to get detailed information about
1357// the error.
1358//
1359// See the AWS API reference guide for AWS Lambda's
1360// API operation GetAlias for usage and error information.
1361//
1362// Returned Error Types:
1363//   * ServiceException
1364//   The AWS Lambda service encountered an internal error.
1365//
1366//   * ResourceNotFoundException
1367//   The resource specified in the request does not exist.
1368//
1369//   * InvalidParameterValueException
1370//   One of the parameters in the request is invalid.
1371//
1372//   * TooManyRequestsException
1373//   The request throughput limit was exceeded.
1374//
1375// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetAlias
1376func (c *Lambda) GetAlias(input *GetAliasInput) (*AliasConfiguration, error) {
1377	req, out := c.GetAliasRequest(input)
1378	return out, req.Send()
1379}
1380
1381// GetAliasWithContext is the same as GetAlias with the addition of
1382// the ability to pass a context and additional request options.
1383//
1384// See GetAlias for details on how to use this API operation.
1385//
1386// The context must be non-nil and will be used for request cancellation. If
1387// the context is nil a panic will occur. In the future the SDK may create
1388// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1389// for more information on using Contexts.
1390func (c *Lambda) GetAliasWithContext(ctx aws.Context, input *GetAliasInput, opts ...request.Option) (*AliasConfiguration, error) {
1391	req, out := c.GetAliasRequest(input)
1392	req.SetContext(ctx)
1393	req.ApplyOptions(opts...)
1394	return out, req.Send()
1395}
1396
1397const opGetEventSourceMapping = "GetEventSourceMapping"
1398
1399// GetEventSourceMappingRequest generates a "aws/request.Request" representing the
1400// client's request for the GetEventSourceMapping operation. The "output" return
1401// value will be populated with the request's response once the request completes
1402// successfully.
1403//
1404// Use "Send" method on the returned Request to send the API call to the service.
1405// the "output" return value is not valid until after Send returns without error.
1406//
1407// See GetEventSourceMapping for more information on using the GetEventSourceMapping
1408// API call, and error handling.
1409//
1410// This method is useful when you want to inject custom logic or configuration
1411// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1412//
1413//
1414//    // Example sending a request using the GetEventSourceMappingRequest method.
1415//    req, resp := client.GetEventSourceMappingRequest(params)
1416//
1417//    err := req.Send()
1418//    if err == nil { // resp is now filled
1419//        fmt.Println(resp)
1420//    }
1421//
1422// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetEventSourceMapping
1423func (c *Lambda) GetEventSourceMappingRequest(input *GetEventSourceMappingInput) (req *request.Request, output *EventSourceMappingConfiguration) {
1424	op := &request.Operation{
1425		Name:       opGetEventSourceMapping,
1426		HTTPMethod: "GET",
1427		HTTPPath:   "/2015-03-31/event-source-mappings/{UUID}",
1428	}
1429
1430	if input == nil {
1431		input = &GetEventSourceMappingInput{}
1432	}
1433
1434	output = &EventSourceMappingConfiguration{}
1435	req = c.newRequest(op, input, output)
1436	return
1437}
1438
1439// GetEventSourceMapping API operation for AWS Lambda.
1440//
1441// Returns details about an event source mapping. You can get the identifier
1442// of a mapping from the output of ListEventSourceMappings.
1443//
1444// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1445// with awserr.Error's Code and Message methods to get detailed information about
1446// the error.
1447//
1448// See the AWS API reference guide for AWS Lambda's
1449// API operation GetEventSourceMapping for usage and error information.
1450//
1451// Returned Error Types:
1452//   * ServiceException
1453//   The AWS Lambda service encountered an internal error.
1454//
1455//   * ResourceNotFoundException
1456//   The resource specified in the request does not exist.
1457//
1458//   * InvalidParameterValueException
1459//   One of the parameters in the request is invalid.
1460//
1461//   * TooManyRequestsException
1462//   The request throughput limit was exceeded.
1463//
1464// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetEventSourceMapping
1465func (c *Lambda) GetEventSourceMapping(input *GetEventSourceMappingInput) (*EventSourceMappingConfiguration, error) {
1466	req, out := c.GetEventSourceMappingRequest(input)
1467	return out, req.Send()
1468}
1469
1470// GetEventSourceMappingWithContext is the same as GetEventSourceMapping with the addition of
1471// the ability to pass a context and additional request options.
1472//
1473// See GetEventSourceMapping for details on how to use this API operation.
1474//
1475// The context must be non-nil and will be used for request cancellation. If
1476// the context is nil a panic will occur. In the future the SDK may create
1477// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1478// for more information on using Contexts.
1479func (c *Lambda) GetEventSourceMappingWithContext(ctx aws.Context, input *GetEventSourceMappingInput, opts ...request.Option) (*EventSourceMappingConfiguration, error) {
1480	req, out := c.GetEventSourceMappingRequest(input)
1481	req.SetContext(ctx)
1482	req.ApplyOptions(opts...)
1483	return out, req.Send()
1484}
1485
1486const opGetFunction = "GetFunction"
1487
1488// GetFunctionRequest generates a "aws/request.Request" representing the
1489// client's request for the GetFunction operation. The "output" return
1490// value will be populated with the request's response once the request completes
1491// successfully.
1492//
1493// Use "Send" method on the returned Request to send the API call to the service.
1494// the "output" return value is not valid until after Send returns without error.
1495//
1496// See GetFunction for more information on using the GetFunction
1497// API call, and error handling.
1498//
1499// This method is useful when you want to inject custom logic or configuration
1500// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1501//
1502//
1503//    // Example sending a request using the GetFunctionRequest method.
1504//    req, resp := client.GetFunctionRequest(params)
1505//
1506//    err := req.Send()
1507//    if err == nil { // resp is now filled
1508//        fmt.Println(resp)
1509//    }
1510//
1511// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetFunction
1512func (c *Lambda) GetFunctionRequest(input *GetFunctionInput) (req *request.Request, output *GetFunctionOutput) {
1513	op := &request.Operation{
1514		Name:       opGetFunction,
1515		HTTPMethod: "GET",
1516		HTTPPath:   "/2015-03-31/functions/{FunctionName}",
1517	}
1518
1519	if input == nil {
1520		input = &GetFunctionInput{}
1521	}
1522
1523	output = &GetFunctionOutput{}
1524	req = c.newRequest(op, input, output)
1525	return
1526}
1527
1528// GetFunction API operation for AWS Lambda.
1529//
1530// Returns information about the function or function version, with a link to
1531// download the deployment package that's valid for 10 minutes. If you specify
1532// a function version, only details that are specific to that version are returned.
1533//
1534// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1535// with awserr.Error's Code and Message methods to get detailed information about
1536// the error.
1537//
1538// See the AWS API reference guide for AWS Lambda's
1539// API operation GetFunction for usage and error information.
1540//
1541// Returned Error Types:
1542//   * ServiceException
1543//   The AWS Lambda service encountered an internal error.
1544//
1545//   * ResourceNotFoundException
1546//   The resource specified in the request does not exist.
1547//
1548//   * TooManyRequestsException
1549//   The request throughput limit was exceeded.
1550//
1551//   * InvalidParameterValueException
1552//   One of the parameters in the request is invalid.
1553//
1554// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetFunction
1555func (c *Lambda) GetFunction(input *GetFunctionInput) (*GetFunctionOutput, error) {
1556	req, out := c.GetFunctionRequest(input)
1557	return out, req.Send()
1558}
1559
1560// GetFunctionWithContext is the same as GetFunction with the addition of
1561// the ability to pass a context and additional request options.
1562//
1563// See GetFunction for details on how to use this API operation.
1564//
1565// The context must be non-nil and will be used for request cancellation. If
1566// the context is nil a panic will occur. In the future the SDK may create
1567// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1568// for more information on using Contexts.
1569func (c *Lambda) GetFunctionWithContext(ctx aws.Context, input *GetFunctionInput, opts ...request.Option) (*GetFunctionOutput, error) {
1570	req, out := c.GetFunctionRequest(input)
1571	req.SetContext(ctx)
1572	req.ApplyOptions(opts...)
1573	return out, req.Send()
1574}
1575
1576const opGetFunctionConcurrency = "GetFunctionConcurrency"
1577
1578// GetFunctionConcurrencyRequest generates a "aws/request.Request" representing the
1579// client's request for the GetFunctionConcurrency operation. The "output" return
1580// value will be populated with the request's response once the request completes
1581// successfully.
1582//
1583// Use "Send" method on the returned Request to send the API call to the service.
1584// the "output" return value is not valid until after Send returns without error.
1585//
1586// See GetFunctionConcurrency for more information on using the GetFunctionConcurrency
1587// API call, and error handling.
1588//
1589// This method is useful when you want to inject custom logic or configuration
1590// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1591//
1592//
1593//    // Example sending a request using the GetFunctionConcurrencyRequest method.
1594//    req, resp := client.GetFunctionConcurrencyRequest(params)
1595//
1596//    err := req.Send()
1597//    if err == nil { // resp is now filled
1598//        fmt.Println(resp)
1599//    }
1600//
1601// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetFunctionConcurrency
1602func (c *Lambda) GetFunctionConcurrencyRequest(input *GetFunctionConcurrencyInput) (req *request.Request, output *GetFunctionConcurrencyOutput) {
1603	op := &request.Operation{
1604		Name:       opGetFunctionConcurrency,
1605		HTTPMethod: "GET",
1606		HTTPPath:   "/2019-09-30/functions/{FunctionName}/concurrency",
1607	}
1608
1609	if input == nil {
1610		input = &GetFunctionConcurrencyInput{}
1611	}
1612
1613	output = &GetFunctionConcurrencyOutput{}
1614	req = c.newRequest(op, input, output)
1615	return
1616}
1617
1618// GetFunctionConcurrency API operation for AWS Lambda.
1619//
1620// Returns details about the reserved concurrency configuration for a function.
1621// To set a concurrency limit for a function, use PutFunctionConcurrency.
1622//
1623// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1624// with awserr.Error's Code and Message methods to get detailed information about
1625// the error.
1626//
1627// See the AWS API reference guide for AWS Lambda's
1628// API operation GetFunctionConcurrency for usage and error information.
1629//
1630// Returned Error Types:
1631//   * InvalidParameterValueException
1632//   One of the parameters in the request is invalid.
1633//
1634//   * ResourceNotFoundException
1635//   The resource specified in the request does not exist.
1636//
1637//   * TooManyRequestsException
1638//   The request throughput limit was exceeded.
1639//
1640//   * ServiceException
1641//   The AWS Lambda service encountered an internal error.
1642//
1643// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetFunctionConcurrency
1644func (c *Lambda) GetFunctionConcurrency(input *GetFunctionConcurrencyInput) (*GetFunctionConcurrencyOutput, error) {
1645	req, out := c.GetFunctionConcurrencyRequest(input)
1646	return out, req.Send()
1647}
1648
1649// GetFunctionConcurrencyWithContext is the same as GetFunctionConcurrency with the addition of
1650// the ability to pass a context and additional request options.
1651//
1652// See GetFunctionConcurrency for details on how to use this API operation.
1653//
1654// The context must be non-nil and will be used for request cancellation. If
1655// the context is nil a panic will occur. In the future the SDK may create
1656// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1657// for more information on using Contexts.
1658func (c *Lambda) GetFunctionConcurrencyWithContext(ctx aws.Context, input *GetFunctionConcurrencyInput, opts ...request.Option) (*GetFunctionConcurrencyOutput, error) {
1659	req, out := c.GetFunctionConcurrencyRequest(input)
1660	req.SetContext(ctx)
1661	req.ApplyOptions(opts...)
1662	return out, req.Send()
1663}
1664
1665const opGetFunctionConfiguration = "GetFunctionConfiguration"
1666
1667// GetFunctionConfigurationRequest generates a "aws/request.Request" representing the
1668// client's request for the GetFunctionConfiguration operation. The "output" return
1669// value will be populated with the request's response once the request completes
1670// successfully.
1671//
1672// Use "Send" method on the returned Request to send the API call to the service.
1673// the "output" return value is not valid until after Send returns without error.
1674//
1675// See GetFunctionConfiguration for more information on using the GetFunctionConfiguration
1676// API call, and error handling.
1677//
1678// This method is useful when you want to inject custom logic or configuration
1679// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1680//
1681//
1682//    // Example sending a request using the GetFunctionConfigurationRequest method.
1683//    req, resp := client.GetFunctionConfigurationRequest(params)
1684//
1685//    err := req.Send()
1686//    if err == nil { // resp is now filled
1687//        fmt.Println(resp)
1688//    }
1689//
1690// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetFunctionConfiguration
1691func (c *Lambda) GetFunctionConfigurationRequest(input *GetFunctionConfigurationInput) (req *request.Request, output *FunctionConfiguration) {
1692	op := &request.Operation{
1693		Name:       opGetFunctionConfiguration,
1694		HTTPMethod: "GET",
1695		HTTPPath:   "/2015-03-31/functions/{FunctionName}/configuration",
1696	}
1697
1698	if input == nil {
1699		input = &GetFunctionConfigurationInput{}
1700	}
1701
1702	output = &FunctionConfiguration{}
1703	req = c.newRequest(op, input, output)
1704	return
1705}
1706
1707// GetFunctionConfiguration API operation for AWS Lambda.
1708//
1709// Returns the version-specific settings of a Lambda function or version. The
1710// output includes only options that can vary between versions of a function.
1711// To modify these settings, use UpdateFunctionConfiguration.
1712//
1713// To get all of a function's details, including function-level settings, use
1714// GetFunction.
1715//
1716// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1717// with awserr.Error's Code and Message methods to get detailed information about
1718// the error.
1719//
1720// See the AWS API reference guide for AWS Lambda's
1721// API operation GetFunctionConfiguration for usage and error information.
1722//
1723// Returned Error Types:
1724//   * ServiceException
1725//   The AWS Lambda service encountered an internal error.
1726//
1727//   * ResourceNotFoundException
1728//   The resource specified in the request does not exist.
1729//
1730//   * TooManyRequestsException
1731//   The request throughput limit was exceeded.
1732//
1733//   * InvalidParameterValueException
1734//   One of the parameters in the request is invalid.
1735//
1736// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetFunctionConfiguration
1737func (c *Lambda) GetFunctionConfiguration(input *GetFunctionConfigurationInput) (*FunctionConfiguration, error) {
1738	req, out := c.GetFunctionConfigurationRequest(input)
1739	return out, req.Send()
1740}
1741
1742// GetFunctionConfigurationWithContext is the same as GetFunctionConfiguration with the addition of
1743// the ability to pass a context and additional request options.
1744//
1745// See GetFunctionConfiguration for details on how to use this API operation.
1746//
1747// The context must be non-nil and will be used for request cancellation. If
1748// the context is nil a panic will occur. In the future the SDK may create
1749// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1750// for more information on using Contexts.
1751func (c *Lambda) GetFunctionConfigurationWithContext(ctx aws.Context, input *GetFunctionConfigurationInput, opts ...request.Option) (*FunctionConfiguration, error) {
1752	req, out := c.GetFunctionConfigurationRequest(input)
1753	req.SetContext(ctx)
1754	req.ApplyOptions(opts...)
1755	return out, req.Send()
1756}
1757
1758const opGetFunctionEventInvokeConfig = "GetFunctionEventInvokeConfig"
1759
1760// GetFunctionEventInvokeConfigRequest generates a "aws/request.Request" representing the
1761// client's request for the GetFunctionEventInvokeConfig operation. The "output" return
1762// value will be populated with the request's response once the request completes
1763// successfully.
1764//
1765// Use "Send" method on the returned Request to send the API call to the service.
1766// the "output" return value is not valid until after Send returns without error.
1767//
1768// See GetFunctionEventInvokeConfig for more information on using the GetFunctionEventInvokeConfig
1769// API call, and error handling.
1770//
1771// This method is useful when you want to inject custom logic or configuration
1772// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1773//
1774//
1775//    // Example sending a request using the GetFunctionEventInvokeConfigRequest method.
1776//    req, resp := client.GetFunctionEventInvokeConfigRequest(params)
1777//
1778//    err := req.Send()
1779//    if err == nil { // resp is now filled
1780//        fmt.Println(resp)
1781//    }
1782//
1783// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetFunctionEventInvokeConfig
1784func (c *Lambda) GetFunctionEventInvokeConfigRequest(input *GetFunctionEventInvokeConfigInput) (req *request.Request, output *GetFunctionEventInvokeConfigOutput) {
1785	op := &request.Operation{
1786		Name:       opGetFunctionEventInvokeConfig,
1787		HTTPMethod: "GET",
1788		HTTPPath:   "/2019-09-25/functions/{FunctionName}/event-invoke-config",
1789	}
1790
1791	if input == nil {
1792		input = &GetFunctionEventInvokeConfigInput{}
1793	}
1794
1795	output = &GetFunctionEventInvokeConfigOutput{}
1796	req = c.newRequest(op, input, output)
1797	return
1798}
1799
1800// GetFunctionEventInvokeConfig API operation for AWS Lambda.
1801//
1802// Retrieves the configuration for asynchronous invocation for a function, version,
1803// or alias.
1804//
1805// To configure options for asynchronous invocation, use PutFunctionEventInvokeConfig.
1806//
1807// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1808// with awserr.Error's Code and Message methods to get detailed information about
1809// the error.
1810//
1811// See the AWS API reference guide for AWS Lambda's
1812// API operation GetFunctionEventInvokeConfig for usage and error information.
1813//
1814// Returned Error Types:
1815//   * ServiceException
1816//   The AWS Lambda service encountered an internal error.
1817//
1818//   * ResourceNotFoundException
1819//   The resource specified in the request does not exist.
1820//
1821//   * InvalidParameterValueException
1822//   One of the parameters in the request is invalid.
1823//
1824//   * TooManyRequestsException
1825//   The request throughput limit was exceeded.
1826//
1827// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetFunctionEventInvokeConfig
1828func (c *Lambda) GetFunctionEventInvokeConfig(input *GetFunctionEventInvokeConfigInput) (*GetFunctionEventInvokeConfigOutput, error) {
1829	req, out := c.GetFunctionEventInvokeConfigRequest(input)
1830	return out, req.Send()
1831}
1832
1833// GetFunctionEventInvokeConfigWithContext is the same as GetFunctionEventInvokeConfig with the addition of
1834// the ability to pass a context and additional request options.
1835//
1836// See GetFunctionEventInvokeConfig for details on how to use this API operation.
1837//
1838// The context must be non-nil and will be used for request cancellation. If
1839// the context is nil a panic will occur. In the future the SDK may create
1840// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1841// for more information on using Contexts.
1842func (c *Lambda) GetFunctionEventInvokeConfigWithContext(ctx aws.Context, input *GetFunctionEventInvokeConfigInput, opts ...request.Option) (*GetFunctionEventInvokeConfigOutput, error) {
1843	req, out := c.GetFunctionEventInvokeConfigRequest(input)
1844	req.SetContext(ctx)
1845	req.ApplyOptions(opts...)
1846	return out, req.Send()
1847}
1848
1849const opGetLayerVersion = "GetLayerVersion"
1850
1851// GetLayerVersionRequest generates a "aws/request.Request" representing the
1852// client's request for the GetLayerVersion operation. The "output" return
1853// value will be populated with the request's response once the request completes
1854// successfully.
1855//
1856// Use "Send" method on the returned Request to send the API call to the service.
1857// the "output" return value is not valid until after Send returns without error.
1858//
1859// See GetLayerVersion for more information on using the GetLayerVersion
1860// API call, and error handling.
1861//
1862// This method is useful when you want to inject custom logic or configuration
1863// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1864//
1865//
1866//    // Example sending a request using the GetLayerVersionRequest method.
1867//    req, resp := client.GetLayerVersionRequest(params)
1868//
1869//    err := req.Send()
1870//    if err == nil { // resp is now filled
1871//        fmt.Println(resp)
1872//    }
1873//
1874// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetLayerVersion
1875func (c *Lambda) GetLayerVersionRequest(input *GetLayerVersionInput) (req *request.Request, output *GetLayerVersionOutput) {
1876	op := &request.Operation{
1877		Name:       opGetLayerVersion,
1878		HTTPMethod: "GET",
1879		HTTPPath:   "/2018-10-31/layers/{LayerName}/versions/{VersionNumber}",
1880	}
1881
1882	if input == nil {
1883		input = &GetLayerVersionInput{}
1884	}
1885
1886	output = &GetLayerVersionOutput{}
1887	req = c.newRequest(op, input, output)
1888	return
1889}
1890
1891// GetLayerVersion API operation for AWS Lambda.
1892//
1893// Returns information about a version of an AWS Lambda layer (https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html),
1894// with a link to download the layer archive that's valid for 10 minutes.
1895//
1896// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1897// with awserr.Error's Code and Message methods to get detailed information about
1898// the error.
1899//
1900// See the AWS API reference guide for AWS Lambda's
1901// API operation GetLayerVersion for usage and error information.
1902//
1903// Returned Error Types:
1904//   * ServiceException
1905//   The AWS Lambda service encountered an internal error.
1906//
1907//   * InvalidParameterValueException
1908//   One of the parameters in the request is invalid.
1909//
1910//   * TooManyRequestsException
1911//   The request throughput limit was exceeded.
1912//
1913//   * ResourceNotFoundException
1914//   The resource specified in the request does not exist.
1915//
1916// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetLayerVersion
1917func (c *Lambda) GetLayerVersion(input *GetLayerVersionInput) (*GetLayerVersionOutput, error) {
1918	req, out := c.GetLayerVersionRequest(input)
1919	return out, req.Send()
1920}
1921
1922// GetLayerVersionWithContext is the same as GetLayerVersion with the addition of
1923// the ability to pass a context and additional request options.
1924//
1925// See GetLayerVersion for details on how to use this API operation.
1926//
1927// The context must be non-nil and will be used for request cancellation. If
1928// the context is nil a panic will occur. In the future the SDK may create
1929// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1930// for more information on using Contexts.
1931func (c *Lambda) GetLayerVersionWithContext(ctx aws.Context, input *GetLayerVersionInput, opts ...request.Option) (*GetLayerVersionOutput, error) {
1932	req, out := c.GetLayerVersionRequest(input)
1933	req.SetContext(ctx)
1934	req.ApplyOptions(opts...)
1935	return out, req.Send()
1936}
1937
1938const opGetLayerVersionByArn = "GetLayerVersionByArn"
1939
1940// GetLayerVersionByArnRequest generates a "aws/request.Request" representing the
1941// client's request for the GetLayerVersionByArn operation. The "output" return
1942// value will be populated with the request's response once the request completes
1943// successfully.
1944//
1945// Use "Send" method on the returned Request to send the API call to the service.
1946// the "output" return value is not valid until after Send returns without error.
1947//
1948// See GetLayerVersionByArn for more information on using the GetLayerVersionByArn
1949// API call, and error handling.
1950//
1951// This method is useful when you want to inject custom logic or configuration
1952// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1953//
1954//
1955//    // Example sending a request using the GetLayerVersionByArnRequest method.
1956//    req, resp := client.GetLayerVersionByArnRequest(params)
1957//
1958//    err := req.Send()
1959//    if err == nil { // resp is now filled
1960//        fmt.Println(resp)
1961//    }
1962//
1963// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetLayerVersionByArn
1964func (c *Lambda) GetLayerVersionByArnRequest(input *GetLayerVersionByArnInput) (req *request.Request, output *GetLayerVersionByArnOutput) {
1965	op := &request.Operation{
1966		Name:       opGetLayerVersionByArn,
1967		HTTPMethod: "GET",
1968		HTTPPath:   "/2018-10-31/layers?find=LayerVersion",
1969	}
1970
1971	if input == nil {
1972		input = &GetLayerVersionByArnInput{}
1973	}
1974
1975	output = &GetLayerVersionByArnOutput{}
1976	req = c.newRequest(op, input, output)
1977	return
1978}
1979
1980// GetLayerVersionByArn API operation for AWS Lambda.
1981//
1982// Returns information about a version of an AWS Lambda layer (https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html),
1983// with a link to download the layer archive that's valid for 10 minutes.
1984//
1985// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1986// with awserr.Error's Code and Message methods to get detailed information about
1987// the error.
1988//
1989// See the AWS API reference guide for AWS Lambda's
1990// API operation GetLayerVersionByArn for usage and error information.
1991//
1992// Returned Error Types:
1993//   * ServiceException
1994//   The AWS Lambda service encountered an internal error.
1995//
1996//   * InvalidParameterValueException
1997//   One of the parameters in the request is invalid.
1998//
1999//   * TooManyRequestsException
2000//   The request throughput limit was exceeded.
2001//
2002//   * ResourceNotFoundException
2003//   The resource specified in the request does not exist.
2004//
2005// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetLayerVersionByArn
2006func (c *Lambda) GetLayerVersionByArn(input *GetLayerVersionByArnInput) (*GetLayerVersionByArnOutput, error) {
2007	req, out := c.GetLayerVersionByArnRequest(input)
2008	return out, req.Send()
2009}
2010
2011// GetLayerVersionByArnWithContext is the same as GetLayerVersionByArn with the addition of
2012// the ability to pass a context and additional request options.
2013//
2014// See GetLayerVersionByArn for details on how to use this API operation.
2015//
2016// The context must be non-nil and will be used for request cancellation. If
2017// the context is nil a panic will occur. In the future the SDK may create
2018// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2019// for more information on using Contexts.
2020func (c *Lambda) GetLayerVersionByArnWithContext(ctx aws.Context, input *GetLayerVersionByArnInput, opts ...request.Option) (*GetLayerVersionByArnOutput, error) {
2021	req, out := c.GetLayerVersionByArnRequest(input)
2022	req.SetContext(ctx)
2023	req.ApplyOptions(opts...)
2024	return out, req.Send()
2025}
2026
2027const opGetLayerVersionPolicy = "GetLayerVersionPolicy"
2028
2029// GetLayerVersionPolicyRequest generates a "aws/request.Request" representing the
2030// client's request for the GetLayerVersionPolicy operation. The "output" return
2031// value will be populated with the request's response once the request completes
2032// successfully.
2033//
2034// Use "Send" method on the returned Request to send the API call to the service.
2035// the "output" return value is not valid until after Send returns without error.
2036//
2037// See GetLayerVersionPolicy for more information on using the GetLayerVersionPolicy
2038// API call, and error handling.
2039//
2040// This method is useful when you want to inject custom logic or configuration
2041// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2042//
2043//
2044//    // Example sending a request using the GetLayerVersionPolicyRequest method.
2045//    req, resp := client.GetLayerVersionPolicyRequest(params)
2046//
2047//    err := req.Send()
2048//    if err == nil { // resp is now filled
2049//        fmt.Println(resp)
2050//    }
2051//
2052// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetLayerVersionPolicy
2053func (c *Lambda) GetLayerVersionPolicyRequest(input *GetLayerVersionPolicyInput) (req *request.Request, output *GetLayerVersionPolicyOutput) {
2054	op := &request.Operation{
2055		Name:       opGetLayerVersionPolicy,
2056		HTTPMethod: "GET",
2057		HTTPPath:   "/2018-10-31/layers/{LayerName}/versions/{VersionNumber}/policy",
2058	}
2059
2060	if input == nil {
2061		input = &GetLayerVersionPolicyInput{}
2062	}
2063
2064	output = &GetLayerVersionPolicyOutput{}
2065	req = c.newRequest(op, input, output)
2066	return
2067}
2068
2069// GetLayerVersionPolicy API operation for AWS Lambda.
2070//
2071// Returns the permission policy for a version of an AWS Lambda layer (https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html).
2072// For more information, see AddLayerVersionPermission.
2073//
2074// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2075// with awserr.Error's Code and Message methods to get detailed information about
2076// the error.
2077//
2078// See the AWS API reference guide for AWS Lambda's
2079// API operation GetLayerVersionPolicy for usage and error information.
2080//
2081// Returned Error Types:
2082//   * ServiceException
2083//   The AWS Lambda service encountered an internal error.
2084//
2085//   * ResourceNotFoundException
2086//   The resource specified in the request does not exist.
2087//
2088//   * TooManyRequestsException
2089//   The request throughput limit was exceeded.
2090//
2091//   * InvalidParameterValueException
2092//   One of the parameters in the request is invalid.
2093//
2094// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetLayerVersionPolicy
2095func (c *Lambda) GetLayerVersionPolicy(input *GetLayerVersionPolicyInput) (*GetLayerVersionPolicyOutput, error) {
2096	req, out := c.GetLayerVersionPolicyRequest(input)
2097	return out, req.Send()
2098}
2099
2100// GetLayerVersionPolicyWithContext is the same as GetLayerVersionPolicy with the addition of
2101// the ability to pass a context and additional request options.
2102//
2103// See GetLayerVersionPolicy for details on how to use this API operation.
2104//
2105// The context must be non-nil and will be used for request cancellation. If
2106// the context is nil a panic will occur. In the future the SDK may create
2107// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2108// for more information on using Contexts.
2109func (c *Lambda) GetLayerVersionPolicyWithContext(ctx aws.Context, input *GetLayerVersionPolicyInput, opts ...request.Option) (*GetLayerVersionPolicyOutput, error) {
2110	req, out := c.GetLayerVersionPolicyRequest(input)
2111	req.SetContext(ctx)
2112	req.ApplyOptions(opts...)
2113	return out, req.Send()
2114}
2115
2116const opGetPolicy = "GetPolicy"
2117
2118// GetPolicyRequest generates a "aws/request.Request" representing the
2119// client's request for the GetPolicy operation. The "output" return
2120// value will be populated with the request's response once the request completes
2121// successfully.
2122//
2123// Use "Send" method on the returned Request to send the API call to the service.
2124// the "output" return value is not valid until after Send returns without error.
2125//
2126// See GetPolicy for more information on using the GetPolicy
2127// API call, and error handling.
2128//
2129// This method is useful when you want to inject custom logic or configuration
2130// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2131//
2132//
2133//    // Example sending a request using the GetPolicyRequest method.
2134//    req, resp := client.GetPolicyRequest(params)
2135//
2136//    err := req.Send()
2137//    if err == nil { // resp is now filled
2138//        fmt.Println(resp)
2139//    }
2140//
2141// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetPolicy
2142func (c *Lambda) GetPolicyRequest(input *GetPolicyInput) (req *request.Request, output *GetPolicyOutput) {
2143	op := &request.Operation{
2144		Name:       opGetPolicy,
2145		HTTPMethod: "GET",
2146		HTTPPath:   "/2015-03-31/functions/{FunctionName}/policy",
2147	}
2148
2149	if input == nil {
2150		input = &GetPolicyInput{}
2151	}
2152
2153	output = &GetPolicyOutput{}
2154	req = c.newRequest(op, input, output)
2155	return
2156}
2157
2158// GetPolicy API operation for AWS Lambda.
2159//
2160// Returns the resource-based IAM policy (https://docs.aws.amazon.com/lambda/latest/dg/access-control-resource-based.html)
2161// for a function, version, or alias.
2162//
2163// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2164// with awserr.Error's Code and Message methods to get detailed information about
2165// the error.
2166//
2167// See the AWS API reference guide for AWS Lambda's
2168// API operation GetPolicy for usage and error information.
2169//
2170// Returned Error Types:
2171//   * ServiceException
2172//   The AWS Lambda service encountered an internal error.
2173//
2174//   * ResourceNotFoundException
2175//   The resource specified in the request does not exist.
2176//
2177//   * TooManyRequestsException
2178//   The request throughput limit was exceeded.
2179//
2180//   * InvalidParameterValueException
2181//   One of the parameters in the request is invalid.
2182//
2183// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetPolicy
2184func (c *Lambda) GetPolicy(input *GetPolicyInput) (*GetPolicyOutput, error) {
2185	req, out := c.GetPolicyRequest(input)
2186	return out, req.Send()
2187}
2188
2189// GetPolicyWithContext is the same as GetPolicy with the addition of
2190// the ability to pass a context and additional request options.
2191//
2192// See GetPolicy for details on how to use this API operation.
2193//
2194// The context must be non-nil and will be used for request cancellation. If
2195// the context is nil a panic will occur. In the future the SDK may create
2196// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2197// for more information on using Contexts.
2198func (c *Lambda) GetPolicyWithContext(ctx aws.Context, input *GetPolicyInput, opts ...request.Option) (*GetPolicyOutput, error) {
2199	req, out := c.GetPolicyRequest(input)
2200	req.SetContext(ctx)
2201	req.ApplyOptions(opts...)
2202	return out, req.Send()
2203}
2204
2205const opGetProvisionedConcurrencyConfig = "GetProvisionedConcurrencyConfig"
2206
2207// GetProvisionedConcurrencyConfigRequest generates a "aws/request.Request" representing the
2208// client's request for the GetProvisionedConcurrencyConfig operation. The "output" return
2209// value will be populated with the request's response once the request completes
2210// successfully.
2211//
2212// Use "Send" method on the returned Request to send the API call to the service.
2213// the "output" return value is not valid until after Send returns without error.
2214//
2215// See GetProvisionedConcurrencyConfig for more information on using the GetProvisionedConcurrencyConfig
2216// API call, and error handling.
2217//
2218// This method is useful when you want to inject custom logic or configuration
2219// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2220//
2221//
2222//    // Example sending a request using the GetProvisionedConcurrencyConfigRequest method.
2223//    req, resp := client.GetProvisionedConcurrencyConfigRequest(params)
2224//
2225//    err := req.Send()
2226//    if err == nil { // resp is now filled
2227//        fmt.Println(resp)
2228//    }
2229//
2230// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetProvisionedConcurrencyConfig
2231func (c *Lambda) GetProvisionedConcurrencyConfigRequest(input *GetProvisionedConcurrencyConfigInput) (req *request.Request, output *GetProvisionedConcurrencyConfigOutput) {
2232	op := &request.Operation{
2233		Name:       opGetProvisionedConcurrencyConfig,
2234		HTTPMethod: "GET",
2235		HTTPPath:   "/2019-09-30/functions/{FunctionName}/provisioned-concurrency",
2236	}
2237
2238	if input == nil {
2239		input = &GetProvisionedConcurrencyConfigInput{}
2240	}
2241
2242	output = &GetProvisionedConcurrencyConfigOutput{}
2243	req = c.newRequest(op, input, output)
2244	return
2245}
2246
2247// GetProvisionedConcurrencyConfig API operation for AWS Lambda.
2248//
2249// Retrieves the provisioned concurrency configuration for a function's alias
2250// or version.
2251//
2252// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2253// with awserr.Error's Code and Message methods to get detailed information about
2254// the error.
2255//
2256// See the AWS API reference guide for AWS Lambda's
2257// API operation GetProvisionedConcurrencyConfig for usage and error information.
2258//
2259// Returned Error Types:
2260//   * InvalidParameterValueException
2261//   One of the parameters in the request is invalid.
2262//
2263//   * ResourceNotFoundException
2264//   The resource specified in the request does not exist.
2265//
2266//   * TooManyRequestsException
2267//   The request throughput limit was exceeded.
2268//
2269//   * ServiceException
2270//   The AWS Lambda service encountered an internal error.
2271//
2272//   * ProvisionedConcurrencyConfigNotFoundException
2273//   The specified configuration does not exist.
2274//
2275// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetProvisionedConcurrencyConfig
2276func (c *Lambda) GetProvisionedConcurrencyConfig(input *GetProvisionedConcurrencyConfigInput) (*GetProvisionedConcurrencyConfigOutput, error) {
2277	req, out := c.GetProvisionedConcurrencyConfigRequest(input)
2278	return out, req.Send()
2279}
2280
2281// GetProvisionedConcurrencyConfigWithContext is the same as GetProvisionedConcurrencyConfig with the addition of
2282// the ability to pass a context and additional request options.
2283//
2284// See GetProvisionedConcurrencyConfig for details on how to use this API operation.
2285//
2286// The context must be non-nil and will be used for request cancellation. If
2287// the context is nil a panic will occur. In the future the SDK may create
2288// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2289// for more information on using Contexts.
2290func (c *Lambda) GetProvisionedConcurrencyConfigWithContext(ctx aws.Context, input *GetProvisionedConcurrencyConfigInput, opts ...request.Option) (*GetProvisionedConcurrencyConfigOutput, error) {
2291	req, out := c.GetProvisionedConcurrencyConfigRequest(input)
2292	req.SetContext(ctx)
2293	req.ApplyOptions(opts...)
2294	return out, req.Send()
2295}
2296
2297const opInvoke = "Invoke"
2298
2299// InvokeRequest generates a "aws/request.Request" representing the
2300// client's request for the Invoke operation. The "output" return
2301// value will be populated with the request's response once the request completes
2302// successfully.
2303//
2304// Use "Send" method on the returned Request to send the API call to the service.
2305// the "output" return value is not valid until after Send returns without error.
2306//
2307// See Invoke for more information on using the Invoke
2308// API call, and error handling.
2309//
2310// This method is useful when you want to inject custom logic or configuration
2311// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2312//
2313//
2314//    // Example sending a request using the InvokeRequest method.
2315//    req, resp := client.InvokeRequest(params)
2316//
2317//    err := req.Send()
2318//    if err == nil { // resp is now filled
2319//        fmt.Println(resp)
2320//    }
2321//
2322// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/Invoke
2323func (c *Lambda) InvokeRequest(input *InvokeInput) (req *request.Request, output *InvokeOutput) {
2324	op := &request.Operation{
2325		Name:       opInvoke,
2326		HTTPMethod: "POST",
2327		HTTPPath:   "/2015-03-31/functions/{FunctionName}/invocations",
2328	}
2329
2330	if input == nil {
2331		input = &InvokeInput{}
2332	}
2333
2334	output = &InvokeOutput{}
2335	req = c.newRequest(op, input, output)
2336	return
2337}
2338
2339// Invoke API operation for AWS Lambda.
2340//
2341// Invokes a Lambda function. You can invoke a function synchronously (and wait
2342// for the response), or asynchronously. To invoke a function asynchronously,
2343// set InvocationType to Event.
2344//
2345// For synchronous invocation (https://docs.aws.amazon.com/lambda/latest/dg/invocation-sync.html),
2346// details about the function response, including errors, are included in the
2347// response body and headers. For either invocation type, you can find more
2348// information in the execution log (https://docs.aws.amazon.com/lambda/latest/dg/monitoring-functions.html)
2349// and trace (https://docs.aws.amazon.com/lambda/latest/dg/lambda-x-ray.html).
2350//
2351// When an error occurs, your function may be invoked multiple times. Retry
2352// behavior varies by error type, client, event source, and invocation type.
2353// For example, if you invoke a function asynchronously and it returns an error,
2354// Lambda executes the function up to two more times. For more information,
2355// see Retry Behavior (https://docs.aws.amazon.com/lambda/latest/dg/retries-on-errors.html).
2356//
2357// For asynchronous invocation (https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html),
2358// Lambda adds events to a queue before sending them to your function. If your
2359// function does not have enough capacity to keep up with the queue, events
2360// may be lost. Occasionally, your function may receive the same event multiple
2361// times, even if no error occurs. To retain events that were not processed,
2362// configure your function with a dead-letter queue (https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html#dlq).
2363//
2364// The status code in the API response doesn't reflect function errors. Error
2365// codes are reserved for errors that prevent your function from executing,
2366// such as permissions errors, limit errors (https://docs.aws.amazon.com/lambda/latest/dg/limits.html),
2367// or issues with your function's code and configuration. For example, Lambda
2368// returns TooManyRequestsException if executing the function would cause you
2369// to exceed a concurrency limit at either the account level (ConcurrentInvocationLimitExceeded)
2370// or function level (ReservedFunctionConcurrentInvocationLimitExceeded).
2371//
2372// For functions with a long timeout, your client might be disconnected during
2373// synchronous invocation while it waits for a response. Configure your HTTP
2374// client, SDK, firewall, proxy, or operating system to allow for long connections
2375// with timeout or keep-alive settings.
2376//
2377// This operation requires permission for the lambda:InvokeFunction (https://docs.aws.amazon.com/IAM/latest/UserGuide/list_awslambda.html)
2378// action.
2379//
2380// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2381// with awserr.Error's Code and Message methods to get detailed information about
2382// the error.
2383//
2384// See the AWS API reference guide for AWS Lambda's
2385// API operation Invoke for usage and error information.
2386//
2387// Returned Error Types:
2388//   * ServiceException
2389//   The AWS Lambda service encountered an internal error.
2390//
2391//   * ResourceNotFoundException
2392//   The resource specified in the request does not exist.
2393//
2394//   * InvalidRequestContentException
2395//   The request body could not be parsed as JSON.
2396//
2397//   * RequestTooLargeException
2398//   The request payload exceeded the Invoke request body JSON input limit. For
2399//   more information, see Limits (https://docs.aws.amazon.com/lambda/latest/dg/limits.html).
2400//
2401//   * UnsupportedMediaTypeException
2402//   The content type of the Invoke request body is not JSON.
2403//
2404//   * TooManyRequestsException
2405//   The request throughput limit was exceeded.
2406//
2407//   * InvalidParameterValueException
2408//   One of the parameters in the request is invalid.
2409//
2410//   * EC2UnexpectedException
2411//   AWS Lambda received an unexpected EC2 client exception while setting up for
2412//   the Lambda function.
2413//
2414//   * SubnetIPAddressLimitReachedException
2415//   AWS Lambda was not able to set up VPC access for the Lambda function because
2416//   one or more configured subnets has no available IP addresses.
2417//
2418//   * ENILimitReachedException
2419//   AWS Lambda was not able to create an elastic network interface in the VPC,
2420//   specified as part of Lambda function configuration, because the limit for
2421//   network interfaces has been reached.
2422//
2423//   * EFSMountConnectivityException
2424//   The function couldn't make a network connection to the configured file system.
2425//
2426//   * EFSMountFailureException
2427//   The function couldn't mount the configured file system due to a permission
2428//   or configuration issue.
2429//
2430//   * EFSMountTimeoutException
2431//   The function was able to make a network connection to the configured file
2432//   system, but the mount operation timed out.
2433//
2434//   * EFSIOException
2435//   An error occured when reading from or writing to a connected file system.
2436//
2437//   * EC2ThrottledException
2438//   AWS Lambda was throttled by Amazon EC2 during Lambda function initialization
2439//   using the execution role provided for the Lambda function.
2440//
2441//   * EC2AccessDeniedException
2442//   Need additional permissions to configure VPC settings.
2443//
2444//   * InvalidSubnetIDException
2445//   The Subnet ID provided in the Lambda function VPC configuration is invalid.
2446//
2447//   * InvalidSecurityGroupIDException
2448//   The Security Group ID provided in the Lambda function VPC configuration is
2449//   invalid.
2450//
2451//   * InvalidZipFileException
2452//   AWS Lambda could not unzip the deployment package.
2453//
2454//   * KMSDisabledException
2455//   Lambda was unable to decrypt the environment variables because the KMS key
2456//   used is disabled. Check the Lambda function's KMS key settings.
2457//
2458//   * KMSInvalidStateException
2459//   Lambda was unable to decrypt the environment variables because the KMS key
2460//   used is in an invalid state for Decrypt. Check the function's KMS key settings.
2461//
2462//   * KMSAccessDeniedException
2463//   Lambda was unable to decrypt the environment variables because KMS access
2464//   was denied. Check the Lambda function's KMS permissions.
2465//
2466//   * KMSNotFoundException
2467//   Lambda was unable to decrypt the environment variables because the KMS key
2468//   was not found. Check the function's KMS key settings.
2469//
2470//   * InvalidRuntimeException
2471//   The runtime or runtime version specified is not supported.
2472//
2473//   * ResourceConflictException
2474//   The resource already exists, or another operation is in progress.
2475//
2476//   * ResourceNotReadyException
2477//   The function is inactive and its VPC connection is no longer available. Wait
2478//   for the VPC connection to reestablish and try again.
2479//
2480// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/Invoke
2481func (c *Lambda) Invoke(input *InvokeInput) (*InvokeOutput, error) {
2482	req, out := c.InvokeRequest(input)
2483	return out, req.Send()
2484}
2485
2486// InvokeWithContext is the same as Invoke with the addition of
2487// the ability to pass a context and additional request options.
2488//
2489// See Invoke for details on how to use this API operation.
2490//
2491// The context must be non-nil and will be used for request cancellation. If
2492// the context is nil a panic will occur. In the future the SDK may create
2493// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2494// for more information on using Contexts.
2495func (c *Lambda) InvokeWithContext(ctx aws.Context, input *InvokeInput, opts ...request.Option) (*InvokeOutput, error) {
2496	req, out := c.InvokeRequest(input)
2497	req.SetContext(ctx)
2498	req.ApplyOptions(opts...)
2499	return out, req.Send()
2500}
2501
2502const opInvokeAsync = "InvokeAsync"
2503
2504// InvokeAsyncRequest generates a "aws/request.Request" representing the
2505// client's request for the InvokeAsync operation. The "output" return
2506// value will be populated with the request's response once the request completes
2507// successfully.
2508//
2509// Use "Send" method on the returned Request to send the API call to the service.
2510// the "output" return value is not valid until after Send returns without error.
2511//
2512// See InvokeAsync for more information on using the InvokeAsync
2513// API call, and error handling.
2514//
2515// This method is useful when you want to inject custom logic or configuration
2516// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2517//
2518//
2519//    // Example sending a request using the InvokeAsyncRequest method.
2520//    req, resp := client.InvokeAsyncRequest(params)
2521//
2522//    err := req.Send()
2523//    if err == nil { // resp is now filled
2524//        fmt.Println(resp)
2525//    }
2526//
2527// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/InvokeAsync
2528//
2529// Deprecated: InvokeAsync has been deprecated
2530func (c *Lambda) InvokeAsyncRequest(input *InvokeAsyncInput) (req *request.Request, output *InvokeAsyncOutput) {
2531	if c.Client.Config.Logger != nil {
2532		c.Client.Config.Logger.Log("This operation, InvokeAsync, has been deprecated")
2533	}
2534	op := &request.Operation{
2535		Name:       opInvokeAsync,
2536		HTTPMethod: "POST",
2537		HTTPPath:   "/2014-11-13/functions/{FunctionName}/invoke-async/",
2538	}
2539
2540	if input == nil {
2541		input = &InvokeAsyncInput{}
2542	}
2543
2544	output = &InvokeAsyncOutput{}
2545	req = c.newRequest(op, input, output)
2546	return
2547}
2548
2549// InvokeAsync API operation for AWS Lambda.
2550//
2551//
2552// For asynchronous function invocation, use Invoke.
2553//
2554// Invokes a function asynchronously.
2555//
2556// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2557// with awserr.Error's Code and Message methods to get detailed information about
2558// the error.
2559//
2560// See the AWS API reference guide for AWS Lambda's
2561// API operation InvokeAsync for usage and error information.
2562//
2563// Returned Error Types:
2564//   * ServiceException
2565//   The AWS Lambda service encountered an internal error.
2566//
2567//   * ResourceNotFoundException
2568//   The resource specified in the request does not exist.
2569//
2570//   * InvalidRequestContentException
2571//   The request body could not be parsed as JSON.
2572//
2573//   * InvalidRuntimeException
2574//   The runtime or runtime version specified is not supported.
2575//
2576//   * ResourceConflictException
2577//   The resource already exists, or another operation is in progress.
2578//
2579// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/InvokeAsync
2580//
2581// Deprecated: InvokeAsync has been deprecated
2582func (c *Lambda) InvokeAsync(input *InvokeAsyncInput) (*InvokeAsyncOutput, error) {
2583	req, out := c.InvokeAsyncRequest(input)
2584	return out, req.Send()
2585}
2586
2587// InvokeAsyncWithContext is the same as InvokeAsync with the addition of
2588// the ability to pass a context and additional request options.
2589//
2590// See InvokeAsync for details on how to use this API operation.
2591//
2592// The context must be non-nil and will be used for request cancellation. If
2593// the context is nil a panic will occur. In the future the SDK may create
2594// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2595// for more information on using Contexts.
2596//
2597// Deprecated: InvokeAsyncWithContext has been deprecated
2598func (c *Lambda) InvokeAsyncWithContext(ctx aws.Context, input *InvokeAsyncInput, opts ...request.Option) (*InvokeAsyncOutput, error) {
2599	req, out := c.InvokeAsyncRequest(input)
2600	req.SetContext(ctx)
2601	req.ApplyOptions(opts...)
2602	return out, req.Send()
2603}
2604
2605const opListAliases = "ListAliases"
2606
2607// ListAliasesRequest generates a "aws/request.Request" representing the
2608// client's request for the ListAliases operation. The "output" return
2609// value will be populated with the request's response once the request completes
2610// successfully.
2611//
2612// Use "Send" method on the returned Request to send the API call to the service.
2613// the "output" return value is not valid until after Send returns without error.
2614//
2615// See ListAliases for more information on using the ListAliases
2616// API call, and error handling.
2617//
2618// This method is useful when you want to inject custom logic or configuration
2619// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2620//
2621//
2622//    // Example sending a request using the ListAliasesRequest method.
2623//    req, resp := client.ListAliasesRequest(params)
2624//
2625//    err := req.Send()
2626//    if err == nil { // resp is now filled
2627//        fmt.Println(resp)
2628//    }
2629//
2630// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListAliases
2631func (c *Lambda) ListAliasesRequest(input *ListAliasesInput) (req *request.Request, output *ListAliasesOutput) {
2632	op := &request.Operation{
2633		Name:       opListAliases,
2634		HTTPMethod: "GET",
2635		HTTPPath:   "/2015-03-31/functions/{FunctionName}/aliases",
2636		Paginator: &request.Paginator{
2637			InputTokens:     []string{"Marker"},
2638			OutputTokens:    []string{"NextMarker"},
2639			LimitToken:      "MaxItems",
2640			TruncationToken: "",
2641		},
2642	}
2643
2644	if input == nil {
2645		input = &ListAliasesInput{}
2646	}
2647
2648	output = &ListAliasesOutput{}
2649	req = c.newRequest(op, input, output)
2650	return
2651}
2652
2653// ListAliases API operation for AWS Lambda.
2654//
2655// Returns a list of aliases (https://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html)
2656// for a Lambda function.
2657//
2658// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2659// with awserr.Error's Code and Message methods to get detailed information about
2660// the error.
2661//
2662// See the AWS API reference guide for AWS Lambda's
2663// API operation ListAliases for usage and error information.
2664//
2665// Returned Error Types:
2666//   * ServiceException
2667//   The AWS Lambda service encountered an internal error.
2668//
2669//   * ResourceNotFoundException
2670//   The resource specified in the request does not exist.
2671//
2672//   * InvalidParameterValueException
2673//   One of the parameters in the request is invalid.
2674//
2675//   * TooManyRequestsException
2676//   The request throughput limit was exceeded.
2677//
2678// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListAliases
2679func (c *Lambda) ListAliases(input *ListAliasesInput) (*ListAliasesOutput, error) {
2680	req, out := c.ListAliasesRequest(input)
2681	return out, req.Send()
2682}
2683
2684// ListAliasesWithContext is the same as ListAliases with the addition of
2685// the ability to pass a context and additional request options.
2686//
2687// See ListAliases for details on how to use this API operation.
2688//
2689// The context must be non-nil and will be used for request cancellation. If
2690// the context is nil a panic will occur. In the future the SDK may create
2691// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2692// for more information on using Contexts.
2693func (c *Lambda) ListAliasesWithContext(ctx aws.Context, input *ListAliasesInput, opts ...request.Option) (*ListAliasesOutput, error) {
2694	req, out := c.ListAliasesRequest(input)
2695	req.SetContext(ctx)
2696	req.ApplyOptions(opts...)
2697	return out, req.Send()
2698}
2699
2700// ListAliasesPages iterates over the pages of a ListAliases operation,
2701// calling the "fn" function with the response data for each page. To stop
2702// iterating, return false from the fn function.
2703//
2704// See ListAliases method for more information on how to use this operation.
2705//
2706// Note: This operation can generate multiple requests to a service.
2707//
2708//    // Example iterating over at most 3 pages of a ListAliases operation.
2709//    pageNum := 0
2710//    err := client.ListAliasesPages(params,
2711//        func(page *lambda.ListAliasesOutput, lastPage bool) bool {
2712//            pageNum++
2713//            fmt.Println(page)
2714//            return pageNum <= 3
2715//        })
2716//
2717func (c *Lambda) ListAliasesPages(input *ListAliasesInput, fn func(*ListAliasesOutput, bool) bool) error {
2718	return c.ListAliasesPagesWithContext(aws.BackgroundContext(), input, fn)
2719}
2720
2721// ListAliasesPagesWithContext same as ListAliasesPages except
2722// it takes a Context and allows setting request options on the pages.
2723//
2724// The context must be non-nil and will be used for request cancellation. If
2725// the context is nil a panic will occur. In the future the SDK may create
2726// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2727// for more information on using Contexts.
2728func (c *Lambda) ListAliasesPagesWithContext(ctx aws.Context, input *ListAliasesInput, fn func(*ListAliasesOutput, bool) bool, opts ...request.Option) error {
2729	p := request.Pagination{
2730		NewRequest: func() (*request.Request, error) {
2731			var inCpy *ListAliasesInput
2732			if input != nil {
2733				tmp := *input
2734				inCpy = &tmp
2735			}
2736			req, _ := c.ListAliasesRequest(inCpy)
2737			req.SetContext(ctx)
2738			req.ApplyOptions(opts...)
2739			return req, nil
2740		},
2741	}
2742
2743	for p.Next() {
2744		if !fn(p.Page().(*ListAliasesOutput), !p.HasNextPage()) {
2745			break
2746		}
2747	}
2748
2749	return p.Err()
2750}
2751
2752const opListEventSourceMappings = "ListEventSourceMappings"
2753
2754// ListEventSourceMappingsRequest generates a "aws/request.Request" representing the
2755// client's request for the ListEventSourceMappings operation. The "output" return
2756// value will be populated with the request's response once the request completes
2757// successfully.
2758//
2759// Use "Send" method on the returned Request to send the API call to the service.
2760// the "output" return value is not valid until after Send returns without error.
2761//
2762// See ListEventSourceMappings for more information on using the ListEventSourceMappings
2763// API call, and error handling.
2764//
2765// This method is useful when you want to inject custom logic or configuration
2766// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2767//
2768//
2769//    // Example sending a request using the ListEventSourceMappingsRequest method.
2770//    req, resp := client.ListEventSourceMappingsRequest(params)
2771//
2772//    err := req.Send()
2773//    if err == nil { // resp is now filled
2774//        fmt.Println(resp)
2775//    }
2776//
2777// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListEventSourceMappings
2778func (c *Lambda) ListEventSourceMappingsRequest(input *ListEventSourceMappingsInput) (req *request.Request, output *ListEventSourceMappingsOutput) {
2779	op := &request.Operation{
2780		Name:       opListEventSourceMappings,
2781		HTTPMethod: "GET",
2782		HTTPPath:   "/2015-03-31/event-source-mappings/",
2783		Paginator: &request.Paginator{
2784			InputTokens:     []string{"Marker"},
2785			OutputTokens:    []string{"NextMarker"},
2786			LimitToken:      "MaxItems",
2787			TruncationToken: "",
2788		},
2789	}
2790
2791	if input == nil {
2792		input = &ListEventSourceMappingsInput{}
2793	}
2794
2795	output = &ListEventSourceMappingsOutput{}
2796	req = c.newRequest(op, input, output)
2797	return
2798}
2799
2800// ListEventSourceMappings API operation for AWS Lambda.
2801//
2802// Lists event source mappings. Specify an EventSourceArn to only show event
2803// source mappings for a single event source.
2804//
2805// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2806// with awserr.Error's Code and Message methods to get detailed information about
2807// the error.
2808//
2809// See the AWS API reference guide for AWS Lambda's
2810// API operation ListEventSourceMappings for usage and error information.
2811//
2812// Returned Error Types:
2813//   * ServiceException
2814//   The AWS Lambda service encountered an internal error.
2815//
2816//   * ResourceNotFoundException
2817//   The resource specified in the request does not exist.
2818//
2819//   * InvalidParameterValueException
2820//   One of the parameters in the request is invalid.
2821//
2822//   * TooManyRequestsException
2823//   The request throughput limit was exceeded.
2824//
2825// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListEventSourceMappings
2826func (c *Lambda) ListEventSourceMappings(input *ListEventSourceMappingsInput) (*ListEventSourceMappingsOutput, error) {
2827	req, out := c.ListEventSourceMappingsRequest(input)
2828	return out, req.Send()
2829}
2830
2831// ListEventSourceMappingsWithContext is the same as ListEventSourceMappings with the addition of
2832// the ability to pass a context and additional request options.
2833//
2834// See ListEventSourceMappings for details on how to use this API operation.
2835//
2836// The context must be non-nil and will be used for request cancellation. If
2837// the context is nil a panic will occur. In the future the SDK may create
2838// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2839// for more information on using Contexts.
2840func (c *Lambda) ListEventSourceMappingsWithContext(ctx aws.Context, input *ListEventSourceMappingsInput, opts ...request.Option) (*ListEventSourceMappingsOutput, error) {
2841	req, out := c.ListEventSourceMappingsRequest(input)
2842	req.SetContext(ctx)
2843	req.ApplyOptions(opts...)
2844	return out, req.Send()
2845}
2846
2847// ListEventSourceMappingsPages iterates over the pages of a ListEventSourceMappings operation,
2848// calling the "fn" function with the response data for each page. To stop
2849// iterating, return false from the fn function.
2850//
2851// See ListEventSourceMappings method for more information on how to use this operation.
2852//
2853// Note: This operation can generate multiple requests to a service.
2854//
2855//    // Example iterating over at most 3 pages of a ListEventSourceMappings operation.
2856//    pageNum := 0
2857//    err := client.ListEventSourceMappingsPages(params,
2858//        func(page *lambda.ListEventSourceMappingsOutput, lastPage bool) bool {
2859//            pageNum++
2860//            fmt.Println(page)
2861//            return pageNum <= 3
2862//        })
2863//
2864func (c *Lambda) ListEventSourceMappingsPages(input *ListEventSourceMappingsInput, fn func(*ListEventSourceMappingsOutput, bool) bool) error {
2865	return c.ListEventSourceMappingsPagesWithContext(aws.BackgroundContext(), input, fn)
2866}
2867
2868// ListEventSourceMappingsPagesWithContext same as ListEventSourceMappingsPages except
2869// it takes a Context and allows setting request options on the pages.
2870//
2871// The context must be non-nil and will be used for request cancellation. If
2872// the context is nil a panic will occur. In the future the SDK may create
2873// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2874// for more information on using Contexts.
2875func (c *Lambda) ListEventSourceMappingsPagesWithContext(ctx aws.Context, input *ListEventSourceMappingsInput, fn func(*ListEventSourceMappingsOutput, bool) bool, opts ...request.Option) error {
2876	p := request.Pagination{
2877		NewRequest: func() (*request.Request, error) {
2878			var inCpy *ListEventSourceMappingsInput
2879			if input != nil {
2880				tmp := *input
2881				inCpy = &tmp
2882			}
2883			req, _ := c.ListEventSourceMappingsRequest(inCpy)
2884			req.SetContext(ctx)
2885			req.ApplyOptions(opts...)
2886			return req, nil
2887		},
2888	}
2889
2890	for p.Next() {
2891		if !fn(p.Page().(*ListEventSourceMappingsOutput), !p.HasNextPage()) {
2892			break
2893		}
2894	}
2895
2896	return p.Err()
2897}
2898
2899const opListFunctionEventInvokeConfigs = "ListFunctionEventInvokeConfigs"
2900
2901// ListFunctionEventInvokeConfigsRequest generates a "aws/request.Request" representing the
2902// client's request for the ListFunctionEventInvokeConfigs operation. The "output" return
2903// value will be populated with the request's response once the request completes
2904// successfully.
2905//
2906// Use "Send" method on the returned Request to send the API call to the service.
2907// the "output" return value is not valid until after Send returns without error.
2908//
2909// See ListFunctionEventInvokeConfigs for more information on using the ListFunctionEventInvokeConfigs
2910// API call, and error handling.
2911//
2912// This method is useful when you want to inject custom logic or configuration
2913// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2914//
2915//
2916//    // Example sending a request using the ListFunctionEventInvokeConfigsRequest method.
2917//    req, resp := client.ListFunctionEventInvokeConfigsRequest(params)
2918//
2919//    err := req.Send()
2920//    if err == nil { // resp is now filled
2921//        fmt.Println(resp)
2922//    }
2923//
2924// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListFunctionEventInvokeConfigs
2925func (c *Lambda) ListFunctionEventInvokeConfigsRequest(input *ListFunctionEventInvokeConfigsInput) (req *request.Request, output *ListFunctionEventInvokeConfigsOutput) {
2926	op := &request.Operation{
2927		Name:       opListFunctionEventInvokeConfigs,
2928		HTTPMethod: "GET",
2929		HTTPPath:   "/2019-09-25/functions/{FunctionName}/event-invoke-config/list",
2930		Paginator: &request.Paginator{
2931			InputTokens:     []string{"Marker"},
2932			OutputTokens:    []string{"NextMarker"},
2933			LimitToken:      "MaxItems",
2934			TruncationToken: "",
2935		},
2936	}
2937
2938	if input == nil {
2939		input = &ListFunctionEventInvokeConfigsInput{}
2940	}
2941
2942	output = &ListFunctionEventInvokeConfigsOutput{}
2943	req = c.newRequest(op, input, output)
2944	return
2945}
2946
2947// ListFunctionEventInvokeConfigs API operation for AWS Lambda.
2948//
2949// Retrieves a list of configurations for asynchronous invocation for a function.
2950//
2951// To configure options for asynchronous invocation, use PutFunctionEventInvokeConfig.
2952//
2953// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2954// with awserr.Error's Code and Message methods to get detailed information about
2955// the error.
2956//
2957// See the AWS API reference guide for AWS Lambda's
2958// API operation ListFunctionEventInvokeConfigs for usage and error information.
2959//
2960// Returned Error Types:
2961//   * InvalidParameterValueException
2962//   One of the parameters in the request is invalid.
2963//
2964//   * ResourceNotFoundException
2965//   The resource specified in the request does not exist.
2966//
2967//   * TooManyRequestsException
2968//   The request throughput limit was exceeded.
2969//
2970//   * ServiceException
2971//   The AWS Lambda service encountered an internal error.
2972//
2973// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListFunctionEventInvokeConfigs
2974func (c *Lambda) ListFunctionEventInvokeConfigs(input *ListFunctionEventInvokeConfigsInput) (*ListFunctionEventInvokeConfigsOutput, error) {
2975	req, out := c.ListFunctionEventInvokeConfigsRequest(input)
2976	return out, req.Send()
2977}
2978
2979// ListFunctionEventInvokeConfigsWithContext is the same as ListFunctionEventInvokeConfigs with the addition of
2980// the ability to pass a context and additional request options.
2981//
2982// See ListFunctionEventInvokeConfigs for details on how to use this API operation.
2983//
2984// The context must be non-nil and will be used for request cancellation. If
2985// the context is nil a panic will occur. In the future the SDK may create
2986// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2987// for more information on using Contexts.
2988func (c *Lambda) ListFunctionEventInvokeConfigsWithContext(ctx aws.Context, input *ListFunctionEventInvokeConfigsInput, opts ...request.Option) (*ListFunctionEventInvokeConfigsOutput, error) {
2989	req, out := c.ListFunctionEventInvokeConfigsRequest(input)
2990	req.SetContext(ctx)
2991	req.ApplyOptions(opts...)
2992	return out, req.Send()
2993}
2994
2995// ListFunctionEventInvokeConfigsPages iterates over the pages of a ListFunctionEventInvokeConfigs operation,
2996// calling the "fn" function with the response data for each page. To stop
2997// iterating, return false from the fn function.
2998//
2999// See ListFunctionEventInvokeConfigs method for more information on how to use this operation.
3000//
3001// Note: This operation can generate multiple requests to a service.
3002//
3003//    // Example iterating over at most 3 pages of a ListFunctionEventInvokeConfigs operation.
3004//    pageNum := 0
3005//    err := client.ListFunctionEventInvokeConfigsPages(params,
3006//        func(page *lambda.ListFunctionEventInvokeConfigsOutput, lastPage bool) bool {
3007//            pageNum++
3008//            fmt.Println(page)
3009//            return pageNum <= 3
3010//        })
3011//
3012func (c *Lambda) ListFunctionEventInvokeConfigsPages(input *ListFunctionEventInvokeConfigsInput, fn func(*ListFunctionEventInvokeConfigsOutput, bool) bool) error {
3013	return c.ListFunctionEventInvokeConfigsPagesWithContext(aws.BackgroundContext(), input, fn)
3014}
3015
3016// ListFunctionEventInvokeConfigsPagesWithContext same as ListFunctionEventInvokeConfigsPages except
3017// it takes a Context and allows setting request options on the pages.
3018//
3019// The context must be non-nil and will be used for request cancellation. If
3020// the context is nil a panic will occur. In the future the SDK may create
3021// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3022// for more information on using Contexts.
3023func (c *Lambda) ListFunctionEventInvokeConfigsPagesWithContext(ctx aws.Context, input *ListFunctionEventInvokeConfigsInput, fn func(*ListFunctionEventInvokeConfigsOutput, bool) bool, opts ...request.Option) error {
3024	p := request.Pagination{
3025		NewRequest: func() (*request.Request, error) {
3026			var inCpy *ListFunctionEventInvokeConfigsInput
3027			if input != nil {
3028				tmp := *input
3029				inCpy = &tmp
3030			}
3031			req, _ := c.ListFunctionEventInvokeConfigsRequest(inCpy)
3032			req.SetContext(ctx)
3033			req.ApplyOptions(opts...)
3034			return req, nil
3035		},
3036	}
3037
3038	for p.Next() {
3039		if !fn(p.Page().(*ListFunctionEventInvokeConfigsOutput), !p.HasNextPage()) {
3040			break
3041		}
3042	}
3043
3044	return p.Err()
3045}
3046
3047const opListFunctions = "ListFunctions"
3048
3049// ListFunctionsRequest generates a "aws/request.Request" representing the
3050// client's request for the ListFunctions operation. The "output" return
3051// value will be populated with the request's response once the request completes
3052// successfully.
3053//
3054// Use "Send" method on the returned Request to send the API call to the service.
3055// the "output" return value is not valid until after Send returns without error.
3056//
3057// See ListFunctions for more information on using the ListFunctions
3058// API call, and error handling.
3059//
3060// This method is useful when you want to inject custom logic or configuration
3061// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3062//
3063//
3064//    // Example sending a request using the ListFunctionsRequest method.
3065//    req, resp := client.ListFunctionsRequest(params)
3066//
3067//    err := req.Send()
3068//    if err == nil { // resp is now filled
3069//        fmt.Println(resp)
3070//    }
3071//
3072// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListFunctions
3073func (c *Lambda) ListFunctionsRequest(input *ListFunctionsInput) (req *request.Request, output *ListFunctionsOutput) {
3074	op := &request.Operation{
3075		Name:       opListFunctions,
3076		HTTPMethod: "GET",
3077		HTTPPath:   "/2015-03-31/functions/",
3078		Paginator: &request.Paginator{
3079			InputTokens:     []string{"Marker"},
3080			OutputTokens:    []string{"NextMarker"},
3081			LimitToken:      "MaxItems",
3082			TruncationToken: "",
3083		},
3084	}
3085
3086	if input == nil {
3087		input = &ListFunctionsInput{}
3088	}
3089
3090	output = &ListFunctionsOutput{}
3091	req = c.newRequest(op, input, output)
3092	return
3093}
3094
3095// ListFunctions API operation for AWS Lambda.
3096//
3097// Returns a list of Lambda functions, with the version-specific configuration
3098// of each. Lambda returns up to 50 functions per call.
3099//
3100// Set FunctionVersion to ALL to include all published versions of each function
3101// in addition to the unpublished version. To get more information about a function
3102// or version, use GetFunction.
3103//
3104// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3105// with awserr.Error's Code and Message methods to get detailed information about
3106// the error.
3107//
3108// See the AWS API reference guide for AWS Lambda's
3109// API operation ListFunctions for usage and error information.
3110//
3111// Returned Error Types:
3112//   * ServiceException
3113//   The AWS Lambda service encountered an internal error.
3114//
3115//   * TooManyRequestsException
3116//   The request throughput limit was exceeded.
3117//
3118//   * InvalidParameterValueException
3119//   One of the parameters in the request is invalid.
3120//
3121// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListFunctions
3122func (c *Lambda) ListFunctions(input *ListFunctionsInput) (*ListFunctionsOutput, error) {
3123	req, out := c.ListFunctionsRequest(input)
3124	return out, req.Send()
3125}
3126
3127// ListFunctionsWithContext is the same as ListFunctions with the addition of
3128// the ability to pass a context and additional request options.
3129//
3130// See ListFunctions for details on how to use this API operation.
3131//
3132// The context must be non-nil and will be used for request cancellation. If
3133// the context is nil a panic will occur. In the future the SDK may create
3134// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3135// for more information on using Contexts.
3136func (c *Lambda) ListFunctionsWithContext(ctx aws.Context, input *ListFunctionsInput, opts ...request.Option) (*ListFunctionsOutput, error) {
3137	req, out := c.ListFunctionsRequest(input)
3138	req.SetContext(ctx)
3139	req.ApplyOptions(opts...)
3140	return out, req.Send()
3141}
3142
3143// ListFunctionsPages iterates over the pages of a ListFunctions operation,
3144// calling the "fn" function with the response data for each page. To stop
3145// iterating, return false from the fn function.
3146//
3147// See ListFunctions method for more information on how to use this operation.
3148//
3149// Note: This operation can generate multiple requests to a service.
3150//
3151//    // Example iterating over at most 3 pages of a ListFunctions operation.
3152//    pageNum := 0
3153//    err := client.ListFunctionsPages(params,
3154//        func(page *lambda.ListFunctionsOutput, lastPage bool) bool {
3155//            pageNum++
3156//            fmt.Println(page)
3157//            return pageNum <= 3
3158//        })
3159//
3160func (c *Lambda) ListFunctionsPages(input *ListFunctionsInput, fn func(*ListFunctionsOutput, bool) bool) error {
3161	return c.ListFunctionsPagesWithContext(aws.BackgroundContext(), input, fn)
3162}
3163
3164// ListFunctionsPagesWithContext same as ListFunctionsPages except
3165// it takes a Context and allows setting request options on the pages.
3166//
3167// The context must be non-nil and will be used for request cancellation. If
3168// the context is nil a panic will occur. In the future the SDK may create
3169// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3170// for more information on using Contexts.
3171func (c *Lambda) ListFunctionsPagesWithContext(ctx aws.Context, input *ListFunctionsInput, fn func(*ListFunctionsOutput, bool) bool, opts ...request.Option) error {
3172	p := request.Pagination{
3173		NewRequest: func() (*request.Request, error) {
3174			var inCpy *ListFunctionsInput
3175			if input != nil {
3176				tmp := *input
3177				inCpy = &tmp
3178			}
3179			req, _ := c.ListFunctionsRequest(inCpy)
3180			req.SetContext(ctx)
3181			req.ApplyOptions(opts...)
3182			return req, nil
3183		},
3184	}
3185
3186	for p.Next() {
3187		if !fn(p.Page().(*ListFunctionsOutput), !p.HasNextPage()) {
3188			break
3189		}
3190	}
3191
3192	return p.Err()
3193}
3194
3195const opListLayerVersions = "ListLayerVersions"
3196
3197// ListLayerVersionsRequest generates a "aws/request.Request" representing the
3198// client's request for the ListLayerVersions operation. The "output" return
3199// value will be populated with the request's response once the request completes
3200// successfully.
3201//
3202// Use "Send" method on the returned Request to send the API call to the service.
3203// the "output" return value is not valid until after Send returns without error.
3204//
3205// See ListLayerVersions for more information on using the ListLayerVersions
3206// API call, and error handling.
3207//
3208// This method is useful when you want to inject custom logic or configuration
3209// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3210//
3211//
3212//    // Example sending a request using the ListLayerVersionsRequest method.
3213//    req, resp := client.ListLayerVersionsRequest(params)
3214//
3215//    err := req.Send()
3216//    if err == nil { // resp is now filled
3217//        fmt.Println(resp)
3218//    }
3219//
3220// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListLayerVersions
3221func (c *Lambda) ListLayerVersionsRequest(input *ListLayerVersionsInput) (req *request.Request, output *ListLayerVersionsOutput) {
3222	op := &request.Operation{
3223		Name:       opListLayerVersions,
3224		HTTPMethod: "GET",
3225		HTTPPath:   "/2018-10-31/layers/{LayerName}/versions",
3226		Paginator: &request.Paginator{
3227			InputTokens:     []string{"Marker"},
3228			OutputTokens:    []string{"NextMarker"},
3229			LimitToken:      "MaxItems",
3230			TruncationToken: "",
3231		},
3232	}
3233
3234	if input == nil {
3235		input = &ListLayerVersionsInput{}
3236	}
3237
3238	output = &ListLayerVersionsOutput{}
3239	req = c.newRequest(op, input, output)
3240	return
3241}
3242
3243// ListLayerVersions API operation for AWS Lambda.
3244//
3245// Lists the versions of an AWS Lambda layer (https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html).
3246// Versions that have been deleted aren't listed. Specify a runtime identifier
3247// (https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html) to list
3248// only versions that indicate that they're compatible with that runtime.
3249//
3250// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3251// with awserr.Error's Code and Message methods to get detailed information about
3252// the error.
3253//
3254// See the AWS API reference guide for AWS Lambda's
3255// API operation ListLayerVersions for usage and error information.
3256//
3257// Returned Error Types:
3258//   * ServiceException
3259//   The AWS Lambda service encountered an internal error.
3260//
3261//   * InvalidParameterValueException
3262//   One of the parameters in the request is invalid.
3263//
3264//   * ResourceNotFoundException
3265//   The resource specified in the request does not exist.
3266//
3267//   * TooManyRequestsException
3268//   The request throughput limit was exceeded.
3269//
3270// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListLayerVersions
3271func (c *Lambda) ListLayerVersions(input *ListLayerVersionsInput) (*ListLayerVersionsOutput, error) {
3272	req, out := c.ListLayerVersionsRequest(input)
3273	return out, req.Send()
3274}
3275
3276// ListLayerVersionsWithContext is the same as ListLayerVersions with the addition of
3277// the ability to pass a context and additional request options.
3278//
3279// See ListLayerVersions for details on how to use this API operation.
3280//
3281// The context must be non-nil and will be used for request cancellation. If
3282// the context is nil a panic will occur. In the future the SDK may create
3283// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3284// for more information on using Contexts.
3285func (c *Lambda) ListLayerVersionsWithContext(ctx aws.Context, input *ListLayerVersionsInput, opts ...request.Option) (*ListLayerVersionsOutput, error) {
3286	req, out := c.ListLayerVersionsRequest(input)
3287	req.SetContext(ctx)
3288	req.ApplyOptions(opts...)
3289	return out, req.Send()
3290}
3291
3292// ListLayerVersionsPages iterates over the pages of a ListLayerVersions operation,
3293// calling the "fn" function with the response data for each page. To stop
3294// iterating, return false from the fn function.
3295//
3296// See ListLayerVersions method for more information on how to use this operation.
3297//
3298// Note: This operation can generate multiple requests to a service.
3299//
3300//    // Example iterating over at most 3 pages of a ListLayerVersions operation.
3301//    pageNum := 0
3302//    err := client.ListLayerVersionsPages(params,
3303//        func(page *lambda.ListLayerVersionsOutput, lastPage bool) bool {
3304//            pageNum++
3305//            fmt.Println(page)
3306//            return pageNum <= 3
3307//        })
3308//
3309func (c *Lambda) ListLayerVersionsPages(input *ListLayerVersionsInput, fn func(*ListLayerVersionsOutput, bool) bool) error {
3310	return c.ListLayerVersionsPagesWithContext(aws.BackgroundContext(), input, fn)
3311}
3312
3313// ListLayerVersionsPagesWithContext same as ListLayerVersionsPages except
3314// it takes a Context and allows setting request options on the pages.
3315//
3316// The context must be non-nil and will be used for request cancellation. If
3317// the context is nil a panic will occur. In the future the SDK may create
3318// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3319// for more information on using Contexts.
3320func (c *Lambda) ListLayerVersionsPagesWithContext(ctx aws.Context, input *ListLayerVersionsInput, fn func(*ListLayerVersionsOutput, bool) bool, opts ...request.Option) error {
3321	p := request.Pagination{
3322		NewRequest: func() (*request.Request, error) {
3323			var inCpy *ListLayerVersionsInput
3324			if input != nil {
3325				tmp := *input
3326				inCpy = &tmp
3327			}
3328			req, _ := c.ListLayerVersionsRequest(inCpy)
3329			req.SetContext(ctx)
3330			req.ApplyOptions(opts...)
3331			return req, nil
3332		},
3333	}
3334
3335	for p.Next() {
3336		if !fn(p.Page().(*ListLayerVersionsOutput), !p.HasNextPage()) {
3337			break
3338		}
3339	}
3340
3341	return p.Err()
3342}
3343
3344const opListLayers = "ListLayers"
3345
3346// ListLayersRequest generates a "aws/request.Request" representing the
3347// client's request for the ListLayers operation. The "output" return
3348// value will be populated with the request's response once the request completes
3349// successfully.
3350//
3351// Use "Send" method on the returned Request to send the API call to the service.
3352// the "output" return value is not valid until after Send returns without error.
3353//
3354// See ListLayers for more information on using the ListLayers
3355// API call, and error handling.
3356//
3357// This method is useful when you want to inject custom logic or configuration
3358// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3359//
3360//
3361//    // Example sending a request using the ListLayersRequest method.
3362//    req, resp := client.ListLayersRequest(params)
3363//
3364//    err := req.Send()
3365//    if err == nil { // resp is now filled
3366//        fmt.Println(resp)
3367//    }
3368//
3369// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListLayers
3370func (c *Lambda) ListLayersRequest(input *ListLayersInput) (req *request.Request, output *ListLayersOutput) {
3371	op := &request.Operation{
3372		Name:       opListLayers,
3373		HTTPMethod: "GET",
3374		HTTPPath:   "/2018-10-31/layers",
3375		Paginator: &request.Paginator{
3376			InputTokens:     []string{"Marker"},
3377			OutputTokens:    []string{"NextMarker"},
3378			LimitToken:      "MaxItems",
3379			TruncationToken: "",
3380		},
3381	}
3382
3383	if input == nil {
3384		input = &ListLayersInput{}
3385	}
3386
3387	output = &ListLayersOutput{}
3388	req = c.newRequest(op, input, output)
3389	return
3390}
3391
3392// ListLayers API operation for AWS Lambda.
3393//
3394// Lists AWS Lambda layers (https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html)
3395// and shows information about the latest version of each. Specify a runtime
3396// identifier (https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html)
3397// to list only layers that indicate that they're compatible with that runtime.
3398//
3399// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3400// with awserr.Error's Code and Message methods to get detailed information about
3401// the error.
3402//
3403// See the AWS API reference guide for AWS Lambda's
3404// API operation ListLayers for usage and error information.
3405//
3406// Returned Error Types:
3407//   * ServiceException
3408//   The AWS Lambda service encountered an internal error.
3409//
3410//   * InvalidParameterValueException
3411//   One of the parameters in the request is invalid.
3412//
3413//   * TooManyRequestsException
3414//   The request throughput limit was exceeded.
3415//
3416// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListLayers
3417func (c *Lambda) ListLayers(input *ListLayersInput) (*ListLayersOutput, error) {
3418	req, out := c.ListLayersRequest(input)
3419	return out, req.Send()
3420}
3421
3422// ListLayersWithContext is the same as ListLayers with the addition of
3423// the ability to pass a context and additional request options.
3424//
3425// See ListLayers for details on how to use this API operation.
3426//
3427// The context must be non-nil and will be used for request cancellation. If
3428// the context is nil a panic will occur. In the future the SDK may create
3429// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3430// for more information on using Contexts.
3431func (c *Lambda) ListLayersWithContext(ctx aws.Context, input *ListLayersInput, opts ...request.Option) (*ListLayersOutput, error) {
3432	req, out := c.ListLayersRequest(input)
3433	req.SetContext(ctx)
3434	req.ApplyOptions(opts...)
3435	return out, req.Send()
3436}
3437
3438// ListLayersPages iterates over the pages of a ListLayers operation,
3439// calling the "fn" function with the response data for each page. To stop
3440// iterating, return false from the fn function.
3441//
3442// See ListLayers method for more information on how to use this operation.
3443//
3444// Note: This operation can generate multiple requests to a service.
3445//
3446//    // Example iterating over at most 3 pages of a ListLayers operation.
3447//    pageNum := 0
3448//    err := client.ListLayersPages(params,
3449//        func(page *lambda.ListLayersOutput, lastPage bool) bool {
3450//            pageNum++
3451//            fmt.Println(page)
3452//            return pageNum <= 3
3453//        })
3454//
3455func (c *Lambda) ListLayersPages(input *ListLayersInput, fn func(*ListLayersOutput, bool) bool) error {
3456	return c.ListLayersPagesWithContext(aws.BackgroundContext(), input, fn)
3457}
3458
3459// ListLayersPagesWithContext same as ListLayersPages except
3460// it takes a Context and allows setting request options on the pages.
3461//
3462// The context must be non-nil and will be used for request cancellation. If
3463// the context is nil a panic will occur. In the future the SDK may create
3464// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3465// for more information on using Contexts.
3466func (c *Lambda) ListLayersPagesWithContext(ctx aws.Context, input *ListLayersInput, fn func(*ListLayersOutput, bool) bool, opts ...request.Option) error {
3467	p := request.Pagination{
3468		NewRequest: func() (*request.Request, error) {
3469			var inCpy *ListLayersInput
3470			if input != nil {
3471				tmp := *input
3472				inCpy = &tmp
3473			}
3474			req, _ := c.ListLayersRequest(inCpy)
3475			req.SetContext(ctx)
3476			req.ApplyOptions(opts...)
3477			return req, nil
3478		},
3479	}
3480
3481	for p.Next() {
3482		if !fn(p.Page().(*ListLayersOutput), !p.HasNextPage()) {
3483			break
3484		}
3485	}
3486
3487	return p.Err()
3488}
3489
3490const opListProvisionedConcurrencyConfigs = "ListProvisionedConcurrencyConfigs"
3491
3492// ListProvisionedConcurrencyConfigsRequest generates a "aws/request.Request" representing the
3493// client's request for the ListProvisionedConcurrencyConfigs operation. The "output" return
3494// value will be populated with the request's response once the request completes
3495// successfully.
3496//
3497// Use "Send" method on the returned Request to send the API call to the service.
3498// the "output" return value is not valid until after Send returns without error.
3499//
3500// See ListProvisionedConcurrencyConfigs for more information on using the ListProvisionedConcurrencyConfigs
3501// API call, and error handling.
3502//
3503// This method is useful when you want to inject custom logic or configuration
3504// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3505//
3506//
3507//    // Example sending a request using the ListProvisionedConcurrencyConfigsRequest method.
3508//    req, resp := client.ListProvisionedConcurrencyConfigsRequest(params)
3509//
3510//    err := req.Send()
3511//    if err == nil { // resp is now filled
3512//        fmt.Println(resp)
3513//    }
3514//
3515// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListProvisionedConcurrencyConfigs
3516func (c *Lambda) ListProvisionedConcurrencyConfigsRequest(input *ListProvisionedConcurrencyConfigsInput) (req *request.Request, output *ListProvisionedConcurrencyConfigsOutput) {
3517	op := &request.Operation{
3518		Name:       opListProvisionedConcurrencyConfigs,
3519		HTTPMethod: "GET",
3520		HTTPPath:   "/2019-09-30/functions/{FunctionName}/provisioned-concurrency?List=ALL",
3521		Paginator: &request.Paginator{
3522			InputTokens:     []string{"Marker"},
3523			OutputTokens:    []string{"NextMarker"},
3524			LimitToken:      "MaxItems",
3525			TruncationToken: "",
3526		},
3527	}
3528
3529	if input == nil {
3530		input = &ListProvisionedConcurrencyConfigsInput{}
3531	}
3532
3533	output = &ListProvisionedConcurrencyConfigsOutput{}
3534	req = c.newRequest(op, input, output)
3535	return
3536}
3537
3538// ListProvisionedConcurrencyConfigs API operation for AWS Lambda.
3539//
3540// Retrieves a list of provisioned concurrency configurations for a function.
3541//
3542// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3543// with awserr.Error's Code and Message methods to get detailed information about
3544// the error.
3545//
3546// See the AWS API reference guide for AWS Lambda's
3547// API operation ListProvisionedConcurrencyConfigs for usage and error information.
3548//
3549// Returned Error Types:
3550//   * InvalidParameterValueException
3551//   One of the parameters in the request is invalid.
3552//
3553//   * ResourceNotFoundException
3554//   The resource specified in the request does not exist.
3555//
3556//   * TooManyRequestsException
3557//   The request throughput limit was exceeded.
3558//
3559//   * ServiceException
3560//   The AWS Lambda service encountered an internal error.
3561//
3562// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListProvisionedConcurrencyConfigs
3563func (c *Lambda) ListProvisionedConcurrencyConfigs(input *ListProvisionedConcurrencyConfigsInput) (*ListProvisionedConcurrencyConfigsOutput, error) {
3564	req, out := c.ListProvisionedConcurrencyConfigsRequest(input)
3565	return out, req.Send()
3566}
3567
3568// ListProvisionedConcurrencyConfigsWithContext is the same as ListProvisionedConcurrencyConfigs with the addition of
3569// the ability to pass a context and additional request options.
3570//
3571// See ListProvisionedConcurrencyConfigs for details on how to use this API operation.
3572//
3573// The context must be non-nil and will be used for request cancellation. If
3574// the context is nil a panic will occur. In the future the SDK may create
3575// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3576// for more information on using Contexts.
3577func (c *Lambda) ListProvisionedConcurrencyConfigsWithContext(ctx aws.Context, input *ListProvisionedConcurrencyConfigsInput, opts ...request.Option) (*ListProvisionedConcurrencyConfigsOutput, error) {
3578	req, out := c.ListProvisionedConcurrencyConfigsRequest(input)
3579	req.SetContext(ctx)
3580	req.ApplyOptions(opts...)
3581	return out, req.Send()
3582}
3583
3584// ListProvisionedConcurrencyConfigsPages iterates over the pages of a ListProvisionedConcurrencyConfigs operation,
3585// calling the "fn" function with the response data for each page. To stop
3586// iterating, return false from the fn function.
3587//
3588// See ListProvisionedConcurrencyConfigs method for more information on how to use this operation.
3589//
3590// Note: This operation can generate multiple requests to a service.
3591//
3592//    // Example iterating over at most 3 pages of a ListProvisionedConcurrencyConfigs operation.
3593//    pageNum := 0
3594//    err := client.ListProvisionedConcurrencyConfigsPages(params,
3595//        func(page *lambda.ListProvisionedConcurrencyConfigsOutput, lastPage bool) bool {
3596//            pageNum++
3597//            fmt.Println(page)
3598//            return pageNum <= 3
3599//        })
3600//
3601func (c *Lambda) ListProvisionedConcurrencyConfigsPages(input *ListProvisionedConcurrencyConfigsInput, fn func(*ListProvisionedConcurrencyConfigsOutput, bool) bool) error {
3602	return c.ListProvisionedConcurrencyConfigsPagesWithContext(aws.BackgroundContext(), input, fn)
3603}
3604
3605// ListProvisionedConcurrencyConfigsPagesWithContext same as ListProvisionedConcurrencyConfigsPages except
3606// it takes a Context and allows setting request options on the pages.
3607//
3608// The context must be non-nil and will be used for request cancellation. If
3609// the context is nil a panic will occur. In the future the SDK may create
3610// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3611// for more information on using Contexts.
3612func (c *Lambda) ListProvisionedConcurrencyConfigsPagesWithContext(ctx aws.Context, input *ListProvisionedConcurrencyConfigsInput, fn func(*ListProvisionedConcurrencyConfigsOutput, bool) bool, opts ...request.Option) error {
3613	p := request.Pagination{
3614		NewRequest: func() (*request.Request, error) {
3615			var inCpy *ListProvisionedConcurrencyConfigsInput
3616			if input != nil {
3617				tmp := *input
3618				inCpy = &tmp
3619			}
3620			req, _ := c.ListProvisionedConcurrencyConfigsRequest(inCpy)
3621			req.SetContext(ctx)
3622			req.ApplyOptions(opts...)
3623			return req, nil
3624		},
3625	}
3626
3627	for p.Next() {
3628		if !fn(p.Page().(*ListProvisionedConcurrencyConfigsOutput), !p.HasNextPage()) {
3629			break
3630		}
3631	}
3632
3633	return p.Err()
3634}
3635
3636const opListTags = "ListTags"
3637
3638// ListTagsRequest generates a "aws/request.Request" representing the
3639// client's request for the ListTags operation. The "output" return
3640// value will be populated with the request's response once the request completes
3641// successfully.
3642//
3643// Use "Send" method on the returned Request to send the API call to the service.
3644// the "output" return value is not valid until after Send returns without error.
3645//
3646// See ListTags for more information on using the ListTags
3647// API call, and error handling.
3648//
3649// This method is useful when you want to inject custom logic or configuration
3650// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3651//
3652//
3653//    // Example sending a request using the ListTagsRequest method.
3654//    req, resp := client.ListTagsRequest(params)
3655//
3656//    err := req.Send()
3657//    if err == nil { // resp is now filled
3658//        fmt.Println(resp)
3659//    }
3660//
3661// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListTags
3662func (c *Lambda) ListTagsRequest(input *ListTagsInput) (req *request.Request, output *ListTagsOutput) {
3663	op := &request.Operation{
3664		Name:       opListTags,
3665		HTTPMethod: "GET",
3666		HTTPPath:   "/2017-03-31/tags/{ARN}",
3667	}
3668
3669	if input == nil {
3670		input = &ListTagsInput{}
3671	}
3672
3673	output = &ListTagsOutput{}
3674	req = c.newRequest(op, input, output)
3675	return
3676}
3677
3678// ListTags API operation for AWS Lambda.
3679//
3680// Returns a function's tags (https://docs.aws.amazon.com/lambda/latest/dg/tagging.html).
3681// You can also view tags with GetFunction.
3682//
3683// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3684// with awserr.Error's Code and Message methods to get detailed information about
3685// the error.
3686//
3687// See the AWS API reference guide for AWS Lambda's
3688// API operation ListTags for usage and error information.
3689//
3690// Returned Error Types:
3691//   * ServiceException
3692//   The AWS Lambda service encountered an internal error.
3693//
3694//   * ResourceNotFoundException
3695//   The resource specified in the request does not exist.
3696//
3697//   * InvalidParameterValueException
3698//   One of the parameters in the request is invalid.
3699//
3700//   * TooManyRequestsException
3701//   The request throughput limit was exceeded.
3702//
3703// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListTags
3704func (c *Lambda) ListTags(input *ListTagsInput) (*ListTagsOutput, error) {
3705	req, out := c.ListTagsRequest(input)
3706	return out, req.Send()
3707}
3708
3709// ListTagsWithContext is the same as ListTags with the addition of
3710// the ability to pass a context and additional request options.
3711//
3712// See ListTags for details on how to use this API operation.
3713//
3714// The context must be non-nil and will be used for request cancellation. If
3715// the context is nil a panic will occur. In the future the SDK may create
3716// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3717// for more information on using Contexts.
3718func (c *Lambda) ListTagsWithContext(ctx aws.Context, input *ListTagsInput, opts ...request.Option) (*ListTagsOutput, error) {
3719	req, out := c.ListTagsRequest(input)
3720	req.SetContext(ctx)
3721	req.ApplyOptions(opts...)
3722	return out, req.Send()
3723}
3724
3725const opListVersionsByFunction = "ListVersionsByFunction"
3726
3727// ListVersionsByFunctionRequest generates a "aws/request.Request" representing the
3728// client's request for the ListVersionsByFunction operation. The "output" return
3729// value will be populated with the request's response once the request completes
3730// successfully.
3731//
3732// Use "Send" method on the returned Request to send the API call to the service.
3733// the "output" return value is not valid until after Send returns without error.
3734//
3735// See ListVersionsByFunction for more information on using the ListVersionsByFunction
3736// API call, and error handling.
3737//
3738// This method is useful when you want to inject custom logic or configuration
3739// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3740//
3741//
3742//    // Example sending a request using the ListVersionsByFunctionRequest method.
3743//    req, resp := client.ListVersionsByFunctionRequest(params)
3744//
3745//    err := req.Send()
3746//    if err == nil { // resp is now filled
3747//        fmt.Println(resp)
3748//    }
3749//
3750// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListVersionsByFunction
3751func (c *Lambda) ListVersionsByFunctionRequest(input *ListVersionsByFunctionInput) (req *request.Request, output *ListVersionsByFunctionOutput) {
3752	op := &request.Operation{
3753		Name:       opListVersionsByFunction,
3754		HTTPMethod: "GET",
3755		HTTPPath:   "/2015-03-31/functions/{FunctionName}/versions",
3756		Paginator: &request.Paginator{
3757			InputTokens:     []string{"Marker"},
3758			OutputTokens:    []string{"NextMarker"},
3759			LimitToken:      "MaxItems",
3760			TruncationToken: "",
3761		},
3762	}
3763
3764	if input == nil {
3765		input = &ListVersionsByFunctionInput{}
3766	}
3767
3768	output = &ListVersionsByFunctionOutput{}
3769	req = c.newRequest(op, input, output)
3770	return
3771}
3772
3773// ListVersionsByFunction API operation for AWS Lambda.
3774//
3775// Returns a list of versions (https://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html),
3776// with the version-specific configuration of each. Lambda returns up to 50
3777// versions per call.
3778//
3779// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3780// with awserr.Error's Code and Message methods to get detailed information about
3781// the error.
3782//
3783// See the AWS API reference guide for AWS Lambda's
3784// API operation ListVersionsByFunction for usage and error information.
3785//
3786// Returned Error Types:
3787//   * ServiceException
3788//   The AWS Lambda service encountered an internal error.
3789//
3790//   * ResourceNotFoundException
3791//   The resource specified in the request does not exist.
3792//
3793//   * InvalidParameterValueException
3794//   One of the parameters in the request is invalid.
3795//
3796//   * TooManyRequestsException
3797//   The request throughput limit was exceeded.
3798//
3799// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListVersionsByFunction
3800func (c *Lambda) ListVersionsByFunction(input *ListVersionsByFunctionInput) (*ListVersionsByFunctionOutput, error) {
3801	req, out := c.ListVersionsByFunctionRequest(input)
3802	return out, req.Send()
3803}
3804
3805// ListVersionsByFunctionWithContext is the same as ListVersionsByFunction with the addition of
3806// the ability to pass a context and additional request options.
3807//
3808// See ListVersionsByFunction for details on how to use this API operation.
3809//
3810// The context must be non-nil and will be used for request cancellation. If
3811// the context is nil a panic will occur. In the future the SDK may create
3812// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3813// for more information on using Contexts.
3814func (c *Lambda) ListVersionsByFunctionWithContext(ctx aws.Context, input *ListVersionsByFunctionInput, opts ...request.Option) (*ListVersionsByFunctionOutput, error) {
3815	req, out := c.ListVersionsByFunctionRequest(input)
3816	req.SetContext(ctx)
3817	req.ApplyOptions(opts...)
3818	return out, req.Send()
3819}
3820
3821// ListVersionsByFunctionPages iterates over the pages of a ListVersionsByFunction operation,
3822// calling the "fn" function with the response data for each page. To stop
3823// iterating, return false from the fn function.
3824//
3825// See ListVersionsByFunction method for more information on how to use this operation.
3826//
3827// Note: This operation can generate multiple requests to a service.
3828//
3829//    // Example iterating over at most 3 pages of a ListVersionsByFunction operation.
3830//    pageNum := 0
3831//    err := client.ListVersionsByFunctionPages(params,
3832//        func(page *lambda.ListVersionsByFunctionOutput, lastPage bool) bool {
3833//            pageNum++
3834//            fmt.Println(page)
3835//            return pageNum <= 3
3836//        })
3837//
3838func (c *Lambda) ListVersionsByFunctionPages(input *ListVersionsByFunctionInput, fn func(*ListVersionsByFunctionOutput, bool) bool) error {
3839	return c.ListVersionsByFunctionPagesWithContext(aws.BackgroundContext(), input, fn)
3840}
3841
3842// ListVersionsByFunctionPagesWithContext same as ListVersionsByFunctionPages except
3843// it takes a Context and allows setting request options on the pages.
3844//
3845// The context must be non-nil and will be used for request cancellation. If
3846// the context is nil a panic will occur. In the future the SDK may create
3847// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3848// for more information on using Contexts.
3849func (c *Lambda) ListVersionsByFunctionPagesWithContext(ctx aws.Context, input *ListVersionsByFunctionInput, fn func(*ListVersionsByFunctionOutput, bool) bool, opts ...request.Option) error {
3850	p := request.Pagination{
3851		NewRequest: func() (*request.Request, error) {
3852			var inCpy *ListVersionsByFunctionInput
3853			if input != nil {
3854				tmp := *input
3855				inCpy = &tmp
3856			}
3857			req, _ := c.ListVersionsByFunctionRequest(inCpy)
3858			req.SetContext(ctx)
3859			req.ApplyOptions(opts...)
3860			return req, nil
3861		},
3862	}
3863
3864	for p.Next() {
3865		if !fn(p.Page().(*ListVersionsByFunctionOutput), !p.HasNextPage()) {
3866			break
3867		}
3868	}
3869
3870	return p.Err()
3871}
3872
3873const opPublishLayerVersion = "PublishLayerVersion"
3874
3875// PublishLayerVersionRequest generates a "aws/request.Request" representing the
3876// client's request for the PublishLayerVersion operation. The "output" return
3877// value will be populated with the request's response once the request completes
3878// successfully.
3879//
3880// Use "Send" method on the returned Request to send the API call to the service.
3881// the "output" return value is not valid until after Send returns without error.
3882//
3883// See PublishLayerVersion for more information on using the PublishLayerVersion
3884// API call, and error handling.
3885//
3886// This method is useful when you want to inject custom logic or configuration
3887// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3888//
3889//
3890//    // Example sending a request using the PublishLayerVersionRequest method.
3891//    req, resp := client.PublishLayerVersionRequest(params)
3892//
3893//    err := req.Send()
3894//    if err == nil { // resp is now filled
3895//        fmt.Println(resp)
3896//    }
3897//
3898// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/PublishLayerVersion
3899func (c *Lambda) PublishLayerVersionRequest(input *PublishLayerVersionInput) (req *request.Request, output *PublishLayerVersionOutput) {
3900	op := &request.Operation{
3901		Name:       opPublishLayerVersion,
3902		HTTPMethod: "POST",
3903		HTTPPath:   "/2018-10-31/layers/{LayerName}/versions",
3904	}
3905
3906	if input == nil {
3907		input = &PublishLayerVersionInput{}
3908	}
3909
3910	output = &PublishLayerVersionOutput{}
3911	req = c.newRequest(op, input, output)
3912	return
3913}
3914
3915// PublishLayerVersion API operation for AWS Lambda.
3916//
3917// Creates an AWS Lambda layer (https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html)
3918// from a ZIP archive. Each time you call PublishLayerVersion with the same
3919// layer name, a new version is created.
3920//
3921// Add layers to your function with CreateFunction or UpdateFunctionConfiguration.
3922//
3923// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3924// with awserr.Error's Code and Message methods to get detailed information about
3925// the error.
3926//
3927// See the AWS API reference guide for AWS Lambda's
3928// API operation PublishLayerVersion for usage and error information.
3929//
3930// Returned Error Types:
3931//   * ServiceException
3932//   The AWS Lambda service encountered an internal error.
3933//
3934//   * ResourceNotFoundException
3935//   The resource specified in the request does not exist.
3936//
3937//   * TooManyRequestsException
3938//   The request throughput limit was exceeded.
3939//
3940//   * InvalidParameterValueException
3941//   One of the parameters in the request is invalid.
3942//
3943//   * CodeStorageExceededException
3944//   You have exceeded your maximum total code size per account. Learn more (https://docs.aws.amazon.com/lambda/latest/dg/limits.html)
3945//
3946// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/PublishLayerVersion
3947func (c *Lambda) PublishLayerVersion(input *PublishLayerVersionInput) (*PublishLayerVersionOutput, error) {
3948	req, out := c.PublishLayerVersionRequest(input)
3949	return out, req.Send()
3950}
3951
3952// PublishLayerVersionWithContext is the same as PublishLayerVersion with the addition of
3953// the ability to pass a context and additional request options.
3954//
3955// See PublishLayerVersion for details on how to use this API operation.
3956//
3957// The context must be non-nil and will be used for request cancellation. If
3958// the context is nil a panic will occur. In the future the SDK may create
3959// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3960// for more information on using Contexts.
3961func (c *Lambda) PublishLayerVersionWithContext(ctx aws.Context, input *PublishLayerVersionInput, opts ...request.Option) (*PublishLayerVersionOutput, error) {
3962	req, out := c.PublishLayerVersionRequest(input)
3963	req.SetContext(ctx)
3964	req.ApplyOptions(opts...)
3965	return out, req.Send()
3966}
3967
3968const opPublishVersion = "PublishVersion"
3969
3970// PublishVersionRequest generates a "aws/request.Request" representing the
3971// client's request for the PublishVersion operation. The "output" return
3972// value will be populated with the request's response once the request completes
3973// successfully.
3974//
3975// Use "Send" method on the returned Request to send the API call to the service.
3976// the "output" return value is not valid until after Send returns without error.
3977//
3978// See PublishVersion for more information on using the PublishVersion
3979// API call, and error handling.
3980//
3981// This method is useful when you want to inject custom logic or configuration
3982// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3983//
3984//
3985//    // Example sending a request using the PublishVersionRequest method.
3986//    req, resp := client.PublishVersionRequest(params)
3987//
3988//    err := req.Send()
3989//    if err == nil { // resp is now filled
3990//        fmt.Println(resp)
3991//    }
3992//
3993// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/PublishVersion
3994func (c *Lambda) PublishVersionRequest(input *PublishVersionInput) (req *request.Request, output *FunctionConfiguration) {
3995	op := &request.Operation{
3996		Name:       opPublishVersion,
3997		HTTPMethod: "POST",
3998		HTTPPath:   "/2015-03-31/functions/{FunctionName}/versions",
3999	}
4000
4001	if input == nil {
4002		input = &PublishVersionInput{}
4003	}
4004
4005	output = &FunctionConfiguration{}
4006	req = c.newRequest(op, input, output)
4007	return
4008}
4009
4010// PublishVersion API operation for AWS Lambda.
4011//
4012// Creates a version (https://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html)
4013// from the current code and configuration of a function. Use versions to create
4014// a snapshot of your function code and configuration that doesn't change.
4015//
4016// AWS Lambda doesn't publish a version if the function's configuration and
4017// code haven't changed since the last version. Use UpdateFunctionCode or UpdateFunctionConfiguration
4018// to update the function before publishing a version.
4019//
4020// Clients can invoke versions directly or with an alias. To create an alias,
4021// use CreateAlias.
4022//
4023// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4024// with awserr.Error's Code and Message methods to get detailed information about
4025// the error.
4026//
4027// See the AWS API reference guide for AWS Lambda's
4028// API operation PublishVersion for usage and error information.
4029//
4030// Returned Error Types:
4031//   * ServiceException
4032//   The AWS Lambda service encountered an internal error.
4033//
4034//   * ResourceNotFoundException
4035//   The resource specified in the request does not exist.
4036//
4037//   * InvalidParameterValueException
4038//   One of the parameters in the request is invalid.
4039//
4040//   * TooManyRequestsException
4041//   The request throughput limit was exceeded.
4042//
4043//   * CodeStorageExceededException
4044//   You have exceeded your maximum total code size per account. Learn more (https://docs.aws.amazon.com/lambda/latest/dg/limits.html)
4045//
4046//   * PreconditionFailedException
4047//   The RevisionId provided does not match the latest RevisionId for the Lambda
4048//   function or alias. Call the GetFunction or the GetAlias API to retrieve the
4049//   latest RevisionId for your resource.
4050//
4051//   * ResourceConflictException
4052//   The resource already exists, or another operation is in progress.
4053//
4054// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/PublishVersion
4055func (c *Lambda) PublishVersion(input *PublishVersionInput) (*FunctionConfiguration, error) {
4056	req, out := c.PublishVersionRequest(input)
4057	return out, req.Send()
4058}
4059
4060// PublishVersionWithContext is the same as PublishVersion with the addition of
4061// the ability to pass a context and additional request options.
4062//
4063// See PublishVersion for details on how to use this API operation.
4064//
4065// The context must be non-nil and will be used for request cancellation. If
4066// the context is nil a panic will occur. In the future the SDK may create
4067// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4068// for more information on using Contexts.
4069func (c *Lambda) PublishVersionWithContext(ctx aws.Context, input *PublishVersionInput, opts ...request.Option) (*FunctionConfiguration, error) {
4070	req, out := c.PublishVersionRequest(input)
4071	req.SetContext(ctx)
4072	req.ApplyOptions(opts...)
4073	return out, req.Send()
4074}
4075
4076const opPutFunctionConcurrency = "PutFunctionConcurrency"
4077
4078// PutFunctionConcurrencyRequest generates a "aws/request.Request" representing the
4079// client's request for the PutFunctionConcurrency operation. The "output" return
4080// value will be populated with the request's response once the request completes
4081// successfully.
4082//
4083// Use "Send" method on the returned Request to send the API call to the service.
4084// the "output" return value is not valid until after Send returns without error.
4085//
4086// See PutFunctionConcurrency for more information on using the PutFunctionConcurrency
4087// API call, and error handling.
4088//
4089// This method is useful when you want to inject custom logic or configuration
4090// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4091//
4092//
4093//    // Example sending a request using the PutFunctionConcurrencyRequest method.
4094//    req, resp := client.PutFunctionConcurrencyRequest(params)
4095//
4096//    err := req.Send()
4097//    if err == nil { // resp is now filled
4098//        fmt.Println(resp)
4099//    }
4100//
4101// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/PutFunctionConcurrency
4102func (c *Lambda) PutFunctionConcurrencyRequest(input *PutFunctionConcurrencyInput) (req *request.Request, output *PutFunctionConcurrencyOutput) {
4103	op := &request.Operation{
4104		Name:       opPutFunctionConcurrency,
4105		HTTPMethod: "PUT",
4106		HTTPPath:   "/2017-10-31/functions/{FunctionName}/concurrency",
4107	}
4108
4109	if input == nil {
4110		input = &PutFunctionConcurrencyInput{}
4111	}
4112
4113	output = &PutFunctionConcurrencyOutput{}
4114	req = c.newRequest(op, input, output)
4115	return
4116}
4117
4118// PutFunctionConcurrency API operation for AWS Lambda.
4119//
4120// Sets the maximum number of simultaneous executions for a function, and reserves
4121// capacity for that concurrency level.
4122//
4123// Concurrency settings apply to the function as a whole, including all published
4124// versions and the unpublished version. Reserving concurrency both ensures
4125// that your function has capacity to process the specified number of events
4126// simultaneously, and prevents it from scaling beyond that level. Use GetFunction
4127// to see the current setting for a function.
4128//
4129// Use GetAccountSettings to see your Regional concurrency limit. You can reserve
4130// concurrency for as many functions as you like, as long as you leave at least
4131// 100 simultaneous executions unreserved for functions that aren't configured
4132// with a per-function limit. For more information, see Managing Concurrency
4133// (https://docs.aws.amazon.com/lambda/latest/dg/concurrent-executions.html).
4134//
4135// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4136// with awserr.Error's Code and Message methods to get detailed information about
4137// the error.
4138//
4139// See the AWS API reference guide for AWS Lambda's
4140// API operation PutFunctionConcurrency for usage and error information.
4141//
4142// Returned Error Types:
4143//   * ServiceException
4144//   The AWS Lambda service encountered an internal error.
4145//
4146//   * InvalidParameterValueException
4147//   One of the parameters in the request is invalid.
4148//
4149//   * ResourceNotFoundException
4150//   The resource specified in the request does not exist.
4151//
4152//   * TooManyRequestsException
4153//   The request throughput limit was exceeded.
4154//
4155//   * ResourceConflictException
4156//   The resource already exists, or another operation is in progress.
4157//
4158// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/PutFunctionConcurrency
4159func (c *Lambda) PutFunctionConcurrency(input *PutFunctionConcurrencyInput) (*PutFunctionConcurrencyOutput, error) {
4160	req, out := c.PutFunctionConcurrencyRequest(input)
4161	return out, req.Send()
4162}
4163
4164// PutFunctionConcurrencyWithContext is the same as PutFunctionConcurrency with the addition of
4165// the ability to pass a context and additional request options.
4166//
4167// See PutFunctionConcurrency for details on how to use this API operation.
4168//
4169// The context must be non-nil and will be used for request cancellation. If
4170// the context is nil a panic will occur. In the future the SDK may create
4171// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4172// for more information on using Contexts.
4173func (c *Lambda) PutFunctionConcurrencyWithContext(ctx aws.Context, input *PutFunctionConcurrencyInput, opts ...request.Option) (*PutFunctionConcurrencyOutput, error) {
4174	req, out := c.PutFunctionConcurrencyRequest(input)
4175	req.SetContext(ctx)
4176	req.ApplyOptions(opts...)
4177	return out, req.Send()
4178}
4179
4180const opPutFunctionEventInvokeConfig = "PutFunctionEventInvokeConfig"
4181
4182// PutFunctionEventInvokeConfigRequest generates a "aws/request.Request" representing the
4183// client's request for the PutFunctionEventInvokeConfig operation. The "output" return
4184// value will be populated with the request's response once the request completes
4185// successfully.
4186//
4187// Use "Send" method on the returned Request to send the API call to the service.
4188// the "output" return value is not valid until after Send returns without error.
4189//
4190// See PutFunctionEventInvokeConfig for more information on using the PutFunctionEventInvokeConfig
4191// API call, and error handling.
4192//
4193// This method is useful when you want to inject custom logic or configuration
4194// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4195//
4196//
4197//    // Example sending a request using the PutFunctionEventInvokeConfigRequest method.
4198//    req, resp := client.PutFunctionEventInvokeConfigRequest(params)
4199//
4200//    err := req.Send()
4201//    if err == nil { // resp is now filled
4202//        fmt.Println(resp)
4203//    }
4204//
4205// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/PutFunctionEventInvokeConfig
4206func (c *Lambda) PutFunctionEventInvokeConfigRequest(input *PutFunctionEventInvokeConfigInput) (req *request.Request, output *PutFunctionEventInvokeConfigOutput) {
4207	op := &request.Operation{
4208		Name:       opPutFunctionEventInvokeConfig,
4209		HTTPMethod: "PUT",
4210		HTTPPath:   "/2019-09-25/functions/{FunctionName}/event-invoke-config",
4211	}
4212
4213	if input == nil {
4214		input = &PutFunctionEventInvokeConfigInput{}
4215	}
4216
4217	output = &PutFunctionEventInvokeConfigOutput{}
4218	req = c.newRequest(op, input, output)
4219	return
4220}
4221
4222// PutFunctionEventInvokeConfig API operation for AWS Lambda.
4223//
4224// Configures options for asynchronous invocation (https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html)
4225// on a function, version, or alias. If a configuration already exists for a
4226// function, version, or alias, this operation overwrites it. If you exclude
4227// any settings, they are removed. To set one option without affecting existing
4228// settings for other options, use UpdateFunctionEventInvokeConfig.
4229//
4230// By default, Lambda retries an asynchronous invocation twice if the function
4231// returns an error. It retains events in a queue for up to six hours. When
4232// an event fails all processing attempts or stays in the asynchronous invocation
4233// queue for too long, Lambda discards it. To retain discarded events, configure
4234// a dead-letter queue with UpdateFunctionConfiguration.
4235//
4236// To send an invocation record to a queue, topic, function, or event bus, specify
4237// a destination (https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html#invocation-async-destinations).
4238// You can configure separate destinations for successful invocations (on-success)
4239// and events that fail all processing attempts (on-failure). You can configure
4240// destinations in addition to or instead of a dead-letter queue.
4241//
4242// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4243// with awserr.Error's Code and Message methods to get detailed information about
4244// the error.
4245//
4246// See the AWS API reference guide for AWS Lambda's
4247// API operation PutFunctionEventInvokeConfig for usage and error information.
4248//
4249// Returned Error Types:
4250//   * ServiceException
4251//   The AWS Lambda service encountered an internal error.
4252//
4253//   * ResourceNotFoundException
4254//   The resource specified in the request does not exist.
4255//
4256//   * InvalidParameterValueException
4257//   One of the parameters in the request is invalid.
4258//
4259//   * TooManyRequestsException
4260//   The request throughput limit was exceeded.
4261//
4262// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/PutFunctionEventInvokeConfig
4263func (c *Lambda) PutFunctionEventInvokeConfig(input *PutFunctionEventInvokeConfigInput) (*PutFunctionEventInvokeConfigOutput, error) {
4264	req, out := c.PutFunctionEventInvokeConfigRequest(input)
4265	return out, req.Send()
4266}
4267
4268// PutFunctionEventInvokeConfigWithContext is the same as PutFunctionEventInvokeConfig with the addition of
4269// the ability to pass a context and additional request options.
4270//
4271// See PutFunctionEventInvokeConfig for details on how to use this API operation.
4272//
4273// The context must be non-nil and will be used for request cancellation. If
4274// the context is nil a panic will occur. In the future the SDK may create
4275// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4276// for more information on using Contexts.
4277func (c *Lambda) PutFunctionEventInvokeConfigWithContext(ctx aws.Context, input *PutFunctionEventInvokeConfigInput, opts ...request.Option) (*PutFunctionEventInvokeConfigOutput, error) {
4278	req, out := c.PutFunctionEventInvokeConfigRequest(input)
4279	req.SetContext(ctx)
4280	req.ApplyOptions(opts...)
4281	return out, req.Send()
4282}
4283
4284const opPutProvisionedConcurrencyConfig = "PutProvisionedConcurrencyConfig"
4285
4286// PutProvisionedConcurrencyConfigRequest generates a "aws/request.Request" representing the
4287// client's request for the PutProvisionedConcurrencyConfig operation. The "output" return
4288// value will be populated with the request's response once the request completes
4289// successfully.
4290//
4291// Use "Send" method on the returned Request to send the API call to the service.
4292// the "output" return value is not valid until after Send returns without error.
4293//
4294// See PutProvisionedConcurrencyConfig for more information on using the PutProvisionedConcurrencyConfig
4295// API call, and error handling.
4296//
4297// This method is useful when you want to inject custom logic or configuration
4298// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4299//
4300//
4301//    // Example sending a request using the PutProvisionedConcurrencyConfigRequest method.
4302//    req, resp := client.PutProvisionedConcurrencyConfigRequest(params)
4303//
4304//    err := req.Send()
4305//    if err == nil { // resp is now filled
4306//        fmt.Println(resp)
4307//    }
4308//
4309// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/PutProvisionedConcurrencyConfig
4310func (c *Lambda) PutProvisionedConcurrencyConfigRequest(input *PutProvisionedConcurrencyConfigInput) (req *request.Request, output *PutProvisionedConcurrencyConfigOutput) {
4311	op := &request.Operation{
4312		Name:       opPutProvisionedConcurrencyConfig,
4313		HTTPMethod: "PUT",
4314		HTTPPath:   "/2019-09-30/functions/{FunctionName}/provisioned-concurrency",
4315	}
4316
4317	if input == nil {
4318		input = &PutProvisionedConcurrencyConfigInput{}
4319	}
4320
4321	output = &PutProvisionedConcurrencyConfigOutput{}
4322	req = c.newRequest(op, input, output)
4323	return
4324}
4325
4326// PutProvisionedConcurrencyConfig API operation for AWS Lambda.
4327//
4328// Adds a provisioned concurrency configuration to a function's alias or version.
4329//
4330// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4331// with awserr.Error's Code and Message methods to get detailed information about
4332// the error.
4333//
4334// See the AWS API reference guide for AWS Lambda's
4335// API operation PutProvisionedConcurrencyConfig for usage and error information.
4336//
4337// Returned Error Types:
4338//   * InvalidParameterValueException
4339//   One of the parameters in the request is invalid.
4340//
4341//   * ResourceNotFoundException
4342//   The resource specified in the request does not exist.
4343//
4344//   * ResourceConflictException
4345//   The resource already exists, or another operation is in progress.
4346//
4347//   * TooManyRequestsException
4348//   The request throughput limit was exceeded.
4349//
4350//   * ServiceException
4351//   The AWS Lambda service encountered an internal error.
4352//
4353// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/PutProvisionedConcurrencyConfig
4354func (c *Lambda) PutProvisionedConcurrencyConfig(input *PutProvisionedConcurrencyConfigInput) (*PutProvisionedConcurrencyConfigOutput, error) {
4355	req, out := c.PutProvisionedConcurrencyConfigRequest(input)
4356	return out, req.Send()
4357}
4358
4359// PutProvisionedConcurrencyConfigWithContext is the same as PutProvisionedConcurrencyConfig with the addition of
4360// the ability to pass a context and additional request options.
4361//
4362// See PutProvisionedConcurrencyConfig for details on how to use this API operation.
4363//
4364// The context must be non-nil and will be used for request cancellation. If
4365// the context is nil a panic will occur. In the future the SDK may create
4366// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4367// for more information on using Contexts.
4368func (c *Lambda) PutProvisionedConcurrencyConfigWithContext(ctx aws.Context, input *PutProvisionedConcurrencyConfigInput, opts ...request.Option) (*PutProvisionedConcurrencyConfigOutput, error) {
4369	req, out := c.PutProvisionedConcurrencyConfigRequest(input)
4370	req.SetContext(ctx)
4371	req.ApplyOptions(opts...)
4372	return out, req.Send()
4373}
4374
4375const opRemoveLayerVersionPermission = "RemoveLayerVersionPermission"
4376
4377// RemoveLayerVersionPermissionRequest generates a "aws/request.Request" representing the
4378// client's request for the RemoveLayerVersionPermission operation. The "output" return
4379// value will be populated with the request's response once the request completes
4380// successfully.
4381//
4382// Use "Send" method on the returned Request to send the API call to the service.
4383// the "output" return value is not valid until after Send returns without error.
4384//
4385// See RemoveLayerVersionPermission for more information on using the RemoveLayerVersionPermission
4386// API call, and error handling.
4387//
4388// This method is useful when you want to inject custom logic or configuration
4389// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4390//
4391//
4392//    // Example sending a request using the RemoveLayerVersionPermissionRequest method.
4393//    req, resp := client.RemoveLayerVersionPermissionRequest(params)
4394//
4395//    err := req.Send()
4396//    if err == nil { // resp is now filled
4397//        fmt.Println(resp)
4398//    }
4399//
4400// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/RemoveLayerVersionPermission
4401func (c *Lambda) RemoveLayerVersionPermissionRequest(input *RemoveLayerVersionPermissionInput) (req *request.Request, output *RemoveLayerVersionPermissionOutput) {
4402	op := &request.Operation{
4403		Name:       opRemoveLayerVersionPermission,
4404		HTTPMethod: "DELETE",
4405		HTTPPath:   "/2018-10-31/layers/{LayerName}/versions/{VersionNumber}/policy/{StatementId}",
4406	}
4407
4408	if input == nil {
4409		input = &RemoveLayerVersionPermissionInput{}
4410	}
4411
4412	output = &RemoveLayerVersionPermissionOutput{}
4413	req = c.newRequest(op, input, output)
4414	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
4415	return
4416}
4417
4418// RemoveLayerVersionPermission API operation for AWS Lambda.
4419//
4420// Removes a statement from the permissions policy for a version of an AWS Lambda
4421// layer (https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html).
4422// For more information, see AddLayerVersionPermission.
4423//
4424// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4425// with awserr.Error's Code and Message methods to get detailed information about
4426// the error.
4427//
4428// See the AWS API reference guide for AWS Lambda's
4429// API operation RemoveLayerVersionPermission for usage and error information.
4430//
4431// Returned Error Types:
4432//   * ServiceException
4433//   The AWS Lambda service encountered an internal error.
4434//
4435//   * ResourceNotFoundException
4436//   The resource specified in the request does not exist.
4437//
4438//   * InvalidParameterValueException
4439//   One of the parameters in the request is invalid.
4440//
4441//   * TooManyRequestsException
4442//   The request throughput limit was exceeded.
4443//
4444//   * PreconditionFailedException
4445//   The RevisionId provided does not match the latest RevisionId for the Lambda
4446//   function or alias. Call the GetFunction or the GetAlias API to retrieve the
4447//   latest RevisionId for your resource.
4448//
4449// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/RemoveLayerVersionPermission
4450func (c *Lambda) RemoveLayerVersionPermission(input *RemoveLayerVersionPermissionInput) (*RemoveLayerVersionPermissionOutput, error) {
4451	req, out := c.RemoveLayerVersionPermissionRequest(input)
4452	return out, req.Send()
4453}
4454
4455// RemoveLayerVersionPermissionWithContext is the same as RemoveLayerVersionPermission with the addition of
4456// the ability to pass a context and additional request options.
4457//
4458// See RemoveLayerVersionPermission for details on how to use this API operation.
4459//
4460// The context must be non-nil and will be used for request cancellation. If
4461// the context is nil a panic will occur. In the future the SDK may create
4462// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4463// for more information on using Contexts.
4464func (c *Lambda) RemoveLayerVersionPermissionWithContext(ctx aws.Context, input *RemoveLayerVersionPermissionInput, opts ...request.Option) (*RemoveLayerVersionPermissionOutput, error) {
4465	req, out := c.RemoveLayerVersionPermissionRequest(input)
4466	req.SetContext(ctx)
4467	req.ApplyOptions(opts...)
4468	return out, req.Send()
4469}
4470
4471const opRemovePermission = "RemovePermission"
4472
4473// RemovePermissionRequest generates a "aws/request.Request" representing the
4474// client's request for the RemovePermission operation. The "output" return
4475// value will be populated with the request's response once the request completes
4476// successfully.
4477//
4478// Use "Send" method on the returned Request to send the API call to the service.
4479// the "output" return value is not valid until after Send returns without error.
4480//
4481// See RemovePermission for more information on using the RemovePermission
4482// API call, and error handling.
4483//
4484// This method is useful when you want to inject custom logic or configuration
4485// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4486//
4487//
4488//    // Example sending a request using the RemovePermissionRequest method.
4489//    req, resp := client.RemovePermissionRequest(params)
4490//
4491//    err := req.Send()
4492//    if err == nil { // resp is now filled
4493//        fmt.Println(resp)
4494//    }
4495//
4496// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/RemovePermission
4497func (c *Lambda) RemovePermissionRequest(input *RemovePermissionInput) (req *request.Request, output *RemovePermissionOutput) {
4498	op := &request.Operation{
4499		Name:       opRemovePermission,
4500		HTTPMethod: "DELETE",
4501		HTTPPath:   "/2015-03-31/functions/{FunctionName}/policy/{StatementId}",
4502	}
4503
4504	if input == nil {
4505		input = &RemovePermissionInput{}
4506	}
4507
4508	output = &RemovePermissionOutput{}
4509	req = c.newRequest(op, input, output)
4510	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
4511	return
4512}
4513
4514// RemovePermission API operation for AWS Lambda.
4515//
4516// Revokes function-use permission from an AWS service or another account. You
4517// can get the ID of the statement from the output of GetPolicy.
4518//
4519// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4520// with awserr.Error's Code and Message methods to get detailed information about
4521// the error.
4522//
4523// See the AWS API reference guide for AWS Lambda's
4524// API operation RemovePermission for usage and error information.
4525//
4526// Returned Error Types:
4527//   * ServiceException
4528//   The AWS Lambda service encountered an internal error.
4529//
4530//   * ResourceNotFoundException
4531//   The resource specified in the request does not exist.
4532//
4533//   * InvalidParameterValueException
4534//   One of the parameters in the request is invalid.
4535//
4536//   * TooManyRequestsException
4537//   The request throughput limit was exceeded.
4538//
4539//   * PreconditionFailedException
4540//   The RevisionId provided does not match the latest RevisionId for the Lambda
4541//   function or alias. Call the GetFunction or the GetAlias API to retrieve the
4542//   latest RevisionId for your resource.
4543//
4544// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/RemovePermission
4545func (c *Lambda) RemovePermission(input *RemovePermissionInput) (*RemovePermissionOutput, error) {
4546	req, out := c.RemovePermissionRequest(input)
4547	return out, req.Send()
4548}
4549
4550// RemovePermissionWithContext is the same as RemovePermission with the addition of
4551// the ability to pass a context and additional request options.
4552//
4553// See RemovePermission for details on how to use this API operation.
4554//
4555// The context must be non-nil and will be used for request cancellation. If
4556// the context is nil a panic will occur. In the future the SDK may create
4557// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4558// for more information on using Contexts.
4559func (c *Lambda) RemovePermissionWithContext(ctx aws.Context, input *RemovePermissionInput, opts ...request.Option) (*RemovePermissionOutput, error) {
4560	req, out := c.RemovePermissionRequest(input)
4561	req.SetContext(ctx)
4562	req.ApplyOptions(opts...)
4563	return out, req.Send()
4564}
4565
4566const opTagResource = "TagResource"
4567
4568// TagResourceRequest generates a "aws/request.Request" representing the
4569// client's request for the TagResource operation. The "output" return
4570// value will be populated with the request's response once the request completes
4571// successfully.
4572//
4573// Use "Send" method on the returned Request to send the API call to the service.
4574// the "output" return value is not valid until after Send returns without error.
4575//
4576// See TagResource for more information on using the TagResource
4577// API call, and error handling.
4578//
4579// This method is useful when you want to inject custom logic or configuration
4580// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4581//
4582//
4583//    // Example sending a request using the TagResourceRequest method.
4584//    req, resp := client.TagResourceRequest(params)
4585//
4586//    err := req.Send()
4587//    if err == nil { // resp is now filled
4588//        fmt.Println(resp)
4589//    }
4590//
4591// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/TagResource
4592func (c *Lambda) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) {
4593	op := &request.Operation{
4594		Name:       opTagResource,
4595		HTTPMethod: "POST",
4596		HTTPPath:   "/2017-03-31/tags/{ARN}",
4597	}
4598
4599	if input == nil {
4600		input = &TagResourceInput{}
4601	}
4602
4603	output = &TagResourceOutput{}
4604	req = c.newRequest(op, input, output)
4605	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
4606	return
4607}
4608
4609// TagResource API operation for AWS Lambda.
4610//
4611// Adds tags (https://docs.aws.amazon.com/lambda/latest/dg/tagging.html) to
4612// a function.
4613//
4614// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4615// with awserr.Error's Code and Message methods to get detailed information about
4616// the error.
4617//
4618// See the AWS API reference guide for AWS Lambda's
4619// API operation TagResource for usage and error information.
4620//
4621// Returned Error Types:
4622//   * ServiceException
4623//   The AWS Lambda service encountered an internal error.
4624//
4625//   * ResourceNotFoundException
4626//   The resource specified in the request does not exist.
4627//
4628//   * InvalidParameterValueException
4629//   One of the parameters in the request is invalid.
4630//
4631//   * TooManyRequestsException
4632//   The request throughput limit was exceeded.
4633//
4634//   * ResourceConflictException
4635//   The resource already exists, or another operation is in progress.
4636//
4637// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/TagResource
4638func (c *Lambda) TagResource(input *TagResourceInput) (*TagResourceOutput, error) {
4639	req, out := c.TagResourceRequest(input)
4640	return out, req.Send()
4641}
4642
4643// TagResourceWithContext is the same as TagResource with the addition of
4644// the ability to pass a context and additional request options.
4645//
4646// See TagResource for details on how to use this API operation.
4647//
4648// The context must be non-nil and will be used for request cancellation. If
4649// the context is nil a panic will occur. In the future the SDK may create
4650// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4651// for more information on using Contexts.
4652func (c *Lambda) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) {
4653	req, out := c.TagResourceRequest(input)
4654	req.SetContext(ctx)
4655	req.ApplyOptions(opts...)
4656	return out, req.Send()
4657}
4658
4659const opUntagResource = "UntagResource"
4660
4661// UntagResourceRequest generates a "aws/request.Request" representing the
4662// client's request for the UntagResource operation. The "output" return
4663// value will be populated with the request's response once the request completes
4664// successfully.
4665//
4666// Use "Send" method on the returned Request to send the API call to the service.
4667// the "output" return value is not valid until after Send returns without error.
4668//
4669// See UntagResource for more information on using the UntagResource
4670// API call, and error handling.
4671//
4672// This method is useful when you want to inject custom logic or configuration
4673// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4674//
4675//
4676//    // Example sending a request using the UntagResourceRequest method.
4677//    req, resp := client.UntagResourceRequest(params)
4678//
4679//    err := req.Send()
4680//    if err == nil { // resp is now filled
4681//        fmt.Println(resp)
4682//    }
4683//
4684// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/UntagResource
4685func (c *Lambda) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) {
4686	op := &request.Operation{
4687		Name:       opUntagResource,
4688		HTTPMethod: "DELETE",
4689		HTTPPath:   "/2017-03-31/tags/{ARN}",
4690	}
4691
4692	if input == nil {
4693		input = &UntagResourceInput{}
4694	}
4695
4696	output = &UntagResourceOutput{}
4697	req = c.newRequest(op, input, output)
4698	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
4699	return
4700}
4701
4702// UntagResource API operation for AWS Lambda.
4703//
4704// Removes tags (https://docs.aws.amazon.com/lambda/latest/dg/tagging.html)
4705// from a function.
4706//
4707// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4708// with awserr.Error's Code and Message methods to get detailed information about
4709// the error.
4710//
4711// See the AWS API reference guide for AWS Lambda's
4712// API operation UntagResource for usage and error information.
4713//
4714// Returned Error Types:
4715//   * ServiceException
4716//   The AWS Lambda service encountered an internal error.
4717//
4718//   * ResourceNotFoundException
4719//   The resource specified in the request does not exist.
4720//
4721//   * InvalidParameterValueException
4722//   One of the parameters in the request is invalid.
4723//
4724//   * TooManyRequestsException
4725//   The request throughput limit was exceeded.
4726//
4727//   * ResourceConflictException
4728//   The resource already exists, or another operation is in progress.
4729//
4730// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/UntagResource
4731func (c *Lambda) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) {
4732	req, out := c.UntagResourceRequest(input)
4733	return out, req.Send()
4734}
4735
4736// UntagResourceWithContext is the same as UntagResource with the addition of
4737// the ability to pass a context and additional request options.
4738//
4739// See UntagResource for details on how to use this API operation.
4740//
4741// The context must be non-nil and will be used for request cancellation. If
4742// the context is nil a panic will occur. In the future the SDK may create
4743// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4744// for more information on using Contexts.
4745func (c *Lambda) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) {
4746	req, out := c.UntagResourceRequest(input)
4747	req.SetContext(ctx)
4748	req.ApplyOptions(opts...)
4749	return out, req.Send()
4750}
4751
4752const opUpdateAlias = "UpdateAlias"
4753
4754// UpdateAliasRequest generates a "aws/request.Request" representing the
4755// client's request for the UpdateAlias operation. The "output" return
4756// value will be populated with the request's response once the request completes
4757// successfully.
4758//
4759// Use "Send" method on the returned Request to send the API call to the service.
4760// the "output" return value is not valid until after Send returns without error.
4761//
4762// See UpdateAlias for more information on using the UpdateAlias
4763// API call, and error handling.
4764//
4765// This method is useful when you want to inject custom logic or configuration
4766// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4767//
4768//
4769//    // Example sending a request using the UpdateAliasRequest method.
4770//    req, resp := client.UpdateAliasRequest(params)
4771//
4772//    err := req.Send()
4773//    if err == nil { // resp is now filled
4774//        fmt.Println(resp)
4775//    }
4776//
4777// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/UpdateAlias
4778func (c *Lambda) UpdateAliasRequest(input *UpdateAliasInput) (req *request.Request, output *AliasConfiguration) {
4779	op := &request.Operation{
4780		Name:       opUpdateAlias,
4781		HTTPMethod: "PUT",
4782		HTTPPath:   "/2015-03-31/functions/{FunctionName}/aliases/{Name}",
4783	}
4784
4785	if input == nil {
4786		input = &UpdateAliasInput{}
4787	}
4788
4789	output = &AliasConfiguration{}
4790	req = c.newRequest(op, input, output)
4791	return
4792}
4793
4794// UpdateAlias API operation for AWS Lambda.
4795//
4796// Updates the configuration of a Lambda function alias (https://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html).
4797//
4798// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4799// with awserr.Error's Code and Message methods to get detailed information about
4800// the error.
4801//
4802// See the AWS API reference guide for AWS Lambda's
4803// API operation UpdateAlias for usage and error information.
4804//
4805// Returned Error Types:
4806//   * ServiceException
4807//   The AWS Lambda service encountered an internal error.
4808//
4809//   * ResourceNotFoundException
4810//   The resource specified in the request does not exist.
4811//
4812//   * InvalidParameterValueException
4813//   One of the parameters in the request is invalid.
4814//
4815//   * TooManyRequestsException
4816//   The request throughput limit was exceeded.
4817//
4818//   * PreconditionFailedException
4819//   The RevisionId provided does not match the latest RevisionId for the Lambda
4820//   function or alias. Call the GetFunction or the GetAlias API to retrieve the
4821//   latest RevisionId for your resource.
4822//
4823//   * ResourceConflictException
4824//   The resource already exists, or another operation is in progress.
4825//
4826// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/UpdateAlias
4827func (c *Lambda) UpdateAlias(input *UpdateAliasInput) (*AliasConfiguration, error) {
4828	req, out := c.UpdateAliasRequest(input)
4829	return out, req.Send()
4830}
4831
4832// UpdateAliasWithContext is the same as UpdateAlias with the addition of
4833// the ability to pass a context and additional request options.
4834//
4835// See UpdateAlias for details on how to use this API operation.
4836//
4837// The context must be non-nil and will be used for request cancellation. If
4838// the context is nil a panic will occur. In the future the SDK may create
4839// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4840// for more information on using Contexts.
4841func (c *Lambda) UpdateAliasWithContext(ctx aws.Context, input *UpdateAliasInput, opts ...request.Option) (*AliasConfiguration, error) {
4842	req, out := c.UpdateAliasRequest(input)
4843	req.SetContext(ctx)
4844	req.ApplyOptions(opts...)
4845	return out, req.Send()
4846}
4847
4848const opUpdateEventSourceMapping = "UpdateEventSourceMapping"
4849
4850// UpdateEventSourceMappingRequest generates a "aws/request.Request" representing the
4851// client's request for the UpdateEventSourceMapping operation. The "output" return
4852// value will be populated with the request's response once the request completes
4853// successfully.
4854//
4855// Use "Send" method on the returned Request to send the API call to the service.
4856// the "output" return value is not valid until after Send returns without error.
4857//
4858// See UpdateEventSourceMapping for more information on using the UpdateEventSourceMapping
4859// API call, and error handling.
4860//
4861// This method is useful when you want to inject custom logic or configuration
4862// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4863//
4864//
4865//    // Example sending a request using the UpdateEventSourceMappingRequest method.
4866//    req, resp := client.UpdateEventSourceMappingRequest(params)
4867//
4868//    err := req.Send()
4869//    if err == nil { // resp is now filled
4870//        fmt.Println(resp)
4871//    }
4872//
4873// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/UpdateEventSourceMapping
4874func (c *Lambda) UpdateEventSourceMappingRequest(input *UpdateEventSourceMappingInput) (req *request.Request, output *EventSourceMappingConfiguration) {
4875	op := &request.Operation{
4876		Name:       opUpdateEventSourceMapping,
4877		HTTPMethod: "PUT",
4878		HTTPPath:   "/2015-03-31/event-source-mappings/{UUID}",
4879	}
4880
4881	if input == nil {
4882		input = &UpdateEventSourceMappingInput{}
4883	}
4884
4885	output = &EventSourceMappingConfiguration{}
4886	req = c.newRequest(op, input, output)
4887	return
4888}
4889
4890// UpdateEventSourceMapping API operation for AWS Lambda.
4891//
4892// Updates an event source mapping. You can change the function that AWS Lambda
4893// invokes, or pause invocation and resume later from the same location.
4894//
4895// The following error handling options are only available for stream sources
4896// (DynamoDB and Kinesis):
4897//
4898//    * BisectBatchOnFunctionError - If the function returns an error, split
4899//    the batch in two and retry.
4900//
4901//    * DestinationConfig - Send discarded records to an Amazon SQS queue or
4902//    Amazon SNS topic.
4903//
4904//    * MaximumRecordAgeInSeconds - Discard records older than the specified
4905//    age.
4906//
4907//    * MaximumRetryAttempts - Discard records after the specified number of
4908//    retries.
4909//
4910//    * ParallelizationFactor - Process multiple batches from each shard concurrently.
4911//
4912// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4913// with awserr.Error's Code and Message methods to get detailed information about
4914// the error.
4915//
4916// See the AWS API reference guide for AWS Lambda's
4917// API operation UpdateEventSourceMapping for usage and error information.
4918//
4919// Returned Error Types:
4920//   * ServiceException
4921//   The AWS Lambda service encountered an internal error.
4922//
4923//   * ResourceNotFoundException
4924//   The resource specified in the request does not exist.
4925//
4926//   * InvalidParameterValueException
4927//   One of the parameters in the request is invalid.
4928//
4929//   * TooManyRequestsException
4930//   The request throughput limit was exceeded.
4931//
4932//   * ResourceConflictException
4933//   The resource already exists, or another operation is in progress.
4934//
4935//   * ResourceInUseException
4936//   The operation conflicts with the resource's availability. For example, you
4937//   attempted to update an EventSource Mapping in CREATING, or tried to delete
4938//   a EventSource mapping currently in the UPDATING state.
4939//
4940// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/UpdateEventSourceMapping
4941func (c *Lambda) UpdateEventSourceMapping(input *UpdateEventSourceMappingInput) (*EventSourceMappingConfiguration, error) {
4942	req, out := c.UpdateEventSourceMappingRequest(input)
4943	return out, req.Send()
4944}
4945
4946// UpdateEventSourceMappingWithContext is the same as UpdateEventSourceMapping with the addition of
4947// the ability to pass a context and additional request options.
4948//
4949// See UpdateEventSourceMapping for details on how to use this API operation.
4950//
4951// The context must be non-nil and will be used for request cancellation. If
4952// the context is nil a panic will occur. In the future the SDK may create
4953// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4954// for more information on using Contexts.
4955func (c *Lambda) UpdateEventSourceMappingWithContext(ctx aws.Context, input *UpdateEventSourceMappingInput, opts ...request.Option) (*EventSourceMappingConfiguration, error) {
4956	req, out := c.UpdateEventSourceMappingRequest(input)
4957	req.SetContext(ctx)
4958	req.ApplyOptions(opts...)
4959	return out, req.Send()
4960}
4961
4962const opUpdateFunctionCode = "UpdateFunctionCode"
4963
4964// UpdateFunctionCodeRequest generates a "aws/request.Request" representing the
4965// client's request for the UpdateFunctionCode operation. The "output" return
4966// value will be populated with the request's response once the request completes
4967// successfully.
4968//
4969// Use "Send" method on the returned Request to send the API call to the service.
4970// the "output" return value is not valid until after Send returns without error.
4971//
4972// See UpdateFunctionCode for more information on using the UpdateFunctionCode
4973// API call, and error handling.
4974//
4975// This method is useful when you want to inject custom logic or configuration
4976// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4977//
4978//
4979//    // Example sending a request using the UpdateFunctionCodeRequest method.
4980//    req, resp := client.UpdateFunctionCodeRequest(params)
4981//
4982//    err := req.Send()
4983//    if err == nil { // resp is now filled
4984//        fmt.Println(resp)
4985//    }
4986//
4987// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/UpdateFunctionCode
4988func (c *Lambda) UpdateFunctionCodeRequest(input *UpdateFunctionCodeInput) (req *request.Request, output *FunctionConfiguration) {
4989	op := &request.Operation{
4990		Name:       opUpdateFunctionCode,
4991		HTTPMethod: "PUT",
4992		HTTPPath:   "/2015-03-31/functions/{FunctionName}/code",
4993	}
4994
4995	if input == nil {
4996		input = &UpdateFunctionCodeInput{}
4997	}
4998
4999	output = &FunctionConfiguration{}
5000	req = c.newRequest(op, input, output)
5001	return
5002}
5003
5004// UpdateFunctionCode API operation for AWS Lambda.
5005//
5006// Updates a Lambda function's code.
5007//
5008// The function's code is locked when you publish a version. You can't modify
5009// the code of a published version, only the unpublished version.
5010//
5011// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5012// with awserr.Error's Code and Message methods to get detailed information about
5013// the error.
5014//
5015// See the AWS API reference guide for AWS Lambda's
5016// API operation UpdateFunctionCode for usage and error information.
5017//
5018// Returned Error Types:
5019//   * ServiceException
5020//   The AWS Lambda service encountered an internal error.
5021//
5022//   * ResourceNotFoundException
5023//   The resource specified in the request does not exist.
5024//
5025//   * InvalidParameterValueException
5026//   One of the parameters in the request is invalid.
5027//
5028//   * TooManyRequestsException
5029//   The request throughput limit was exceeded.
5030//
5031//   * CodeStorageExceededException
5032//   You have exceeded your maximum total code size per account. Learn more (https://docs.aws.amazon.com/lambda/latest/dg/limits.html)
5033//
5034//   * PreconditionFailedException
5035//   The RevisionId provided does not match the latest RevisionId for the Lambda
5036//   function or alias. Call the GetFunction or the GetAlias API to retrieve the
5037//   latest RevisionId for your resource.
5038//
5039//   * ResourceConflictException
5040//   The resource already exists, or another operation is in progress.
5041//
5042// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/UpdateFunctionCode
5043func (c *Lambda) UpdateFunctionCode(input *UpdateFunctionCodeInput) (*FunctionConfiguration, error) {
5044	req, out := c.UpdateFunctionCodeRequest(input)
5045	return out, req.Send()
5046}
5047
5048// UpdateFunctionCodeWithContext is the same as UpdateFunctionCode with the addition of
5049// the ability to pass a context and additional request options.
5050//
5051// See UpdateFunctionCode for details on how to use this API operation.
5052//
5053// The context must be non-nil and will be used for request cancellation. If
5054// the context is nil a panic will occur. In the future the SDK may create
5055// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5056// for more information on using Contexts.
5057func (c *Lambda) UpdateFunctionCodeWithContext(ctx aws.Context, input *UpdateFunctionCodeInput, opts ...request.Option) (*FunctionConfiguration, error) {
5058	req, out := c.UpdateFunctionCodeRequest(input)
5059	req.SetContext(ctx)
5060	req.ApplyOptions(opts...)
5061	return out, req.Send()
5062}
5063
5064const opUpdateFunctionConfiguration = "UpdateFunctionConfiguration"
5065
5066// UpdateFunctionConfigurationRequest generates a "aws/request.Request" representing the
5067// client's request for the UpdateFunctionConfiguration operation. The "output" return
5068// value will be populated with the request's response once the request completes
5069// successfully.
5070//
5071// Use "Send" method on the returned Request to send the API call to the service.
5072// the "output" return value is not valid until after Send returns without error.
5073//
5074// See UpdateFunctionConfiguration for more information on using the UpdateFunctionConfiguration
5075// API call, and error handling.
5076//
5077// This method is useful when you want to inject custom logic or configuration
5078// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5079//
5080//
5081//    // Example sending a request using the UpdateFunctionConfigurationRequest method.
5082//    req, resp := client.UpdateFunctionConfigurationRequest(params)
5083//
5084//    err := req.Send()
5085//    if err == nil { // resp is now filled
5086//        fmt.Println(resp)
5087//    }
5088//
5089// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/UpdateFunctionConfiguration
5090func (c *Lambda) UpdateFunctionConfigurationRequest(input *UpdateFunctionConfigurationInput) (req *request.Request, output *FunctionConfiguration) {
5091	op := &request.Operation{
5092		Name:       opUpdateFunctionConfiguration,
5093		HTTPMethod: "PUT",
5094		HTTPPath:   "/2015-03-31/functions/{FunctionName}/configuration",
5095	}
5096
5097	if input == nil {
5098		input = &UpdateFunctionConfigurationInput{}
5099	}
5100
5101	output = &FunctionConfiguration{}
5102	req = c.newRequest(op, input, output)
5103	return
5104}
5105
5106// UpdateFunctionConfiguration API operation for AWS Lambda.
5107//
5108// Modify the version-specific settings of a Lambda function.
5109//
5110// When you update a function, Lambda provisions an instance of the function
5111// and its supporting resources. If your function connects to a VPC, this process
5112// can take a minute. During this time, you can't modify the function, but you
5113// can still invoke it. The LastUpdateStatus, LastUpdateStatusReason, and LastUpdateStatusReasonCode
5114// fields in the response from GetFunctionConfiguration indicate when the update
5115// is complete and the function is processing events with the new configuration.
5116// For more information, see Function States (https://docs.aws.amazon.com/lambda/latest/dg/functions-states.html).
5117//
5118// These settings can vary between versions of a function and are locked when
5119// you publish a version. You can't modify the configuration of a published
5120// version, only the unpublished version.
5121//
5122// To configure function concurrency, use PutFunctionConcurrency. To grant invoke
5123// permissions to an account or AWS service, use AddPermission.
5124//
5125// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5126// with awserr.Error's Code and Message methods to get detailed information about
5127// the error.
5128//
5129// See the AWS API reference guide for AWS Lambda's
5130// API operation UpdateFunctionConfiguration for usage and error information.
5131//
5132// Returned Error Types:
5133//   * ServiceException
5134//   The AWS Lambda service encountered an internal error.
5135//
5136//   * ResourceNotFoundException
5137//   The resource specified in the request does not exist.
5138//
5139//   * InvalidParameterValueException
5140//   One of the parameters in the request is invalid.
5141//
5142//   * TooManyRequestsException
5143//   The request throughput limit was exceeded.
5144//
5145//   * ResourceConflictException
5146//   The resource already exists, or another operation is in progress.
5147//
5148//   * PreconditionFailedException
5149//   The RevisionId provided does not match the latest RevisionId for the Lambda
5150//   function or alias. Call the GetFunction or the GetAlias API to retrieve the
5151//   latest RevisionId for your resource.
5152//
5153// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/UpdateFunctionConfiguration
5154func (c *Lambda) UpdateFunctionConfiguration(input *UpdateFunctionConfigurationInput) (*FunctionConfiguration, error) {
5155	req, out := c.UpdateFunctionConfigurationRequest(input)
5156	return out, req.Send()
5157}
5158
5159// UpdateFunctionConfigurationWithContext is the same as UpdateFunctionConfiguration with the addition of
5160// the ability to pass a context and additional request options.
5161//
5162// See UpdateFunctionConfiguration for details on how to use this API operation.
5163//
5164// The context must be non-nil and will be used for request cancellation. If
5165// the context is nil a panic will occur. In the future the SDK may create
5166// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5167// for more information on using Contexts.
5168func (c *Lambda) UpdateFunctionConfigurationWithContext(ctx aws.Context, input *UpdateFunctionConfigurationInput, opts ...request.Option) (*FunctionConfiguration, error) {
5169	req, out := c.UpdateFunctionConfigurationRequest(input)
5170	req.SetContext(ctx)
5171	req.ApplyOptions(opts...)
5172	return out, req.Send()
5173}
5174
5175const opUpdateFunctionEventInvokeConfig = "UpdateFunctionEventInvokeConfig"
5176
5177// UpdateFunctionEventInvokeConfigRequest generates a "aws/request.Request" representing the
5178// client's request for the UpdateFunctionEventInvokeConfig operation. The "output" return
5179// value will be populated with the request's response once the request completes
5180// successfully.
5181//
5182// Use "Send" method on the returned Request to send the API call to the service.
5183// the "output" return value is not valid until after Send returns without error.
5184//
5185// See UpdateFunctionEventInvokeConfig for more information on using the UpdateFunctionEventInvokeConfig
5186// API call, and error handling.
5187//
5188// This method is useful when you want to inject custom logic or configuration
5189// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5190//
5191//
5192//    // Example sending a request using the UpdateFunctionEventInvokeConfigRequest method.
5193//    req, resp := client.UpdateFunctionEventInvokeConfigRequest(params)
5194//
5195//    err := req.Send()
5196//    if err == nil { // resp is now filled
5197//        fmt.Println(resp)
5198//    }
5199//
5200// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/UpdateFunctionEventInvokeConfig
5201func (c *Lambda) UpdateFunctionEventInvokeConfigRequest(input *UpdateFunctionEventInvokeConfigInput) (req *request.Request, output *UpdateFunctionEventInvokeConfigOutput) {
5202	op := &request.Operation{
5203		Name:       opUpdateFunctionEventInvokeConfig,
5204		HTTPMethod: "POST",
5205		HTTPPath:   "/2019-09-25/functions/{FunctionName}/event-invoke-config",
5206	}
5207
5208	if input == nil {
5209		input = &UpdateFunctionEventInvokeConfigInput{}
5210	}
5211
5212	output = &UpdateFunctionEventInvokeConfigOutput{}
5213	req = c.newRequest(op, input, output)
5214	return
5215}
5216
5217// UpdateFunctionEventInvokeConfig API operation for AWS Lambda.
5218//
5219// Updates the configuration for asynchronous invocation for a function, version,
5220// or alias.
5221//
5222// To configure options for asynchronous invocation, use PutFunctionEventInvokeConfig.
5223//
5224// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5225// with awserr.Error's Code and Message methods to get detailed information about
5226// the error.
5227//
5228// See the AWS API reference guide for AWS Lambda's
5229// API operation UpdateFunctionEventInvokeConfig for usage and error information.
5230//
5231// Returned Error Types:
5232//   * ServiceException
5233//   The AWS Lambda service encountered an internal error.
5234//
5235//   * ResourceNotFoundException
5236//   The resource specified in the request does not exist.
5237//
5238//   * InvalidParameterValueException
5239//   One of the parameters in the request is invalid.
5240//
5241//   * TooManyRequestsException
5242//   The request throughput limit was exceeded.
5243//
5244// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/UpdateFunctionEventInvokeConfig
5245func (c *Lambda) UpdateFunctionEventInvokeConfig(input *UpdateFunctionEventInvokeConfigInput) (*UpdateFunctionEventInvokeConfigOutput, error) {
5246	req, out := c.UpdateFunctionEventInvokeConfigRequest(input)
5247	return out, req.Send()
5248}
5249
5250// UpdateFunctionEventInvokeConfigWithContext is the same as UpdateFunctionEventInvokeConfig with the addition of
5251// the ability to pass a context and additional request options.
5252//
5253// See UpdateFunctionEventInvokeConfig for details on how to use this API operation.
5254//
5255// The context must be non-nil and will be used for request cancellation. If
5256// the context is nil a panic will occur. In the future the SDK may create
5257// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5258// for more information on using Contexts.
5259func (c *Lambda) UpdateFunctionEventInvokeConfigWithContext(ctx aws.Context, input *UpdateFunctionEventInvokeConfigInput, opts ...request.Option) (*UpdateFunctionEventInvokeConfigOutput, error) {
5260	req, out := c.UpdateFunctionEventInvokeConfigRequest(input)
5261	req.SetContext(ctx)
5262	req.ApplyOptions(opts...)
5263	return out, req.Send()
5264}
5265
5266// Limits that are related to concurrency and storage. All file and storage
5267// sizes are in bytes.
5268type AccountLimit struct {
5269	_ struct{} `type:"structure"`
5270
5271	// The maximum size of a function's deployment package and layers when they're
5272	// extracted.
5273	CodeSizeUnzipped *int64 `type:"long"`
5274
5275	// The maximum size of a deployment package when it's uploaded directly to AWS
5276	// Lambda. Use Amazon S3 for larger files.
5277	CodeSizeZipped *int64 `type:"long"`
5278
5279	// The maximum number of simultaneous function executions.
5280	ConcurrentExecutions *int64 `type:"integer"`
5281
5282	// The amount of storage space that you can use for all deployment packages
5283	// and layer archives.
5284	TotalCodeSize *int64 `type:"long"`
5285
5286	// The maximum number of simultaneous function executions, minus the capacity
5287	// that's reserved for individual functions with PutFunctionConcurrency.
5288	UnreservedConcurrentExecutions *int64 `type:"integer"`
5289}
5290
5291// String returns the string representation
5292func (s AccountLimit) String() string {
5293	return awsutil.Prettify(s)
5294}
5295
5296// GoString returns the string representation
5297func (s AccountLimit) GoString() string {
5298	return s.String()
5299}
5300
5301// SetCodeSizeUnzipped sets the CodeSizeUnzipped field's value.
5302func (s *AccountLimit) SetCodeSizeUnzipped(v int64) *AccountLimit {
5303	s.CodeSizeUnzipped = &v
5304	return s
5305}
5306
5307// SetCodeSizeZipped sets the CodeSizeZipped field's value.
5308func (s *AccountLimit) SetCodeSizeZipped(v int64) *AccountLimit {
5309	s.CodeSizeZipped = &v
5310	return s
5311}
5312
5313// SetConcurrentExecutions sets the ConcurrentExecutions field's value.
5314func (s *AccountLimit) SetConcurrentExecutions(v int64) *AccountLimit {
5315	s.ConcurrentExecutions = &v
5316	return s
5317}
5318
5319// SetTotalCodeSize sets the TotalCodeSize field's value.
5320func (s *AccountLimit) SetTotalCodeSize(v int64) *AccountLimit {
5321	s.TotalCodeSize = &v
5322	return s
5323}
5324
5325// SetUnreservedConcurrentExecutions sets the UnreservedConcurrentExecutions field's value.
5326func (s *AccountLimit) SetUnreservedConcurrentExecutions(v int64) *AccountLimit {
5327	s.UnreservedConcurrentExecutions = &v
5328	return s
5329}
5330
5331// The number of functions and amount of storage in use.
5332type AccountUsage struct {
5333	_ struct{} `type:"structure"`
5334
5335	// The number of Lambda functions.
5336	FunctionCount *int64 `type:"long"`
5337
5338	// The amount of storage space, in bytes, that's being used by deployment packages
5339	// and layer archives.
5340	TotalCodeSize *int64 `type:"long"`
5341}
5342
5343// String returns the string representation
5344func (s AccountUsage) String() string {
5345	return awsutil.Prettify(s)
5346}
5347
5348// GoString returns the string representation
5349func (s AccountUsage) GoString() string {
5350	return s.String()
5351}
5352
5353// SetFunctionCount sets the FunctionCount field's value.
5354func (s *AccountUsage) SetFunctionCount(v int64) *AccountUsage {
5355	s.FunctionCount = &v
5356	return s
5357}
5358
5359// SetTotalCodeSize sets the TotalCodeSize field's value.
5360func (s *AccountUsage) SetTotalCodeSize(v int64) *AccountUsage {
5361	s.TotalCodeSize = &v
5362	return s
5363}
5364
5365type AddLayerVersionPermissionInput struct {
5366	_ struct{} `type:"structure"`
5367
5368	// The API action that grants access to the layer. For example, lambda:GetLayerVersion.
5369	//
5370	// Action is a required field
5371	Action *string `type:"string" required:"true"`
5372
5373	// The name or Amazon Resource Name (ARN) of the layer.
5374	//
5375	// LayerName is a required field
5376	LayerName *string `location:"uri" locationName:"LayerName" min:"1" type:"string" required:"true"`
5377
5378	// With the principal set to *, grant permission to all accounts in the specified
5379	// organization.
5380	OrganizationId *string `type:"string"`
5381
5382	// An account ID, or * to grant permission to all AWS accounts.
5383	//
5384	// Principal is a required field
5385	Principal *string `type:"string" required:"true"`
5386
5387	// Only update the policy if the revision ID matches the ID specified. Use this
5388	// option to avoid modifying a policy that has changed since you last read it.
5389	RevisionId *string `location:"querystring" locationName:"RevisionId" type:"string"`
5390
5391	// An identifier that distinguishes the policy from others on the same layer
5392	// version.
5393	//
5394	// StatementId is a required field
5395	StatementId *string `min:"1" type:"string" required:"true"`
5396
5397	// The version number.
5398	//
5399	// VersionNumber is a required field
5400	VersionNumber *int64 `location:"uri" locationName:"VersionNumber" type:"long" required:"true"`
5401}
5402
5403// String returns the string representation
5404func (s AddLayerVersionPermissionInput) String() string {
5405	return awsutil.Prettify(s)
5406}
5407
5408// GoString returns the string representation
5409func (s AddLayerVersionPermissionInput) GoString() string {
5410	return s.String()
5411}
5412
5413// Validate inspects the fields of the type to determine if they are valid.
5414func (s *AddLayerVersionPermissionInput) Validate() error {
5415	invalidParams := request.ErrInvalidParams{Context: "AddLayerVersionPermissionInput"}
5416	if s.Action == nil {
5417		invalidParams.Add(request.NewErrParamRequired("Action"))
5418	}
5419	if s.LayerName == nil {
5420		invalidParams.Add(request.NewErrParamRequired("LayerName"))
5421	}
5422	if s.LayerName != nil && len(*s.LayerName) < 1 {
5423		invalidParams.Add(request.NewErrParamMinLen("LayerName", 1))
5424	}
5425	if s.Principal == nil {
5426		invalidParams.Add(request.NewErrParamRequired("Principal"))
5427	}
5428	if s.StatementId == nil {
5429		invalidParams.Add(request.NewErrParamRequired("StatementId"))
5430	}
5431	if s.StatementId != nil && len(*s.StatementId) < 1 {
5432		invalidParams.Add(request.NewErrParamMinLen("StatementId", 1))
5433	}
5434	if s.VersionNumber == nil {
5435		invalidParams.Add(request.NewErrParamRequired("VersionNumber"))
5436	}
5437
5438	if invalidParams.Len() > 0 {
5439		return invalidParams
5440	}
5441	return nil
5442}
5443
5444// SetAction sets the Action field's value.
5445func (s *AddLayerVersionPermissionInput) SetAction(v string) *AddLayerVersionPermissionInput {
5446	s.Action = &v
5447	return s
5448}
5449
5450// SetLayerName sets the LayerName field's value.
5451func (s *AddLayerVersionPermissionInput) SetLayerName(v string) *AddLayerVersionPermissionInput {
5452	s.LayerName = &v
5453	return s
5454}
5455
5456// SetOrganizationId sets the OrganizationId field's value.
5457func (s *AddLayerVersionPermissionInput) SetOrganizationId(v string) *AddLayerVersionPermissionInput {
5458	s.OrganizationId = &v
5459	return s
5460}
5461
5462// SetPrincipal sets the Principal field's value.
5463func (s *AddLayerVersionPermissionInput) SetPrincipal(v string) *AddLayerVersionPermissionInput {
5464	s.Principal = &v
5465	return s
5466}
5467
5468// SetRevisionId sets the RevisionId field's value.
5469func (s *AddLayerVersionPermissionInput) SetRevisionId(v string) *AddLayerVersionPermissionInput {
5470	s.RevisionId = &v
5471	return s
5472}
5473
5474// SetStatementId sets the StatementId field's value.
5475func (s *AddLayerVersionPermissionInput) SetStatementId(v string) *AddLayerVersionPermissionInput {
5476	s.StatementId = &v
5477	return s
5478}
5479
5480// SetVersionNumber sets the VersionNumber field's value.
5481func (s *AddLayerVersionPermissionInput) SetVersionNumber(v int64) *AddLayerVersionPermissionInput {
5482	s.VersionNumber = &v
5483	return s
5484}
5485
5486type AddLayerVersionPermissionOutput struct {
5487	_ struct{} `type:"structure"`
5488
5489	// A unique identifier for the current revision of the policy.
5490	RevisionId *string `type:"string"`
5491
5492	// The permission statement.
5493	Statement *string `type:"string"`
5494}
5495
5496// String returns the string representation
5497func (s AddLayerVersionPermissionOutput) String() string {
5498	return awsutil.Prettify(s)
5499}
5500
5501// GoString returns the string representation
5502func (s AddLayerVersionPermissionOutput) GoString() string {
5503	return s.String()
5504}
5505
5506// SetRevisionId sets the RevisionId field's value.
5507func (s *AddLayerVersionPermissionOutput) SetRevisionId(v string) *AddLayerVersionPermissionOutput {
5508	s.RevisionId = &v
5509	return s
5510}
5511
5512// SetStatement sets the Statement field's value.
5513func (s *AddLayerVersionPermissionOutput) SetStatement(v string) *AddLayerVersionPermissionOutput {
5514	s.Statement = &v
5515	return s
5516}
5517
5518type AddPermissionInput struct {
5519	_ struct{} `type:"structure"`
5520
5521	// The action that the principal can use on the function. For example, lambda:InvokeFunction
5522	// or lambda:GetFunction.
5523	//
5524	// Action is a required field
5525	Action *string `type:"string" required:"true"`
5526
5527	// For Alexa Smart Home functions, a token that must be supplied by the invoker.
5528	EventSourceToken *string `type:"string"`
5529
5530	// The name of the Lambda function, version, or alias.
5531	//
5532	// Name formats
5533	//
5534	//    * Function name - my-function (name-only), my-function:v1 (with alias).
5535	//
5536	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
5537	//
5538	//    * Partial ARN - 123456789012:function:my-function.
5539	//
5540	// You can append a version number or alias to any of the formats. The length
5541	// constraint applies only to the full ARN. If you specify only the function
5542	// name, it is limited to 64 characters in length.
5543	//
5544	// FunctionName is a required field
5545	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
5546
5547	// The AWS service or account that invokes the function. If you specify a service,
5548	// use SourceArn or SourceAccount to limit who can invoke the function through
5549	// that service.
5550	//
5551	// Principal is a required field
5552	Principal *string `type:"string" required:"true"`
5553
5554	// Specify a version or alias to add permissions to a published version of the
5555	// function.
5556	Qualifier *string `location:"querystring" locationName:"Qualifier" min:"1" type:"string"`
5557
5558	// Only update the policy if the revision ID matches the ID that's specified.
5559	// Use this option to avoid modifying a policy that has changed since you last
5560	// read it.
5561	RevisionId *string `type:"string"`
5562
5563	// For Amazon S3, the ID of the account that owns the resource. Use this together
5564	// with SourceArn to ensure that the resource is owned by the specified account.
5565	// It is possible for an Amazon S3 bucket to be deleted by its owner and recreated
5566	// by another account.
5567	SourceAccount *string `type:"string"`
5568
5569	// For AWS services, the ARN of the AWS resource that invokes the function.
5570	// For example, an Amazon S3 bucket or Amazon SNS topic.
5571	SourceArn *string `type:"string"`
5572
5573	// A statement identifier that differentiates the statement from others in the
5574	// same policy.
5575	//
5576	// StatementId is a required field
5577	StatementId *string `min:"1" type:"string" required:"true"`
5578}
5579
5580// String returns the string representation
5581func (s AddPermissionInput) String() string {
5582	return awsutil.Prettify(s)
5583}
5584
5585// GoString returns the string representation
5586func (s AddPermissionInput) GoString() string {
5587	return s.String()
5588}
5589
5590// Validate inspects the fields of the type to determine if they are valid.
5591func (s *AddPermissionInput) Validate() error {
5592	invalidParams := request.ErrInvalidParams{Context: "AddPermissionInput"}
5593	if s.Action == nil {
5594		invalidParams.Add(request.NewErrParamRequired("Action"))
5595	}
5596	if s.FunctionName == nil {
5597		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
5598	}
5599	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
5600		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
5601	}
5602	if s.Principal == nil {
5603		invalidParams.Add(request.NewErrParamRequired("Principal"))
5604	}
5605	if s.Qualifier != nil && len(*s.Qualifier) < 1 {
5606		invalidParams.Add(request.NewErrParamMinLen("Qualifier", 1))
5607	}
5608	if s.StatementId == nil {
5609		invalidParams.Add(request.NewErrParamRequired("StatementId"))
5610	}
5611	if s.StatementId != nil && len(*s.StatementId) < 1 {
5612		invalidParams.Add(request.NewErrParamMinLen("StatementId", 1))
5613	}
5614
5615	if invalidParams.Len() > 0 {
5616		return invalidParams
5617	}
5618	return nil
5619}
5620
5621// SetAction sets the Action field's value.
5622func (s *AddPermissionInput) SetAction(v string) *AddPermissionInput {
5623	s.Action = &v
5624	return s
5625}
5626
5627// SetEventSourceToken sets the EventSourceToken field's value.
5628func (s *AddPermissionInput) SetEventSourceToken(v string) *AddPermissionInput {
5629	s.EventSourceToken = &v
5630	return s
5631}
5632
5633// SetFunctionName sets the FunctionName field's value.
5634func (s *AddPermissionInput) SetFunctionName(v string) *AddPermissionInput {
5635	s.FunctionName = &v
5636	return s
5637}
5638
5639// SetPrincipal sets the Principal field's value.
5640func (s *AddPermissionInput) SetPrincipal(v string) *AddPermissionInput {
5641	s.Principal = &v
5642	return s
5643}
5644
5645// SetQualifier sets the Qualifier field's value.
5646func (s *AddPermissionInput) SetQualifier(v string) *AddPermissionInput {
5647	s.Qualifier = &v
5648	return s
5649}
5650
5651// SetRevisionId sets the RevisionId field's value.
5652func (s *AddPermissionInput) SetRevisionId(v string) *AddPermissionInput {
5653	s.RevisionId = &v
5654	return s
5655}
5656
5657// SetSourceAccount sets the SourceAccount field's value.
5658func (s *AddPermissionInput) SetSourceAccount(v string) *AddPermissionInput {
5659	s.SourceAccount = &v
5660	return s
5661}
5662
5663// SetSourceArn sets the SourceArn field's value.
5664func (s *AddPermissionInput) SetSourceArn(v string) *AddPermissionInput {
5665	s.SourceArn = &v
5666	return s
5667}
5668
5669// SetStatementId sets the StatementId field's value.
5670func (s *AddPermissionInput) SetStatementId(v string) *AddPermissionInput {
5671	s.StatementId = &v
5672	return s
5673}
5674
5675type AddPermissionOutput struct {
5676	_ struct{} `type:"structure"`
5677
5678	// The permission statement that's added to the function policy.
5679	Statement *string `type:"string"`
5680}
5681
5682// String returns the string representation
5683func (s AddPermissionOutput) String() string {
5684	return awsutil.Prettify(s)
5685}
5686
5687// GoString returns the string representation
5688func (s AddPermissionOutput) GoString() string {
5689	return s.String()
5690}
5691
5692// SetStatement sets the Statement field's value.
5693func (s *AddPermissionOutput) SetStatement(v string) *AddPermissionOutput {
5694	s.Statement = &v
5695	return s
5696}
5697
5698// Provides configuration information about a Lambda function alias (https://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html).
5699type AliasConfiguration struct {
5700	_ struct{} `type:"structure"`
5701
5702	// The Amazon Resource Name (ARN) of the alias.
5703	AliasArn *string `type:"string"`
5704
5705	// A description of the alias.
5706	Description *string `type:"string"`
5707
5708	// The function version that the alias invokes.
5709	FunctionVersion *string `min:"1" type:"string"`
5710
5711	// The name of the alias.
5712	Name *string `min:"1" type:"string"`
5713
5714	// A unique identifier that changes when you update the alias.
5715	RevisionId *string `type:"string"`
5716
5717	// The routing configuration (https://docs.aws.amazon.com/lambda/latest/dg/lambda-traffic-shifting-using-aliases.html)
5718	// of the alias.
5719	RoutingConfig *AliasRoutingConfiguration `type:"structure"`
5720}
5721
5722// String returns the string representation
5723func (s AliasConfiguration) String() string {
5724	return awsutil.Prettify(s)
5725}
5726
5727// GoString returns the string representation
5728func (s AliasConfiguration) GoString() string {
5729	return s.String()
5730}
5731
5732// SetAliasArn sets the AliasArn field's value.
5733func (s *AliasConfiguration) SetAliasArn(v string) *AliasConfiguration {
5734	s.AliasArn = &v
5735	return s
5736}
5737
5738// SetDescription sets the Description field's value.
5739func (s *AliasConfiguration) SetDescription(v string) *AliasConfiguration {
5740	s.Description = &v
5741	return s
5742}
5743
5744// SetFunctionVersion sets the FunctionVersion field's value.
5745func (s *AliasConfiguration) SetFunctionVersion(v string) *AliasConfiguration {
5746	s.FunctionVersion = &v
5747	return s
5748}
5749
5750// SetName sets the Name field's value.
5751func (s *AliasConfiguration) SetName(v string) *AliasConfiguration {
5752	s.Name = &v
5753	return s
5754}
5755
5756// SetRevisionId sets the RevisionId field's value.
5757func (s *AliasConfiguration) SetRevisionId(v string) *AliasConfiguration {
5758	s.RevisionId = &v
5759	return s
5760}
5761
5762// SetRoutingConfig sets the RoutingConfig field's value.
5763func (s *AliasConfiguration) SetRoutingConfig(v *AliasRoutingConfiguration) *AliasConfiguration {
5764	s.RoutingConfig = v
5765	return s
5766}
5767
5768// The traffic-shifting (https://docs.aws.amazon.com/lambda/latest/dg/lambda-traffic-shifting-using-aliases.html)
5769// configuration of a Lambda function alias.
5770type AliasRoutingConfiguration struct {
5771	_ struct{} `type:"structure"`
5772
5773	// The second version, and the percentage of traffic that's routed to it.
5774	AdditionalVersionWeights map[string]*float64 `type:"map"`
5775}
5776
5777// String returns the string representation
5778func (s AliasRoutingConfiguration) String() string {
5779	return awsutil.Prettify(s)
5780}
5781
5782// GoString returns the string representation
5783func (s AliasRoutingConfiguration) GoString() string {
5784	return s.String()
5785}
5786
5787// SetAdditionalVersionWeights sets the AdditionalVersionWeights field's value.
5788func (s *AliasRoutingConfiguration) SetAdditionalVersionWeights(v map[string]*float64) *AliasRoutingConfiguration {
5789	s.AdditionalVersionWeights = v
5790	return s
5791}
5792
5793// You have exceeded your maximum total code size per account. Learn more (https://docs.aws.amazon.com/lambda/latest/dg/limits.html)
5794type CodeStorageExceededException struct {
5795	_            struct{}                  `type:"structure"`
5796	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
5797
5798	Message_ *string `locationName:"message" type:"string"`
5799
5800	// The exception type.
5801	Type *string `type:"string"`
5802}
5803
5804// String returns the string representation
5805func (s CodeStorageExceededException) String() string {
5806	return awsutil.Prettify(s)
5807}
5808
5809// GoString returns the string representation
5810func (s CodeStorageExceededException) GoString() string {
5811	return s.String()
5812}
5813
5814func newErrorCodeStorageExceededException(v protocol.ResponseMetadata) error {
5815	return &CodeStorageExceededException{
5816		RespMetadata: v,
5817	}
5818}
5819
5820// Code returns the exception type name.
5821func (s *CodeStorageExceededException) Code() string {
5822	return "CodeStorageExceededException"
5823}
5824
5825// Message returns the exception's message.
5826func (s *CodeStorageExceededException) Message() string {
5827	if s.Message_ != nil {
5828		return *s.Message_
5829	}
5830	return ""
5831}
5832
5833// OrigErr always returns nil, satisfies awserr.Error interface.
5834func (s *CodeStorageExceededException) OrigErr() error {
5835	return nil
5836}
5837
5838func (s *CodeStorageExceededException) Error() string {
5839	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
5840}
5841
5842// Status code returns the HTTP status code for the request's response error.
5843func (s *CodeStorageExceededException) StatusCode() int {
5844	return s.RespMetadata.StatusCode
5845}
5846
5847// RequestID returns the service's response RequestID for request.
5848func (s *CodeStorageExceededException) RequestID() string {
5849	return s.RespMetadata.RequestID
5850}
5851
5852type CreateAliasInput struct {
5853	_ struct{} `type:"structure"`
5854
5855	// A description of the alias.
5856	Description *string `type:"string"`
5857
5858	// The name of the Lambda function.
5859	//
5860	// Name formats
5861	//
5862	//    * Function name - MyFunction.
5863	//
5864	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.
5865	//
5866	//    * Partial ARN - 123456789012:function:MyFunction.
5867	//
5868	// The length constraint applies only to the full ARN. If you specify only the
5869	// function name, it is limited to 64 characters in length.
5870	//
5871	// FunctionName is a required field
5872	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
5873
5874	// The function version that the alias invokes.
5875	//
5876	// FunctionVersion is a required field
5877	FunctionVersion *string `min:"1" type:"string" required:"true"`
5878
5879	// The name of the alias.
5880	//
5881	// Name is a required field
5882	Name *string `min:"1" type:"string" required:"true"`
5883
5884	// The routing configuration (https://docs.aws.amazon.com/lambda/latest/dg/configuration-aliases.html#configuring-alias-routing)
5885	// of the alias.
5886	RoutingConfig *AliasRoutingConfiguration `type:"structure"`
5887}
5888
5889// String returns the string representation
5890func (s CreateAliasInput) String() string {
5891	return awsutil.Prettify(s)
5892}
5893
5894// GoString returns the string representation
5895func (s CreateAliasInput) GoString() string {
5896	return s.String()
5897}
5898
5899// Validate inspects the fields of the type to determine if they are valid.
5900func (s *CreateAliasInput) Validate() error {
5901	invalidParams := request.ErrInvalidParams{Context: "CreateAliasInput"}
5902	if s.FunctionName == nil {
5903		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
5904	}
5905	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
5906		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
5907	}
5908	if s.FunctionVersion == nil {
5909		invalidParams.Add(request.NewErrParamRequired("FunctionVersion"))
5910	}
5911	if s.FunctionVersion != nil && len(*s.FunctionVersion) < 1 {
5912		invalidParams.Add(request.NewErrParamMinLen("FunctionVersion", 1))
5913	}
5914	if s.Name == nil {
5915		invalidParams.Add(request.NewErrParamRequired("Name"))
5916	}
5917	if s.Name != nil && len(*s.Name) < 1 {
5918		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
5919	}
5920
5921	if invalidParams.Len() > 0 {
5922		return invalidParams
5923	}
5924	return nil
5925}
5926
5927// SetDescription sets the Description field's value.
5928func (s *CreateAliasInput) SetDescription(v string) *CreateAliasInput {
5929	s.Description = &v
5930	return s
5931}
5932
5933// SetFunctionName sets the FunctionName field's value.
5934func (s *CreateAliasInput) SetFunctionName(v string) *CreateAliasInput {
5935	s.FunctionName = &v
5936	return s
5937}
5938
5939// SetFunctionVersion sets the FunctionVersion field's value.
5940func (s *CreateAliasInput) SetFunctionVersion(v string) *CreateAliasInput {
5941	s.FunctionVersion = &v
5942	return s
5943}
5944
5945// SetName sets the Name field's value.
5946func (s *CreateAliasInput) SetName(v string) *CreateAliasInput {
5947	s.Name = &v
5948	return s
5949}
5950
5951// SetRoutingConfig sets the RoutingConfig field's value.
5952func (s *CreateAliasInput) SetRoutingConfig(v *AliasRoutingConfiguration) *CreateAliasInput {
5953	s.RoutingConfig = v
5954	return s
5955}
5956
5957type CreateEventSourceMappingInput struct {
5958	_ struct{} `type:"structure"`
5959
5960	// The maximum number of items to retrieve in a single batch.
5961	//
5962	//    * Amazon Kinesis - Default 100. Max 10,000.
5963	//
5964	//    * Amazon DynamoDB Streams - Default 100. Max 1,000.
5965	//
5966	//    * Amazon Simple Queue Service - Default 10. Max 10.
5967	BatchSize *int64 `min:"1" type:"integer"`
5968
5969	// (Streams) If the function returns an error, split the batch in two and retry.
5970	BisectBatchOnFunctionError *bool `type:"boolean"`
5971
5972	// (Streams) An Amazon SQS queue or Amazon SNS topic destination for discarded
5973	// records.
5974	DestinationConfig *DestinationConfig `type:"structure"`
5975
5976	// Disables the event source mapping to pause polling and invocation.
5977	Enabled *bool `type:"boolean"`
5978
5979	// The Amazon Resource Name (ARN) of the event source.
5980	//
5981	//    * Amazon Kinesis - The ARN of the data stream or a stream consumer.
5982	//
5983	//    * Amazon DynamoDB Streams - The ARN of the stream.
5984	//
5985	//    * Amazon Simple Queue Service - The ARN of the queue.
5986	//
5987	// EventSourceArn is a required field
5988	EventSourceArn *string `type:"string" required:"true"`
5989
5990	// The name of the Lambda function.
5991	//
5992	// Name formats
5993	//
5994	//    * Function name - MyFunction.
5995	//
5996	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.
5997	//
5998	//    * Version or Alias ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction:PROD.
5999	//
6000	//    * Partial ARN - 123456789012:function:MyFunction.
6001	//
6002	// The length constraint applies only to the full ARN. If you specify only the
6003	// function name, it's limited to 64 characters in length.
6004	//
6005	// FunctionName is a required field
6006	FunctionName *string `min:"1" type:"string" required:"true"`
6007
6008	// (Streams) The maximum amount of time to gather records before invoking the
6009	// function, in seconds.
6010	MaximumBatchingWindowInSeconds *int64 `type:"integer"`
6011
6012	// (Streams) The maximum age of a record that Lambda sends to a function for
6013	// processing.
6014	MaximumRecordAgeInSeconds *int64 `min:"60" type:"integer"`
6015
6016	// (Streams) The maximum number of times to retry when the function returns
6017	// an error.
6018	MaximumRetryAttempts *int64 `type:"integer"`
6019
6020	// (Streams) The number of batches to process from each shard concurrently.
6021	ParallelizationFactor *int64 `min:"1" type:"integer"`
6022
6023	// The position in a stream from which to start reading. Required for Amazon
6024	// Kinesis and Amazon DynamoDB Streams sources. AT_TIMESTAMP is only supported
6025	// for Amazon Kinesis streams.
6026	StartingPosition *string `type:"string" enum:"EventSourcePosition"`
6027
6028	// With StartingPosition set to AT_TIMESTAMP, the time from which to start reading.
6029	StartingPositionTimestamp *time.Time `type:"timestamp"`
6030}
6031
6032// String returns the string representation
6033func (s CreateEventSourceMappingInput) String() string {
6034	return awsutil.Prettify(s)
6035}
6036
6037// GoString returns the string representation
6038func (s CreateEventSourceMappingInput) GoString() string {
6039	return s.String()
6040}
6041
6042// Validate inspects the fields of the type to determine if they are valid.
6043func (s *CreateEventSourceMappingInput) Validate() error {
6044	invalidParams := request.ErrInvalidParams{Context: "CreateEventSourceMappingInput"}
6045	if s.BatchSize != nil && *s.BatchSize < 1 {
6046		invalidParams.Add(request.NewErrParamMinValue("BatchSize", 1))
6047	}
6048	if s.EventSourceArn == nil {
6049		invalidParams.Add(request.NewErrParamRequired("EventSourceArn"))
6050	}
6051	if s.FunctionName == nil {
6052		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
6053	}
6054	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
6055		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
6056	}
6057	if s.MaximumRecordAgeInSeconds != nil && *s.MaximumRecordAgeInSeconds < 60 {
6058		invalidParams.Add(request.NewErrParamMinValue("MaximumRecordAgeInSeconds", 60))
6059	}
6060	if s.ParallelizationFactor != nil && *s.ParallelizationFactor < 1 {
6061		invalidParams.Add(request.NewErrParamMinValue("ParallelizationFactor", 1))
6062	}
6063
6064	if invalidParams.Len() > 0 {
6065		return invalidParams
6066	}
6067	return nil
6068}
6069
6070// SetBatchSize sets the BatchSize field's value.
6071func (s *CreateEventSourceMappingInput) SetBatchSize(v int64) *CreateEventSourceMappingInput {
6072	s.BatchSize = &v
6073	return s
6074}
6075
6076// SetBisectBatchOnFunctionError sets the BisectBatchOnFunctionError field's value.
6077func (s *CreateEventSourceMappingInput) SetBisectBatchOnFunctionError(v bool) *CreateEventSourceMappingInput {
6078	s.BisectBatchOnFunctionError = &v
6079	return s
6080}
6081
6082// SetDestinationConfig sets the DestinationConfig field's value.
6083func (s *CreateEventSourceMappingInput) SetDestinationConfig(v *DestinationConfig) *CreateEventSourceMappingInput {
6084	s.DestinationConfig = v
6085	return s
6086}
6087
6088// SetEnabled sets the Enabled field's value.
6089func (s *CreateEventSourceMappingInput) SetEnabled(v bool) *CreateEventSourceMappingInput {
6090	s.Enabled = &v
6091	return s
6092}
6093
6094// SetEventSourceArn sets the EventSourceArn field's value.
6095func (s *CreateEventSourceMappingInput) SetEventSourceArn(v string) *CreateEventSourceMappingInput {
6096	s.EventSourceArn = &v
6097	return s
6098}
6099
6100// SetFunctionName sets the FunctionName field's value.
6101func (s *CreateEventSourceMappingInput) SetFunctionName(v string) *CreateEventSourceMappingInput {
6102	s.FunctionName = &v
6103	return s
6104}
6105
6106// SetMaximumBatchingWindowInSeconds sets the MaximumBatchingWindowInSeconds field's value.
6107func (s *CreateEventSourceMappingInput) SetMaximumBatchingWindowInSeconds(v int64) *CreateEventSourceMappingInput {
6108	s.MaximumBatchingWindowInSeconds = &v
6109	return s
6110}
6111
6112// SetMaximumRecordAgeInSeconds sets the MaximumRecordAgeInSeconds field's value.
6113func (s *CreateEventSourceMappingInput) SetMaximumRecordAgeInSeconds(v int64) *CreateEventSourceMappingInput {
6114	s.MaximumRecordAgeInSeconds = &v
6115	return s
6116}
6117
6118// SetMaximumRetryAttempts sets the MaximumRetryAttempts field's value.
6119func (s *CreateEventSourceMappingInput) SetMaximumRetryAttempts(v int64) *CreateEventSourceMappingInput {
6120	s.MaximumRetryAttempts = &v
6121	return s
6122}
6123
6124// SetParallelizationFactor sets the ParallelizationFactor field's value.
6125func (s *CreateEventSourceMappingInput) SetParallelizationFactor(v int64) *CreateEventSourceMappingInput {
6126	s.ParallelizationFactor = &v
6127	return s
6128}
6129
6130// SetStartingPosition sets the StartingPosition field's value.
6131func (s *CreateEventSourceMappingInput) SetStartingPosition(v string) *CreateEventSourceMappingInput {
6132	s.StartingPosition = &v
6133	return s
6134}
6135
6136// SetStartingPositionTimestamp sets the StartingPositionTimestamp field's value.
6137func (s *CreateEventSourceMappingInput) SetStartingPositionTimestamp(v time.Time) *CreateEventSourceMappingInput {
6138	s.StartingPositionTimestamp = &v
6139	return s
6140}
6141
6142type CreateFunctionInput struct {
6143	_ struct{} `type:"structure"`
6144
6145	// The code for the function.
6146	//
6147	// Code is a required field
6148	Code *FunctionCode `type:"structure" required:"true"`
6149
6150	// A dead letter queue configuration that specifies the queue or topic where
6151	// Lambda sends asynchronous events when they fail processing. For more information,
6152	// see Dead Letter Queues (https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html#dlq).
6153	DeadLetterConfig *DeadLetterConfig `type:"structure"`
6154
6155	// A description of the function.
6156	Description *string `type:"string"`
6157
6158	// Environment variables that are accessible from function code during execution.
6159	Environment *Environment `type:"structure"`
6160
6161	// Connection settings for an Amazon EFS file system.
6162	FileSystemConfigs []*FileSystemConfig `type:"list"`
6163
6164	// The name of the Lambda function.
6165	//
6166	// Name formats
6167	//
6168	//    * Function name - my-function.
6169	//
6170	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
6171	//
6172	//    * Partial ARN - 123456789012:function:my-function.
6173	//
6174	// The length constraint applies only to the full ARN. If you specify only the
6175	// function name, it is limited to 64 characters in length.
6176	//
6177	// FunctionName is a required field
6178	FunctionName *string `min:"1" type:"string" required:"true"`
6179
6180	// The name of the method within your code that Lambda calls to execute your
6181	// function. The format includes the file name. It can also include namespaces
6182	// and other qualifiers, depending on the runtime. For more information, see
6183	// Programming Model (https://docs.aws.amazon.com/lambda/latest/dg/programming-model-v2.html).
6184	//
6185	// Handler is a required field
6186	Handler *string `type:"string" required:"true"`
6187
6188	// The ARN of the AWS Key Management Service (AWS KMS) key that's used to encrypt
6189	// your function's environment variables. If it's not provided, AWS Lambda uses
6190	// a default service key.
6191	KMSKeyArn *string `type:"string"`
6192
6193	// A list of function layers (https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html)
6194	// to add to the function's execution environment. Specify each layer by its
6195	// ARN, including the version.
6196	Layers []*string `type:"list"`
6197
6198	// The amount of memory that your function has access to. Increasing the function's
6199	// memory also increases its CPU allocation. The default value is 128 MB. The
6200	// value must be a multiple of 64 MB.
6201	MemorySize *int64 `min:"128" type:"integer"`
6202
6203	// Set to true to publish the first version of the function during creation.
6204	Publish *bool `type:"boolean"`
6205
6206	// The Amazon Resource Name (ARN) of the function's execution role.
6207	//
6208	// Role is a required field
6209	Role *string `type:"string" required:"true"`
6210
6211	// The identifier of the function's runtime (https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html).
6212	//
6213	// Runtime is a required field
6214	Runtime *string `type:"string" required:"true" enum:"Runtime"`
6215
6216	// A list of tags (https://docs.aws.amazon.com/lambda/latest/dg/tagging.html)
6217	// to apply to the function.
6218	Tags map[string]*string `type:"map"`
6219
6220	// The amount of time that Lambda allows a function to run before stopping it.
6221	// The default is 3 seconds. The maximum allowed value is 900 seconds.
6222	Timeout *int64 `min:"1" type:"integer"`
6223
6224	// Set Mode to Active to sample and trace a subset of incoming requests with
6225	// AWS X-Ray.
6226	TracingConfig *TracingConfig `type:"structure"`
6227
6228	// For network connectivity to AWS resources in a VPC, specify a list of security
6229	// groups and subnets in the VPC. When you connect a function to a VPC, it can
6230	// only access resources and the internet through that VPC. For more information,
6231	// see VPC Settings (https://docs.aws.amazon.com/lambda/latest/dg/configuration-vpc.html).
6232	VpcConfig *VpcConfig `type:"structure"`
6233}
6234
6235// String returns the string representation
6236func (s CreateFunctionInput) String() string {
6237	return awsutil.Prettify(s)
6238}
6239
6240// GoString returns the string representation
6241func (s CreateFunctionInput) GoString() string {
6242	return s.String()
6243}
6244
6245// Validate inspects the fields of the type to determine if they are valid.
6246func (s *CreateFunctionInput) Validate() error {
6247	invalidParams := request.ErrInvalidParams{Context: "CreateFunctionInput"}
6248	if s.Code == nil {
6249		invalidParams.Add(request.NewErrParamRequired("Code"))
6250	}
6251	if s.FunctionName == nil {
6252		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
6253	}
6254	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
6255		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
6256	}
6257	if s.Handler == nil {
6258		invalidParams.Add(request.NewErrParamRequired("Handler"))
6259	}
6260	if s.MemorySize != nil && *s.MemorySize < 128 {
6261		invalidParams.Add(request.NewErrParamMinValue("MemorySize", 128))
6262	}
6263	if s.Role == nil {
6264		invalidParams.Add(request.NewErrParamRequired("Role"))
6265	}
6266	if s.Runtime == nil {
6267		invalidParams.Add(request.NewErrParamRequired("Runtime"))
6268	}
6269	if s.Timeout != nil && *s.Timeout < 1 {
6270		invalidParams.Add(request.NewErrParamMinValue("Timeout", 1))
6271	}
6272	if s.Code != nil {
6273		if err := s.Code.Validate(); err != nil {
6274			invalidParams.AddNested("Code", err.(request.ErrInvalidParams))
6275		}
6276	}
6277	if s.FileSystemConfigs != nil {
6278		for i, v := range s.FileSystemConfigs {
6279			if v == nil {
6280				continue
6281			}
6282			if err := v.Validate(); err != nil {
6283				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "FileSystemConfigs", i), err.(request.ErrInvalidParams))
6284			}
6285		}
6286	}
6287
6288	if invalidParams.Len() > 0 {
6289		return invalidParams
6290	}
6291	return nil
6292}
6293
6294// SetCode sets the Code field's value.
6295func (s *CreateFunctionInput) SetCode(v *FunctionCode) *CreateFunctionInput {
6296	s.Code = v
6297	return s
6298}
6299
6300// SetDeadLetterConfig sets the DeadLetterConfig field's value.
6301func (s *CreateFunctionInput) SetDeadLetterConfig(v *DeadLetterConfig) *CreateFunctionInput {
6302	s.DeadLetterConfig = v
6303	return s
6304}
6305
6306// SetDescription sets the Description field's value.
6307func (s *CreateFunctionInput) SetDescription(v string) *CreateFunctionInput {
6308	s.Description = &v
6309	return s
6310}
6311
6312// SetEnvironment sets the Environment field's value.
6313func (s *CreateFunctionInput) SetEnvironment(v *Environment) *CreateFunctionInput {
6314	s.Environment = v
6315	return s
6316}
6317
6318// SetFileSystemConfigs sets the FileSystemConfigs field's value.
6319func (s *CreateFunctionInput) SetFileSystemConfigs(v []*FileSystemConfig) *CreateFunctionInput {
6320	s.FileSystemConfigs = v
6321	return s
6322}
6323
6324// SetFunctionName sets the FunctionName field's value.
6325func (s *CreateFunctionInput) SetFunctionName(v string) *CreateFunctionInput {
6326	s.FunctionName = &v
6327	return s
6328}
6329
6330// SetHandler sets the Handler field's value.
6331func (s *CreateFunctionInput) SetHandler(v string) *CreateFunctionInput {
6332	s.Handler = &v
6333	return s
6334}
6335
6336// SetKMSKeyArn sets the KMSKeyArn field's value.
6337func (s *CreateFunctionInput) SetKMSKeyArn(v string) *CreateFunctionInput {
6338	s.KMSKeyArn = &v
6339	return s
6340}
6341
6342// SetLayers sets the Layers field's value.
6343func (s *CreateFunctionInput) SetLayers(v []*string) *CreateFunctionInput {
6344	s.Layers = v
6345	return s
6346}
6347
6348// SetMemorySize sets the MemorySize field's value.
6349func (s *CreateFunctionInput) SetMemorySize(v int64) *CreateFunctionInput {
6350	s.MemorySize = &v
6351	return s
6352}
6353
6354// SetPublish sets the Publish field's value.
6355func (s *CreateFunctionInput) SetPublish(v bool) *CreateFunctionInput {
6356	s.Publish = &v
6357	return s
6358}
6359
6360// SetRole sets the Role field's value.
6361func (s *CreateFunctionInput) SetRole(v string) *CreateFunctionInput {
6362	s.Role = &v
6363	return s
6364}
6365
6366// SetRuntime sets the Runtime field's value.
6367func (s *CreateFunctionInput) SetRuntime(v string) *CreateFunctionInput {
6368	s.Runtime = &v
6369	return s
6370}
6371
6372// SetTags sets the Tags field's value.
6373func (s *CreateFunctionInput) SetTags(v map[string]*string) *CreateFunctionInput {
6374	s.Tags = v
6375	return s
6376}
6377
6378// SetTimeout sets the Timeout field's value.
6379func (s *CreateFunctionInput) SetTimeout(v int64) *CreateFunctionInput {
6380	s.Timeout = &v
6381	return s
6382}
6383
6384// SetTracingConfig sets the TracingConfig field's value.
6385func (s *CreateFunctionInput) SetTracingConfig(v *TracingConfig) *CreateFunctionInput {
6386	s.TracingConfig = v
6387	return s
6388}
6389
6390// SetVpcConfig sets the VpcConfig field's value.
6391func (s *CreateFunctionInput) SetVpcConfig(v *VpcConfig) *CreateFunctionInput {
6392	s.VpcConfig = v
6393	return s
6394}
6395
6396// The dead-letter queue (https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html#dlq)
6397// for failed asynchronous invocations.
6398type DeadLetterConfig struct {
6399	_ struct{} `type:"structure"`
6400
6401	// The Amazon Resource Name (ARN) of an Amazon SQS queue or Amazon SNS topic.
6402	TargetArn *string `type:"string"`
6403}
6404
6405// String returns the string representation
6406func (s DeadLetterConfig) String() string {
6407	return awsutil.Prettify(s)
6408}
6409
6410// GoString returns the string representation
6411func (s DeadLetterConfig) GoString() string {
6412	return s.String()
6413}
6414
6415// SetTargetArn sets the TargetArn field's value.
6416func (s *DeadLetterConfig) SetTargetArn(v string) *DeadLetterConfig {
6417	s.TargetArn = &v
6418	return s
6419}
6420
6421type DeleteAliasInput struct {
6422	_ struct{} `type:"structure"`
6423
6424	// The name of the Lambda function.
6425	//
6426	// Name formats
6427	//
6428	//    * Function name - MyFunction.
6429	//
6430	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.
6431	//
6432	//    * Partial ARN - 123456789012:function:MyFunction.
6433	//
6434	// The length constraint applies only to the full ARN. If you specify only the
6435	// function name, it is limited to 64 characters in length.
6436	//
6437	// FunctionName is a required field
6438	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
6439
6440	// The name of the alias.
6441	//
6442	// Name is a required field
6443	Name *string `location:"uri" locationName:"Name" min:"1" type:"string" required:"true"`
6444}
6445
6446// String returns the string representation
6447func (s DeleteAliasInput) String() string {
6448	return awsutil.Prettify(s)
6449}
6450
6451// GoString returns the string representation
6452func (s DeleteAliasInput) GoString() string {
6453	return s.String()
6454}
6455
6456// Validate inspects the fields of the type to determine if they are valid.
6457func (s *DeleteAliasInput) Validate() error {
6458	invalidParams := request.ErrInvalidParams{Context: "DeleteAliasInput"}
6459	if s.FunctionName == nil {
6460		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
6461	}
6462	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
6463		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
6464	}
6465	if s.Name == nil {
6466		invalidParams.Add(request.NewErrParamRequired("Name"))
6467	}
6468	if s.Name != nil && len(*s.Name) < 1 {
6469		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
6470	}
6471
6472	if invalidParams.Len() > 0 {
6473		return invalidParams
6474	}
6475	return nil
6476}
6477
6478// SetFunctionName sets the FunctionName field's value.
6479func (s *DeleteAliasInput) SetFunctionName(v string) *DeleteAliasInput {
6480	s.FunctionName = &v
6481	return s
6482}
6483
6484// SetName sets the Name field's value.
6485func (s *DeleteAliasInput) SetName(v string) *DeleteAliasInput {
6486	s.Name = &v
6487	return s
6488}
6489
6490type DeleteAliasOutput struct {
6491	_ struct{} `type:"structure"`
6492}
6493
6494// String returns the string representation
6495func (s DeleteAliasOutput) String() string {
6496	return awsutil.Prettify(s)
6497}
6498
6499// GoString returns the string representation
6500func (s DeleteAliasOutput) GoString() string {
6501	return s.String()
6502}
6503
6504type DeleteEventSourceMappingInput struct {
6505	_ struct{} `type:"structure"`
6506
6507	// The identifier of the event source mapping.
6508	//
6509	// UUID is a required field
6510	UUID *string `location:"uri" locationName:"UUID" type:"string" required:"true"`
6511}
6512
6513// String returns the string representation
6514func (s DeleteEventSourceMappingInput) String() string {
6515	return awsutil.Prettify(s)
6516}
6517
6518// GoString returns the string representation
6519func (s DeleteEventSourceMappingInput) GoString() string {
6520	return s.String()
6521}
6522
6523// Validate inspects the fields of the type to determine if they are valid.
6524func (s *DeleteEventSourceMappingInput) Validate() error {
6525	invalidParams := request.ErrInvalidParams{Context: "DeleteEventSourceMappingInput"}
6526	if s.UUID == nil {
6527		invalidParams.Add(request.NewErrParamRequired("UUID"))
6528	}
6529	if s.UUID != nil && len(*s.UUID) < 1 {
6530		invalidParams.Add(request.NewErrParamMinLen("UUID", 1))
6531	}
6532
6533	if invalidParams.Len() > 0 {
6534		return invalidParams
6535	}
6536	return nil
6537}
6538
6539// SetUUID sets the UUID field's value.
6540func (s *DeleteEventSourceMappingInput) SetUUID(v string) *DeleteEventSourceMappingInput {
6541	s.UUID = &v
6542	return s
6543}
6544
6545type DeleteFunctionConcurrencyInput struct {
6546	_ struct{} `type:"structure"`
6547
6548	// The name of the Lambda function.
6549	//
6550	// Name formats
6551	//
6552	//    * Function name - my-function.
6553	//
6554	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
6555	//
6556	//    * Partial ARN - 123456789012:function:my-function.
6557	//
6558	// The length constraint applies only to the full ARN. If you specify only the
6559	// function name, it is limited to 64 characters in length.
6560	//
6561	// FunctionName is a required field
6562	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
6563}
6564
6565// String returns the string representation
6566func (s DeleteFunctionConcurrencyInput) String() string {
6567	return awsutil.Prettify(s)
6568}
6569
6570// GoString returns the string representation
6571func (s DeleteFunctionConcurrencyInput) GoString() string {
6572	return s.String()
6573}
6574
6575// Validate inspects the fields of the type to determine if they are valid.
6576func (s *DeleteFunctionConcurrencyInput) Validate() error {
6577	invalidParams := request.ErrInvalidParams{Context: "DeleteFunctionConcurrencyInput"}
6578	if s.FunctionName == nil {
6579		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
6580	}
6581	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
6582		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
6583	}
6584
6585	if invalidParams.Len() > 0 {
6586		return invalidParams
6587	}
6588	return nil
6589}
6590
6591// SetFunctionName sets the FunctionName field's value.
6592func (s *DeleteFunctionConcurrencyInput) SetFunctionName(v string) *DeleteFunctionConcurrencyInput {
6593	s.FunctionName = &v
6594	return s
6595}
6596
6597type DeleteFunctionConcurrencyOutput struct {
6598	_ struct{} `type:"structure"`
6599}
6600
6601// String returns the string representation
6602func (s DeleteFunctionConcurrencyOutput) String() string {
6603	return awsutil.Prettify(s)
6604}
6605
6606// GoString returns the string representation
6607func (s DeleteFunctionConcurrencyOutput) GoString() string {
6608	return s.String()
6609}
6610
6611type DeleteFunctionEventInvokeConfigInput struct {
6612	_ struct{} `type:"structure"`
6613
6614	// The name of the Lambda function, version, or alias.
6615	//
6616	// Name formats
6617	//
6618	//    * Function name - my-function (name-only), my-function:v1 (with alias).
6619	//
6620	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
6621	//
6622	//    * Partial ARN - 123456789012:function:my-function.
6623	//
6624	// You can append a version number or alias to any of the formats. The length
6625	// constraint applies only to the full ARN. If you specify only the function
6626	// name, it is limited to 64 characters in length.
6627	//
6628	// FunctionName is a required field
6629	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
6630
6631	// A version number or alias name.
6632	Qualifier *string `location:"querystring" locationName:"Qualifier" min:"1" type:"string"`
6633}
6634
6635// String returns the string representation
6636func (s DeleteFunctionEventInvokeConfigInput) String() string {
6637	return awsutil.Prettify(s)
6638}
6639
6640// GoString returns the string representation
6641func (s DeleteFunctionEventInvokeConfigInput) GoString() string {
6642	return s.String()
6643}
6644
6645// Validate inspects the fields of the type to determine if they are valid.
6646func (s *DeleteFunctionEventInvokeConfigInput) Validate() error {
6647	invalidParams := request.ErrInvalidParams{Context: "DeleteFunctionEventInvokeConfigInput"}
6648	if s.FunctionName == nil {
6649		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
6650	}
6651	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
6652		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
6653	}
6654	if s.Qualifier != nil && len(*s.Qualifier) < 1 {
6655		invalidParams.Add(request.NewErrParamMinLen("Qualifier", 1))
6656	}
6657
6658	if invalidParams.Len() > 0 {
6659		return invalidParams
6660	}
6661	return nil
6662}
6663
6664// SetFunctionName sets the FunctionName field's value.
6665func (s *DeleteFunctionEventInvokeConfigInput) SetFunctionName(v string) *DeleteFunctionEventInvokeConfigInput {
6666	s.FunctionName = &v
6667	return s
6668}
6669
6670// SetQualifier sets the Qualifier field's value.
6671func (s *DeleteFunctionEventInvokeConfigInput) SetQualifier(v string) *DeleteFunctionEventInvokeConfigInput {
6672	s.Qualifier = &v
6673	return s
6674}
6675
6676type DeleteFunctionEventInvokeConfigOutput struct {
6677	_ struct{} `type:"structure"`
6678}
6679
6680// String returns the string representation
6681func (s DeleteFunctionEventInvokeConfigOutput) String() string {
6682	return awsutil.Prettify(s)
6683}
6684
6685// GoString returns the string representation
6686func (s DeleteFunctionEventInvokeConfigOutput) GoString() string {
6687	return s.String()
6688}
6689
6690type DeleteFunctionInput struct {
6691	_ struct{} `type:"structure"`
6692
6693	// The name of the Lambda function or version.
6694	//
6695	// Name formats
6696	//
6697	//    * Function name - my-function (name-only), my-function:1 (with version).
6698	//
6699	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
6700	//
6701	//    * Partial ARN - 123456789012:function:my-function.
6702	//
6703	// You can append a version number or alias to any of the formats. The length
6704	// constraint applies only to the full ARN. If you specify only the function
6705	// name, it is limited to 64 characters in length.
6706	//
6707	// FunctionName is a required field
6708	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
6709
6710	// Specify a version to delete. You can't delete a version that's referenced
6711	// by an alias.
6712	Qualifier *string `location:"querystring" locationName:"Qualifier" min:"1" type:"string"`
6713}
6714
6715// String returns the string representation
6716func (s DeleteFunctionInput) String() string {
6717	return awsutil.Prettify(s)
6718}
6719
6720// GoString returns the string representation
6721func (s DeleteFunctionInput) GoString() string {
6722	return s.String()
6723}
6724
6725// Validate inspects the fields of the type to determine if they are valid.
6726func (s *DeleteFunctionInput) Validate() error {
6727	invalidParams := request.ErrInvalidParams{Context: "DeleteFunctionInput"}
6728	if s.FunctionName == nil {
6729		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
6730	}
6731	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
6732		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
6733	}
6734	if s.Qualifier != nil && len(*s.Qualifier) < 1 {
6735		invalidParams.Add(request.NewErrParamMinLen("Qualifier", 1))
6736	}
6737
6738	if invalidParams.Len() > 0 {
6739		return invalidParams
6740	}
6741	return nil
6742}
6743
6744// SetFunctionName sets the FunctionName field's value.
6745func (s *DeleteFunctionInput) SetFunctionName(v string) *DeleteFunctionInput {
6746	s.FunctionName = &v
6747	return s
6748}
6749
6750// SetQualifier sets the Qualifier field's value.
6751func (s *DeleteFunctionInput) SetQualifier(v string) *DeleteFunctionInput {
6752	s.Qualifier = &v
6753	return s
6754}
6755
6756type DeleteFunctionOutput struct {
6757	_ struct{} `type:"structure"`
6758}
6759
6760// String returns the string representation
6761func (s DeleteFunctionOutput) String() string {
6762	return awsutil.Prettify(s)
6763}
6764
6765// GoString returns the string representation
6766func (s DeleteFunctionOutput) GoString() string {
6767	return s.String()
6768}
6769
6770type DeleteLayerVersionInput struct {
6771	_ struct{} `type:"structure"`
6772
6773	// The name or Amazon Resource Name (ARN) of the layer.
6774	//
6775	// LayerName is a required field
6776	LayerName *string `location:"uri" locationName:"LayerName" min:"1" type:"string" required:"true"`
6777
6778	// The version number.
6779	//
6780	// VersionNumber is a required field
6781	VersionNumber *int64 `location:"uri" locationName:"VersionNumber" type:"long" required:"true"`
6782}
6783
6784// String returns the string representation
6785func (s DeleteLayerVersionInput) String() string {
6786	return awsutil.Prettify(s)
6787}
6788
6789// GoString returns the string representation
6790func (s DeleteLayerVersionInput) GoString() string {
6791	return s.String()
6792}
6793
6794// Validate inspects the fields of the type to determine if they are valid.
6795func (s *DeleteLayerVersionInput) Validate() error {
6796	invalidParams := request.ErrInvalidParams{Context: "DeleteLayerVersionInput"}
6797	if s.LayerName == nil {
6798		invalidParams.Add(request.NewErrParamRequired("LayerName"))
6799	}
6800	if s.LayerName != nil && len(*s.LayerName) < 1 {
6801		invalidParams.Add(request.NewErrParamMinLen("LayerName", 1))
6802	}
6803	if s.VersionNumber == nil {
6804		invalidParams.Add(request.NewErrParamRequired("VersionNumber"))
6805	}
6806
6807	if invalidParams.Len() > 0 {
6808		return invalidParams
6809	}
6810	return nil
6811}
6812
6813// SetLayerName sets the LayerName field's value.
6814func (s *DeleteLayerVersionInput) SetLayerName(v string) *DeleteLayerVersionInput {
6815	s.LayerName = &v
6816	return s
6817}
6818
6819// SetVersionNumber sets the VersionNumber field's value.
6820func (s *DeleteLayerVersionInput) SetVersionNumber(v int64) *DeleteLayerVersionInput {
6821	s.VersionNumber = &v
6822	return s
6823}
6824
6825type DeleteLayerVersionOutput struct {
6826	_ struct{} `type:"structure"`
6827}
6828
6829// String returns the string representation
6830func (s DeleteLayerVersionOutput) String() string {
6831	return awsutil.Prettify(s)
6832}
6833
6834// GoString returns the string representation
6835func (s DeleteLayerVersionOutput) GoString() string {
6836	return s.String()
6837}
6838
6839type DeleteProvisionedConcurrencyConfigInput struct {
6840	_ struct{} `type:"structure"`
6841
6842	// The name of the Lambda function.
6843	//
6844	// Name formats
6845	//
6846	//    * Function name - my-function.
6847	//
6848	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
6849	//
6850	//    * Partial ARN - 123456789012:function:my-function.
6851	//
6852	// The length constraint applies only to the full ARN. If you specify only the
6853	// function name, it is limited to 64 characters in length.
6854	//
6855	// FunctionName is a required field
6856	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
6857
6858	// The version number or alias name.
6859	//
6860	// Qualifier is a required field
6861	Qualifier *string `location:"querystring" locationName:"Qualifier" min:"1" type:"string" required:"true"`
6862}
6863
6864// String returns the string representation
6865func (s DeleteProvisionedConcurrencyConfigInput) String() string {
6866	return awsutil.Prettify(s)
6867}
6868
6869// GoString returns the string representation
6870func (s DeleteProvisionedConcurrencyConfigInput) GoString() string {
6871	return s.String()
6872}
6873
6874// Validate inspects the fields of the type to determine if they are valid.
6875func (s *DeleteProvisionedConcurrencyConfigInput) Validate() error {
6876	invalidParams := request.ErrInvalidParams{Context: "DeleteProvisionedConcurrencyConfigInput"}
6877	if s.FunctionName == nil {
6878		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
6879	}
6880	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
6881		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
6882	}
6883	if s.Qualifier == nil {
6884		invalidParams.Add(request.NewErrParamRequired("Qualifier"))
6885	}
6886	if s.Qualifier != nil && len(*s.Qualifier) < 1 {
6887		invalidParams.Add(request.NewErrParamMinLen("Qualifier", 1))
6888	}
6889
6890	if invalidParams.Len() > 0 {
6891		return invalidParams
6892	}
6893	return nil
6894}
6895
6896// SetFunctionName sets the FunctionName field's value.
6897func (s *DeleteProvisionedConcurrencyConfigInput) SetFunctionName(v string) *DeleteProvisionedConcurrencyConfigInput {
6898	s.FunctionName = &v
6899	return s
6900}
6901
6902// SetQualifier sets the Qualifier field's value.
6903func (s *DeleteProvisionedConcurrencyConfigInput) SetQualifier(v string) *DeleteProvisionedConcurrencyConfigInput {
6904	s.Qualifier = &v
6905	return s
6906}
6907
6908type DeleteProvisionedConcurrencyConfigOutput struct {
6909	_ struct{} `type:"structure"`
6910}
6911
6912// String returns the string representation
6913func (s DeleteProvisionedConcurrencyConfigOutput) String() string {
6914	return awsutil.Prettify(s)
6915}
6916
6917// GoString returns the string representation
6918func (s DeleteProvisionedConcurrencyConfigOutput) GoString() string {
6919	return s.String()
6920}
6921
6922// A configuration object that specifies the destination of an event after Lambda
6923// processes it.
6924type DestinationConfig struct {
6925	_ struct{} `type:"structure"`
6926
6927	// The destination configuration for failed invocations.
6928	OnFailure *OnFailure `type:"structure"`
6929
6930	// The destination configuration for successful invocations.
6931	OnSuccess *OnSuccess `type:"structure"`
6932}
6933
6934// String returns the string representation
6935func (s DestinationConfig) String() string {
6936	return awsutil.Prettify(s)
6937}
6938
6939// GoString returns the string representation
6940func (s DestinationConfig) GoString() string {
6941	return s.String()
6942}
6943
6944// SetOnFailure sets the OnFailure field's value.
6945func (s *DestinationConfig) SetOnFailure(v *OnFailure) *DestinationConfig {
6946	s.OnFailure = v
6947	return s
6948}
6949
6950// SetOnSuccess sets the OnSuccess field's value.
6951func (s *DestinationConfig) SetOnSuccess(v *OnSuccess) *DestinationConfig {
6952	s.OnSuccess = v
6953	return s
6954}
6955
6956// Need additional permissions to configure VPC settings.
6957type EC2AccessDeniedException struct {
6958	_            struct{}                  `type:"structure"`
6959	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
6960
6961	Message_ *string `locationName:"Message" type:"string"`
6962
6963	Type *string `type:"string"`
6964}
6965
6966// String returns the string representation
6967func (s EC2AccessDeniedException) String() string {
6968	return awsutil.Prettify(s)
6969}
6970
6971// GoString returns the string representation
6972func (s EC2AccessDeniedException) GoString() string {
6973	return s.String()
6974}
6975
6976func newErrorEC2AccessDeniedException(v protocol.ResponseMetadata) error {
6977	return &EC2AccessDeniedException{
6978		RespMetadata: v,
6979	}
6980}
6981
6982// Code returns the exception type name.
6983func (s *EC2AccessDeniedException) Code() string {
6984	return "EC2AccessDeniedException"
6985}
6986
6987// Message returns the exception's message.
6988func (s *EC2AccessDeniedException) Message() string {
6989	if s.Message_ != nil {
6990		return *s.Message_
6991	}
6992	return ""
6993}
6994
6995// OrigErr always returns nil, satisfies awserr.Error interface.
6996func (s *EC2AccessDeniedException) OrigErr() error {
6997	return nil
6998}
6999
7000func (s *EC2AccessDeniedException) Error() string {
7001	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
7002}
7003
7004// Status code returns the HTTP status code for the request's response error.
7005func (s *EC2AccessDeniedException) StatusCode() int {
7006	return s.RespMetadata.StatusCode
7007}
7008
7009// RequestID returns the service's response RequestID for request.
7010func (s *EC2AccessDeniedException) RequestID() string {
7011	return s.RespMetadata.RequestID
7012}
7013
7014// AWS Lambda was throttled by Amazon EC2 during Lambda function initialization
7015// using the execution role provided for the Lambda function.
7016type EC2ThrottledException struct {
7017	_            struct{}                  `type:"structure"`
7018	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
7019
7020	Message_ *string `locationName:"Message" type:"string"`
7021
7022	Type *string `type:"string"`
7023}
7024
7025// String returns the string representation
7026func (s EC2ThrottledException) String() string {
7027	return awsutil.Prettify(s)
7028}
7029
7030// GoString returns the string representation
7031func (s EC2ThrottledException) GoString() string {
7032	return s.String()
7033}
7034
7035func newErrorEC2ThrottledException(v protocol.ResponseMetadata) error {
7036	return &EC2ThrottledException{
7037		RespMetadata: v,
7038	}
7039}
7040
7041// Code returns the exception type name.
7042func (s *EC2ThrottledException) Code() string {
7043	return "EC2ThrottledException"
7044}
7045
7046// Message returns the exception's message.
7047func (s *EC2ThrottledException) Message() string {
7048	if s.Message_ != nil {
7049		return *s.Message_
7050	}
7051	return ""
7052}
7053
7054// OrigErr always returns nil, satisfies awserr.Error interface.
7055func (s *EC2ThrottledException) OrigErr() error {
7056	return nil
7057}
7058
7059func (s *EC2ThrottledException) Error() string {
7060	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
7061}
7062
7063// Status code returns the HTTP status code for the request's response error.
7064func (s *EC2ThrottledException) StatusCode() int {
7065	return s.RespMetadata.StatusCode
7066}
7067
7068// RequestID returns the service's response RequestID for request.
7069func (s *EC2ThrottledException) RequestID() string {
7070	return s.RespMetadata.RequestID
7071}
7072
7073// AWS Lambda received an unexpected EC2 client exception while setting up for
7074// the Lambda function.
7075type EC2UnexpectedException struct {
7076	_            struct{}                  `type:"structure"`
7077	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
7078
7079	EC2ErrorCode *string `type:"string"`
7080
7081	Message_ *string `locationName:"Message" type:"string"`
7082
7083	Type *string `type:"string"`
7084}
7085
7086// String returns the string representation
7087func (s EC2UnexpectedException) String() string {
7088	return awsutil.Prettify(s)
7089}
7090
7091// GoString returns the string representation
7092func (s EC2UnexpectedException) GoString() string {
7093	return s.String()
7094}
7095
7096func newErrorEC2UnexpectedException(v protocol.ResponseMetadata) error {
7097	return &EC2UnexpectedException{
7098		RespMetadata: v,
7099	}
7100}
7101
7102// Code returns the exception type name.
7103func (s *EC2UnexpectedException) Code() string {
7104	return "EC2UnexpectedException"
7105}
7106
7107// Message returns the exception's message.
7108func (s *EC2UnexpectedException) Message() string {
7109	if s.Message_ != nil {
7110		return *s.Message_
7111	}
7112	return ""
7113}
7114
7115// OrigErr always returns nil, satisfies awserr.Error interface.
7116func (s *EC2UnexpectedException) OrigErr() error {
7117	return nil
7118}
7119
7120func (s *EC2UnexpectedException) Error() string {
7121	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
7122}
7123
7124// Status code returns the HTTP status code for the request's response error.
7125func (s *EC2UnexpectedException) StatusCode() int {
7126	return s.RespMetadata.StatusCode
7127}
7128
7129// RequestID returns the service's response RequestID for request.
7130func (s *EC2UnexpectedException) RequestID() string {
7131	return s.RespMetadata.RequestID
7132}
7133
7134// An error occured when reading from or writing to a connected file system.
7135type EFSIOException struct {
7136	_            struct{}                  `type:"structure"`
7137	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
7138
7139	Message_ *string `locationName:"Message" type:"string"`
7140
7141	Type *string `type:"string"`
7142}
7143
7144// String returns the string representation
7145func (s EFSIOException) String() string {
7146	return awsutil.Prettify(s)
7147}
7148
7149// GoString returns the string representation
7150func (s EFSIOException) GoString() string {
7151	return s.String()
7152}
7153
7154func newErrorEFSIOException(v protocol.ResponseMetadata) error {
7155	return &EFSIOException{
7156		RespMetadata: v,
7157	}
7158}
7159
7160// Code returns the exception type name.
7161func (s *EFSIOException) Code() string {
7162	return "EFSIOException"
7163}
7164
7165// Message returns the exception's message.
7166func (s *EFSIOException) Message() string {
7167	if s.Message_ != nil {
7168		return *s.Message_
7169	}
7170	return ""
7171}
7172
7173// OrigErr always returns nil, satisfies awserr.Error interface.
7174func (s *EFSIOException) OrigErr() error {
7175	return nil
7176}
7177
7178func (s *EFSIOException) Error() string {
7179	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
7180}
7181
7182// Status code returns the HTTP status code for the request's response error.
7183func (s *EFSIOException) StatusCode() int {
7184	return s.RespMetadata.StatusCode
7185}
7186
7187// RequestID returns the service's response RequestID for request.
7188func (s *EFSIOException) RequestID() string {
7189	return s.RespMetadata.RequestID
7190}
7191
7192// The function couldn't make a network connection to the configured file system.
7193type EFSMountConnectivityException struct {
7194	_            struct{}                  `type:"structure"`
7195	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
7196
7197	Message_ *string `locationName:"Message" type:"string"`
7198
7199	Type *string `type:"string"`
7200}
7201
7202// String returns the string representation
7203func (s EFSMountConnectivityException) String() string {
7204	return awsutil.Prettify(s)
7205}
7206
7207// GoString returns the string representation
7208func (s EFSMountConnectivityException) GoString() string {
7209	return s.String()
7210}
7211
7212func newErrorEFSMountConnectivityException(v protocol.ResponseMetadata) error {
7213	return &EFSMountConnectivityException{
7214		RespMetadata: v,
7215	}
7216}
7217
7218// Code returns the exception type name.
7219func (s *EFSMountConnectivityException) Code() string {
7220	return "EFSMountConnectivityException"
7221}
7222
7223// Message returns the exception's message.
7224func (s *EFSMountConnectivityException) Message() string {
7225	if s.Message_ != nil {
7226		return *s.Message_
7227	}
7228	return ""
7229}
7230
7231// OrigErr always returns nil, satisfies awserr.Error interface.
7232func (s *EFSMountConnectivityException) OrigErr() error {
7233	return nil
7234}
7235
7236func (s *EFSMountConnectivityException) Error() string {
7237	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
7238}
7239
7240// Status code returns the HTTP status code for the request's response error.
7241func (s *EFSMountConnectivityException) StatusCode() int {
7242	return s.RespMetadata.StatusCode
7243}
7244
7245// RequestID returns the service's response RequestID for request.
7246func (s *EFSMountConnectivityException) RequestID() string {
7247	return s.RespMetadata.RequestID
7248}
7249
7250// The function couldn't mount the configured file system due to a permission
7251// or configuration issue.
7252type EFSMountFailureException struct {
7253	_            struct{}                  `type:"structure"`
7254	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
7255
7256	Message_ *string `locationName:"Message" type:"string"`
7257
7258	Type *string `type:"string"`
7259}
7260
7261// String returns the string representation
7262func (s EFSMountFailureException) String() string {
7263	return awsutil.Prettify(s)
7264}
7265
7266// GoString returns the string representation
7267func (s EFSMountFailureException) GoString() string {
7268	return s.String()
7269}
7270
7271func newErrorEFSMountFailureException(v protocol.ResponseMetadata) error {
7272	return &EFSMountFailureException{
7273		RespMetadata: v,
7274	}
7275}
7276
7277// Code returns the exception type name.
7278func (s *EFSMountFailureException) Code() string {
7279	return "EFSMountFailureException"
7280}
7281
7282// Message returns the exception's message.
7283func (s *EFSMountFailureException) Message() string {
7284	if s.Message_ != nil {
7285		return *s.Message_
7286	}
7287	return ""
7288}
7289
7290// OrigErr always returns nil, satisfies awserr.Error interface.
7291func (s *EFSMountFailureException) OrigErr() error {
7292	return nil
7293}
7294
7295func (s *EFSMountFailureException) Error() string {
7296	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
7297}
7298
7299// Status code returns the HTTP status code for the request's response error.
7300func (s *EFSMountFailureException) StatusCode() int {
7301	return s.RespMetadata.StatusCode
7302}
7303
7304// RequestID returns the service's response RequestID for request.
7305func (s *EFSMountFailureException) RequestID() string {
7306	return s.RespMetadata.RequestID
7307}
7308
7309// The function was able to make a network connection to the configured file
7310// system, but the mount operation timed out.
7311type EFSMountTimeoutException struct {
7312	_            struct{}                  `type:"structure"`
7313	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
7314
7315	Message_ *string `locationName:"Message" type:"string"`
7316
7317	Type *string `type:"string"`
7318}
7319
7320// String returns the string representation
7321func (s EFSMountTimeoutException) String() string {
7322	return awsutil.Prettify(s)
7323}
7324
7325// GoString returns the string representation
7326func (s EFSMountTimeoutException) GoString() string {
7327	return s.String()
7328}
7329
7330func newErrorEFSMountTimeoutException(v protocol.ResponseMetadata) error {
7331	return &EFSMountTimeoutException{
7332		RespMetadata: v,
7333	}
7334}
7335
7336// Code returns the exception type name.
7337func (s *EFSMountTimeoutException) Code() string {
7338	return "EFSMountTimeoutException"
7339}
7340
7341// Message returns the exception's message.
7342func (s *EFSMountTimeoutException) Message() string {
7343	if s.Message_ != nil {
7344		return *s.Message_
7345	}
7346	return ""
7347}
7348
7349// OrigErr always returns nil, satisfies awserr.Error interface.
7350func (s *EFSMountTimeoutException) OrigErr() error {
7351	return nil
7352}
7353
7354func (s *EFSMountTimeoutException) Error() string {
7355	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
7356}
7357
7358// Status code returns the HTTP status code for the request's response error.
7359func (s *EFSMountTimeoutException) StatusCode() int {
7360	return s.RespMetadata.StatusCode
7361}
7362
7363// RequestID returns the service's response RequestID for request.
7364func (s *EFSMountTimeoutException) RequestID() string {
7365	return s.RespMetadata.RequestID
7366}
7367
7368// AWS Lambda was not able to create an elastic network interface in the VPC,
7369// specified as part of Lambda function configuration, because the limit for
7370// network interfaces has been reached.
7371type ENILimitReachedException struct {
7372	_            struct{}                  `type:"structure"`
7373	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
7374
7375	Message_ *string `locationName:"Message" type:"string"`
7376
7377	Type *string `type:"string"`
7378}
7379
7380// String returns the string representation
7381func (s ENILimitReachedException) String() string {
7382	return awsutil.Prettify(s)
7383}
7384
7385// GoString returns the string representation
7386func (s ENILimitReachedException) GoString() string {
7387	return s.String()
7388}
7389
7390func newErrorENILimitReachedException(v protocol.ResponseMetadata) error {
7391	return &ENILimitReachedException{
7392		RespMetadata: v,
7393	}
7394}
7395
7396// Code returns the exception type name.
7397func (s *ENILimitReachedException) Code() string {
7398	return "ENILimitReachedException"
7399}
7400
7401// Message returns the exception's message.
7402func (s *ENILimitReachedException) Message() string {
7403	if s.Message_ != nil {
7404		return *s.Message_
7405	}
7406	return ""
7407}
7408
7409// OrigErr always returns nil, satisfies awserr.Error interface.
7410func (s *ENILimitReachedException) OrigErr() error {
7411	return nil
7412}
7413
7414func (s *ENILimitReachedException) Error() string {
7415	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
7416}
7417
7418// Status code returns the HTTP status code for the request's response error.
7419func (s *ENILimitReachedException) StatusCode() int {
7420	return s.RespMetadata.StatusCode
7421}
7422
7423// RequestID returns the service's response RequestID for request.
7424func (s *ENILimitReachedException) RequestID() string {
7425	return s.RespMetadata.RequestID
7426}
7427
7428// A function's environment variable settings.
7429type Environment struct {
7430	_ struct{} `type:"structure"`
7431
7432	// Environment variable key-value pairs.
7433	Variables map[string]*string `type:"map" sensitive:"true"`
7434}
7435
7436// String returns the string representation
7437func (s Environment) String() string {
7438	return awsutil.Prettify(s)
7439}
7440
7441// GoString returns the string representation
7442func (s Environment) GoString() string {
7443	return s.String()
7444}
7445
7446// SetVariables sets the Variables field's value.
7447func (s *Environment) SetVariables(v map[string]*string) *Environment {
7448	s.Variables = v
7449	return s
7450}
7451
7452// Error messages for environment variables that couldn't be applied.
7453type EnvironmentError struct {
7454	_ struct{} `type:"structure"`
7455
7456	// The error code.
7457	ErrorCode *string `type:"string"`
7458
7459	// The error message.
7460	Message *string `type:"string" sensitive:"true"`
7461}
7462
7463// String returns the string representation
7464func (s EnvironmentError) String() string {
7465	return awsutil.Prettify(s)
7466}
7467
7468// GoString returns the string representation
7469func (s EnvironmentError) GoString() string {
7470	return s.String()
7471}
7472
7473// SetErrorCode sets the ErrorCode field's value.
7474func (s *EnvironmentError) SetErrorCode(v string) *EnvironmentError {
7475	s.ErrorCode = &v
7476	return s
7477}
7478
7479// SetMessage sets the Message field's value.
7480func (s *EnvironmentError) SetMessage(v string) *EnvironmentError {
7481	s.Message = &v
7482	return s
7483}
7484
7485// The results of an operation to update or read environment variables. If the
7486// operation is successful, the response contains the environment variables.
7487// If it failed, the response contains details about the error.
7488type EnvironmentResponse struct {
7489	_ struct{} `type:"structure"`
7490
7491	// Error messages for environment variables that couldn't be applied.
7492	Error *EnvironmentError `type:"structure"`
7493
7494	// Environment variable key-value pairs.
7495	Variables map[string]*string `type:"map" sensitive:"true"`
7496}
7497
7498// String returns the string representation
7499func (s EnvironmentResponse) String() string {
7500	return awsutil.Prettify(s)
7501}
7502
7503// GoString returns the string representation
7504func (s EnvironmentResponse) GoString() string {
7505	return s.String()
7506}
7507
7508// SetError sets the Error field's value.
7509func (s *EnvironmentResponse) SetError(v *EnvironmentError) *EnvironmentResponse {
7510	s.Error = v
7511	return s
7512}
7513
7514// SetVariables sets the Variables field's value.
7515func (s *EnvironmentResponse) SetVariables(v map[string]*string) *EnvironmentResponse {
7516	s.Variables = v
7517	return s
7518}
7519
7520// A mapping between an AWS resource and an AWS Lambda function. See CreateEventSourceMapping
7521// for details.
7522type EventSourceMappingConfiguration struct {
7523	_ struct{} `type:"structure"`
7524
7525	// The maximum number of items to retrieve in a single batch.
7526	BatchSize *int64 `min:"1" type:"integer"`
7527
7528	// (Streams) If the function returns an error, split the batch in two and retry.
7529	BisectBatchOnFunctionError *bool `type:"boolean"`
7530
7531	// (Streams) An Amazon SQS queue or Amazon SNS topic destination for discarded
7532	// records.
7533	DestinationConfig *DestinationConfig `type:"structure"`
7534
7535	// The Amazon Resource Name (ARN) of the event source.
7536	EventSourceArn *string `type:"string"`
7537
7538	// The ARN of the Lambda function.
7539	FunctionArn *string `type:"string"`
7540
7541	// The date that the event source mapping was last updated, or its state changed.
7542	LastModified *time.Time `type:"timestamp"`
7543
7544	// The result of the last AWS Lambda invocation of your Lambda function.
7545	LastProcessingResult *string `type:"string"`
7546
7547	// (Streams) The maximum amount of time to gather records before invoking the
7548	// function, in seconds.
7549	MaximumBatchingWindowInSeconds *int64 `type:"integer"`
7550
7551	// (Streams) The maximum age of a record that Lambda sends to a function for
7552	// processing.
7553	MaximumRecordAgeInSeconds *int64 `min:"60" type:"integer"`
7554
7555	// (Streams) The maximum number of times to retry when the function returns
7556	// an error.
7557	MaximumRetryAttempts *int64 `type:"integer"`
7558
7559	// (Streams) The number of batches to process from each shard concurrently.
7560	ParallelizationFactor *int64 `min:"1" type:"integer"`
7561
7562	// The state of the event source mapping. It can be one of the following: Creating,
7563	// Enabling, Enabled, Disabling, Disabled, Updating, or Deleting.
7564	State *string `type:"string"`
7565
7566	// Indicates whether the last change to the event source mapping was made by
7567	// a user, or by the Lambda service.
7568	StateTransitionReason *string `type:"string"`
7569
7570	// The identifier of the event source mapping.
7571	UUID *string `type:"string"`
7572}
7573
7574// String returns the string representation
7575func (s EventSourceMappingConfiguration) String() string {
7576	return awsutil.Prettify(s)
7577}
7578
7579// GoString returns the string representation
7580func (s EventSourceMappingConfiguration) GoString() string {
7581	return s.String()
7582}
7583
7584// SetBatchSize sets the BatchSize field's value.
7585func (s *EventSourceMappingConfiguration) SetBatchSize(v int64) *EventSourceMappingConfiguration {
7586	s.BatchSize = &v
7587	return s
7588}
7589
7590// SetBisectBatchOnFunctionError sets the BisectBatchOnFunctionError field's value.
7591func (s *EventSourceMappingConfiguration) SetBisectBatchOnFunctionError(v bool) *EventSourceMappingConfiguration {
7592	s.BisectBatchOnFunctionError = &v
7593	return s
7594}
7595
7596// SetDestinationConfig sets the DestinationConfig field's value.
7597func (s *EventSourceMappingConfiguration) SetDestinationConfig(v *DestinationConfig) *EventSourceMappingConfiguration {
7598	s.DestinationConfig = v
7599	return s
7600}
7601
7602// SetEventSourceArn sets the EventSourceArn field's value.
7603func (s *EventSourceMappingConfiguration) SetEventSourceArn(v string) *EventSourceMappingConfiguration {
7604	s.EventSourceArn = &v
7605	return s
7606}
7607
7608// SetFunctionArn sets the FunctionArn field's value.
7609func (s *EventSourceMappingConfiguration) SetFunctionArn(v string) *EventSourceMappingConfiguration {
7610	s.FunctionArn = &v
7611	return s
7612}
7613
7614// SetLastModified sets the LastModified field's value.
7615func (s *EventSourceMappingConfiguration) SetLastModified(v time.Time) *EventSourceMappingConfiguration {
7616	s.LastModified = &v
7617	return s
7618}
7619
7620// SetLastProcessingResult sets the LastProcessingResult field's value.
7621func (s *EventSourceMappingConfiguration) SetLastProcessingResult(v string) *EventSourceMappingConfiguration {
7622	s.LastProcessingResult = &v
7623	return s
7624}
7625
7626// SetMaximumBatchingWindowInSeconds sets the MaximumBatchingWindowInSeconds field's value.
7627func (s *EventSourceMappingConfiguration) SetMaximumBatchingWindowInSeconds(v int64) *EventSourceMappingConfiguration {
7628	s.MaximumBatchingWindowInSeconds = &v
7629	return s
7630}
7631
7632// SetMaximumRecordAgeInSeconds sets the MaximumRecordAgeInSeconds field's value.
7633func (s *EventSourceMappingConfiguration) SetMaximumRecordAgeInSeconds(v int64) *EventSourceMappingConfiguration {
7634	s.MaximumRecordAgeInSeconds = &v
7635	return s
7636}
7637
7638// SetMaximumRetryAttempts sets the MaximumRetryAttempts field's value.
7639func (s *EventSourceMappingConfiguration) SetMaximumRetryAttempts(v int64) *EventSourceMappingConfiguration {
7640	s.MaximumRetryAttempts = &v
7641	return s
7642}
7643
7644// SetParallelizationFactor sets the ParallelizationFactor field's value.
7645func (s *EventSourceMappingConfiguration) SetParallelizationFactor(v int64) *EventSourceMappingConfiguration {
7646	s.ParallelizationFactor = &v
7647	return s
7648}
7649
7650// SetState sets the State field's value.
7651func (s *EventSourceMappingConfiguration) SetState(v string) *EventSourceMappingConfiguration {
7652	s.State = &v
7653	return s
7654}
7655
7656// SetStateTransitionReason sets the StateTransitionReason field's value.
7657func (s *EventSourceMappingConfiguration) SetStateTransitionReason(v string) *EventSourceMappingConfiguration {
7658	s.StateTransitionReason = &v
7659	return s
7660}
7661
7662// SetUUID sets the UUID field's value.
7663func (s *EventSourceMappingConfiguration) SetUUID(v string) *EventSourceMappingConfiguration {
7664	s.UUID = &v
7665	return s
7666}
7667
7668// Details about the connection between a Lambda function and an Amazon EFS
7669// file system.
7670type FileSystemConfig struct {
7671	_ struct{} `type:"structure"`
7672
7673	// The Amazon Resource Name (ARN) of the Amazon EFS access point that provides
7674	// access to the file system.
7675	//
7676	// Arn is a required field
7677	Arn *string `type:"string" required:"true"`
7678
7679	// The path where the function can access the file system, starting with /mnt/.
7680	//
7681	// LocalMountPath is a required field
7682	LocalMountPath *string `type:"string" required:"true"`
7683}
7684
7685// String returns the string representation
7686func (s FileSystemConfig) String() string {
7687	return awsutil.Prettify(s)
7688}
7689
7690// GoString returns the string representation
7691func (s FileSystemConfig) GoString() string {
7692	return s.String()
7693}
7694
7695// Validate inspects the fields of the type to determine if they are valid.
7696func (s *FileSystemConfig) Validate() error {
7697	invalidParams := request.ErrInvalidParams{Context: "FileSystemConfig"}
7698	if s.Arn == nil {
7699		invalidParams.Add(request.NewErrParamRequired("Arn"))
7700	}
7701	if s.LocalMountPath == nil {
7702		invalidParams.Add(request.NewErrParamRequired("LocalMountPath"))
7703	}
7704
7705	if invalidParams.Len() > 0 {
7706		return invalidParams
7707	}
7708	return nil
7709}
7710
7711// SetArn sets the Arn field's value.
7712func (s *FileSystemConfig) SetArn(v string) *FileSystemConfig {
7713	s.Arn = &v
7714	return s
7715}
7716
7717// SetLocalMountPath sets the LocalMountPath field's value.
7718func (s *FileSystemConfig) SetLocalMountPath(v string) *FileSystemConfig {
7719	s.LocalMountPath = &v
7720	return s
7721}
7722
7723// The code for the Lambda function. You can specify either an object in Amazon
7724// S3, or upload a deployment package directly.
7725type FunctionCode struct {
7726	_ struct{} `type:"structure"`
7727
7728	// An Amazon S3 bucket in the same AWS Region as your function. The bucket can
7729	// be in a different AWS account.
7730	S3Bucket *string `min:"3" type:"string"`
7731
7732	// The Amazon S3 key of the deployment package.
7733	S3Key *string `min:"1" type:"string"`
7734
7735	// For versioned objects, the version of the deployment package object to use.
7736	S3ObjectVersion *string `min:"1" type:"string"`
7737
7738	// The base64-encoded contents of the deployment package. AWS SDK and AWS CLI
7739	// clients handle the encoding for you.
7740	//
7741	// ZipFile is automatically base64 encoded/decoded by the SDK.
7742	ZipFile []byte `type:"blob" sensitive:"true"`
7743}
7744
7745// String returns the string representation
7746func (s FunctionCode) String() string {
7747	return awsutil.Prettify(s)
7748}
7749
7750// GoString returns the string representation
7751func (s FunctionCode) GoString() string {
7752	return s.String()
7753}
7754
7755// Validate inspects the fields of the type to determine if they are valid.
7756func (s *FunctionCode) Validate() error {
7757	invalidParams := request.ErrInvalidParams{Context: "FunctionCode"}
7758	if s.S3Bucket != nil && len(*s.S3Bucket) < 3 {
7759		invalidParams.Add(request.NewErrParamMinLen("S3Bucket", 3))
7760	}
7761	if s.S3Key != nil && len(*s.S3Key) < 1 {
7762		invalidParams.Add(request.NewErrParamMinLen("S3Key", 1))
7763	}
7764	if s.S3ObjectVersion != nil && len(*s.S3ObjectVersion) < 1 {
7765		invalidParams.Add(request.NewErrParamMinLen("S3ObjectVersion", 1))
7766	}
7767
7768	if invalidParams.Len() > 0 {
7769		return invalidParams
7770	}
7771	return nil
7772}
7773
7774// SetS3Bucket sets the S3Bucket field's value.
7775func (s *FunctionCode) SetS3Bucket(v string) *FunctionCode {
7776	s.S3Bucket = &v
7777	return s
7778}
7779
7780// SetS3Key sets the S3Key field's value.
7781func (s *FunctionCode) SetS3Key(v string) *FunctionCode {
7782	s.S3Key = &v
7783	return s
7784}
7785
7786// SetS3ObjectVersion sets the S3ObjectVersion field's value.
7787func (s *FunctionCode) SetS3ObjectVersion(v string) *FunctionCode {
7788	s.S3ObjectVersion = &v
7789	return s
7790}
7791
7792// SetZipFile sets the ZipFile field's value.
7793func (s *FunctionCode) SetZipFile(v []byte) *FunctionCode {
7794	s.ZipFile = v
7795	return s
7796}
7797
7798// Details about a function's deployment package.
7799type FunctionCodeLocation struct {
7800	_ struct{} `type:"structure"`
7801
7802	// A presigned URL that you can use to download the deployment package.
7803	Location *string `type:"string"`
7804
7805	// The service that's hosting the file.
7806	RepositoryType *string `type:"string"`
7807}
7808
7809// String returns the string representation
7810func (s FunctionCodeLocation) String() string {
7811	return awsutil.Prettify(s)
7812}
7813
7814// GoString returns the string representation
7815func (s FunctionCodeLocation) GoString() string {
7816	return s.String()
7817}
7818
7819// SetLocation sets the Location field's value.
7820func (s *FunctionCodeLocation) SetLocation(v string) *FunctionCodeLocation {
7821	s.Location = &v
7822	return s
7823}
7824
7825// SetRepositoryType sets the RepositoryType field's value.
7826func (s *FunctionCodeLocation) SetRepositoryType(v string) *FunctionCodeLocation {
7827	s.RepositoryType = &v
7828	return s
7829}
7830
7831// Details about a function's configuration.
7832type FunctionConfiguration struct {
7833	_ struct{} `type:"structure"`
7834
7835	// The SHA256 hash of the function's deployment package.
7836	CodeSha256 *string `type:"string"`
7837
7838	// The size of the function's deployment package, in bytes.
7839	CodeSize *int64 `type:"long"`
7840
7841	// The function's dead letter queue.
7842	DeadLetterConfig *DeadLetterConfig `type:"structure"`
7843
7844	// The function's description.
7845	Description *string `type:"string"`
7846
7847	// The function's environment variables.
7848	Environment *EnvironmentResponse `type:"structure"`
7849
7850	// Connection settings for an Amazon EFS file system.
7851	FileSystemConfigs []*FileSystemConfig `type:"list"`
7852
7853	// The function's Amazon Resource Name (ARN).
7854	FunctionArn *string `type:"string"`
7855
7856	// The name of the function.
7857	FunctionName *string `min:"1" type:"string"`
7858
7859	// The function that Lambda calls to begin executing your function.
7860	Handler *string `type:"string"`
7861
7862	// The KMS key that's used to encrypt the function's environment variables.
7863	// This key is only returned if you've configured a customer managed CMK.
7864	KMSKeyArn *string `type:"string"`
7865
7866	// The date and time that the function was last updated, in ISO-8601 format
7867	// (https://www.w3.org/TR/NOTE-datetime) (YYYY-MM-DDThh:mm:ss.sTZD).
7868	LastModified *string `type:"string"`
7869
7870	// The status of the last update that was performed on the function. This is
7871	// first set to Successful after function creation completes.
7872	LastUpdateStatus *string `type:"string" enum:"LastUpdateStatus"`
7873
7874	// The reason for the last update that was performed on the function.
7875	LastUpdateStatusReason *string `type:"string"`
7876
7877	// The reason code for the last update that was performed on the function.
7878	LastUpdateStatusReasonCode *string `type:"string" enum:"LastUpdateStatusReasonCode"`
7879
7880	// The function's layers (https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html).
7881	Layers []*Layer `type:"list"`
7882
7883	// For Lambda@Edge functions, the ARN of the master function.
7884	MasterArn *string `type:"string"`
7885
7886	// The memory that's allocated to the function.
7887	MemorySize *int64 `min:"128" type:"integer"`
7888
7889	// The latest updated revision of the function or alias.
7890	RevisionId *string `type:"string"`
7891
7892	// The function's execution role.
7893	Role *string `type:"string"`
7894
7895	// The runtime environment for the Lambda function.
7896	Runtime *string `type:"string" enum:"Runtime"`
7897
7898	// The current state of the function. When the state is Inactive, you can reactivate
7899	// the function by invoking it.
7900	State *string `type:"string" enum:"State"`
7901
7902	// The reason for the function's current state.
7903	StateReason *string `type:"string"`
7904
7905	// The reason code for the function's current state. When the code is Creating,
7906	// you can't invoke or modify the function.
7907	StateReasonCode *string `type:"string" enum:"StateReasonCode"`
7908
7909	// The amount of time in seconds that Lambda allows a function to run before
7910	// stopping it.
7911	Timeout *int64 `min:"1" type:"integer"`
7912
7913	// The function's AWS X-Ray tracing configuration.
7914	TracingConfig *TracingConfigResponse `type:"structure"`
7915
7916	// The version of the Lambda function.
7917	Version *string `min:"1" type:"string"`
7918
7919	// The function's networking configuration.
7920	VpcConfig *VpcConfigResponse `type:"structure"`
7921}
7922
7923// String returns the string representation
7924func (s FunctionConfiguration) String() string {
7925	return awsutil.Prettify(s)
7926}
7927
7928// GoString returns the string representation
7929func (s FunctionConfiguration) GoString() string {
7930	return s.String()
7931}
7932
7933// SetCodeSha256 sets the CodeSha256 field's value.
7934func (s *FunctionConfiguration) SetCodeSha256(v string) *FunctionConfiguration {
7935	s.CodeSha256 = &v
7936	return s
7937}
7938
7939// SetCodeSize sets the CodeSize field's value.
7940func (s *FunctionConfiguration) SetCodeSize(v int64) *FunctionConfiguration {
7941	s.CodeSize = &v
7942	return s
7943}
7944
7945// SetDeadLetterConfig sets the DeadLetterConfig field's value.
7946func (s *FunctionConfiguration) SetDeadLetterConfig(v *DeadLetterConfig) *FunctionConfiguration {
7947	s.DeadLetterConfig = v
7948	return s
7949}
7950
7951// SetDescription sets the Description field's value.
7952func (s *FunctionConfiguration) SetDescription(v string) *FunctionConfiguration {
7953	s.Description = &v
7954	return s
7955}
7956
7957// SetEnvironment sets the Environment field's value.
7958func (s *FunctionConfiguration) SetEnvironment(v *EnvironmentResponse) *FunctionConfiguration {
7959	s.Environment = v
7960	return s
7961}
7962
7963// SetFileSystemConfigs sets the FileSystemConfigs field's value.
7964func (s *FunctionConfiguration) SetFileSystemConfigs(v []*FileSystemConfig) *FunctionConfiguration {
7965	s.FileSystemConfigs = v
7966	return s
7967}
7968
7969// SetFunctionArn sets the FunctionArn field's value.
7970func (s *FunctionConfiguration) SetFunctionArn(v string) *FunctionConfiguration {
7971	s.FunctionArn = &v
7972	return s
7973}
7974
7975// SetFunctionName sets the FunctionName field's value.
7976func (s *FunctionConfiguration) SetFunctionName(v string) *FunctionConfiguration {
7977	s.FunctionName = &v
7978	return s
7979}
7980
7981// SetHandler sets the Handler field's value.
7982func (s *FunctionConfiguration) SetHandler(v string) *FunctionConfiguration {
7983	s.Handler = &v
7984	return s
7985}
7986
7987// SetKMSKeyArn sets the KMSKeyArn field's value.
7988func (s *FunctionConfiguration) SetKMSKeyArn(v string) *FunctionConfiguration {
7989	s.KMSKeyArn = &v
7990	return s
7991}
7992
7993// SetLastModified sets the LastModified field's value.
7994func (s *FunctionConfiguration) SetLastModified(v string) *FunctionConfiguration {
7995	s.LastModified = &v
7996	return s
7997}
7998
7999// SetLastUpdateStatus sets the LastUpdateStatus field's value.
8000func (s *FunctionConfiguration) SetLastUpdateStatus(v string) *FunctionConfiguration {
8001	s.LastUpdateStatus = &v
8002	return s
8003}
8004
8005// SetLastUpdateStatusReason sets the LastUpdateStatusReason field's value.
8006func (s *FunctionConfiguration) SetLastUpdateStatusReason(v string) *FunctionConfiguration {
8007	s.LastUpdateStatusReason = &v
8008	return s
8009}
8010
8011// SetLastUpdateStatusReasonCode sets the LastUpdateStatusReasonCode field's value.
8012func (s *FunctionConfiguration) SetLastUpdateStatusReasonCode(v string) *FunctionConfiguration {
8013	s.LastUpdateStatusReasonCode = &v
8014	return s
8015}
8016
8017// SetLayers sets the Layers field's value.
8018func (s *FunctionConfiguration) SetLayers(v []*Layer) *FunctionConfiguration {
8019	s.Layers = v
8020	return s
8021}
8022
8023// SetMasterArn sets the MasterArn field's value.
8024func (s *FunctionConfiguration) SetMasterArn(v string) *FunctionConfiguration {
8025	s.MasterArn = &v
8026	return s
8027}
8028
8029// SetMemorySize sets the MemorySize field's value.
8030func (s *FunctionConfiguration) SetMemorySize(v int64) *FunctionConfiguration {
8031	s.MemorySize = &v
8032	return s
8033}
8034
8035// SetRevisionId sets the RevisionId field's value.
8036func (s *FunctionConfiguration) SetRevisionId(v string) *FunctionConfiguration {
8037	s.RevisionId = &v
8038	return s
8039}
8040
8041// SetRole sets the Role field's value.
8042func (s *FunctionConfiguration) SetRole(v string) *FunctionConfiguration {
8043	s.Role = &v
8044	return s
8045}
8046
8047// SetRuntime sets the Runtime field's value.
8048func (s *FunctionConfiguration) SetRuntime(v string) *FunctionConfiguration {
8049	s.Runtime = &v
8050	return s
8051}
8052
8053// SetState sets the State field's value.
8054func (s *FunctionConfiguration) SetState(v string) *FunctionConfiguration {
8055	s.State = &v
8056	return s
8057}
8058
8059// SetStateReason sets the StateReason field's value.
8060func (s *FunctionConfiguration) SetStateReason(v string) *FunctionConfiguration {
8061	s.StateReason = &v
8062	return s
8063}
8064
8065// SetStateReasonCode sets the StateReasonCode field's value.
8066func (s *FunctionConfiguration) SetStateReasonCode(v string) *FunctionConfiguration {
8067	s.StateReasonCode = &v
8068	return s
8069}
8070
8071// SetTimeout sets the Timeout field's value.
8072func (s *FunctionConfiguration) SetTimeout(v int64) *FunctionConfiguration {
8073	s.Timeout = &v
8074	return s
8075}
8076
8077// SetTracingConfig sets the TracingConfig field's value.
8078func (s *FunctionConfiguration) SetTracingConfig(v *TracingConfigResponse) *FunctionConfiguration {
8079	s.TracingConfig = v
8080	return s
8081}
8082
8083// SetVersion sets the Version field's value.
8084func (s *FunctionConfiguration) SetVersion(v string) *FunctionConfiguration {
8085	s.Version = &v
8086	return s
8087}
8088
8089// SetVpcConfig sets the VpcConfig field's value.
8090func (s *FunctionConfiguration) SetVpcConfig(v *VpcConfigResponse) *FunctionConfiguration {
8091	s.VpcConfig = v
8092	return s
8093}
8094
8095type FunctionEventInvokeConfig struct {
8096	_ struct{} `type:"structure"`
8097
8098	// A destination for events after they have been sent to a function for processing.
8099	//
8100	// Destinations
8101	//
8102	//    * Function - The Amazon Resource Name (ARN) of a Lambda function.
8103	//
8104	//    * Queue - The ARN of an SQS queue.
8105	//
8106	//    * Topic - The ARN of an SNS topic.
8107	//
8108	//    * Event Bus - The ARN of an Amazon EventBridge event bus.
8109	DestinationConfig *DestinationConfig `type:"structure"`
8110
8111	// The Amazon Resource Name (ARN) of the function.
8112	FunctionArn *string `type:"string"`
8113
8114	// The date and time that the configuration was last updated.
8115	LastModified *time.Time `type:"timestamp"`
8116
8117	// The maximum age of a request that Lambda sends to a function for processing.
8118	MaximumEventAgeInSeconds *int64 `min:"60" type:"integer"`
8119
8120	// The maximum number of times to retry when the function returns an error.
8121	MaximumRetryAttempts *int64 `type:"integer"`
8122}
8123
8124// String returns the string representation
8125func (s FunctionEventInvokeConfig) String() string {
8126	return awsutil.Prettify(s)
8127}
8128
8129// GoString returns the string representation
8130func (s FunctionEventInvokeConfig) GoString() string {
8131	return s.String()
8132}
8133
8134// SetDestinationConfig sets the DestinationConfig field's value.
8135func (s *FunctionEventInvokeConfig) SetDestinationConfig(v *DestinationConfig) *FunctionEventInvokeConfig {
8136	s.DestinationConfig = v
8137	return s
8138}
8139
8140// SetFunctionArn sets the FunctionArn field's value.
8141func (s *FunctionEventInvokeConfig) SetFunctionArn(v string) *FunctionEventInvokeConfig {
8142	s.FunctionArn = &v
8143	return s
8144}
8145
8146// SetLastModified sets the LastModified field's value.
8147func (s *FunctionEventInvokeConfig) SetLastModified(v time.Time) *FunctionEventInvokeConfig {
8148	s.LastModified = &v
8149	return s
8150}
8151
8152// SetMaximumEventAgeInSeconds sets the MaximumEventAgeInSeconds field's value.
8153func (s *FunctionEventInvokeConfig) SetMaximumEventAgeInSeconds(v int64) *FunctionEventInvokeConfig {
8154	s.MaximumEventAgeInSeconds = &v
8155	return s
8156}
8157
8158// SetMaximumRetryAttempts sets the MaximumRetryAttempts field's value.
8159func (s *FunctionEventInvokeConfig) SetMaximumRetryAttempts(v int64) *FunctionEventInvokeConfig {
8160	s.MaximumRetryAttempts = &v
8161	return s
8162}
8163
8164type GetAccountSettingsInput struct {
8165	_ struct{} `type:"structure"`
8166}
8167
8168// String returns the string representation
8169func (s GetAccountSettingsInput) String() string {
8170	return awsutil.Prettify(s)
8171}
8172
8173// GoString returns the string representation
8174func (s GetAccountSettingsInput) GoString() string {
8175	return s.String()
8176}
8177
8178type GetAccountSettingsOutput struct {
8179	_ struct{} `type:"structure"`
8180
8181	// Limits that are related to concurrency and code storage.
8182	AccountLimit *AccountLimit `type:"structure"`
8183
8184	// The number of functions and amount of storage in use.
8185	AccountUsage *AccountUsage `type:"structure"`
8186}
8187
8188// String returns the string representation
8189func (s GetAccountSettingsOutput) String() string {
8190	return awsutil.Prettify(s)
8191}
8192
8193// GoString returns the string representation
8194func (s GetAccountSettingsOutput) GoString() string {
8195	return s.String()
8196}
8197
8198// SetAccountLimit sets the AccountLimit field's value.
8199func (s *GetAccountSettingsOutput) SetAccountLimit(v *AccountLimit) *GetAccountSettingsOutput {
8200	s.AccountLimit = v
8201	return s
8202}
8203
8204// SetAccountUsage sets the AccountUsage field's value.
8205func (s *GetAccountSettingsOutput) SetAccountUsage(v *AccountUsage) *GetAccountSettingsOutput {
8206	s.AccountUsage = v
8207	return s
8208}
8209
8210type GetAliasInput struct {
8211	_ struct{} `type:"structure"`
8212
8213	// The name of the Lambda function.
8214	//
8215	// Name formats
8216	//
8217	//    * Function name - MyFunction.
8218	//
8219	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.
8220	//
8221	//    * Partial ARN - 123456789012:function:MyFunction.
8222	//
8223	// The length constraint applies only to the full ARN. If you specify only the
8224	// function name, it is limited to 64 characters in length.
8225	//
8226	// FunctionName is a required field
8227	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
8228
8229	// The name of the alias.
8230	//
8231	// Name is a required field
8232	Name *string `location:"uri" locationName:"Name" min:"1" type:"string" required:"true"`
8233}
8234
8235// String returns the string representation
8236func (s GetAliasInput) String() string {
8237	return awsutil.Prettify(s)
8238}
8239
8240// GoString returns the string representation
8241func (s GetAliasInput) GoString() string {
8242	return s.String()
8243}
8244
8245// Validate inspects the fields of the type to determine if they are valid.
8246func (s *GetAliasInput) Validate() error {
8247	invalidParams := request.ErrInvalidParams{Context: "GetAliasInput"}
8248	if s.FunctionName == nil {
8249		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
8250	}
8251	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
8252		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
8253	}
8254	if s.Name == nil {
8255		invalidParams.Add(request.NewErrParamRequired("Name"))
8256	}
8257	if s.Name != nil && len(*s.Name) < 1 {
8258		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
8259	}
8260
8261	if invalidParams.Len() > 0 {
8262		return invalidParams
8263	}
8264	return nil
8265}
8266
8267// SetFunctionName sets the FunctionName field's value.
8268func (s *GetAliasInput) SetFunctionName(v string) *GetAliasInput {
8269	s.FunctionName = &v
8270	return s
8271}
8272
8273// SetName sets the Name field's value.
8274func (s *GetAliasInput) SetName(v string) *GetAliasInput {
8275	s.Name = &v
8276	return s
8277}
8278
8279type GetEventSourceMappingInput struct {
8280	_ struct{} `type:"structure"`
8281
8282	// The identifier of the event source mapping.
8283	//
8284	// UUID is a required field
8285	UUID *string `location:"uri" locationName:"UUID" type:"string" required:"true"`
8286}
8287
8288// String returns the string representation
8289func (s GetEventSourceMappingInput) String() string {
8290	return awsutil.Prettify(s)
8291}
8292
8293// GoString returns the string representation
8294func (s GetEventSourceMappingInput) GoString() string {
8295	return s.String()
8296}
8297
8298// Validate inspects the fields of the type to determine if they are valid.
8299func (s *GetEventSourceMappingInput) Validate() error {
8300	invalidParams := request.ErrInvalidParams{Context: "GetEventSourceMappingInput"}
8301	if s.UUID == nil {
8302		invalidParams.Add(request.NewErrParamRequired("UUID"))
8303	}
8304	if s.UUID != nil && len(*s.UUID) < 1 {
8305		invalidParams.Add(request.NewErrParamMinLen("UUID", 1))
8306	}
8307
8308	if invalidParams.Len() > 0 {
8309		return invalidParams
8310	}
8311	return nil
8312}
8313
8314// SetUUID sets the UUID field's value.
8315func (s *GetEventSourceMappingInput) SetUUID(v string) *GetEventSourceMappingInput {
8316	s.UUID = &v
8317	return s
8318}
8319
8320type GetFunctionConcurrencyInput struct {
8321	_ struct{} `type:"structure"`
8322
8323	// The name of the Lambda function.
8324	//
8325	// Name formats
8326	//
8327	//    * Function name - my-function.
8328	//
8329	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
8330	//
8331	//    * Partial ARN - 123456789012:function:my-function.
8332	//
8333	// The length constraint applies only to the full ARN. If you specify only the
8334	// function name, it is limited to 64 characters in length.
8335	//
8336	// FunctionName is a required field
8337	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
8338}
8339
8340// String returns the string representation
8341func (s GetFunctionConcurrencyInput) String() string {
8342	return awsutil.Prettify(s)
8343}
8344
8345// GoString returns the string representation
8346func (s GetFunctionConcurrencyInput) GoString() string {
8347	return s.String()
8348}
8349
8350// Validate inspects the fields of the type to determine if they are valid.
8351func (s *GetFunctionConcurrencyInput) Validate() error {
8352	invalidParams := request.ErrInvalidParams{Context: "GetFunctionConcurrencyInput"}
8353	if s.FunctionName == nil {
8354		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
8355	}
8356	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
8357		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
8358	}
8359
8360	if invalidParams.Len() > 0 {
8361		return invalidParams
8362	}
8363	return nil
8364}
8365
8366// SetFunctionName sets the FunctionName field's value.
8367func (s *GetFunctionConcurrencyInput) SetFunctionName(v string) *GetFunctionConcurrencyInput {
8368	s.FunctionName = &v
8369	return s
8370}
8371
8372type GetFunctionConcurrencyOutput struct {
8373	_ struct{} `type:"structure"`
8374
8375	// The number of simultaneous executions that are reserved for the function.
8376	ReservedConcurrentExecutions *int64 `type:"integer"`
8377}
8378
8379// String returns the string representation
8380func (s GetFunctionConcurrencyOutput) String() string {
8381	return awsutil.Prettify(s)
8382}
8383
8384// GoString returns the string representation
8385func (s GetFunctionConcurrencyOutput) GoString() string {
8386	return s.String()
8387}
8388
8389// SetReservedConcurrentExecutions sets the ReservedConcurrentExecutions field's value.
8390func (s *GetFunctionConcurrencyOutput) SetReservedConcurrentExecutions(v int64) *GetFunctionConcurrencyOutput {
8391	s.ReservedConcurrentExecutions = &v
8392	return s
8393}
8394
8395type GetFunctionConfigurationInput struct {
8396	_ struct{} `type:"structure"`
8397
8398	// The name of the Lambda function, version, or alias.
8399	//
8400	// Name formats
8401	//
8402	//    * Function name - my-function (name-only), my-function:v1 (with alias).
8403	//
8404	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
8405	//
8406	//    * Partial ARN - 123456789012:function:my-function.
8407	//
8408	// You can append a version number or alias to any of the formats. The length
8409	// constraint applies only to the full ARN. If you specify only the function
8410	// name, it is limited to 64 characters in length.
8411	//
8412	// FunctionName is a required field
8413	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
8414
8415	// Specify a version or alias to get details about a published version of the
8416	// function.
8417	Qualifier *string `location:"querystring" locationName:"Qualifier" min:"1" type:"string"`
8418}
8419
8420// String returns the string representation
8421func (s GetFunctionConfigurationInput) String() string {
8422	return awsutil.Prettify(s)
8423}
8424
8425// GoString returns the string representation
8426func (s GetFunctionConfigurationInput) GoString() string {
8427	return s.String()
8428}
8429
8430// Validate inspects the fields of the type to determine if they are valid.
8431func (s *GetFunctionConfigurationInput) Validate() error {
8432	invalidParams := request.ErrInvalidParams{Context: "GetFunctionConfigurationInput"}
8433	if s.FunctionName == nil {
8434		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
8435	}
8436	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
8437		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
8438	}
8439	if s.Qualifier != nil && len(*s.Qualifier) < 1 {
8440		invalidParams.Add(request.NewErrParamMinLen("Qualifier", 1))
8441	}
8442
8443	if invalidParams.Len() > 0 {
8444		return invalidParams
8445	}
8446	return nil
8447}
8448
8449// SetFunctionName sets the FunctionName field's value.
8450func (s *GetFunctionConfigurationInput) SetFunctionName(v string) *GetFunctionConfigurationInput {
8451	s.FunctionName = &v
8452	return s
8453}
8454
8455// SetQualifier sets the Qualifier field's value.
8456func (s *GetFunctionConfigurationInput) SetQualifier(v string) *GetFunctionConfigurationInput {
8457	s.Qualifier = &v
8458	return s
8459}
8460
8461type GetFunctionEventInvokeConfigInput struct {
8462	_ struct{} `type:"structure"`
8463
8464	// The name of the Lambda function, version, or alias.
8465	//
8466	// Name formats
8467	//
8468	//    * Function name - my-function (name-only), my-function:v1 (with alias).
8469	//
8470	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
8471	//
8472	//    * Partial ARN - 123456789012:function:my-function.
8473	//
8474	// You can append a version number or alias to any of the formats. The length
8475	// constraint applies only to the full ARN. If you specify only the function
8476	// name, it is limited to 64 characters in length.
8477	//
8478	// FunctionName is a required field
8479	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
8480
8481	// A version number or alias name.
8482	Qualifier *string `location:"querystring" locationName:"Qualifier" min:"1" type:"string"`
8483}
8484
8485// String returns the string representation
8486func (s GetFunctionEventInvokeConfigInput) String() string {
8487	return awsutil.Prettify(s)
8488}
8489
8490// GoString returns the string representation
8491func (s GetFunctionEventInvokeConfigInput) GoString() string {
8492	return s.String()
8493}
8494
8495// Validate inspects the fields of the type to determine if they are valid.
8496func (s *GetFunctionEventInvokeConfigInput) Validate() error {
8497	invalidParams := request.ErrInvalidParams{Context: "GetFunctionEventInvokeConfigInput"}
8498	if s.FunctionName == nil {
8499		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
8500	}
8501	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
8502		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
8503	}
8504	if s.Qualifier != nil && len(*s.Qualifier) < 1 {
8505		invalidParams.Add(request.NewErrParamMinLen("Qualifier", 1))
8506	}
8507
8508	if invalidParams.Len() > 0 {
8509		return invalidParams
8510	}
8511	return nil
8512}
8513
8514// SetFunctionName sets the FunctionName field's value.
8515func (s *GetFunctionEventInvokeConfigInput) SetFunctionName(v string) *GetFunctionEventInvokeConfigInput {
8516	s.FunctionName = &v
8517	return s
8518}
8519
8520// SetQualifier sets the Qualifier field's value.
8521func (s *GetFunctionEventInvokeConfigInput) SetQualifier(v string) *GetFunctionEventInvokeConfigInput {
8522	s.Qualifier = &v
8523	return s
8524}
8525
8526type GetFunctionEventInvokeConfigOutput struct {
8527	_ struct{} `type:"structure"`
8528
8529	// A destination for events after they have been sent to a function for processing.
8530	//
8531	// Destinations
8532	//
8533	//    * Function - The Amazon Resource Name (ARN) of a Lambda function.
8534	//
8535	//    * Queue - The ARN of an SQS queue.
8536	//
8537	//    * Topic - The ARN of an SNS topic.
8538	//
8539	//    * Event Bus - The ARN of an Amazon EventBridge event bus.
8540	DestinationConfig *DestinationConfig `type:"structure"`
8541
8542	// The Amazon Resource Name (ARN) of the function.
8543	FunctionArn *string `type:"string"`
8544
8545	// The date and time that the configuration was last updated.
8546	LastModified *time.Time `type:"timestamp"`
8547
8548	// The maximum age of a request that Lambda sends to a function for processing.
8549	MaximumEventAgeInSeconds *int64 `min:"60" type:"integer"`
8550
8551	// The maximum number of times to retry when the function returns an error.
8552	MaximumRetryAttempts *int64 `type:"integer"`
8553}
8554
8555// String returns the string representation
8556func (s GetFunctionEventInvokeConfigOutput) String() string {
8557	return awsutil.Prettify(s)
8558}
8559
8560// GoString returns the string representation
8561func (s GetFunctionEventInvokeConfigOutput) GoString() string {
8562	return s.String()
8563}
8564
8565// SetDestinationConfig sets the DestinationConfig field's value.
8566func (s *GetFunctionEventInvokeConfigOutput) SetDestinationConfig(v *DestinationConfig) *GetFunctionEventInvokeConfigOutput {
8567	s.DestinationConfig = v
8568	return s
8569}
8570
8571// SetFunctionArn sets the FunctionArn field's value.
8572func (s *GetFunctionEventInvokeConfigOutput) SetFunctionArn(v string) *GetFunctionEventInvokeConfigOutput {
8573	s.FunctionArn = &v
8574	return s
8575}
8576
8577// SetLastModified sets the LastModified field's value.
8578func (s *GetFunctionEventInvokeConfigOutput) SetLastModified(v time.Time) *GetFunctionEventInvokeConfigOutput {
8579	s.LastModified = &v
8580	return s
8581}
8582
8583// SetMaximumEventAgeInSeconds sets the MaximumEventAgeInSeconds field's value.
8584func (s *GetFunctionEventInvokeConfigOutput) SetMaximumEventAgeInSeconds(v int64) *GetFunctionEventInvokeConfigOutput {
8585	s.MaximumEventAgeInSeconds = &v
8586	return s
8587}
8588
8589// SetMaximumRetryAttempts sets the MaximumRetryAttempts field's value.
8590func (s *GetFunctionEventInvokeConfigOutput) SetMaximumRetryAttempts(v int64) *GetFunctionEventInvokeConfigOutput {
8591	s.MaximumRetryAttempts = &v
8592	return s
8593}
8594
8595type GetFunctionInput struct {
8596	_ struct{} `type:"structure"`
8597
8598	// The name of the Lambda function, version, or alias.
8599	//
8600	// Name formats
8601	//
8602	//    * Function name - my-function (name-only), my-function:v1 (with alias).
8603	//
8604	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
8605	//
8606	//    * Partial ARN - 123456789012:function:my-function.
8607	//
8608	// You can append a version number or alias to any of the formats. The length
8609	// constraint applies only to the full ARN. If you specify only the function
8610	// name, it is limited to 64 characters in length.
8611	//
8612	// FunctionName is a required field
8613	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
8614
8615	// Specify a version or alias to get details about a published version of the
8616	// function.
8617	Qualifier *string `location:"querystring" locationName:"Qualifier" min:"1" type:"string"`
8618}
8619
8620// String returns the string representation
8621func (s GetFunctionInput) String() string {
8622	return awsutil.Prettify(s)
8623}
8624
8625// GoString returns the string representation
8626func (s GetFunctionInput) GoString() string {
8627	return s.String()
8628}
8629
8630// Validate inspects the fields of the type to determine if they are valid.
8631func (s *GetFunctionInput) Validate() error {
8632	invalidParams := request.ErrInvalidParams{Context: "GetFunctionInput"}
8633	if s.FunctionName == nil {
8634		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
8635	}
8636	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
8637		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
8638	}
8639	if s.Qualifier != nil && len(*s.Qualifier) < 1 {
8640		invalidParams.Add(request.NewErrParamMinLen("Qualifier", 1))
8641	}
8642
8643	if invalidParams.Len() > 0 {
8644		return invalidParams
8645	}
8646	return nil
8647}
8648
8649// SetFunctionName sets the FunctionName field's value.
8650func (s *GetFunctionInput) SetFunctionName(v string) *GetFunctionInput {
8651	s.FunctionName = &v
8652	return s
8653}
8654
8655// SetQualifier sets the Qualifier field's value.
8656func (s *GetFunctionInput) SetQualifier(v string) *GetFunctionInput {
8657	s.Qualifier = &v
8658	return s
8659}
8660
8661type GetFunctionOutput struct {
8662	_ struct{} `type:"structure"`
8663
8664	// The deployment package of the function or version.
8665	Code *FunctionCodeLocation `type:"structure"`
8666
8667	// The function's reserved concurrency (https://docs.aws.amazon.com/lambda/latest/dg/concurrent-executions.html).
8668	Concurrency *PutFunctionConcurrencyOutput `type:"structure"`
8669
8670	// The configuration of the function or version.
8671	Configuration *FunctionConfiguration `type:"structure"`
8672
8673	// The function's tags (https://docs.aws.amazon.com/lambda/latest/dg/tagging.html).
8674	Tags map[string]*string `type:"map"`
8675}
8676
8677// String returns the string representation
8678func (s GetFunctionOutput) String() string {
8679	return awsutil.Prettify(s)
8680}
8681
8682// GoString returns the string representation
8683func (s GetFunctionOutput) GoString() string {
8684	return s.String()
8685}
8686
8687// SetCode sets the Code field's value.
8688func (s *GetFunctionOutput) SetCode(v *FunctionCodeLocation) *GetFunctionOutput {
8689	s.Code = v
8690	return s
8691}
8692
8693// SetConcurrency sets the Concurrency field's value.
8694func (s *GetFunctionOutput) SetConcurrency(v *PutFunctionConcurrencyOutput) *GetFunctionOutput {
8695	s.Concurrency = v
8696	return s
8697}
8698
8699// SetConfiguration sets the Configuration field's value.
8700func (s *GetFunctionOutput) SetConfiguration(v *FunctionConfiguration) *GetFunctionOutput {
8701	s.Configuration = v
8702	return s
8703}
8704
8705// SetTags sets the Tags field's value.
8706func (s *GetFunctionOutput) SetTags(v map[string]*string) *GetFunctionOutput {
8707	s.Tags = v
8708	return s
8709}
8710
8711type GetLayerVersionByArnInput struct {
8712	_ struct{} `type:"structure"`
8713
8714	// The ARN of the layer version.
8715	//
8716	// Arn is a required field
8717	Arn *string `location:"querystring" locationName:"Arn" min:"1" type:"string" required:"true"`
8718}
8719
8720// String returns the string representation
8721func (s GetLayerVersionByArnInput) String() string {
8722	return awsutil.Prettify(s)
8723}
8724
8725// GoString returns the string representation
8726func (s GetLayerVersionByArnInput) GoString() string {
8727	return s.String()
8728}
8729
8730// Validate inspects the fields of the type to determine if they are valid.
8731func (s *GetLayerVersionByArnInput) Validate() error {
8732	invalidParams := request.ErrInvalidParams{Context: "GetLayerVersionByArnInput"}
8733	if s.Arn == nil {
8734		invalidParams.Add(request.NewErrParamRequired("Arn"))
8735	}
8736	if s.Arn != nil && len(*s.Arn) < 1 {
8737		invalidParams.Add(request.NewErrParamMinLen("Arn", 1))
8738	}
8739
8740	if invalidParams.Len() > 0 {
8741		return invalidParams
8742	}
8743	return nil
8744}
8745
8746// SetArn sets the Arn field's value.
8747func (s *GetLayerVersionByArnInput) SetArn(v string) *GetLayerVersionByArnInput {
8748	s.Arn = &v
8749	return s
8750}
8751
8752type GetLayerVersionByArnOutput struct {
8753	_ struct{} `type:"structure"`
8754
8755	// The layer's compatible runtimes.
8756	CompatibleRuntimes []*string `type:"list"`
8757
8758	// Details about the layer version.
8759	Content *LayerVersionContentOutput `type:"structure"`
8760
8761	// The date that the layer version was created, in ISO-8601 format (https://www.w3.org/TR/NOTE-datetime)
8762	// (YYYY-MM-DDThh:mm:ss.sTZD).
8763	CreatedDate *string `type:"string"`
8764
8765	// The description of the version.
8766	Description *string `type:"string"`
8767
8768	// The ARN of the layer.
8769	LayerArn *string `min:"1" type:"string"`
8770
8771	// The ARN of the layer version.
8772	LayerVersionArn *string `min:"1" type:"string"`
8773
8774	// The layer's software license.
8775	LicenseInfo *string `type:"string"`
8776
8777	// The version number.
8778	Version *int64 `type:"long"`
8779}
8780
8781// String returns the string representation
8782func (s GetLayerVersionByArnOutput) String() string {
8783	return awsutil.Prettify(s)
8784}
8785
8786// GoString returns the string representation
8787func (s GetLayerVersionByArnOutput) GoString() string {
8788	return s.String()
8789}
8790
8791// SetCompatibleRuntimes sets the CompatibleRuntimes field's value.
8792func (s *GetLayerVersionByArnOutput) SetCompatibleRuntimes(v []*string) *GetLayerVersionByArnOutput {
8793	s.CompatibleRuntimes = v
8794	return s
8795}
8796
8797// SetContent sets the Content field's value.
8798func (s *GetLayerVersionByArnOutput) SetContent(v *LayerVersionContentOutput) *GetLayerVersionByArnOutput {
8799	s.Content = v
8800	return s
8801}
8802
8803// SetCreatedDate sets the CreatedDate field's value.
8804func (s *GetLayerVersionByArnOutput) SetCreatedDate(v string) *GetLayerVersionByArnOutput {
8805	s.CreatedDate = &v
8806	return s
8807}
8808
8809// SetDescription sets the Description field's value.
8810func (s *GetLayerVersionByArnOutput) SetDescription(v string) *GetLayerVersionByArnOutput {
8811	s.Description = &v
8812	return s
8813}
8814
8815// SetLayerArn sets the LayerArn field's value.
8816func (s *GetLayerVersionByArnOutput) SetLayerArn(v string) *GetLayerVersionByArnOutput {
8817	s.LayerArn = &v
8818	return s
8819}
8820
8821// SetLayerVersionArn sets the LayerVersionArn field's value.
8822func (s *GetLayerVersionByArnOutput) SetLayerVersionArn(v string) *GetLayerVersionByArnOutput {
8823	s.LayerVersionArn = &v
8824	return s
8825}
8826
8827// SetLicenseInfo sets the LicenseInfo field's value.
8828func (s *GetLayerVersionByArnOutput) SetLicenseInfo(v string) *GetLayerVersionByArnOutput {
8829	s.LicenseInfo = &v
8830	return s
8831}
8832
8833// SetVersion sets the Version field's value.
8834func (s *GetLayerVersionByArnOutput) SetVersion(v int64) *GetLayerVersionByArnOutput {
8835	s.Version = &v
8836	return s
8837}
8838
8839type GetLayerVersionInput struct {
8840	_ struct{} `type:"structure"`
8841
8842	// The name or Amazon Resource Name (ARN) of the layer.
8843	//
8844	// LayerName is a required field
8845	LayerName *string `location:"uri" locationName:"LayerName" min:"1" type:"string" required:"true"`
8846
8847	// The version number.
8848	//
8849	// VersionNumber is a required field
8850	VersionNumber *int64 `location:"uri" locationName:"VersionNumber" type:"long" required:"true"`
8851}
8852
8853// String returns the string representation
8854func (s GetLayerVersionInput) String() string {
8855	return awsutil.Prettify(s)
8856}
8857
8858// GoString returns the string representation
8859func (s GetLayerVersionInput) GoString() string {
8860	return s.String()
8861}
8862
8863// Validate inspects the fields of the type to determine if they are valid.
8864func (s *GetLayerVersionInput) Validate() error {
8865	invalidParams := request.ErrInvalidParams{Context: "GetLayerVersionInput"}
8866	if s.LayerName == nil {
8867		invalidParams.Add(request.NewErrParamRequired("LayerName"))
8868	}
8869	if s.LayerName != nil && len(*s.LayerName) < 1 {
8870		invalidParams.Add(request.NewErrParamMinLen("LayerName", 1))
8871	}
8872	if s.VersionNumber == nil {
8873		invalidParams.Add(request.NewErrParamRequired("VersionNumber"))
8874	}
8875
8876	if invalidParams.Len() > 0 {
8877		return invalidParams
8878	}
8879	return nil
8880}
8881
8882// SetLayerName sets the LayerName field's value.
8883func (s *GetLayerVersionInput) SetLayerName(v string) *GetLayerVersionInput {
8884	s.LayerName = &v
8885	return s
8886}
8887
8888// SetVersionNumber sets the VersionNumber field's value.
8889func (s *GetLayerVersionInput) SetVersionNumber(v int64) *GetLayerVersionInput {
8890	s.VersionNumber = &v
8891	return s
8892}
8893
8894type GetLayerVersionOutput struct {
8895	_ struct{} `type:"structure"`
8896
8897	// The layer's compatible runtimes.
8898	CompatibleRuntimes []*string `type:"list"`
8899
8900	// Details about the layer version.
8901	Content *LayerVersionContentOutput `type:"structure"`
8902
8903	// The date that the layer version was created, in ISO-8601 format (https://www.w3.org/TR/NOTE-datetime)
8904	// (YYYY-MM-DDThh:mm:ss.sTZD).
8905	CreatedDate *string `type:"string"`
8906
8907	// The description of the version.
8908	Description *string `type:"string"`
8909
8910	// The ARN of the layer.
8911	LayerArn *string `min:"1" type:"string"`
8912
8913	// The ARN of the layer version.
8914	LayerVersionArn *string `min:"1" type:"string"`
8915
8916	// The layer's software license.
8917	LicenseInfo *string `type:"string"`
8918
8919	// The version number.
8920	Version *int64 `type:"long"`
8921}
8922
8923// String returns the string representation
8924func (s GetLayerVersionOutput) String() string {
8925	return awsutil.Prettify(s)
8926}
8927
8928// GoString returns the string representation
8929func (s GetLayerVersionOutput) GoString() string {
8930	return s.String()
8931}
8932
8933// SetCompatibleRuntimes sets the CompatibleRuntimes field's value.
8934func (s *GetLayerVersionOutput) SetCompatibleRuntimes(v []*string) *GetLayerVersionOutput {
8935	s.CompatibleRuntimes = v
8936	return s
8937}
8938
8939// SetContent sets the Content field's value.
8940func (s *GetLayerVersionOutput) SetContent(v *LayerVersionContentOutput) *GetLayerVersionOutput {
8941	s.Content = v
8942	return s
8943}
8944
8945// SetCreatedDate sets the CreatedDate field's value.
8946func (s *GetLayerVersionOutput) SetCreatedDate(v string) *GetLayerVersionOutput {
8947	s.CreatedDate = &v
8948	return s
8949}
8950
8951// SetDescription sets the Description field's value.
8952func (s *GetLayerVersionOutput) SetDescription(v string) *GetLayerVersionOutput {
8953	s.Description = &v
8954	return s
8955}
8956
8957// SetLayerArn sets the LayerArn field's value.
8958func (s *GetLayerVersionOutput) SetLayerArn(v string) *GetLayerVersionOutput {
8959	s.LayerArn = &v
8960	return s
8961}
8962
8963// SetLayerVersionArn sets the LayerVersionArn field's value.
8964func (s *GetLayerVersionOutput) SetLayerVersionArn(v string) *GetLayerVersionOutput {
8965	s.LayerVersionArn = &v
8966	return s
8967}
8968
8969// SetLicenseInfo sets the LicenseInfo field's value.
8970func (s *GetLayerVersionOutput) SetLicenseInfo(v string) *GetLayerVersionOutput {
8971	s.LicenseInfo = &v
8972	return s
8973}
8974
8975// SetVersion sets the Version field's value.
8976func (s *GetLayerVersionOutput) SetVersion(v int64) *GetLayerVersionOutput {
8977	s.Version = &v
8978	return s
8979}
8980
8981type GetLayerVersionPolicyInput struct {
8982	_ struct{} `type:"structure"`
8983
8984	// The name or Amazon Resource Name (ARN) of the layer.
8985	//
8986	// LayerName is a required field
8987	LayerName *string `location:"uri" locationName:"LayerName" min:"1" type:"string" required:"true"`
8988
8989	// The version number.
8990	//
8991	// VersionNumber is a required field
8992	VersionNumber *int64 `location:"uri" locationName:"VersionNumber" type:"long" required:"true"`
8993}
8994
8995// String returns the string representation
8996func (s GetLayerVersionPolicyInput) String() string {
8997	return awsutil.Prettify(s)
8998}
8999
9000// GoString returns the string representation
9001func (s GetLayerVersionPolicyInput) GoString() string {
9002	return s.String()
9003}
9004
9005// Validate inspects the fields of the type to determine if they are valid.
9006func (s *GetLayerVersionPolicyInput) Validate() error {
9007	invalidParams := request.ErrInvalidParams{Context: "GetLayerVersionPolicyInput"}
9008	if s.LayerName == nil {
9009		invalidParams.Add(request.NewErrParamRequired("LayerName"))
9010	}
9011	if s.LayerName != nil && len(*s.LayerName) < 1 {
9012		invalidParams.Add(request.NewErrParamMinLen("LayerName", 1))
9013	}
9014	if s.VersionNumber == nil {
9015		invalidParams.Add(request.NewErrParamRequired("VersionNumber"))
9016	}
9017
9018	if invalidParams.Len() > 0 {
9019		return invalidParams
9020	}
9021	return nil
9022}
9023
9024// SetLayerName sets the LayerName field's value.
9025func (s *GetLayerVersionPolicyInput) SetLayerName(v string) *GetLayerVersionPolicyInput {
9026	s.LayerName = &v
9027	return s
9028}
9029
9030// SetVersionNumber sets the VersionNumber field's value.
9031func (s *GetLayerVersionPolicyInput) SetVersionNumber(v int64) *GetLayerVersionPolicyInput {
9032	s.VersionNumber = &v
9033	return s
9034}
9035
9036type GetLayerVersionPolicyOutput struct {
9037	_ struct{} `type:"structure"`
9038
9039	// The policy document.
9040	Policy *string `type:"string"`
9041
9042	// A unique identifier for the current revision of the policy.
9043	RevisionId *string `type:"string"`
9044}
9045
9046// String returns the string representation
9047func (s GetLayerVersionPolicyOutput) String() string {
9048	return awsutil.Prettify(s)
9049}
9050
9051// GoString returns the string representation
9052func (s GetLayerVersionPolicyOutput) GoString() string {
9053	return s.String()
9054}
9055
9056// SetPolicy sets the Policy field's value.
9057func (s *GetLayerVersionPolicyOutput) SetPolicy(v string) *GetLayerVersionPolicyOutput {
9058	s.Policy = &v
9059	return s
9060}
9061
9062// SetRevisionId sets the RevisionId field's value.
9063func (s *GetLayerVersionPolicyOutput) SetRevisionId(v string) *GetLayerVersionPolicyOutput {
9064	s.RevisionId = &v
9065	return s
9066}
9067
9068type GetPolicyInput struct {
9069	_ struct{} `type:"structure"`
9070
9071	// The name of the Lambda function, version, or alias.
9072	//
9073	// Name formats
9074	//
9075	//    * Function name - my-function (name-only), my-function:v1 (with alias).
9076	//
9077	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
9078	//
9079	//    * Partial ARN - 123456789012:function:my-function.
9080	//
9081	// You can append a version number or alias to any of the formats. The length
9082	// constraint applies only to the full ARN. If you specify only the function
9083	// name, it is limited to 64 characters in length.
9084	//
9085	// FunctionName is a required field
9086	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
9087
9088	// Specify a version or alias to get the policy for that resource.
9089	Qualifier *string `location:"querystring" locationName:"Qualifier" min:"1" type:"string"`
9090}
9091
9092// String returns the string representation
9093func (s GetPolicyInput) String() string {
9094	return awsutil.Prettify(s)
9095}
9096
9097// GoString returns the string representation
9098func (s GetPolicyInput) GoString() string {
9099	return s.String()
9100}
9101
9102// Validate inspects the fields of the type to determine if they are valid.
9103func (s *GetPolicyInput) Validate() error {
9104	invalidParams := request.ErrInvalidParams{Context: "GetPolicyInput"}
9105	if s.FunctionName == nil {
9106		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
9107	}
9108	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
9109		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
9110	}
9111	if s.Qualifier != nil && len(*s.Qualifier) < 1 {
9112		invalidParams.Add(request.NewErrParamMinLen("Qualifier", 1))
9113	}
9114
9115	if invalidParams.Len() > 0 {
9116		return invalidParams
9117	}
9118	return nil
9119}
9120
9121// SetFunctionName sets the FunctionName field's value.
9122func (s *GetPolicyInput) SetFunctionName(v string) *GetPolicyInput {
9123	s.FunctionName = &v
9124	return s
9125}
9126
9127// SetQualifier sets the Qualifier field's value.
9128func (s *GetPolicyInput) SetQualifier(v string) *GetPolicyInput {
9129	s.Qualifier = &v
9130	return s
9131}
9132
9133type GetPolicyOutput struct {
9134	_ struct{} `type:"structure"`
9135
9136	// The resource-based policy.
9137	Policy *string `type:"string"`
9138
9139	// A unique identifier for the current revision of the policy.
9140	RevisionId *string `type:"string"`
9141}
9142
9143// String returns the string representation
9144func (s GetPolicyOutput) String() string {
9145	return awsutil.Prettify(s)
9146}
9147
9148// GoString returns the string representation
9149func (s GetPolicyOutput) GoString() string {
9150	return s.String()
9151}
9152
9153// SetPolicy sets the Policy field's value.
9154func (s *GetPolicyOutput) SetPolicy(v string) *GetPolicyOutput {
9155	s.Policy = &v
9156	return s
9157}
9158
9159// SetRevisionId sets the RevisionId field's value.
9160func (s *GetPolicyOutput) SetRevisionId(v string) *GetPolicyOutput {
9161	s.RevisionId = &v
9162	return s
9163}
9164
9165type GetProvisionedConcurrencyConfigInput struct {
9166	_ struct{} `type:"structure"`
9167
9168	// The name of the Lambda function.
9169	//
9170	// Name formats
9171	//
9172	//    * Function name - my-function.
9173	//
9174	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
9175	//
9176	//    * Partial ARN - 123456789012:function:my-function.
9177	//
9178	// The length constraint applies only to the full ARN. If you specify only the
9179	// function name, it is limited to 64 characters in length.
9180	//
9181	// FunctionName is a required field
9182	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
9183
9184	// The version number or alias name.
9185	//
9186	// Qualifier is a required field
9187	Qualifier *string `location:"querystring" locationName:"Qualifier" min:"1" type:"string" required:"true"`
9188}
9189
9190// String returns the string representation
9191func (s GetProvisionedConcurrencyConfigInput) String() string {
9192	return awsutil.Prettify(s)
9193}
9194
9195// GoString returns the string representation
9196func (s GetProvisionedConcurrencyConfigInput) GoString() string {
9197	return s.String()
9198}
9199
9200// Validate inspects the fields of the type to determine if they are valid.
9201func (s *GetProvisionedConcurrencyConfigInput) Validate() error {
9202	invalidParams := request.ErrInvalidParams{Context: "GetProvisionedConcurrencyConfigInput"}
9203	if s.FunctionName == nil {
9204		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
9205	}
9206	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
9207		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
9208	}
9209	if s.Qualifier == nil {
9210		invalidParams.Add(request.NewErrParamRequired("Qualifier"))
9211	}
9212	if s.Qualifier != nil && len(*s.Qualifier) < 1 {
9213		invalidParams.Add(request.NewErrParamMinLen("Qualifier", 1))
9214	}
9215
9216	if invalidParams.Len() > 0 {
9217		return invalidParams
9218	}
9219	return nil
9220}
9221
9222// SetFunctionName sets the FunctionName field's value.
9223func (s *GetProvisionedConcurrencyConfigInput) SetFunctionName(v string) *GetProvisionedConcurrencyConfigInput {
9224	s.FunctionName = &v
9225	return s
9226}
9227
9228// SetQualifier sets the Qualifier field's value.
9229func (s *GetProvisionedConcurrencyConfigInput) SetQualifier(v string) *GetProvisionedConcurrencyConfigInput {
9230	s.Qualifier = &v
9231	return s
9232}
9233
9234type GetProvisionedConcurrencyConfigOutput struct {
9235	_ struct{} `type:"structure"`
9236
9237	// The amount of provisioned concurrency allocated.
9238	AllocatedProvisionedConcurrentExecutions *int64 `type:"integer"`
9239
9240	// The amount of provisioned concurrency available.
9241	AvailableProvisionedConcurrentExecutions *int64 `type:"integer"`
9242
9243	// The date and time that a user last updated the configuration, in ISO 8601
9244	// format (https://www.iso.org/iso-8601-date-and-time-format.html).
9245	LastModified *string `type:"string"`
9246
9247	// The amount of provisioned concurrency requested.
9248	RequestedProvisionedConcurrentExecutions *int64 `min:"1" type:"integer"`
9249
9250	// The status of the allocation process.
9251	Status *string `type:"string" enum:"ProvisionedConcurrencyStatusEnum"`
9252
9253	// For failed allocations, the reason that provisioned concurrency could not
9254	// be allocated.
9255	StatusReason *string `type:"string"`
9256}
9257
9258// String returns the string representation
9259func (s GetProvisionedConcurrencyConfigOutput) String() string {
9260	return awsutil.Prettify(s)
9261}
9262
9263// GoString returns the string representation
9264func (s GetProvisionedConcurrencyConfigOutput) GoString() string {
9265	return s.String()
9266}
9267
9268// SetAllocatedProvisionedConcurrentExecutions sets the AllocatedProvisionedConcurrentExecutions field's value.
9269func (s *GetProvisionedConcurrencyConfigOutput) SetAllocatedProvisionedConcurrentExecutions(v int64) *GetProvisionedConcurrencyConfigOutput {
9270	s.AllocatedProvisionedConcurrentExecutions = &v
9271	return s
9272}
9273
9274// SetAvailableProvisionedConcurrentExecutions sets the AvailableProvisionedConcurrentExecutions field's value.
9275func (s *GetProvisionedConcurrencyConfigOutput) SetAvailableProvisionedConcurrentExecutions(v int64) *GetProvisionedConcurrencyConfigOutput {
9276	s.AvailableProvisionedConcurrentExecutions = &v
9277	return s
9278}
9279
9280// SetLastModified sets the LastModified field's value.
9281func (s *GetProvisionedConcurrencyConfigOutput) SetLastModified(v string) *GetProvisionedConcurrencyConfigOutput {
9282	s.LastModified = &v
9283	return s
9284}
9285
9286// SetRequestedProvisionedConcurrentExecutions sets the RequestedProvisionedConcurrentExecutions field's value.
9287func (s *GetProvisionedConcurrencyConfigOutput) SetRequestedProvisionedConcurrentExecutions(v int64) *GetProvisionedConcurrencyConfigOutput {
9288	s.RequestedProvisionedConcurrentExecutions = &v
9289	return s
9290}
9291
9292// SetStatus sets the Status field's value.
9293func (s *GetProvisionedConcurrencyConfigOutput) SetStatus(v string) *GetProvisionedConcurrencyConfigOutput {
9294	s.Status = &v
9295	return s
9296}
9297
9298// SetStatusReason sets the StatusReason field's value.
9299func (s *GetProvisionedConcurrencyConfigOutput) SetStatusReason(v string) *GetProvisionedConcurrencyConfigOutput {
9300	s.StatusReason = &v
9301	return s
9302}
9303
9304// One of the parameters in the request is invalid.
9305type InvalidParameterValueException struct {
9306	_            struct{}                  `type:"structure"`
9307	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
9308
9309	// The exception message.
9310	Message_ *string `locationName:"message" type:"string"`
9311
9312	// The exception type.
9313	Type *string `type:"string"`
9314}
9315
9316// String returns the string representation
9317func (s InvalidParameterValueException) String() string {
9318	return awsutil.Prettify(s)
9319}
9320
9321// GoString returns the string representation
9322func (s InvalidParameterValueException) GoString() string {
9323	return s.String()
9324}
9325
9326func newErrorInvalidParameterValueException(v protocol.ResponseMetadata) error {
9327	return &InvalidParameterValueException{
9328		RespMetadata: v,
9329	}
9330}
9331
9332// Code returns the exception type name.
9333func (s *InvalidParameterValueException) Code() string {
9334	return "InvalidParameterValueException"
9335}
9336
9337// Message returns the exception's message.
9338func (s *InvalidParameterValueException) Message() string {
9339	if s.Message_ != nil {
9340		return *s.Message_
9341	}
9342	return ""
9343}
9344
9345// OrigErr always returns nil, satisfies awserr.Error interface.
9346func (s *InvalidParameterValueException) OrigErr() error {
9347	return nil
9348}
9349
9350func (s *InvalidParameterValueException) Error() string {
9351	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
9352}
9353
9354// Status code returns the HTTP status code for the request's response error.
9355func (s *InvalidParameterValueException) StatusCode() int {
9356	return s.RespMetadata.StatusCode
9357}
9358
9359// RequestID returns the service's response RequestID for request.
9360func (s *InvalidParameterValueException) RequestID() string {
9361	return s.RespMetadata.RequestID
9362}
9363
9364// The request body could not be parsed as JSON.
9365type InvalidRequestContentException struct {
9366	_            struct{}                  `type:"structure"`
9367	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
9368
9369	// The exception message.
9370	Message_ *string `locationName:"message" type:"string"`
9371
9372	// The exception type.
9373	Type *string `type:"string"`
9374}
9375
9376// String returns the string representation
9377func (s InvalidRequestContentException) String() string {
9378	return awsutil.Prettify(s)
9379}
9380
9381// GoString returns the string representation
9382func (s InvalidRequestContentException) GoString() string {
9383	return s.String()
9384}
9385
9386func newErrorInvalidRequestContentException(v protocol.ResponseMetadata) error {
9387	return &InvalidRequestContentException{
9388		RespMetadata: v,
9389	}
9390}
9391
9392// Code returns the exception type name.
9393func (s *InvalidRequestContentException) Code() string {
9394	return "InvalidRequestContentException"
9395}
9396
9397// Message returns the exception's message.
9398func (s *InvalidRequestContentException) Message() string {
9399	if s.Message_ != nil {
9400		return *s.Message_
9401	}
9402	return ""
9403}
9404
9405// OrigErr always returns nil, satisfies awserr.Error interface.
9406func (s *InvalidRequestContentException) OrigErr() error {
9407	return nil
9408}
9409
9410func (s *InvalidRequestContentException) Error() string {
9411	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
9412}
9413
9414// Status code returns the HTTP status code for the request's response error.
9415func (s *InvalidRequestContentException) StatusCode() int {
9416	return s.RespMetadata.StatusCode
9417}
9418
9419// RequestID returns the service's response RequestID for request.
9420func (s *InvalidRequestContentException) RequestID() string {
9421	return s.RespMetadata.RequestID
9422}
9423
9424// The runtime or runtime version specified is not supported.
9425type InvalidRuntimeException struct {
9426	_            struct{}                  `type:"structure"`
9427	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
9428
9429	Message_ *string `locationName:"Message" type:"string"`
9430
9431	Type *string `type:"string"`
9432}
9433
9434// String returns the string representation
9435func (s InvalidRuntimeException) String() string {
9436	return awsutil.Prettify(s)
9437}
9438
9439// GoString returns the string representation
9440func (s InvalidRuntimeException) GoString() string {
9441	return s.String()
9442}
9443
9444func newErrorInvalidRuntimeException(v protocol.ResponseMetadata) error {
9445	return &InvalidRuntimeException{
9446		RespMetadata: v,
9447	}
9448}
9449
9450// Code returns the exception type name.
9451func (s *InvalidRuntimeException) Code() string {
9452	return "InvalidRuntimeException"
9453}
9454
9455// Message returns the exception's message.
9456func (s *InvalidRuntimeException) Message() string {
9457	if s.Message_ != nil {
9458		return *s.Message_
9459	}
9460	return ""
9461}
9462
9463// OrigErr always returns nil, satisfies awserr.Error interface.
9464func (s *InvalidRuntimeException) OrigErr() error {
9465	return nil
9466}
9467
9468func (s *InvalidRuntimeException) Error() string {
9469	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
9470}
9471
9472// Status code returns the HTTP status code for the request's response error.
9473func (s *InvalidRuntimeException) StatusCode() int {
9474	return s.RespMetadata.StatusCode
9475}
9476
9477// RequestID returns the service's response RequestID for request.
9478func (s *InvalidRuntimeException) RequestID() string {
9479	return s.RespMetadata.RequestID
9480}
9481
9482// The Security Group ID provided in the Lambda function VPC configuration is
9483// invalid.
9484type InvalidSecurityGroupIDException struct {
9485	_            struct{}                  `type:"structure"`
9486	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
9487
9488	Message_ *string `locationName:"Message" type:"string"`
9489
9490	Type *string `type:"string"`
9491}
9492
9493// String returns the string representation
9494func (s InvalidSecurityGroupIDException) String() string {
9495	return awsutil.Prettify(s)
9496}
9497
9498// GoString returns the string representation
9499func (s InvalidSecurityGroupIDException) GoString() string {
9500	return s.String()
9501}
9502
9503func newErrorInvalidSecurityGroupIDException(v protocol.ResponseMetadata) error {
9504	return &InvalidSecurityGroupIDException{
9505		RespMetadata: v,
9506	}
9507}
9508
9509// Code returns the exception type name.
9510func (s *InvalidSecurityGroupIDException) Code() string {
9511	return "InvalidSecurityGroupIDException"
9512}
9513
9514// Message returns the exception's message.
9515func (s *InvalidSecurityGroupIDException) Message() string {
9516	if s.Message_ != nil {
9517		return *s.Message_
9518	}
9519	return ""
9520}
9521
9522// OrigErr always returns nil, satisfies awserr.Error interface.
9523func (s *InvalidSecurityGroupIDException) OrigErr() error {
9524	return nil
9525}
9526
9527func (s *InvalidSecurityGroupIDException) Error() string {
9528	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
9529}
9530
9531// Status code returns the HTTP status code for the request's response error.
9532func (s *InvalidSecurityGroupIDException) StatusCode() int {
9533	return s.RespMetadata.StatusCode
9534}
9535
9536// RequestID returns the service's response RequestID for request.
9537func (s *InvalidSecurityGroupIDException) RequestID() string {
9538	return s.RespMetadata.RequestID
9539}
9540
9541// The Subnet ID provided in the Lambda function VPC configuration is invalid.
9542type InvalidSubnetIDException struct {
9543	_            struct{}                  `type:"structure"`
9544	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
9545
9546	Message_ *string `locationName:"Message" type:"string"`
9547
9548	Type *string `type:"string"`
9549}
9550
9551// String returns the string representation
9552func (s InvalidSubnetIDException) String() string {
9553	return awsutil.Prettify(s)
9554}
9555
9556// GoString returns the string representation
9557func (s InvalidSubnetIDException) GoString() string {
9558	return s.String()
9559}
9560
9561func newErrorInvalidSubnetIDException(v protocol.ResponseMetadata) error {
9562	return &InvalidSubnetIDException{
9563		RespMetadata: v,
9564	}
9565}
9566
9567// Code returns the exception type name.
9568func (s *InvalidSubnetIDException) Code() string {
9569	return "InvalidSubnetIDException"
9570}
9571
9572// Message returns the exception's message.
9573func (s *InvalidSubnetIDException) Message() string {
9574	if s.Message_ != nil {
9575		return *s.Message_
9576	}
9577	return ""
9578}
9579
9580// OrigErr always returns nil, satisfies awserr.Error interface.
9581func (s *InvalidSubnetIDException) OrigErr() error {
9582	return nil
9583}
9584
9585func (s *InvalidSubnetIDException) Error() string {
9586	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
9587}
9588
9589// Status code returns the HTTP status code for the request's response error.
9590func (s *InvalidSubnetIDException) StatusCode() int {
9591	return s.RespMetadata.StatusCode
9592}
9593
9594// RequestID returns the service's response RequestID for request.
9595func (s *InvalidSubnetIDException) RequestID() string {
9596	return s.RespMetadata.RequestID
9597}
9598
9599// AWS Lambda could not unzip the deployment package.
9600type InvalidZipFileException struct {
9601	_            struct{}                  `type:"structure"`
9602	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
9603
9604	Message_ *string `locationName:"Message" type:"string"`
9605
9606	Type *string `type:"string"`
9607}
9608
9609// String returns the string representation
9610func (s InvalidZipFileException) String() string {
9611	return awsutil.Prettify(s)
9612}
9613
9614// GoString returns the string representation
9615func (s InvalidZipFileException) GoString() string {
9616	return s.String()
9617}
9618
9619func newErrorInvalidZipFileException(v protocol.ResponseMetadata) error {
9620	return &InvalidZipFileException{
9621		RespMetadata: v,
9622	}
9623}
9624
9625// Code returns the exception type name.
9626func (s *InvalidZipFileException) Code() string {
9627	return "InvalidZipFileException"
9628}
9629
9630// Message returns the exception's message.
9631func (s *InvalidZipFileException) Message() string {
9632	if s.Message_ != nil {
9633		return *s.Message_
9634	}
9635	return ""
9636}
9637
9638// OrigErr always returns nil, satisfies awserr.Error interface.
9639func (s *InvalidZipFileException) OrigErr() error {
9640	return nil
9641}
9642
9643func (s *InvalidZipFileException) Error() string {
9644	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
9645}
9646
9647// Status code returns the HTTP status code for the request's response error.
9648func (s *InvalidZipFileException) StatusCode() int {
9649	return s.RespMetadata.StatusCode
9650}
9651
9652// RequestID returns the service's response RequestID for request.
9653func (s *InvalidZipFileException) RequestID() string {
9654	return s.RespMetadata.RequestID
9655}
9656
9657// Deprecated: InvokeAsyncInput has been deprecated
9658type InvokeAsyncInput struct {
9659	_ struct{} `deprecated:"true" type:"structure" payload:"InvokeArgs"`
9660
9661	// The name of the Lambda function.
9662	//
9663	// Name formats
9664	//
9665	//    * Function name - my-function.
9666	//
9667	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
9668	//
9669	//    * Partial ARN - 123456789012:function:my-function.
9670	//
9671	// The length constraint applies only to the full ARN. If you specify only the
9672	// function name, it is limited to 64 characters in length.
9673	//
9674	// FunctionName is a required field
9675	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
9676
9677	// The JSON that you want to provide to your Lambda function as input.
9678	//
9679	// InvokeArgs is a required field
9680	InvokeArgs io.ReadSeeker `type:"blob" required:"true"`
9681}
9682
9683// String returns the string representation
9684func (s InvokeAsyncInput) String() string {
9685	return awsutil.Prettify(s)
9686}
9687
9688// GoString returns the string representation
9689func (s InvokeAsyncInput) GoString() string {
9690	return s.String()
9691}
9692
9693// Validate inspects the fields of the type to determine if they are valid.
9694func (s *InvokeAsyncInput) Validate() error {
9695	invalidParams := request.ErrInvalidParams{Context: "InvokeAsyncInput"}
9696	if s.FunctionName == nil {
9697		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
9698	}
9699	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
9700		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
9701	}
9702	if s.InvokeArgs == nil {
9703		invalidParams.Add(request.NewErrParamRequired("InvokeArgs"))
9704	}
9705
9706	if invalidParams.Len() > 0 {
9707		return invalidParams
9708	}
9709	return nil
9710}
9711
9712// SetFunctionName sets the FunctionName field's value.
9713func (s *InvokeAsyncInput) SetFunctionName(v string) *InvokeAsyncInput {
9714	s.FunctionName = &v
9715	return s
9716}
9717
9718// SetInvokeArgs sets the InvokeArgs field's value.
9719func (s *InvokeAsyncInput) SetInvokeArgs(v io.ReadSeeker) *InvokeAsyncInput {
9720	s.InvokeArgs = v
9721	return s
9722}
9723
9724// A success response (202 Accepted) indicates that the request is queued for
9725// invocation.
9726//
9727// Deprecated: InvokeAsyncOutput has been deprecated
9728type InvokeAsyncOutput struct {
9729	_ struct{} `deprecated:"true" type:"structure"`
9730
9731	// The status code.
9732	Status *int64 `location:"statusCode" type:"integer"`
9733}
9734
9735// String returns the string representation
9736func (s InvokeAsyncOutput) String() string {
9737	return awsutil.Prettify(s)
9738}
9739
9740// GoString returns the string representation
9741func (s InvokeAsyncOutput) GoString() string {
9742	return s.String()
9743}
9744
9745// SetStatus sets the Status field's value.
9746func (s *InvokeAsyncOutput) SetStatus(v int64) *InvokeAsyncOutput {
9747	s.Status = &v
9748	return s
9749}
9750
9751type InvokeInput struct {
9752	_ struct{} `type:"structure" payload:"Payload"`
9753
9754	// Up to 3583 bytes of base64-encoded data about the invoking client to pass
9755	// to the function in the context object.
9756	ClientContext *string `location:"header" locationName:"X-Amz-Client-Context" type:"string"`
9757
9758	// The name of the Lambda function, version, or alias.
9759	//
9760	// Name formats
9761	//
9762	//    * Function name - my-function (name-only), my-function:v1 (with alias).
9763	//
9764	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
9765	//
9766	//    * Partial ARN - 123456789012:function:my-function.
9767	//
9768	// You can append a version number or alias to any of the formats. The length
9769	// constraint applies only to the full ARN. If you specify only the function
9770	// name, it is limited to 64 characters in length.
9771	//
9772	// FunctionName is a required field
9773	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
9774
9775	// Choose from the following options.
9776	//
9777	//    * RequestResponse (default) - Invoke the function synchronously. Keep
9778	//    the connection open until the function returns a response or times out.
9779	//    The API response includes the function response and additional data.
9780	//
9781	//    * Event - Invoke the function asynchronously. Send events that fail multiple
9782	//    times to the function's dead-letter queue (if it's configured). The API
9783	//    response only includes a status code.
9784	//
9785	//    * DryRun - Validate parameter values and verify that the user or role
9786	//    has permission to invoke the function.
9787	InvocationType *string `location:"header" locationName:"X-Amz-Invocation-Type" type:"string" enum:"InvocationType"`
9788
9789	// Set to Tail to include the execution log in the response.
9790	LogType *string `location:"header" locationName:"X-Amz-Log-Type" type:"string" enum:"LogType"`
9791
9792	// The JSON that you want to provide to your Lambda function as input.
9793	Payload []byte `type:"blob" sensitive:"true"`
9794
9795	// Specify a version or alias to invoke a published version of the function.
9796	Qualifier *string `location:"querystring" locationName:"Qualifier" min:"1" type:"string"`
9797}
9798
9799// String returns the string representation
9800func (s InvokeInput) String() string {
9801	return awsutil.Prettify(s)
9802}
9803
9804// GoString returns the string representation
9805func (s InvokeInput) GoString() string {
9806	return s.String()
9807}
9808
9809// Validate inspects the fields of the type to determine if they are valid.
9810func (s *InvokeInput) Validate() error {
9811	invalidParams := request.ErrInvalidParams{Context: "InvokeInput"}
9812	if s.FunctionName == nil {
9813		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
9814	}
9815	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
9816		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
9817	}
9818	if s.Qualifier != nil && len(*s.Qualifier) < 1 {
9819		invalidParams.Add(request.NewErrParamMinLen("Qualifier", 1))
9820	}
9821
9822	if invalidParams.Len() > 0 {
9823		return invalidParams
9824	}
9825	return nil
9826}
9827
9828// SetClientContext sets the ClientContext field's value.
9829func (s *InvokeInput) SetClientContext(v string) *InvokeInput {
9830	s.ClientContext = &v
9831	return s
9832}
9833
9834// SetFunctionName sets the FunctionName field's value.
9835func (s *InvokeInput) SetFunctionName(v string) *InvokeInput {
9836	s.FunctionName = &v
9837	return s
9838}
9839
9840// SetInvocationType sets the InvocationType field's value.
9841func (s *InvokeInput) SetInvocationType(v string) *InvokeInput {
9842	s.InvocationType = &v
9843	return s
9844}
9845
9846// SetLogType sets the LogType field's value.
9847func (s *InvokeInput) SetLogType(v string) *InvokeInput {
9848	s.LogType = &v
9849	return s
9850}
9851
9852// SetPayload sets the Payload field's value.
9853func (s *InvokeInput) SetPayload(v []byte) *InvokeInput {
9854	s.Payload = v
9855	return s
9856}
9857
9858// SetQualifier sets the Qualifier field's value.
9859func (s *InvokeInput) SetQualifier(v string) *InvokeInput {
9860	s.Qualifier = &v
9861	return s
9862}
9863
9864type InvokeOutput struct {
9865	_ struct{} `type:"structure" payload:"Payload"`
9866
9867	// The version of the function that executed. When you invoke a function with
9868	// an alias, this indicates which version the alias resolved to.
9869	ExecutedVersion *string `location:"header" locationName:"X-Amz-Executed-Version" min:"1" type:"string"`
9870
9871	// If present, indicates that an error occurred during function execution. Details
9872	// about the error are included in the response payload.
9873	FunctionError *string `location:"header" locationName:"X-Amz-Function-Error" type:"string"`
9874
9875	// The last 4 KB of the execution log, which is base64 encoded.
9876	LogResult *string `location:"header" locationName:"X-Amz-Log-Result" type:"string"`
9877
9878	// The response from the function, or an error object.
9879	Payload []byte `type:"blob" sensitive:"true"`
9880
9881	// The HTTP status code is in the 200 range for a successful request. For the
9882	// RequestResponse invocation type, this status code is 200. For the Event invocation
9883	// type, this status code is 202. For the DryRun invocation type, the status
9884	// code is 204.
9885	StatusCode *int64 `location:"statusCode" type:"integer"`
9886}
9887
9888// String returns the string representation
9889func (s InvokeOutput) String() string {
9890	return awsutil.Prettify(s)
9891}
9892
9893// GoString returns the string representation
9894func (s InvokeOutput) GoString() string {
9895	return s.String()
9896}
9897
9898// SetExecutedVersion sets the ExecutedVersion field's value.
9899func (s *InvokeOutput) SetExecutedVersion(v string) *InvokeOutput {
9900	s.ExecutedVersion = &v
9901	return s
9902}
9903
9904// SetFunctionError sets the FunctionError field's value.
9905func (s *InvokeOutput) SetFunctionError(v string) *InvokeOutput {
9906	s.FunctionError = &v
9907	return s
9908}
9909
9910// SetLogResult sets the LogResult field's value.
9911func (s *InvokeOutput) SetLogResult(v string) *InvokeOutput {
9912	s.LogResult = &v
9913	return s
9914}
9915
9916// SetPayload sets the Payload field's value.
9917func (s *InvokeOutput) SetPayload(v []byte) *InvokeOutput {
9918	s.Payload = v
9919	return s
9920}
9921
9922// SetStatusCode sets the StatusCode field's value.
9923func (s *InvokeOutput) SetStatusCode(v int64) *InvokeOutput {
9924	s.StatusCode = &v
9925	return s
9926}
9927
9928// Lambda was unable to decrypt the environment variables because KMS access
9929// was denied. Check the Lambda function's KMS permissions.
9930type KMSAccessDeniedException struct {
9931	_            struct{}                  `type:"structure"`
9932	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
9933
9934	Message_ *string `locationName:"Message" type:"string"`
9935
9936	Type *string `type:"string"`
9937}
9938
9939// String returns the string representation
9940func (s KMSAccessDeniedException) String() string {
9941	return awsutil.Prettify(s)
9942}
9943
9944// GoString returns the string representation
9945func (s KMSAccessDeniedException) GoString() string {
9946	return s.String()
9947}
9948
9949func newErrorKMSAccessDeniedException(v protocol.ResponseMetadata) error {
9950	return &KMSAccessDeniedException{
9951		RespMetadata: v,
9952	}
9953}
9954
9955// Code returns the exception type name.
9956func (s *KMSAccessDeniedException) Code() string {
9957	return "KMSAccessDeniedException"
9958}
9959
9960// Message returns the exception's message.
9961func (s *KMSAccessDeniedException) Message() string {
9962	if s.Message_ != nil {
9963		return *s.Message_
9964	}
9965	return ""
9966}
9967
9968// OrigErr always returns nil, satisfies awserr.Error interface.
9969func (s *KMSAccessDeniedException) OrigErr() error {
9970	return nil
9971}
9972
9973func (s *KMSAccessDeniedException) Error() string {
9974	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
9975}
9976
9977// Status code returns the HTTP status code for the request's response error.
9978func (s *KMSAccessDeniedException) StatusCode() int {
9979	return s.RespMetadata.StatusCode
9980}
9981
9982// RequestID returns the service's response RequestID for request.
9983func (s *KMSAccessDeniedException) RequestID() string {
9984	return s.RespMetadata.RequestID
9985}
9986
9987// Lambda was unable to decrypt the environment variables because the KMS key
9988// used is disabled. Check the Lambda function's KMS key settings.
9989type KMSDisabledException struct {
9990	_            struct{}                  `type:"structure"`
9991	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
9992
9993	Message_ *string `locationName:"Message" type:"string"`
9994
9995	Type *string `type:"string"`
9996}
9997
9998// String returns the string representation
9999func (s KMSDisabledException) String() string {
10000	return awsutil.Prettify(s)
10001}
10002
10003// GoString returns the string representation
10004func (s KMSDisabledException) GoString() string {
10005	return s.String()
10006}
10007
10008func newErrorKMSDisabledException(v protocol.ResponseMetadata) error {
10009	return &KMSDisabledException{
10010		RespMetadata: v,
10011	}
10012}
10013
10014// Code returns the exception type name.
10015func (s *KMSDisabledException) Code() string {
10016	return "KMSDisabledException"
10017}
10018
10019// Message returns the exception's message.
10020func (s *KMSDisabledException) Message() string {
10021	if s.Message_ != nil {
10022		return *s.Message_
10023	}
10024	return ""
10025}
10026
10027// OrigErr always returns nil, satisfies awserr.Error interface.
10028func (s *KMSDisabledException) OrigErr() error {
10029	return nil
10030}
10031
10032func (s *KMSDisabledException) Error() string {
10033	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
10034}
10035
10036// Status code returns the HTTP status code for the request's response error.
10037func (s *KMSDisabledException) StatusCode() int {
10038	return s.RespMetadata.StatusCode
10039}
10040
10041// RequestID returns the service's response RequestID for request.
10042func (s *KMSDisabledException) RequestID() string {
10043	return s.RespMetadata.RequestID
10044}
10045
10046// Lambda was unable to decrypt the environment variables because the KMS key
10047// used is in an invalid state for Decrypt. Check the function's KMS key settings.
10048type KMSInvalidStateException struct {
10049	_            struct{}                  `type:"structure"`
10050	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
10051
10052	Message_ *string `locationName:"Message" type:"string"`
10053
10054	Type *string `type:"string"`
10055}
10056
10057// String returns the string representation
10058func (s KMSInvalidStateException) String() string {
10059	return awsutil.Prettify(s)
10060}
10061
10062// GoString returns the string representation
10063func (s KMSInvalidStateException) GoString() string {
10064	return s.String()
10065}
10066
10067func newErrorKMSInvalidStateException(v protocol.ResponseMetadata) error {
10068	return &KMSInvalidStateException{
10069		RespMetadata: v,
10070	}
10071}
10072
10073// Code returns the exception type name.
10074func (s *KMSInvalidStateException) Code() string {
10075	return "KMSInvalidStateException"
10076}
10077
10078// Message returns the exception's message.
10079func (s *KMSInvalidStateException) Message() string {
10080	if s.Message_ != nil {
10081		return *s.Message_
10082	}
10083	return ""
10084}
10085
10086// OrigErr always returns nil, satisfies awserr.Error interface.
10087func (s *KMSInvalidStateException) OrigErr() error {
10088	return nil
10089}
10090
10091func (s *KMSInvalidStateException) Error() string {
10092	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
10093}
10094
10095// Status code returns the HTTP status code for the request's response error.
10096func (s *KMSInvalidStateException) StatusCode() int {
10097	return s.RespMetadata.StatusCode
10098}
10099
10100// RequestID returns the service's response RequestID for request.
10101func (s *KMSInvalidStateException) RequestID() string {
10102	return s.RespMetadata.RequestID
10103}
10104
10105// Lambda was unable to decrypt the environment variables because the KMS key
10106// was not found. Check the function's KMS key settings.
10107type KMSNotFoundException struct {
10108	_            struct{}                  `type:"structure"`
10109	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
10110
10111	Message_ *string `locationName:"Message" type:"string"`
10112
10113	Type *string `type:"string"`
10114}
10115
10116// String returns the string representation
10117func (s KMSNotFoundException) String() string {
10118	return awsutil.Prettify(s)
10119}
10120
10121// GoString returns the string representation
10122func (s KMSNotFoundException) GoString() string {
10123	return s.String()
10124}
10125
10126func newErrorKMSNotFoundException(v protocol.ResponseMetadata) error {
10127	return &KMSNotFoundException{
10128		RespMetadata: v,
10129	}
10130}
10131
10132// Code returns the exception type name.
10133func (s *KMSNotFoundException) Code() string {
10134	return "KMSNotFoundException"
10135}
10136
10137// Message returns the exception's message.
10138func (s *KMSNotFoundException) Message() string {
10139	if s.Message_ != nil {
10140		return *s.Message_
10141	}
10142	return ""
10143}
10144
10145// OrigErr always returns nil, satisfies awserr.Error interface.
10146func (s *KMSNotFoundException) OrigErr() error {
10147	return nil
10148}
10149
10150func (s *KMSNotFoundException) Error() string {
10151	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
10152}
10153
10154// Status code returns the HTTP status code for the request's response error.
10155func (s *KMSNotFoundException) StatusCode() int {
10156	return s.RespMetadata.StatusCode
10157}
10158
10159// RequestID returns the service's response RequestID for request.
10160func (s *KMSNotFoundException) RequestID() string {
10161	return s.RespMetadata.RequestID
10162}
10163
10164// An AWS Lambda layer (https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html).
10165type Layer struct {
10166	_ struct{} `type:"structure"`
10167
10168	// The Amazon Resource Name (ARN) of the function layer.
10169	Arn *string `min:"1" type:"string"`
10170
10171	// The size of the layer archive in bytes.
10172	CodeSize *int64 `type:"long"`
10173}
10174
10175// String returns the string representation
10176func (s Layer) String() string {
10177	return awsutil.Prettify(s)
10178}
10179
10180// GoString returns the string representation
10181func (s Layer) GoString() string {
10182	return s.String()
10183}
10184
10185// SetArn sets the Arn field's value.
10186func (s *Layer) SetArn(v string) *Layer {
10187	s.Arn = &v
10188	return s
10189}
10190
10191// SetCodeSize sets the CodeSize field's value.
10192func (s *Layer) SetCodeSize(v int64) *Layer {
10193	s.CodeSize = &v
10194	return s
10195}
10196
10197// A ZIP archive that contains the contents of an AWS Lambda layer (https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html).
10198// You can specify either an Amazon S3 location, or upload a layer archive directly.
10199type LayerVersionContentInput struct {
10200	_ struct{} `type:"structure"`
10201
10202	// The Amazon S3 bucket of the layer archive.
10203	S3Bucket *string `min:"3" type:"string"`
10204
10205	// The Amazon S3 key of the layer archive.
10206	S3Key *string `min:"1" type:"string"`
10207
10208	// For versioned objects, the version of the layer archive object to use.
10209	S3ObjectVersion *string `min:"1" type:"string"`
10210
10211	// The base64-encoded contents of the layer archive. AWS SDK and AWS CLI clients
10212	// handle the encoding for you.
10213	//
10214	// ZipFile is automatically base64 encoded/decoded by the SDK.
10215	ZipFile []byte `type:"blob" sensitive:"true"`
10216}
10217
10218// String returns the string representation
10219func (s LayerVersionContentInput) String() string {
10220	return awsutil.Prettify(s)
10221}
10222
10223// GoString returns the string representation
10224func (s LayerVersionContentInput) GoString() string {
10225	return s.String()
10226}
10227
10228// Validate inspects the fields of the type to determine if they are valid.
10229func (s *LayerVersionContentInput) Validate() error {
10230	invalidParams := request.ErrInvalidParams{Context: "LayerVersionContentInput"}
10231	if s.S3Bucket != nil && len(*s.S3Bucket) < 3 {
10232		invalidParams.Add(request.NewErrParamMinLen("S3Bucket", 3))
10233	}
10234	if s.S3Key != nil && len(*s.S3Key) < 1 {
10235		invalidParams.Add(request.NewErrParamMinLen("S3Key", 1))
10236	}
10237	if s.S3ObjectVersion != nil && len(*s.S3ObjectVersion) < 1 {
10238		invalidParams.Add(request.NewErrParamMinLen("S3ObjectVersion", 1))
10239	}
10240
10241	if invalidParams.Len() > 0 {
10242		return invalidParams
10243	}
10244	return nil
10245}
10246
10247// SetS3Bucket sets the S3Bucket field's value.
10248func (s *LayerVersionContentInput) SetS3Bucket(v string) *LayerVersionContentInput {
10249	s.S3Bucket = &v
10250	return s
10251}
10252
10253// SetS3Key sets the S3Key field's value.
10254func (s *LayerVersionContentInput) SetS3Key(v string) *LayerVersionContentInput {
10255	s.S3Key = &v
10256	return s
10257}
10258
10259// SetS3ObjectVersion sets the S3ObjectVersion field's value.
10260func (s *LayerVersionContentInput) SetS3ObjectVersion(v string) *LayerVersionContentInput {
10261	s.S3ObjectVersion = &v
10262	return s
10263}
10264
10265// SetZipFile sets the ZipFile field's value.
10266func (s *LayerVersionContentInput) SetZipFile(v []byte) *LayerVersionContentInput {
10267	s.ZipFile = v
10268	return s
10269}
10270
10271// Details about a version of an AWS Lambda layer (https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html).
10272type LayerVersionContentOutput struct {
10273	_ struct{} `type:"structure"`
10274
10275	// The SHA-256 hash of the layer archive.
10276	CodeSha256 *string `type:"string"`
10277
10278	// The size of the layer archive in bytes.
10279	CodeSize *int64 `type:"long"`
10280
10281	// A link to the layer archive in Amazon S3 that is valid for 10 minutes.
10282	Location *string `type:"string"`
10283}
10284
10285// String returns the string representation
10286func (s LayerVersionContentOutput) String() string {
10287	return awsutil.Prettify(s)
10288}
10289
10290// GoString returns the string representation
10291func (s LayerVersionContentOutput) GoString() string {
10292	return s.String()
10293}
10294
10295// SetCodeSha256 sets the CodeSha256 field's value.
10296func (s *LayerVersionContentOutput) SetCodeSha256(v string) *LayerVersionContentOutput {
10297	s.CodeSha256 = &v
10298	return s
10299}
10300
10301// SetCodeSize sets the CodeSize field's value.
10302func (s *LayerVersionContentOutput) SetCodeSize(v int64) *LayerVersionContentOutput {
10303	s.CodeSize = &v
10304	return s
10305}
10306
10307// SetLocation sets the Location field's value.
10308func (s *LayerVersionContentOutput) SetLocation(v string) *LayerVersionContentOutput {
10309	s.Location = &v
10310	return s
10311}
10312
10313// Details about a version of an AWS Lambda layer (https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html).
10314type LayerVersionsListItem struct {
10315	_ struct{} `type:"structure"`
10316
10317	// The layer's compatible runtimes.
10318	CompatibleRuntimes []*string `type:"list"`
10319
10320	// The date that the version was created, in ISO 8601 format. For example, 2018-11-27T15:10:45.123+0000.
10321	CreatedDate *string `type:"string"`
10322
10323	// The description of the version.
10324	Description *string `type:"string"`
10325
10326	// The ARN of the layer version.
10327	LayerVersionArn *string `min:"1" type:"string"`
10328
10329	// The layer's open-source license.
10330	LicenseInfo *string `type:"string"`
10331
10332	// The version number.
10333	Version *int64 `type:"long"`
10334}
10335
10336// String returns the string representation
10337func (s LayerVersionsListItem) String() string {
10338	return awsutil.Prettify(s)
10339}
10340
10341// GoString returns the string representation
10342func (s LayerVersionsListItem) GoString() string {
10343	return s.String()
10344}
10345
10346// SetCompatibleRuntimes sets the CompatibleRuntimes field's value.
10347func (s *LayerVersionsListItem) SetCompatibleRuntimes(v []*string) *LayerVersionsListItem {
10348	s.CompatibleRuntimes = v
10349	return s
10350}
10351
10352// SetCreatedDate sets the CreatedDate field's value.
10353func (s *LayerVersionsListItem) SetCreatedDate(v string) *LayerVersionsListItem {
10354	s.CreatedDate = &v
10355	return s
10356}
10357
10358// SetDescription sets the Description field's value.
10359func (s *LayerVersionsListItem) SetDescription(v string) *LayerVersionsListItem {
10360	s.Description = &v
10361	return s
10362}
10363
10364// SetLayerVersionArn sets the LayerVersionArn field's value.
10365func (s *LayerVersionsListItem) SetLayerVersionArn(v string) *LayerVersionsListItem {
10366	s.LayerVersionArn = &v
10367	return s
10368}
10369
10370// SetLicenseInfo sets the LicenseInfo field's value.
10371func (s *LayerVersionsListItem) SetLicenseInfo(v string) *LayerVersionsListItem {
10372	s.LicenseInfo = &v
10373	return s
10374}
10375
10376// SetVersion sets the Version field's value.
10377func (s *LayerVersionsListItem) SetVersion(v int64) *LayerVersionsListItem {
10378	s.Version = &v
10379	return s
10380}
10381
10382// Details about an AWS Lambda layer (https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html).
10383type LayersListItem struct {
10384	_ struct{} `type:"structure"`
10385
10386	// The newest version of the layer.
10387	LatestMatchingVersion *LayerVersionsListItem `type:"structure"`
10388
10389	// The Amazon Resource Name (ARN) of the function layer.
10390	LayerArn *string `min:"1" type:"string"`
10391
10392	// The name of the layer.
10393	LayerName *string `min:"1" type:"string"`
10394}
10395
10396// String returns the string representation
10397func (s LayersListItem) String() string {
10398	return awsutil.Prettify(s)
10399}
10400
10401// GoString returns the string representation
10402func (s LayersListItem) GoString() string {
10403	return s.String()
10404}
10405
10406// SetLatestMatchingVersion sets the LatestMatchingVersion field's value.
10407func (s *LayersListItem) SetLatestMatchingVersion(v *LayerVersionsListItem) *LayersListItem {
10408	s.LatestMatchingVersion = v
10409	return s
10410}
10411
10412// SetLayerArn sets the LayerArn field's value.
10413func (s *LayersListItem) SetLayerArn(v string) *LayersListItem {
10414	s.LayerArn = &v
10415	return s
10416}
10417
10418// SetLayerName sets the LayerName field's value.
10419func (s *LayersListItem) SetLayerName(v string) *LayersListItem {
10420	s.LayerName = &v
10421	return s
10422}
10423
10424type ListAliasesInput struct {
10425	_ struct{} `type:"structure"`
10426
10427	// The name of the Lambda function.
10428	//
10429	// Name formats
10430	//
10431	//    * Function name - MyFunction.
10432	//
10433	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.
10434	//
10435	//    * Partial ARN - 123456789012:function:MyFunction.
10436	//
10437	// The length constraint applies only to the full ARN. If you specify only the
10438	// function name, it is limited to 64 characters in length.
10439	//
10440	// FunctionName is a required field
10441	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
10442
10443	// Specify a function version to only list aliases that invoke that version.
10444	FunctionVersion *string `location:"querystring" locationName:"FunctionVersion" min:"1" type:"string"`
10445
10446	// Specify the pagination token that's returned by a previous request to retrieve
10447	// the next page of results.
10448	Marker *string `location:"querystring" locationName:"Marker" type:"string"`
10449
10450	// Limit the number of aliases returned.
10451	MaxItems *int64 `location:"querystring" locationName:"MaxItems" min:"1" type:"integer"`
10452}
10453
10454// String returns the string representation
10455func (s ListAliasesInput) String() string {
10456	return awsutil.Prettify(s)
10457}
10458
10459// GoString returns the string representation
10460func (s ListAliasesInput) GoString() string {
10461	return s.String()
10462}
10463
10464// Validate inspects the fields of the type to determine if they are valid.
10465func (s *ListAliasesInput) Validate() error {
10466	invalidParams := request.ErrInvalidParams{Context: "ListAliasesInput"}
10467	if s.FunctionName == nil {
10468		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
10469	}
10470	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
10471		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
10472	}
10473	if s.FunctionVersion != nil && len(*s.FunctionVersion) < 1 {
10474		invalidParams.Add(request.NewErrParamMinLen("FunctionVersion", 1))
10475	}
10476	if s.MaxItems != nil && *s.MaxItems < 1 {
10477		invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1))
10478	}
10479
10480	if invalidParams.Len() > 0 {
10481		return invalidParams
10482	}
10483	return nil
10484}
10485
10486// SetFunctionName sets the FunctionName field's value.
10487func (s *ListAliasesInput) SetFunctionName(v string) *ListAliasesInput {
10488	s.FunctionName = &v
10489	return s
10490}
10491
10492// SetFunctionVersion sets the FunctionVersion field's value.
10493func (s *ListAliasesInput) SetFunctionVersion(v string) *ListAliasesInput {
10494	s.FunctionVersion = &v
10495	return s
10496}
10497
10498// SetMarker sets the Marker field's value.
10499func (s *ListAliasesInput) SetMarker(v string) *ListAliasesInput {
10500	s.Marker = &v
10501	return s
10502}
10503
10504// SetMaxItems sets the MaxItems field's value.
10505func (s *ListAliasesInput) SetMaxItems(v int64) *ListAliasesInput {
10506	s.MaxItems = &v
10507	return s
10508}
10509
10510type ListAliasesOutput struct {
10511	_ struct{} `type:"structure"`
10512
10513	// A list of aliases.
10514	Aliases []*AliasConfiguration `type:"list"`
10515
10516	// The pagination token that's included if more results are available.
10517	NextMarker *string `type:"string"`
10518}
10519
10520// String returns the string representation
10521func (s ListAliasesOutput) String() string {
10522	return awsutil.Prettify(s)
10523}
10524
10525// GoString returns the string representation
10526func (s ListAliasesOutput) GoString() string {
10527	return s.String()
10528}
10529
10530// SetAliases sets the Aliases field's value.
10531func (s *ListAliasesOutput) SetAliases(v []*AliasConfiguration) *ListAliasesOutput {
10532	s.Aliases = v
10533	return s
10534}
10535
10536// SetNextMarker sets the NextMarker field's value.
10537func (s *ListAliasesOutput) SetNextMarker(v string) *ListAliasesOutput {
10538	s.NextMarker = &v
10539	return s
10540}
10541
10542type ListEventSourceMappingsInput struct {
10543	_ struct{} `type:"structure"`
10544
10545	// The Amazon Resource Name (ARN) of the event source.
10546	//
10547	//    * Amazon Kinesis - The ARN of the data stream or a stream consumer.
10548	//
10549	//    * Amazon DynamoDB Streams - The ARN of the stream.
10550	//
10551	//    * Amazon Simple Queue Service - The ARN of the queue.
10552	EventSourceArn *string `location:"querystring" locationName:"EventSourceArn" type:"string"`
10553
10554	// The name of the Lambda function.
10555	//
10556	// Name formats
10557	//
10558	//    * Function name - MyFunction.
10559	//
10560	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.
10561	//
10562	//    * Version or Alias ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction:PROD.
10563	//
10564	//    * Partial ARN - 123456789012:function:MyFunction.
10565	//
10566	// The length constraint applies only to the full ARN. If you specify only the
10567	// function name, it's limited to 64 characters in length.
10568	FunctionName *string `location:"querystring" locationName:"FunctionName" min:"1" type:"string"`
10569
10570	// A pagination token returned by a previous call.
10571	Marker *string `location:"querystring" locationName:"Marker" type:"string"`
10572
10573	// The maximum number of event source mappings to return.
10574	MaxItems *int64 `location:"querystring" locationName:"MaxItems" min:"1" type:"integer"`
10575}
10576
10577// String returns the string representation
10578func (s ListEventSourceMappingsInput) String() string {
10579	return awsutil.Prettify(s)
10580}
10581
10582// GoString returns the string representation
10583func (s ListEventSourceMappingsInput) GoString() string {
10584	return s.String()
10585}
10586
10587// Validate inspects the fields of the type to determine if they are valid.
10588func (s *ListEventSourceMappingsInput) Validate() error {
10589	invalidParams := request.ErrInvalidParams{Context: "ListEventSourceMappingsInput"}
10590	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
10591		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
10592	}
10593	if s.MaxItems != nil && *s.MaxItems < 1 {
10594		invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1))
10595	}
10596
10597	if invalidParams.Len() > 0 {
10598		return invalidParams
10599	}
10600	return nil
10601}
10602
10603// SetEventSourceArn sets the EventSourceArn field's value.
10604func (s *ListEventSourceMappingsInput) SetEventSourceArn(v string) *ListEventSourceMappingsInput {
10605	s.EventSourceArn = &v
10606	return s
10607}
10608
10609// SetFunctionName sets the FunctionName field's value.
10610func (s *ListEventSourceMappingsInput) SetFunctionName(v string) *ListEventSourceMappingsInput {
10611	s.FunctionName = &v
10612	return s
10613}
10614
10615// SetMarker sets the Marker field's value.
10616func (s *ListEventSourceMappingsInput) SetMarker(v string) *ListEventSourceMappingsInput {
10617	s.Marker = &v
10618	return s
10619}
10620
10621// SetMaxItems sets the MaxItems field's value.
10622func (s *ListEventSourceMappingsInput) SetMaxItems(v int64) *ListEventSourceMappingsInput {
10623	s.MaxItems = &v
10624	return s
10625}
10626
10627type ListEventSourceMappingsOutput struct {
10628	_ struct{} `type:"structure"`
10629
10630	// A list of event source mappings.
10631	EventSourceMappings []*EventSourceMappingConfiguration `type:"list"`
10632
10633	// A pagination token that's returned when the response doesn't contain all
10634	// event source mappings.
10635	NextMarker *string `type:"string"`
10636}
10637
10638// String returns the string representation
10639func (s ListEventSourceMappingsOutput) String() string {
10640	return awsutil.Prettify(s)
10641}
10642
10643// GoString returns the string representation
10644func (s ListEventSourceMappingsOutput) GoString() string {
10645	return s.String()
10646}
10647
10648// SetEventSourceMappings sets the EventSourceMappings field's value.
10649func (s *ListEventSourceMappingsOutput) SetEventSourceMappings(v []*EventSourceMappingConfiguration) *ListEventSourceMappingsOutput {
10650	s.EventSourceMappings = v
10651	return s
10652}
10653
10654// SetNextMarker sets the NextMarker field's value.
10655func (s *ListEventSourceMappingsOutput) SetNextMarker(v string) *ListEventSourceMappingsOutput {
10656	s.NextMarker = &v
10657	return s
10658}
10659
10660type ListFunctionEventInvokeConfigsInput struct {
10661	_ struct{} `type:"structure"`
10662
10663	// The name of the Lambda function.
10664	//
10665	// Name formats
10666	//
10667	//    * Function name - my-function.
10668	//
10669	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
10670	//
10671	//    * Partial ARN - 123456789012:function:my-function.
10672	//
10673	// The length constraint applies only to the full ARN. If you specify only the
10674	// function name, it is limited to 64 characters in length.
10675	//
10676	// FunctionName is a required field
10677	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
10678
10679	// Specify the pagination token that's returned by a previous request to retrieve
10680	// the next page of results.
10681	Marker *string `location:"querystring" locationName:"Marker" type:"string"`
10682
10683	// The maximum number of configurations to return.
10684	MaxItems *int64 `location:"querystring" locationName:"MaxItems" min:"1" type:"integer"`
10685}
10686
10687// String returns the string representation
10688func (s ListFunctionEventInvokeConfigsInput) String() string {
10689	return awsutil.Prettify(s)
10690}
10691
10692// GoString returns the string representation
10693func (s ListFunctionEventInvokeConfigsInput) GoString() string {
10694	return s.String()
10695}
10696
10697// Validate inspects the fields of the type to determine if they are valid.
10698func (s *ListFunctionEventInvokeConfigsInput) Validate() error {
10699	invalidParams := request.ErrInvalidParams{Context: "ListFunctionEventInvokeConfigsInput"}
10700	if s.FunctionName == nil {
10701		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
10702	}
10703	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
10704		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
10705	}
10706	if s.MaxItems != nil && *s.MaxItems < 1 {
10707		invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1))
10708	}
10709
10710	if invalidParams.Len() > 0 {
10711		return invalidParams
10712	}
10713	return nil
10714}
10715
10716// SetFunctionName sets the FunctionName field's value.
10717func (s *ListFunctionEventInvokeConfigsInput) SetFunctionName(v string) *ListFunctionEventInvokeConfigsInput {
10718	s.FunctionName = &v
10719	return s
10720}
10721
10722// SetMarker sets the Marker field's value.
10723func (s *ListFunctionEventInvokeConfigsInput) SetMarker(v string) *ListFunctionEventInvokeConfigsInput {
10724	s.Marker = &v
10725	return s
10726}
10727
10728// SetMaxItems sets the MaxItems field's value.
10729func (s *ListFunctionEventInvokeConfigsInput) SetMaxItems(v int64) *ListFunctionEventInvokeConfigsInput {
10730	s.MaxItems = &v
10731	return s
10732}
10733
10734type ListFunctionEventInvokeConfigsOutput struct {
10735	_ struct{} `type:"structure"`
10736
10737	// A list of configurations.
10738	FunctionEventInvokeConfigs []*FunctionEventInvokeConfig `type:"list"`
10739
10740	// The pagination token that's included if more results are available.
10741	NextMarker *string `type:"string"`
10742}
10743
10744// String returns the string representation
10745func (s ListFunctionEventInvokeConfigsOutput) String() string {
10746	return awsutil.Prettify(s)
10747}
10748
10749// GoString returns the string representation
10750func (s ListFunctionEventInvokeConfigsOutput) GoString() string {
10751	return s.String()
10752}
10753
10754// SetFunctionEventInvokeConfigs sets the FunctionEventInvokeConfigs field's value.
10755func (s *ListFunctionEventInvokeConfigsOutput) SetFunctionEventInvokeConfigs(v []*FunctionEventInvokeConfig) *ListFunctionEventInvokeConfigsOutput {
10756	s.FunctionEventInvokeConfigs = v
10757	return s
10758}
10759
10760// SetNextMarker sets the NextMarker field's value.
10761func (s *ListFunctionEventInvokeConfigsOutput) SetNextMarker(v string) *ListFunctionEventInvokeConfigsOutput {
10762	s.NextMarker = &v
10763	return s
10764}
10765
10766type ListFunctionsInput struct {
10767	_ struct{} `type:"structure"`
10768
10769	// Set to ALL to include entries for all published versions of each function.
10770	FunctionVersion *string `location:"querystring" locationName:"FunctionVersion" type:"string" enum:"FunctionVersion"`
10771
10772	// Specify the pagination token that's returned by a previous request to retrieve
10773	// the next page of results.
10774	Marker *string `location:"querystring" locationName:"Marker" type:"string"`
10775
10776	// For Lambda@Edge functions, the AWS Region of the master function. For example,
10777	// us-east-1 filters the list of functions to only include Lambda@Edge functions
10778	// replicated from a master function in US East (N. Virginia). If specified,
10779	// you must set FunctionVersion to ALL.
10780	MasterRegion *string `location:"querystring" locationName:"MasterRegion" type:"string"`
10781
10782	// The maximum number of functions to return.
10783	MaxItems *int64 `location:"querystring" locationName:"MaxItems" min:"1" type:"integer"`
10784}
10785
10786// String returns the string representation
10787func (s ListFunctionsInput) String() string {
10788	return awsutil.Prettify(s)
10789}
10790
10791// GoString returns the string representation
10792func (s ListFunctionsInput) GoString() string {
10793	return s.String()
10794}
10795
10796// Validate inspects the fields of the type to determine if they are valid.
10797func (s *ListFunctionsInput) Validate() error {
10798	invalidParams := request.ErrInvalidParams{Context: "ListFunctionsInput"}
10799	if s.MaxItems != nil && *s.MaxItems < 1 {
10800		invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1))
10801	}
10802
10803	if invalidParams.Len() > 0 {
10804		return invalidParams
10805	}
10806	return nil
10807}
10808
10809// SetFunctionVersion sets the FunctionVersion field's value.
10810func (s *ListFunctionsInput) SetFunctionVersion(v string) *ListFunctionsInput {
10811	s.FunctionVersion = &v
10812	return s
10813}
10814
10815// SetMarker sets the Marker field's value.
10816func (s *ListFunctionsInput) SetMarker(v string) *ListFunctionsInput {
10817	s.Marker = &v
10818	return s
10819}
10820
10821// SetMasterRegion sets the MasterRegion field's value.
10822func (s *ListFunctionsInput) SetMasterRegion(v string) *ListFunctionsInput {
10823	s.MasterRegion = &v
10824	return s
10825}
10826
10827// SetMaxItems sets the MaxItems field's value.
10828func (s *ListFunctionsInput) SetMaxItems(v int64) *ListFunctionsInput {
10829	s.MaxItems = &v
10830	return s
10831}
10832
10833// A list of Lambda functions.
10834type ListFunctionsOutput struct {
10835	_ struct{} `type:"structure"`
10836
10837	// A list of Lambda functions.
10838	Functions []*FunctionConfiguration `type:"list"`
10839
10840	// The pagination token that's included if more results are available.
10841	NextMarker *string `type:"string"`
10842}
10843
10844// String returns the string representation
10845func (s ListFunctionsOutput) String() string {
10846	return awsutil.Prettify(s)
10847}
10848
10849// GoString returns the string representation
10850func (s ListFunctionsOutput) GoString() string {
10851	return s.String()
10852}
10853
10854// SetFunctions sets the Functions field's value.
10855func (s *ListFunctionsOutput) SetFunctions(v []*FunctionConfiguration) *ListFunctionsOutput {
10856	s.Functions = v
10857	return s
10858}
10859
10860// SetNextMarker sets the NextMarker field's value.
10861func (s *ListFunctionsOutput) SetNextMarker(v string) *ListFunctionsOutput {
10862	s.NextMarker = &v
10863	return s
10864}
10865
10866type ListLayerVersionsInput struct {
10867	_ struct{} `type:"structure"`
10868
10869	// A runtime identifier. For example, go1.x.
10870	CompatibleRuntime *string `location:"querystring" locationName:"CompatibleRuntime" type:"string" enum:"Runtime"`
10871
10872	// The name or Amazon Resource Name (ARN) of the layer.
10873	//
10874	// LayerName is a required field
10875	LayerName *string `location:"uri" locationName:"LayerName" min:"1" type:"string" required:"true"`
10876
10877	// A pagination token returned by a previous call.
10878	Marker *string `location:"querystring" locationName:"Marker" type:"string"`
10879
10880	// The maximum number of versions to return.
10881	MaxItems *int64 `location:"querystring" locationName:"MaxItems" min:"1" type:"integer"`
10882}
10883
10884// String returns the string representation
10885func (s ListLayerVersionsInput) String() string {
10886	return awsutil.Prettify(s)
10887}
10888
10889// GoString returns the string representation
10890func (s ListLayerVersionsInput) GoString() string {
10891	return s.String()
10892}
10893
10894// Validate inspects the fields of the type to determine if they are valid.
10895func (s *ListLayerVersionsInput) Validate() error {
10896	invalidParams := request.ErrInvalidParams{Context: "ListLayerVersionsInput"}
10897	if s.LayerName == nil {
10898		invalidParams.Add(request.NewErrParamRequired("LayerName"))
10899	}
10900	if s.LayerName != nil && len(*s.LayerName) < 1 {
10901		invalidParams.Add(request.NewErrParamMinLen("LayerName", 1))
10902	}
10903	if s.MaxItems != nil && *s.MaxItems < 1 {
10904		invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1))
10905	}
10906
10907	if invalidParams.Len() > 0 {
10908		return invalidParams
10909	}
10910	return nil
10911}
10912
10913// SetCompatibleRuntime sets the CompatibleRuntime field's value.
10914func (s *ListLayerVersionsInput) SetCompatibleRuntime(v string) *ListLayerVersionsInput {
10915	s.CompatibleRuntime = &v
10916	return s
10917}
10918
10919// SetLayerName sets the LayerName field's value.
10920func (s *ListLayerVersionsInput) SetLayerName(v string) *ListLayerVersionsInput {
10921	s.LayerName = &v
10922	return s
10923}
10924
10925// SetMarker sets the Marker field's value.
10926func (s *ListLayerVersionsInput) SetMarker(v string) *ListLayerVersionsInput {
10927	s.Marker = &v
10928	return s
10929}
10930
10931// SetMaxItems sets the MaxItems field's value.
10932func (s *ListLayerVersionsInput) SetMaxItems(v int64) *ListLayerVersionsInput {
10933	s.MaxItems = &v
10934	return s
10935}
10936
10937type ListLayerVersionsOutput struct {
10938	_ struct{} `type:"structure"`
10939
10940	// A list of versions.
10941	LayerVersions []*LayerVersionsListItem `type:"list"`
10942
10943	// A pagination token returned when the response doesn't contain all versions.
10944	NextMarker *string `type:"string"`
10945}
10946
10947// String returns the string representation
10948func (s ListLayerVersionsOutput) String() string {
10949	return awsutil.Prettify(s)
10950}
10951
10952// GoString returns the string representation
10953func (s ListLayerVersionsOutput) GoString() string {
10954	return s.String()
10955}
10956
10957// SetLayerVersions sets the LayerVersions field's value.
10958func (s *ListLayerVersionsOutput) SetLayerVersions(v []*LayerVersionsListItem) *ListLayerVersionsOutput {
10959	s.LayerVersions = v
10960	return s
10961}
10962
10963// SetNextMarker sets the NextMarker field's value.
10964func (s *ListLayerVersionsOutput) SetNextMarker(v string) *ListLayerVersionsOutput {
10965	s.NextMarker = &v
10966	return s
10967}
10968
10969type ListLayersInput struct {
10970	_ struct{} `type:"structure"`
10971
10972	// A runtime identifier. For example, go1.x.
10973	CompatibleRuntime *string `location:"querystring" locationName:"CompatibleRuntime" type:"string" enum:"Runtime"`
10974
10975	// A pagination token returned by a previous call.
10976	Marker *string `location:"querystring" locationName:"Marker" type:"string"`
10977
10978	// The maximum number of layers to return.
10979	MaxItems *int64 `location:"querystring" locationName:"MaxItems" min:"1" type:"integer"`
10980}
10981
10982// String returns the string representation
10983func (s ListLayersInput) String() string {
10984	return awsutil.Prettify(s)
10985}
10986
10987// GoString returns the string representation
10988func (s ListLayersInput) GoString() string {
10989	return s.String()
10990}
10991
10992// Validate inspects the fields of the type to determine if they are valid.
10993func (s *ListLayersInput) Validate() error {
10994	invalidParams := request.ErrInvalidParams{Context: "ListLayersInput"}
10995	if s.MaxItems != nil && *s.MaxItems < 1 {
10996		invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1))
10997	}
10998
10999	if invalidParams.Len() > 0 {
11000		return invalidParams
11001	}
11002	return nil
11003}
11004
11005// SetCompatibleRuntime sets the CompatibleRuntime field's value.
11006func (s *ListLayersInput) SetCompatibleRuntime(v string) *ListLayersInput {
11007	s.CompatibleRuntime = &v
11008	return s
11009}
11010
11011// SetMarker sets the Marker field's value.
11012func (s *ListLayersInput) SetMarker(v string) *ListLayersInput {
11013	s.Marker = &v
11014	return s
11015}
11016
11017// SetMaxItems sets the MaxItems field's value.
11018func (s *ListLayersInput) SetMaxItems(v int64) *ListLayersInput {
11019	s.MaxItems = &v
11020	return s
11021}
11022
11023type ListLayersOutput struct {
11024	_ struct{} `type:"structure"`
11025
11026	// A list of function layers.
11027	Layers []*LayersListItem `type:"list"`
11028
11029	// A pagination token returned when the response doesn't contain all layers.
11030	NextMarker *string `type:"string"`
11031}
11032
11033// String returns the string representation
11034func (s ListLayersOutput) String() string {
11035	return awsutil.Prettify(s)
11036}
11037
11038// GoString returns the string representation
11039func (s ListLayersOutput) GoString() string {
11040	return s.String()
11041}
11042
11043// SetLayers sets the Layers field's value.
11044func (s *ListLayersOutput) SetLayers(v []*LayersListItem) *ListLayersOutput {
11045	s.Layers = v
11046	return s
11047}
11048
11049// SetNextMarker sets the NextMarker field's value.
11050func (s *ListLayersOutput) SetNextMarker(v string) *ListLayersOutput {
11051	s.NextMarker = &v
11052	return s
11053}
11054
11055type ListProvisionedConcurrencyConfigsInput struct {
11056	_ struct{} `type:"structure"`
11057
11058	// The name of the Lambda function.
11059	//
11060	// Name formats
11061	//
11062	//    * Function name - my-function.
11063	//
11064	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
11065	//
11066	//    * Partial ARN - 123456789012:function:my-function.
11067	//
11068	// The length constraint applies only to the full ARN. If you specify only the
11069	// function name, it is limited to 64 characters in length.
11070	//
11071	// FunctionName is a required field
11072	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
11073
11074	// Specify the pagination token that's returned by a previous request to retrieve
11075	// the next page of results.
11076	Marker *string `location:"querystring" locationName:"Marker" type:"string"`
11077
11078	// Specify a number to limit the number of configurations returned.
11079	MaxItems *int64 `location:"querystring" locationName:"MaxItems" min:"1" type:"integer"`
11080}
11081
11082// String returns the string representation
11083func (s ListProvisionedConcurrencyConfigsInput) String() string {
11084	return awsutil.Prettify(s)
11085}
11086
11087// GoString returns the string representation
11088func (s ListProvisionedConcurrencyConfigsInput) GoString() string {
11089	return s.String()
11090}
11091
11092// Validate inspects the fields of the type to determine if they are valid.
11093func (s *ListProvisionedConcurrencyConfigsInput) Validate() error {
11094	invalidParams := request.ErrInvalidParams{Context: "ListProvisionedConcurrencyConfigsInput"}
11095	if s.FunctionName == nil {
11096		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
11097	}
11098	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
11099		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
11100	}
11101	if s.MaxItems != nil && *s.MaxItems < 1 {
11102		invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1))
11103	}
11104
11105	if invalidParams.Len() > 0 {
11106		return invalidParams
11107	}
11108	return nil
11109}
11110
11111// SetFunctionName sets the FunctionName field's value.
11112func (s *ListProvisionedConcurrencyConfigsInput) SetFunctionName(v string) *ListProvisionedConcurrencyConfigsInput {
11113	s.FunctionName = &v
11114	return s
11115}
11116
11117// SetMarker sets the Marker field's value.
11118func (s *ListProvisionedConcurrencyConfigsInput) SetMarker(v string) *ListProvisionedConcurrencyConfigsInput {
11119	s.Marker = &v
11120	return s
11121}
11122
11123// SetMaxItems sets the MaxItems field's value.
11124func (s *ListProvisionedConcurrencyConfigsInput) SetMaxItems(v int64) *ListProvisionedConcurrencyConfigsInput {
11125	s.MaxItems = &v
11126	return s
11127}
11128
11129type ListProvisionedConcurrencyConfigsOutput struct {
11130	_ struct{} `type:"structure"`
11131
11132	// The pagination token that's included if more results are available.
11133	NextMarker *string `type:"string"`
11134
11135	// A list of provisioned concurrency configurations.
11136	ProvisionedConcurrencyConfigs []*ProvisionedConcurrencyConfigListItem `type:"list"`
11137}
11138
11139// String returns the string representation
11140func (s ListProvisionedConcurrencyConfigsOutput) String() string {
11141	return awsutil.Prettify(s)
11142}
11143
11144// GoString returns the string representation
11145func (s ListProvisionedConcurrencyConfigsOutput) GoString() string {
11146	return s.String()
11147}
11148
11149// SetNextMarker sets the NextMarker field's value.
11150func (s *ListProvisionedConcurrencyConfigsOutput) SetNextMarker(v string) *ListProvisionedConcurrencyConfigsOutput {
11151	s.NextMarker = &v
11152	return s
11153}
11154
11155// SetProvisionedConcurrencyConfigs sets the ProvisionedConcurrencyConfigs field's value.
11156func (s *ListProvisionedConcurrencyConfigsOutput) SetProvisionedConcurrencyConfigs(v []*ProvisionedConcurrencyConfigListItem) *ListProvisionedConcurrencyConfigsOutput {
11157	s.ProvisionedConcurrencyConfigs = v
11158	return s
11159}
11160
11161type ListTagsInput struct {
11162	_ struct{} `type:"structure"`
11163
11164	// The function's Amazon Resource Name (ARN).
11165	//
11166	// Resource is a required field
11167	Resource *string `location:"uri" locationName:"ARN" type:"string" required:"true"`
11168}
11169
11170// String returns the string representation
11171func (s ListTagsInput) String() string {
11172	return awsutil.Prettify(s)
11173}
11174
11175// GoString returns the string representation
11176func (s ListTagsInput) GoString() string {
11177	return s.String()
11178}
11179
11180// Validate inspects the fields of the type to determine if they are valid.
11181func (s *ListTagsInput) Validate() error {
11182	invalidParams := request.ErrInvalidParams{Context: "ListTagsInput"}
11183	if s.Resource == nil {
11184		invalidParams.Add(request.NewErrParamRequired("Resource"))
11185	}
11186	if s.Resource != nil && len(*s.Resource) < 1 {
11187		invalidParams.Add(request.NewErrParamMinLen("Resource", 1))
11188	}
11189
11190	if invalidParams.Len() > 0 {
11191		return invalidParams
11192	}
11193	return nil
11194}
11195
11196// SetResource sets the Resource field's value.
11197func (s *ListTagsInput) SetResource(v string) *ListTagsInput {
11198	s.Resource = &v
11199	return s
11200}
11201
11202type ListTagsOutput struct {
11203	_ struct{} `type:"structure"`
11204
11205	// The function's tags.
11206	Tags map[string]*string `type:"map"`
11207}
11208
11209// String returns the string representation
11210func (s ListTagsOutput) String() string {
11211	return awsutil.Prettify(s)
11212}
11213
11214// GoString returns the string representation
11215func (s ListTagsOutput) GoString() string {
11216	return s.String()
11217}
11218
11219// SetTags sets the Tags field's value.
11220func (s *ListTagsOutput) SetTags(v map[string]*string) *ListTagsOutput {
11221	s.Tags = v
11222	return s
11223}
11224
11225type ListVersionsByFunctionInput struct {
11226	_ struct{} `type:"structure"`
11227
11228	// The name of the Lambda function.
11229	//
11230	// Name formats
11231	//
11232	//    * Function name - MyFunction.
11233	//
11234	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.
11235	//
11236	//    * Partial ARN - 123456789012:function:MyFunction.
11237	//
11238	// The length constraint applies only to the full ARN. If you specify only the
11239	// function name, it is limited to 64 characters in length.
11240	//
11241	// FunctionName is a required field
11242	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
11243
11244	// Specify the pagination token that's returned by a previous request to retrieve
11245	// the next page of results.
11246	Marker *string `location:"querystring" locationName:"Marker" type:"string"`
11247
11248	// The maximum number of versions to return.
11249	MaxItems *int64 `location:"querystring" locationName:"MaxItems" min:"1" type:"integer"`
11250}
11251
11252// String returns the string representation
11253func (s ListVersionsByFunctionInput) String() string {
11254	return awsutil.Prettify(s)
11255}
11256
11257// GoString returns the string representation
11258func (s ListVersionsByFunctionInput) GoString() string {
11259	return s.String()
11260}
11261
11262// Validate inspects the fields of the type to determine if they are valid.
11263func (s *ListVersionsByFunctionInput) Validate() error {
11264	invalidParams := request.ErrInvalidParams{Context: "ListVersionsByFunctionInput"}
11265	if s.FunctionName == nil {
11266		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
11267	}
11268	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
11269		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
11270	}
11271	if s.MaxItems != nil && *s.MaxItems < 1 {
11272		invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1))
11273	}
11274
11275	if invalidParams.Len() > 0 {
11276		return invalidParams
11277	}
11278	return nil
11279}
11280
11281// SetFunctionName sets the FunctionName field's value.
11282func (s *ListVersionsByFunctionInput) SetFunctionName(v string) *ListVersionsByFunctionInput {
11283	s.FunctionName = &v
11284	return s
11285}
11286
11287// SetMarker sets the Marker field's value.
11288func (s *ListVersionsByFunctionInput) SetMarker(v string) *ListVersionsByFunctionInput {
11289	s.Marker = &v
11290	return s
11291}
11292
11293// SetMaxItems sets the MaxItems field's value.
11294func (s *ListVersionsByFunctionInput) SetMaxItems(v int64) *ListVersionsByFunctionInput {
11295	s.MaxItems = &v
11296	return s
11297}
11298
11299type ListVersionsByFunctionOutput struct {
11300	_ struct{} `type:"structure"`
11301
11302	// The pagination token that's included if more results are available.
11303	NextMarker *string `type:"string"`
11304
11305	// A list of Lambda function versions.
11306	Versions []*FunctionConfiguration `type:"list"`
11307}
11308
11309// String returns the string representation
11310func (s ListVersionsByFunctionOutput) String() string {
11311	return awsutil.Prettify(s)
11312}
11313
11314// GoString returns the string representation
11315func (s ListVersionsByFunctionOutput) GoString() string {
11316	return s.String()
11317}
11318
11319// SetNextMarker sets the NextMarker field's value.
11320func (s *ListVersionsByFunctionOutput) SetNextMarker(v string) *ListVersionsByFunctionOutput {
11321	s.NextMarker = &v
11322	return s
11323}
11324
11325// SetVersions sets the Versions field's value.
11326func (s *ListVersionsByFunctionOutput) SetVersions(v []*FunctionConfiguration) *ListVersionsByFunctionOutput {
11327	s.Versions = v
11328	return s
11329}
11330
11331// A destination for events that failed processing.
11332type OnFailure struct {
11333	_ struct{} `type:"structure"`
11334
11335	// The Amazon Resource Name (ARN) of the destination resource.
11336	Destination *string `type:"string"`
11337}
11338
11339// String returns the string representation
11340func (s OnFailure) String() string {
11341	return awsutil.Prettify(s)
11342}
11343
11344// GoString returns the string representation
11345func (s OnFailure) GoString() string {
11346	return s.String()
11347}
11348
11349// SetDestination sets the Destination field's value.
11350func (s *OnFailure) SetDestination(v string) *OnFailure {
11351	s.Destination = &v
11352	return s
11353}
11354
11355// A destination for events that were processed successfully.
11356type OnSuccess struct {
11357	_ struct{} `type:"structure"`
11358
11359	// The Amazon Resource Name (ARN) of the destination resource.
11360	Destination *string `type:"string"`
11361}
11362
11363// String returns the string representation
11364func (s OnSuccess) String() string {
11365	return awsutil.Prettify(s)
11366}
11367
11368// GoString returns the string representation
11369func (s OnSuccess) GoString() string {
11370	return s.String()
11371}
11372
11373// SetDestination sets the Destination field's value.
11374func (s *OnSuccess) SetDestination(v string) *OnSuccess {
11375	s.Destination = &v
11376	return s
11377}
11378
11379// The permissions policy for the resource is too large. Learn more (https://docs.aws.amazon.com/lambda/latest/dg/limits.html)
11380type PolicyLengthExceededException struct {
11381	_            struct{}                  `type:"structure"`
11382	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
11383
11384	Message_ *string `locationName:"message" type:"string"`
11385
11386	Type *string `type:"string"`
11387}
11388
11389// String returns the string representation
11390func (s PolicyLengthExceededException) String() string {
11391	return awsutil.Prettify(s)
11392}
11393
11394// GoString returns the string representation
11395func (s PolicyLengthExceededException) GoString() string {
11396	return s.String()
11397}
11398
11399func newErrorPolicyLengthExceededException(v protocol.ResponseMetadata) error {
11400	return &PolicyLengthExceededException{
11401		RespMetadata: v,
11402	}
11403}
11404
11405// Code returns the exception type name.
11406func (s *PolicyLengthExceededException) Code() string {
11407	return "PolicyLengthExceededException"
11408}
11409
11410// Message returns the exception's message.
11411func (s *PolicyLengthExceededException) Message() string {
11412	if s.Message_ != nil {
11413		return *s.Message_
11414	}
11415	return ""
11416}
11417
11418// OrigErr always returns nil, satisfies awserr.Error interface.
11419func (s *PolicyLengthExceededException) OrigErr() error {
11420	return nil
11421}
11422
11423func (s *PolicyLengthExceededException) Error() string {
11424	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
11425}
11426
11427// Status code returns the HTTP status code for the request's response error.
11428func (s *PolicyLengthExceededException) StatusCode() int {
11429	return s.RespMetadata.StatusCode
11430}
11431
11432// RequestID returns the service's response RequestID for request.
11433func (s *PolicyLengthExceededException) RequestID() string {
11434	return s.RespMetadata.RequestID
11435}
11436
11437// The RevisionId provided does not match the latest RevisionId for the Lambda
11438// function or alias. Call the GetFunction or the GetAlias API to retrieve the
11439// latest RevisionId for your resource.
11440type PreconditionFailedException struct {
11441	_            struct{}                  `type:"structure"`
11442	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
11443
11444	// The exception message.
11445	Message_ *string `locationName:"message" type:"string"`
11446
11447	// The exception type.
11448	Type *string `type:"string"`
11449}
11450
11451// String returns the string representation
11452func (s PreconditionFailedException) String() string {
11453	return awsutil.Prettify(s)
11454}
11455
11456// GoString returns the string representation
11457func (s PreconditionFailedException) GoString() string {
11458	return s.String()
11459}
11460
11461func newErrorPreconditionFailedException(v protocol.ResponseMetadata) error {
11462	return &PreconditionFailedException{
11463		RespMetadata: v,
11464	}
11465}
11466
11467// Code returns the exception type name.
11468func (s *PreconditionFailedException) Code() string {
11469	return "PreconditionFailedException"
11470}
11471
11472// Message returns the exception's message.
11473func (s *PreconditionFailedException) Message() string {
11474	if s.Message_ != nil {
11475		return *s.Message_
11476	}
11477	return ""
11478}
11479
11480// OrigErr always returns nil, satisfies awserr.Error interface.
11481func (s *PreconditionFailedException) OrigErr() error {
11482	return nil
11483}
11484
11485func (s *PreconditionFailedException) Error() string {
11486	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
11487}
11488
11489// Status code returns the HTTP status code for the request's response error.
11490func (s *PreconditionFailedException) StatusCode() int {
11491	return s.RespMetadata.StatusCode
11492}
11493
11494// RequestID returns the service's response RequestID for request.
11495func (s *PreconditionFailedException) RequestID() string {
11496	return s.RespMetadata.RequestID
11497}
11498
11499// Details about the provisioned concurrency configuration for a function alias
11500// or version.
11501type ProvisionedConcurrencyConfigListItem struct {
11502	_ struct{} `type:"structure"`
11503
11504	// The amount of provisioned concurrency allocated.
11505	AllocatedProvisionedConcurrentExecutions *int64 `type:"integer"`
11506
11507	// The amount of provisioned concurrency available.
11508	AvailableProvisionedConcurrentExecutions *int64 `type:"integer"`
11509
11510	// The Amazon Resource Name (ARN) of the alias or version.
11511	FunctionArn *string `type:"string"`
11512
11513	// The date and time that a user last updated the configuration, in ISO 8601
11514	// format (https://www.iso.org/iso-8601-date-and-time-format.html).
11515	LastModified *string `type:"string"`
11516
11517	// The amount of provisioned concurrency requested.
11518	RequestedProvisionedConcurrentExecutions *int64 `min:"1" type:"integer"`
11519
11520	// The status of the allocation process.
11521	Status *string `type:"string" enum:"ProvisionedConcurrencyStatusEnum"`
11522
11523	// For failed allocations, the reason that provisioned concurrency could not
11524	// be allocated.
11525	StatusReason *string `type:"string"`
11526}
11527
11528// String returns the string representation
11529func (s ProvisionedConcurrencyConfigListItem) String() string {
11530	return awsutil.Prettify(s)
11531}
11532
11533// GoString returns the string representation
11534func (s ProvisionedConcurrencyConfigListItem) GoString() string {
11535	return s.String()
11536}
11537
11538// SetAllocatedProvisionedConcurrentExecutions sets the AllocatedProvisionedConcurrentExecutions field's value.
11539func (s *ProvisionedConcurrencyConfigListItem) SetAllocatedProvisionedConcurrentExecutions(v int64) *ProvisionedConcurrencyConfigListItem {
11540	s.AllocatedProvisionedConcurrentExecutions = &v
11541	return s
11542}
11543
11544// SetAvailableProvisionedConcurrentExecutions sets the AvailableProvisionedConcurrentExecutions field's value.
11545func (s *ProvisionedConcurrencyConfigListItem) SetAvailableProvisionedConcurrentExecutions(v int64) *ProvisionedConcurrencyConfigListItem {
11546	s.AvailableProvisionedConcurrentExecutions = &v
11547	return s
11548}
11549
11550// SetFunctionArn sets the FunctionArn field's value.
11551func (s *ProvisionedConcurrencyConfigListItem) SetFunctionArn(v string) *ProvisionedConcurrencyConfigListItem {
11552	s.FunctionArn = &v
11553	return s
11554}
11555
11556// SetLastModified sets the LastModified field's value.
11557func (s *ProvisionedConcurrencyConfigListItem) SetLastModified(v string) *ProvisionedConcurrencyConfigListItem {
11558	s.LastModified = &v
11559	return s
11560}
11561
11562// SetRequestedProvisionedConcurrentExecutions sets the RequestedProvisionedConcurrentExecutions field's value.
11563func (s *ProvisionedConcurrencyConfigListItem) SetRequestedProvisionedConcurrentExecutions(v int64) *ProvisionedConcurrencyConfigListItem {
11564	s.RequestedProvisionedConcurrentExecutions = &v
11565	return s
11566}
11567
11568// SetStatus sets the Status field's value.
11569func (s *ProvisionedConcurrencyConfigListItem) SetStatus(v string) *ProvisionedConcurrencyConfigListItem {
11570	s.Status = &v
11571	return s
11572}
11573
11574// SetStatusReason sets the StatusReason field's value.
11575func (s *ProvisionedConcurrencyConfigListItem) SetStatusReason(v string) *ProvisionedConcurrencyConfigListItem {
11576	s.StatusReason = &v
11577	return s
11578}
11579
11580// The specified configuration does not exist.
11581type ProvisionedConcurrencyConfigNotFoundException struct {
11582	_            struct{}                  `type:"structure"`
11583	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
11584
11585	Message_ *string `locationName:"message" type:"string"`
11586
11587	Type *string `type:"string"`
11588}
11589
11590// String returns the string representation
11591func (s ProvisionedConcurrencyConfigNotFoundException) String() string {
11592	return awsutil.Prettify(s)
11593}
11594
11595// GoString returns the string representation
11596func (s ProvisionedConcurrencyConfigNotFoundException) GoString() string {
11597	return s.String()
11598}
11599
11600func newErrorProvisionedConcurrencyConfigNotFoundException(v protocol.ResponseMetadata) error {
11601	return &ProvisionedConcurrencyConfigNotFoundException{
11602		RespMetadata: v,
11603	}
11604}
11605
11606// Code returns the exception type name.
11607func (s *ProvisionedConcurrencyConfigNotFoundException) Code() string {
11608	return "ProvisionedConcurrencyConfigNotFoundException"
11609}
11610
11611// Message returns the exception's message.
11612func (s *ProvisionedConcurrencyConfigNotFoundException) Message() string {
11613	if s.Message_ != nil {
11614		return *s.Message_
11615	}
11616	return ""
11617}
11618
11619// OrigErr always returns nil, satisfies awserr.Error interface.
11620func (s *ProvisionedConcurrencyConfigNotFoundException) OrigErr() error {
11621	return nil
11622}
11623
11624func (s *ProvisionedConcurrencyConfigNotFoundException) Error() string {
11625	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
11626}
11627
11628// Status code returns the HTTP status code for the request's response error.
11629func (s *ProvisionedConcurrencyConfigNotFoundException) StatusCode() int {
11630	return s.RespMetadata.StatusCode
11631}
11632
11633// RequestID returns the service's response RequestID for request.
11634func (s *ProvisionedConcurrencyConfigNotFoundException) RequestID() string {
11635	return s.RespMetadata.RequestID
11636}
11637
11638type PublishLayerVersionInput struct {
11639	_ struct{} `type:"structure"`
11640
11641	// A list of compatible function runtimes (https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html).
11642	// Used for filtering with ListLayers and ListLayerVersions.
11643	CompatibleRuntimes []*string `type:"list"`
11644
11645	// The function layer archive.
11646	//
11647	// Content is a required field
11648	Content *LayerVersionContentInput `type:"structure" required:"true"`
11649
11650	// The description of the version.
11651	Description *string `type:"string"`
11652
11653	// The name or Amazon Resource Name (ARN) of the layer.
11654	//
11655	// LayerName is a required field
11656	LayerName *string `location:"uri" locationName:"LayerName" min:"1" type:"string" required:"true"`
11657
11658	// The layer's software license. It can be any of the following:
11659	//
11660	//    * An SPDX license identifier (https://spdx.org/licenses/). For example,
11661	//    MIT.
11662	//
11663	//    * The URL of a license hosted on the internet. For example, https://opensource.org/licenses/MIT.
11664	//
11665	//    * The full text of the license.
11666	LicenseInfo *string `type:"string"`
11667}
11668
11669// String returns the string representation
11670func (s PublishLayerVersionInput) String() string {
11671	return awsutil.Prettify(s)
11672}
11673
11674// GoString returns the string representation
11675func (s PublishLayerVersionInput) GoString() string {
11676	return s.String()
11677}
11678
11679// Validate inspects the fields of the type to determine if they are valid.
11680func (s *PublishLayerVersionInput) Validate() error {
11681	invalidParams := request.ErrInvalidParams{Context: "PublishLayerVersionInput"}
11682	if s.Content == nil {
11683		invalidParams.Add(request.NewErrParamRequired("Content"))
11684	}
11685	if s.LayerName == nil {
11686		invalidParams.Add(request.NewErrParamRequired("LayerName"))
11687	}
11688	if s.LayerName != nil && len(*s.LayerName) < 1 {
11689		invalidParams.Add(request.NewErrParamMinLen("LayerName", 1))
11690	}
11691	if s.Content != nil {
11692		if err := s.Content.Validate(); err != nil {
11693			invalidParams.AddNested("Content", err.(request.ErrInvalidParams))
11694		}
11695	}
11696
11697	if invalidParams.Len() > 0 {
11698		return invalidParams
11699	}
11700	return nil
11701}
11702
11703// SetCompatibleRuntimes sets the CompatibleRuntimes field's value.
11704func (s *PublishLayerVersionInput) SetCompatibleRuntimes(v []*string) *PublishLayerVersionInput {
11705	s.CompatibleRuntimes = v
11706	return s
11707}
11708
11709// SetContent sets the Content field's value.
11710func (s *PublishLayerVersionInput) SetContent(v *LayerVersionContentInput) *PublishLayerVersionInput {
11711	s.Content = v
11712	return s
11713}
11714
11715// SetDescription sets the Description field's value.
11716func (s *PublishLayerVersionInput) SetDescription(v string) *PublishLayerVersionInput {
11717	s.Description = &v
11718	return s
11719}
11720
11721// SetLayerName sets the LayerName field's value.
11722func (s *PublishLayerVersionInput) SetLayerName(v string) *PublishLayerVersionInput {
11723	s.LayerName = &v
11724	return s
11725}
11726
11727// SetLicenseInfo sets the LicenseInfo field's value.
11728func (s *PublishLayerVersionInput) SetLicenseInfo(v string) *PublishLayerVersionInput {
11729	s.LicenseInfo = &v
11730	return s
11731}
11732
11733type PublishLayerVersionOutput struct {
11734	_ struct{} `type:"structure"`
11735
11736	// The layer's compatible runtimes.
11737	CompatibleRuntimes []*string `type:"list"`
11738
11739	// Details about the layer version.
11740	Content *LayerVersionContentOutput `type:"structure"`
11741
11742	// The date that the layer version was created, in ISO-8601 format (https://www.w3.org/TR/NOTE-datetime)
11743	// (YYYY-MM-DDThh:mm:ss.sTZD).
11744	CreatedDate *string `type:"string"`
11745
11746	// The description of the version.
11747	Description *string `type:"string"`
11748
11749	// The ARN of the layer.
11750	LayerArn *string `min:"1" type:"string"`
11751
11752	// The ARN of the layer version.
11753	LayerVersionArn *string `min:"1" type:"string"`
11754
11755	// The layer's software license.
11756	LicenseInfo *string `type:"string"`
11757
11758	// The version number.
11759	Version *int64 `type:"long"`
11760}
11761
11762// String returns the string representation
11763func (s PublishLayerVersionOutput) String() string {
11764	return awsutil.Prettify(s)
11765}
11766
11767// GoString returns the string representation
11768func (s PublishLayerVersionOutput) GoString() string {
11769	return s.String()
11770}
11771
11772// SetCompatibleRuntimes sets the CompatibleRuntimes field's value.
11773func (s *PublishLayerVersionOutput) SetCompatibleRuntimes(v []*string) *PublishLayerVersionOutput {
11774	s.CompatibleRuntimes = v
11775	return s
11776}
11777
11778// SetContent sets the Content field's value.
11779func (s *PublishLayerVersionOutput) SetContent(v *LayerVersionContentOutput) *PublishLayerVersionOutput {
11780	s.Content = v
11781	return s
11782}
11783
11784// SetCreatedDate sets the CreatedDate field's value.
11785func (s *PublishLayerVersionOutput) SetCreatedDate(v string) *PublishLayerVersionOutput {
11786	s.CreatedDate = &v
11787	return s
11788}
11789
11790// SetDescription sets the Description field's value.
11791func (s *PublishLayerVersionOutput) SetDescription(v string) *PublishLayerVersionOutput {
11792	s.Description = &v
11793	return s
11794}
11795
11796// SetLayerArn sets the LayerArn field's value.
11797func (s *PublishLayerVersionOutput) SetLayerArn(v string) *PublishLayerVersionOutput {
11798	s.LayerArn = &v
11799	return s
11800}
11801
11802// SetLayerVersionArn sets the LayerVersionArn field's value.
11803func (s *PublishLayerVersionOutput) SetLayerVersionArn(v string) *PublishLayerVersionOutput {
11804	s.LayerVersionArn = &v
11805	return s
11806}
11807
11808// SetLicenseInfo sets the LicenseInfo field's value.
11809func (s *PublishLayerVersionOutput) SetLicenseInfo(v string) *PublishLayerVersionOutput {
11810	s.LicenseInfo = &v
11811	return s
11812}
11813
11814// SetVersion sets the Version field's value.
11815func (s *PublishLayerVersionOutput) SetVersion(v int64) *PublishLayerVersionOutput {
11816	s.Version = &v
11817	return s
11818}
11819
11820type PublishVersionInput struct {
11821	_ struct{} `type:"structure"`
11822
11823	// Only publish a version if the hash value matches the value that's specified.
11824	// Use this option to avoid publishing a version if the function code has changed
11825	// since you last updated it. You can get the hash for the version that you
11826	// uploaded from the output of UpdateFunctionCode.
11827	CodeSha256 *string `type:"string"`
11828
11829	// A description for the version to override the description in the function
11830	// configuration.
11831	Description *string `type:"string"`
11832
11833	// The name of the Lambda function.
11834	//
11835	// Name formats
11836	//
11837	//    * Function name - MyFunction.
11838	//
11839	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.
11840	//
11841	//    * Partial ARN - 123456789012:function:MyFunction.
11842	//
11843	// The length constraint applies only to the full ARN. If you specify only the
11844	// function name, it is limited to 64 characters in length.
11845	//
11846	// FunctionName is a required field
11847	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
11848
11849	// Only update the function if the revision ID matches the ID that's specified.
11850	// Use this option to avoid publishing a version if the function configuration
11851	// has changed since you last updated it.
11852	RevisionId *string `type:"string"`
11853}
11854
11855// String returns the string representation
11856func (s PublishVersionInput) String() string {
11857	return awsutil.Prettify(s)
11858}
11859
11860// GoString returns the string representation
11861func (s PublishVersionInput) GoString() string {
11862	return s.String()
11863}
11864
11865// Validate inspects the fields of the type to determine if they are valid.
11866func (s *PublishVersionInput) Validate() error {
11867	invalidParams := request.ErrInvalidParams{Context: "PublishVersionInput"}
11868	if s.FunctionName == nil {
11869		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
11870	}
11871	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
11872		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
11873	}
11874
11875	if invalidParams.Len() > 0 {
11876		return invalidParams
11877	}
11878	return nil
11879}
11880
11881// SetCodeSha256 sets the CodeSha256 field's value.
11882func (s *PublishVersionInput) SetCodeSha256(v string) *PublishVersionInput {
11883	s.CodeSha256 = &v
11884	return s
11885}
11886
11887// SetDescription sets the Description field's value.
11888func (s *PublishVersionInput) SetDescription(v string) *PublishVersionInput {
11889	s.Description = &v
11890	return s
11891}
11892
11893// SetFunctionName sets the FunctionName field's value.
11894func (s *PublishVersionInput) SetFunctionName(v string) *PublishVersionInput {
11895	s.FunctionName = &v
11896	return s
11897}
11898
11899// SetRevisionId sets the RevisionId field's value.
11900func (s *PublishVersionInput) SetRevisionId(v string) *PublishVersionInput {
11901	s.RevisionId = &v
11902	return s
11903}
11904
11905type PutFunctionConcurrencyInput struct {
11906	_ struct{} `type:"structure"`
11907
11908	// The name of the Lambda function.
11909	//
11910	// Name formats
11911	//
11912	//    * Function name - my-function.
11913	//
11914	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
11915	//
11916	//    * Partial ARN - 123456789012:function:my-function.
11917	//
11918	// The length constraint applies only to the full ARN. If you specify only the
11919	// function name, it is limited to 64 characters in length.
11920	//
11921	// FunctionName is a required field
11922	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
11923
11924	// The number of simultaneous executions to reserve for the function.
11925	//
11926	// ReservedConcurrentExecutions is a required field
11927	ReservedConcurrentExecutions *int64 `type:"integer" required:"true"`
11928}
11929
11930// String returns the string representation
11931func (s PutFunctionConcurrencyInput) String() string {
11932	return awsutil.Prettify(s)
11933}
11934
11935// GoString returns the string representation
11936func (s PutFunctionConcurrencyInput) GoString() string {
11937	return s.String()
11938}
11939
11940// Validate inspects the fields of the type to determine if they are valid.
11941func (s *PutFunctionConcurrencyInput) Validate() error {
11942	invalidParams := request.ErrInvalidParams{Context: "PutFunctionConcurrencyInput"}
11943	if s.FunctionName == nil {
11944		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
11945	}
11946	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
11947		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
11948	}
11949	if s.ReservedConcurrentExecutions == nil {
11950		invalidParams.Add(request.NewErrParamRequired("ReservedConcurrentExecutions"))
11951	}
11952
11953	if invalidParams.Len() > 0 {
11954		return invalidParams
11955	}
11956	return nil
11957}
11958
11959// SetFunctionName sets the FunctionName field's value.
11960func (s *PutFunctionConcurrencyInput) SetFunctionName(v string) *PutFunctionConcurrencyInput {
11961	s.FunctionName = &v
11962	return s
11963}
11964
11965// SetReservedConcurrentExecutions sets the ReservedConcurrentExecutions field's value.
11966func (s *PutFunctionConcurrencyInput) SetReservedConcurrentExecutions(v int64) *PutFunctionConcurrencyInput {
11967	s.ReservedConcurrentExecutions = &v
11968	return s
11969}
11970
11971type PutFunctionConcurrencyOutput struct {
11972	_ struct{} `type:"structure"`
11973
11974	// The number of concurrent executions that are reserved for this function.
11975	// For more information, see Managing Concurrency (https://docs.aws.amazon.com/lambda/latest/dg/concurrent-executions.html).
11976	ReservedConcurrentExecutions *int64 `type:"integer"`
11977}
11978
11979// String returns the string representation
11980func (s PutFunctionConcurrencyOutput) String() string {
11981	return awsutil.Prettify(s)
11982}
11983
11984// GoString returns the string representation
11985func (s PutFunctionConcurrencyOutput) GoString() string {
11986	return s.String()
11987}
11988
11989// SetReservedConcurrentExecutions sets the ReservedConcurrentExecutions field's value.
11990func (s *PutFunctionConcurrencyOutput) SetReservedConcurrentExecutions(v int64) *PutFunctionConcurrencyOutput {
11991	s.ReservedConcurrentExecutions = &v
11992	return s
11993}
11994
11995type PutFunctionEventInvokeConfigInput struct {
11996	_ struct{} `type:"structure"`
11997
11998	// A destination for events after they have been sent to a function for processing.
11999	//
12000	// Destinations
12001	//
12002	//    * Function - The Amazon Resource Name (ARN) of a Lambda function.
12003	//
12004	//    * Queue - The ARN of an SQS queue.
12005	//
12006	//    * Topic - The ARN of an SNS topic.
12007	//
12008	//    * Event Bus - The ARN of an Amazon EventBridge event bus.
12009	DestinationConfig *DestinationConfig `type:"structure"`
12010
12011	// The name of the Lambda function, version, or alias.
12012	//
12013	// Name formats
12014	//
12015	//    * Function name - my-function (name-only), my-function:v1 (with alias).
12016	//
12017	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
12018	//
12019	//    * Partial ARN - 123456789012:function:my-function.
12020	//
12021	// You can append a version number or alias to any of the formats. The length
12022	// constraint applies only to the full ARN. If you specify only the function
12023	// name, it is limited to 64 characters in length.
12024	//
12025	// FunctionName is a required field
12026	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
12027
12028	// The maximum age of a request that Lambda sends to a function for processing.
12029	MaximumEventAgeInSeconds *int64 `min:"60" type:"integer"`
12030
12031	// The maximum number of times to retry when the function returns an error.
12032	MaximumRetryAttempts *int64 `type:"integer"`
12033
12034	// A version number or alias name.
12035	Qualifier *string `location:"querystring" locationName:"Qualifier" min:"1" type:"string"`
12036}
12037
12038// String returns the string representation
12039func (s PutFunctionEventInvokeConfigInput) String() string {
12040	return awsutil.Prettify(s)
12041}
12042
12043// GoString returns the string representation
12044func (s PutFunctionEventInvokeConfigInput) GoString() string {
12045	return s.String()
12046}
12047
12048// Validate inspects the fields of the type to determine if they are valid.
12049func (s *PutFunctionEventInvokeConfigInput) Validate() error {
12050	invalidParams := request.ErrInvalidParams{Context: "PutFunctionEventInvokeConfigInput"}
12051	if s.FunctionName == nil {
12052		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
12053	}
12054	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
12055		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
12056	}
12057	if s.MaximumEventAgeInSeconds != nil && *s.MaximumEventAgeInSeconds < 60 {
12058		invalidParams.Add(request.NewErrParamMinValue("MaximumEventAgeInSeconds", 60))
12059	}
12060	if s.Qualifier != nil && len(*s.Qualifier) < 1 {
12061		invalidParams.Add(request.NewErrParamMinLen("Qualifier", 1))
12062	}
12063
12064	if invalidParams.Len() > 0 {
12065		return invalidParams
12066	}
12067	return nil
12068}
12069
12070// SetDestinationConfig sets the DestinationConfig field's value.
12071func (s *PutFunctionEventInvokeConfigInput) SetDestinationConfig(v *DestinationConfig) *PutFunctionEventInvokeConfigInput {
12072	s.DestinationConfig = v
12073	return s
12074}
12075
12076// SetFunctionName sets the FunctionName field's value.
12077func (s *PutFunctionEventInvokeConfigInput) SetFunctionName(v string) *PutFunctionEventInvokeConfigInput {
12078	s.FunctionName = &v
12079	return s
12080}
12081
12082// SetMaximumEventAgeInSeconds sets the MaximumEventAgeInSeconds field's value.
12083func (s *PutFunctionEventInvokeConfigInput) SetMaximumEventAgeInSeconds(v int64) *PutFunctionEventInvokeConfigInput {
12084	s.MaximumEventAgeInSeconds = &v
12085	return s
12086}
12087
12088// SetMaximumRetryAttempts sets the MaximumRetryAttempts field's value.
12089func (s *PutFunctionEventInvokeConfigInput) SetMaximumRetryAttempts(v int64) *PutFunctionEventInvokeConfigInput {
12090	s.MaximumRetryAttempts = &v
12091	return s
12092}
12093
12094// SetQualifier sets the Qualifier field's value.
12095func (s *PutFunctionEventInvokeConfigInput) SetQualifier(v string) *PutFunctionEventInvokeConfigInput {
12096	s.Qualifier = &v
12097	return s
12098}
12099
12100type PutFunctionEventInvokeConfigOutput struct {
12101	_ struct{} `type:"structure"`
12102
12103	// A destination for events after they have been sent to a function for processing.
12104	//
12105	// Destinations
12106	//
12107	//    * Function - The Amazon Resource Name (ARN) of a Lambda function.
12108	//
12109	//    * Queue - The ARN of an SQS queue.
12110	//
12111	//    * Topic - The ARN of an SNS topic.
12112	//
12113	//    * Event Bus - The ARN of an Amazon EventBridge event bus.
12114	DestinationConfig *DestinationConfig `type:"structure"`
12115
12116	// The Amazon Resource Name (ARN) of the function.
12117	FunctionArn *string `type:"string"`
12118
12119	// The date and time that the configuration was last updated.
12120	LastModified *time.Time `type:"timestamp"`
12121
12122	// The maximum age of a request that Lambda sends to a function for processing.
12123	MaximumEventAgeInSeconds *int64 `min:"60" type:"integer"`
12124
12125	// The maximum number of times to retry when the function returns an error.
12126	MaximumRetryAttempts *int64 `type:"integer"`
12127}
12128
12129// String returns the string representation
12130func (s PutFunctionEventInvokeConfigOutput) String() string {
12131	return awsutil.Prettify(s)
12132}
12133
12134// GoString returns the string representation
12135func (s PutFunctionEventInvokeConfigOutput) GoString() string {
12136	return s.String()
12137}
12138
12139// SetDestinationConfig sets the DestinationConfig field's value.
12140func (s *PutFunctionEventInvokeConfigOutput) SetDestinationConfig(v *DestinationConfig) *PutFunctionEventInvokeConfigOutput {
12141	s.DestinationConfig = v
12142	return s
12143}
12144
12145// SetFunctionArn sets the FunctionArn field's value.
12146func (s *PutFunctionEventInvokeConfigOutput) SetFunctionArn(v string) *PutFunctionEventInvokeConfigOutput {
12147	s.FunctionArn = &v
12148	return s
12149}
12150
12151// SetLastModified sets the LastModified field's value.
12152func (s *PutFunctionEventInvokeConfigOutput) SetLastModified(v time.Time) *PutFunctionEventInvokeConfigOutput {
12153	s.LastModified = &v
12154	return s
12155}
12156
12157// SetMaximumEventAgeInSeconds sets the MaximumEventAgeInSeconds field's value.
12158func (s *PutFunctionEventInvokeConfigOutput) SetMaximumEventAgeInSeconds(v int64) *PutFunctionEventInvokeConfigOutput {
12159	s.MaximumEventAgeInSeconds = &v
12160	return s
12161}
12162
12163// SetMaximumRetryAttempts sets the MaximumRetryAttempts field's value.
12164func (s *PutFunctionEventInvokeConfigOutput) SetMaximumRetryAttempts(v int64) *PutFunctionEventInvokeConfigOutput {
12165	s.MaximumRetryAttempts = &v
12166	return s
12167}
12168
12169type PutProvisionedConcurrencyConfigInput struct {
12170	_ struct{} `type:"structure"`
12171
12172	// The name of the Lambda function.
12173	//
12174	// Name formats
12175	//
12176	//    * Function name - my-function.
12177	//
12178	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
12179	//
12180	//    * Partial ARN - 123456789012:function:my-function.
12181	//
12182	// The length constraint applies only to the full ARN. If you specify only the
12183	// function name, it is limited to 64 characters in length.
12184	//
12185	// FunctionName is a required field
12186	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
12187
12188	// The amount of provisioned concurrency to allocate for the version or alias.
12189	//
12190	// ProvisionedConcurrentExecutions is a required field
12191	ProvisionedConcurrentExecutions *int64 `min:"1" type:"integer" required:"true"`
12192
12193	// The version number or alias name.
12194	//
12195	// Qualifier is a required field
12196	Qualifier *string `location:"querystring" locationName:"Qualifier" min:"1" type:"string" required:"true"`
12197}
12198
12199// String returns the string representation
12200func (s PutProvisionedConcurrencyConfigInput) String() string {
12201	return awsutil.Prettify(s)
12202}
12203
12204// GoString returns the string representation
12205func (s PutProvisionedConcurrencyConfigInput) GoString() string {
12206	return s.String()
12207}
12208
12209// Validate inspects the fields of the type to determine if they are valid.
12210func (s *PutProvisionedConcurrencyConfigInput) Validate() error {
12211	invalidParams := request.ErrInvalidParams{Context: "PutProvisionedConcurrencyConfigInput"}
12212	if s.FunctionName == nil {
12213		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
12214	}
12215	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
12216		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
12217	}
12218	if s.ProvisionedConcurrentExecutions == nil {
12219		invalidParams.Add(request.NewErrParamRequired("ProvisionedConcurrentExecutions"))
12220	}
12221	if s.ProvisionedConcurrentExecutions != nil && *s.ProvisionedConcurrentExecutions < 1 {
12222		invalidParams.Add(request.NewErrParamMinValue("ProvisionedConcurrentExecutions", 1))
12223	}
12224	if s.Qualifier == nil {
12225		invalidParams.Add(request.NewErrParamRequired("Qualifier"))
12226	}
12227	if s.Qualifier != nil && len(*s.Qualifier) < 1 {
12228		invalidParams.Add(request.NewErrParamMinLen("Qualifier", 1))
12229	}
12230
12231	if invalidParams.Len() > 0 {
12232		return invalidParams
12233	}
12234	return nil
12235}
12236
12237// SetFunctionName sets the FunctionName field's value.
12238func (s *PutProvisionedConcurrencyConfigInput) SetFunctionName(v string) *PutProvisionedConcurrencyConfigInput {
12239	s.FunctionName = &v
12240	return s
12241}
12242
12243// SetProvisionedConcurrentExecutions sets the ProvisionedConcurrentExecutions field's value.
12244func (s *PutProvisionedConcurrencyConfigInput) SetProvisionedConcurrentExecutions(v int64) *PutProvisionedConcurrencyConfigInput {
12245	s.ProvisionedConcurrentExecutions = &v
12246	return s
12247}
12248
12249// SetQualifier sets the Qualifier field's value.
12250func (s *PutProvisionedConcurrencyConfigInput) SetQualifier(v string) *PutProvisionedConcurrencyConfigInput {
12251	s.Qualifier = &v
12252	return s
12253}
12254
12255type PutProvisionedConcurrencyConfigOutput struct {
12256	_ struct{} `type:"structure"`
12257
12258	// The amount of provisioned concurrency allocated.
12259	AllocatedProvisionedConcurrentExecutions *int64 `type:"integer"`
12260
12261	// The amount of provisioned concurrency available.
12262	AvailableProvisionedConcurrentExecutions *int64 `type:"integer"`
12263
12264	// The date and time that a user last updated the configuration, in ISO 8601
12265	// format (https://www.iso.org/iso-8601-date-and-time-format.html).
12266	LastModified *string `type:"string"`
12267
12268	// The amount of provisioned concurrency requested.
12269	RequestedProvisionedConcurrentExecutions *int64 `min:"1" type:"integer"`
12270
12271	// The status of the allocation process.
12272	Status *string `type:"string" enum:"ProvisionedConcurrencyStatusEnum"`
12273
12274	// For failed allocations, the reason that provisioned concurrency could not
12275	// be allocated.
12276	StatusReason *string `type:"string"`
12277}
12278
12279// String returns the string representation
12280func (s PutProvisionedConcurrencyConfigOutput) String() string {
12281	return awsutil.Prettify(s)
12282}
12283
12284// GoString returns the string representation
12285func (s PutProvisionedConcurrencyConfigOutput) GoString() string {
12286	return s.String()
12287}
12288
12289// SetAllocatedProvisionedConcurrentExecutions sets the AllocatedProvisionedConcurrentExecutions field's value.
12290func (s *PutProvisionedConcurrencyConfigOutput) SetAllocatedProvisionedConcurrentExecutions(v int64) *PutProvisionedConcurrencyConfigOutput {
12291	s.AllocatedProvisionedConcurrentExecutions = &v
12292	return s
12293}
12294
12295// SetAvailableProvisionedConcurrentExecutions sets the AvailableProvisionedConcurrentExecutions field's value.
12296func (s *PutProvisionedConcurrencyConfigOutput) SetAvailableProvisionedConcurrentExecutions(v int64) *PutProvisionedConcurrencyConfigOutput {
12297	s.AvailableProvisionedConcurrentExecutions = &v
12298	return s
12299}
12300
12301// SetLastModified sets the LastModified field's value.
12302func (s *PutProvisionedConcurrencyConfigOutput) SetLastModified(v string) *PutProvisionedConcurrencyConfigOutput {
12303	s.LastModified = &v
12304	return s
12305}
12306
12307// SetRequestedProvisionedConcurrentExecutions sets the RequestedProvisionedConcurrentExecutions field's value.
12308func (s *PutProvisionedConcurrencyConfigOutput) SetRequestedProvisionedConcurrentExecutions(v int64) *PutProvisionedConcurrencyConfigOutput {
12309	s.RequestedProvisionedConcurrentExecutions = &v
12310	return s
12311}
12312
12313// SetStatus sets the Status field's value.
12314func (s *PutProvisionedConcurrencyConfigOutput) SetStatus(v string) *PutProvisionedConcurrencyConfigOutput {
12315	s.Status = &v
12316	return s
12317}
12318
12319// SetStatusReason sets the StatusReason field's value.
12320func (s *PutProvisionedConcurrencyConfigOutput) SetStatusReason(v string) *PutProvisionedConcurrencyConfigOutput {
12321	s.StatusReason = &v
12322	return s
12323}
12324
12325type RemoveLayerVersionPermissionInput struct {
12326	_ struct{} `type:"structure"`
12327
12328	// The name or Amazon Resource Name (ARN) of the layer.
12329	//
12330	// LayerName is a required field
12331	LayerName *string `location:"uri" locationName:"LayerName" min:"1" type:"string" required:"true"`
12332
12333	// Only update the policy if the revision ID matches the ID specified. Use this
12334	// option to avoid modifying a policy that has changed since you last read it.
12335	RevisionId *string `location:"querystring" locationName:"RevisionId" type:"string"`
12336
12337	// The identifier that was specified when the statement was added.
12338	//
12339	// StatementId is a required field
12340	StatementId *string `location:"uri" locationName:"StatementId" min:"1" type:"string" required:"true"`
12341
12342	// The version number.
12343	//
12344	// VersionNumber is a required field
12345	VersionNumber *int64 `location:"uri" locationName:"VersionNumber" type:"long" required:"true"`
12346}
12347
12348// String returns the string representation
12349func (s RemoveLayerVersionPermissionInput) String() string {
12350	return awsutil.Prettify(s)
12351}
12352
12353// GoString returns the string representation
12354func (s RemoveLayerVersionPermissionInput) GoString() string {
12355	return s.String()
12356}
12357
12358// Validate inspects the fields of the type to determine if they are valid.
12359func (s *RemoveLayerVersionPermissionInput) Validate() error {
12360	invalidParams := request.ErrInvalidParams{Context: "RemoveLayerVersionPermissionInput"}
12361	if s.LayerName == nil {
12362		invalidParams.Add(request.NewErrParamRequired("LayerName"))
12363	}
12364	if s.LayerName != nil && len(*s.LayerName) < 1 {
12365		invalidParams.Add(request.NewErrParamMinLen("LayerName", 1))
12366	}
12367	if s.StatementId == nil {
12368		invalidParams.Add(request.NewErrParamRequired("StatementId"))
12369	}
12370	if s.StatementId != nil && len(*s.StatementId) < 1 {
12371		invalidParams.Add(request.NewErrParamMinLen("StatementId", 1))
12372	}
12373	if s.VersionNumber == nil {
12374		invalidParams.Add(request.NewErrParamRequired("VersionNumber"))
12375	}
12376
12377	if invalidParams.Len() > 0 {
12378		return invalidParams
12379	}
12380	return nil
12381}
12382
12383// SetLayerName sets the LayerName field's value.
12384func (s *RemoveLayerVersionPermissionInput) SetLayerName(v string) *RemoveLayerVersionPermissionInput {
12385	s.LayerName = &v
12386	return s
12387}
12388
12389// SetRevisionId sets the RevisionId field's value.
12390func (s *RemoveLayerVersionPermissionInput) SetRevisionId(v string) *RemoveLayerVersionPermissionInput {
12391	s.RevisionId = &v
12392	return s
12393}
12394
12395// SetStatementId sets the StatementId field's value.
12396func (s *RemoveLayerVersionPermissionInput) SetStatementId(v string) *RemoveLayerVersionPermissionInput {
12397	s.StatementId = &v
12398	return s
12399}
12400
12401// SetVersionNumber sets the VersionNumber field's value.
12402func (s *RemoveLayerVersionPermissionInput) SetVersionNumber(v int64) *RemoveLayerVersionPermissionInput {
12403	s.VersionNumber = &v
12404	return s
12405}
12406
12407type RemoveLayerVersionPermissionOutput struct {
12408	_ struct{} `type:"structure"`
12409}
12410
12411// String returns the string representation
12412func (s RemoveLayerVersionPermissionOutput) String() string {
12413	return awsutil.Prettify(s)
12414}
12415
12416// GoString returns the string representation
12417func (s RemoveLayerVersionPermissionOutput) GoString() string {
12418	return s.String()
12419}
12420
12421type RemovePermissionInput struct {
12422	_ struct{} `type:"structure"`
12423
12424	// The name of the Lambda function, version, or alias.
12425	//
12426	// Name formats
12427	//
12428	//    * Function name - my-function (name-only), my-function:v1 (with alias).
12429	//
12430	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
12431	//
12432	//    * Partial ARN - 123456789012:function:my-function.
12433	//
12434	// You can append a version number or alias to any of the formats. The length
12435	// constraint applies only to the full ARN. If you specify only the function
12436	// name, it is limited to 64 characters in length.
12437	//
12438	// FunctionName is a required field
12439	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
12440
12441	// Specify a version or alias to remove permissions from a published version
12442	// of the function.
12443	Qualifier *string `location:"querystring" locationName:"Qualifier" min:"1" type:"string"`
12444
12445	// Only update the policy if the revision ID matches the ID that's specified.
12446	// Use this option to avoid modifying a policy that has changed since you last
12447	// read it.
12448	RevisionId *string `location:"querystring" locationName:"RevisionId" type:"string"`
12449
12450	// Statement ID of the permission to remove.
12451	//
12452	// StatementId is a required field
12453	StatementId *string `location:"uri" locationName:"StatementId" min:"1" type:"string" required:"true"`
12454}
12455
12456// String returns the string representation
12457func (s RemovePermissionInput) String() string {
12458	return awsutil.Prettify(s)
12459}
12460
12461// GoString returns the string representation
12462func (s RemovePermissionInput) GoString() string {
12463	return s.String()
12464}
12465
12466// Validate inspects the fields of the type to determine if they are valid.
12467func (s *RemovePermissionInput) Validate() error {
12468	invalidParams := request.ErrInvalidParams{Context: "RemovePermissionInput"}
12469	if s.FunctionName == nil {
12470		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
12471	}
12472	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
12473		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
12474	}
12475	if s.Qualifier != nil && len(*s.Qualifier) < 1 {
12476		invalidParams.Add(request.NewErrParamMinLen("Qualifier", 1))
12477	}
12478	if s.StatementId == nil {
12479		invalidParams.Add(request.NewErrParamRequired("StatementId"))
12480	}
12481	if s.StatementId != nil && len(*s.StatementId) < 1 {
12482		invalidParams.Add(request.NewErrParamMinLen("StatementId", 1))
12483	}
12484
12485	if invalidParams.Len() > 0 {
12486		return invalidParams
12487	}
12488	return nil
12489}
12490
12491// SetFunctionName sets the FunctionName field's value.
12492func (s *RemovePermissionInput) SetFunctionName(v string) *RemovePermissionInput {
12493	s.FunctionName = &v
12494	return s
12495}
12496
12497// SetQualifier sets the Qualifier field's value.
12498func (s *RemovePermissionInput) SetQualifier(v string) *RemovePermissionInput {
12499	s.Qualifier = &v
12500	return s
12501}
12502
12503// SetRevisionId sets the RevisionId field's value.
12504func (s *RemovePermissionInput) SetRevisionId(v string) *RemovePermissionInput {
12505	s.RevisionId = &v
12506	return s
12507}
12508
12509// SetStatementId sets the StatementId field's value.
12510func (s *RemovePermissionInput) SetStatementId(v string) *RemovePermissionInput {
12511	s.StatementId = &v
12512	return s
12513}
12514
12515type RemovePermissionOutput struct {
12516	_ struct{} `type:"structure"`
12517}
12518
12519// String returns the string representation
12520func (s RemovePermissionOutput) String() string {
12521	return awsutil.Prettify(s)
12522}
12523
12524// GoString returns the string representation
12525func (s RemovePermissionOutput) GoString() string {
12526	return s.String()
12527}
12528
12529// The request payload exceeded the Invoke request body JSON input limit. For
12530// more information, see Limits (https://docs.aws.amazon.com/lambda/latest/dg/limits.html).
12531type RequestTooLargeException struct {
12532	_            struct{}                  `type:"structure"`
12533	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
12534
12535	Message_ *string `locationName:"message" type:"string"`
12536
12537	Type *string `type:"string"`
12538}
12539
12540// String returns the string representation
12541func (s RequestTooLargeException) String() string {
12542	return awsutil.Prettify(s)
12543}
12544
12545// GoString returns the string representation
12546func (s RequestTooLargeException) GoString() string {
12547	return s.String()
12548}
12549
12550func newErrorRequestTooLargeException(v protocol.ResponseMetadata) error {
12551	return &RequestTooLargeException{
12552		RespMetadata: v,
12553	}
12554}
12555
12556// Code returns the exception type name.
12557func (s *RequestTooLargeException) Code() string {
12558	return "RequestTooLargeException"
12559}
12560
12561// Message returns the exception's message.
12562func (s *RequestTooLargeException) Message() string {
12563	if s.Message_ != nil {
12564		return *s.Message_
12565	}
12566	return ""
12567}
12568
12569// OrigErr always returns nil, satisfies awserr.Error interface.
12570func (s *RequestTooLargeException) OrigErr() error {
12571	return nil
12572}
12573
12574func (s *RequestTooLargeException) Error() string {
12575	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
12576}
12577
12578// Status code returns the HTTP status code for the request's response error.
12579func (s *RequestTooLargeException) StatusCode() int {
12580	return s.RespMetadata.StatusCode
12581}
12582
12583// RequestID returns the service's response RequestID for request.
12584func (s *RequestTooLargeException) RequestID() string {
12585	return s.RespMetadata.RequestID
12586}
12587
12588// The resource already exists, or another operation is in progress.
12589type ResourceConflictException struct {
12590	_            struct{}                  `type:"structure"`
12591	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
12592
12593	// The exception message.
12594	Message_ *string `locationName:"message" type:"string"`
12595
12596	// The exception type.
12597	Type *string `type:"string"`
12598}
12599
12600// String returns the string representation
12601func (s ResourceConflictException) String() string {
12602	return awsutil.Prettify(s)
12603}
12604
12605// GoString returns the string representation
12606func (s ResourceConflictException) GoString() string {
12607	return s.String()
12608}
12609
12610func newErrorResourceConflictException(v protocol.ResponseMetadata) error {
12611	return &ResourceConflictException{
12612		RespMetadata: v,
12613	}
12614}
12615
12616// Code returns the exception type name.
12617func (s *ResourceConflictException) Code() string {
12618	return "ResourceConflictException"
12619}
12620
12621// Message returns the exception's message.
12622func (s *ResourceConflictException) Message() string {
12623	if s.Message_ != nil {
12624		return *s.Message_
12625	}
12626	return ""
12627}
12628
12629// OrigErr always returns nil, satisfies awserr.Error interface.
12630func (s *ResourceConflictException) OrigErr() error {
12631	return nil
12632}
12633
12634func (s *ResourceConflictException) Error() string {
12635	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
12636}
12637
12638// Status code returns the HTTP status code for the request's response error.
12639func (s *ResourceConflictException) StatusCode() int {
12640	return s.RespMetadata.StatusCode
12641}
12642
12643// RequestID returns the service's response RequestID for request.
12644func (s *ResourceConflictException) RequestID() string {
12645	return s.RespMetadata.RequestID
12646}
12647
12648// The operation conflicts with the resource's availability. For example, you
12649// attempted to update an EventSource Mapping in CREATING, or tried to delete
12650// a EventSource mapping currently in the UPDATING state.
12651type ResourceInUseException struct {
12652	_            struct{}                  `type:"structure"`
12653	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
12654
12655	Message_ *string `locationName:"Message" type:"string"`
12656
12657	Type *string `type:"string"`
12658}
12659
12660// String returns the string representation
12661func (s ResourceInUseException) String() string {
12662	return awsutil.Prettify(s)
12663}
12664
12665// GoString returns the string representation
12666func (s ResourceInUseException) GoString() string {
12667	return s.String()
12668}
12669
12670func newErrorResourceInUseException(v protocol.ResponseMetadata) error {
12671	return &ResourceInUseException{
12672		RespMetadata: v,
12673	}
12674}
12675
12676// Code returns the exception type name.
12677func (s *ResourceInUseException) Code() string {
12678	return "ResourceInUseException"
12679}
12680
12681// Message returns the exception's message.
12682func (s *ResourceInUseException) Message() string {
12683	if s.Message_ != nil {
12684		return *s.Message_
12685	}
12686	return ""
12687}
12688
12689// OrigErr always returns nil, satisfies awserr.Error interface.
12690func (s *ResourceInUseException) OrigErr() error {
12691	return nil
12692}
12693
12694func (s *ResourceInUseException) Error() string {
12695	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
12696}
12697
12698// Status code returns the HTTP status code for the request's response error.
12699func (s *ResourceInUseException) StatusCode() int {
12700	return s.RespMetadata.StatusCode
12701}
12702
12703// RequestID returns the service's response RequestID for request.
12704func (s *ResourceInUseException) RequestID() string {
12705	return s.RespMetadata.RequestID
12706}
12707
12708// The resource specified in the request does not exist.
12709type ResourceNotFoundException struct {
12710	_            struct{}                  `type:"structure"`
12711	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
12712
12713	Message_ *string `locationName:"Message" type:"string"`
12714
12715	Type *string `type:"string"`
12716}
12717
12718// String returns the string representation
12719func (s ResourceNotFoundException) String() string {
12720	return awsutil.Prettify(s)
12721}
12722
12723// GoString returns the string representation
12724func (s ResourceNotFoundException) GoString() string {
12725	return s.String()
12726}
12727
12728func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error {
12729	return &ResourceNotFoundException{
12730		RespMetadata: v,
12731	}
12732}
12733
12734// Code returns the exception type name.
12735func (s *ResourceNotFoundException) Code() string {
12736	return "ResourceNotFoundException"
12737}
12738
12739// Message returns the exception's message.
12740func (s *ResourceNotFoundException) Message() string {
12741	if s.Message_ != nil {
12742		return *s.Message_
12743	}
12744	return ""
12745}
12746
12747// OrigErr always returns nil, satisfies awserr.Error interface.
12748func (s *ResourceNotFoundException) OrigErr() error {
12749	return nil
12750}
12751
12752func (s *ResourceNotFoundException) Error() string {
12753	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
12754}
12755
12756// Status code returns the HTTP status code for the request's response error.
12757func (s *ResourceNotFoundException) StatusCode() int {
12758	return s.RespMetadata.StatusCode
12759}
12760
12761// RequestID returns the service's response RequestID for request.
12762func (s *ResourceNotFoundException) RequestID() string {
12763	return s.RespMetadata.RequestID
12764}
12765
12766// The function is inactive and its VPC connection is no longer available. Wait
12767// for the VPC connection to reestablish and try again.
12768type ResourceNotReadyException struct {
12769	_            struct{}                  `type:"structure"`
12770	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
12771
12772	// The exception message.
12773	Message_ *string `locationName:"message" type:"string"`
12774
12775	// The exception type.
12776	Type *string `type:"string"`
12777}
12778
12779// String returns the string representation
12780func (s ResourceNotReadyException) String() string {
12781	return awsutil.Prettify(s)
12782}
12783
12784// GoString returns the string representation
12785func (s ResourceNotReadyException) GoString() string {
12786	return s.String()
12787}
12788
12789func newErrorResourceNotReadyException(v protocol.ResponseMetadata) error {
12790	return &ResourceNotReadyException{
12791		RespMetadata: v,
12792	}
12793}
12794
12795// Code returns the exception type name.
12796func (s *ResourceNotReadyException) Code() string {
12797	return "ResourceNotReadyException"
12798}
12799
12800// Message returns the exception's message.
12801func (s *ResourceNotReadyException) Message() string {
12802	if s.Message_ != nil {
12803		return *s.Message_
12804	}
12805	return ""
12806}
12807
12808// OrigErr always returns nil, satisfies awserr.Error interface.
12809func (s *ResourceNotReadyException) OrigErr() error {
12810	return nil
12811}
12812
12813func (s *ResourceNotReadyException) Error() string {
12814	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
12815}
12816
12817// Status code returns the HTTP status code for the request's response error.
12818func (s *ResourceNotReadyException) StatusCode() int {
12819	return s.RespMetadata.StatusCode
12820}
12821
12822// RequestID returns the service's response RequestID for request.
12823func (s *ResourceNotReadyException) RequestID() string {
12824	return s.RespMetadata.RequestID
12825}
12826
12827// The AWS Lambda service encountered an internal error.
12828type ServiceException struct {
12829	_            struct{}                  `type:"structure"`
12830	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
12831
12832	Message_ *string `locationName:"Message" type:"string"`
12833
12834	Type *string `type:"string"`
12835}
12836
12837// String returns the string representation
12838func (s ServiceException) String() string {
12839	return awsutil.Prettify(s)
12840}
12841
12842// GoString returns the string representation
12843func (s ServiceException) GoString() string {
12844	return s.String()
12845}
12846
12847func newErrorServiceException(v protocol.ResponseMetadata) error {
12848	return &ServiceException{
12849		RespMetadata: v,
12850	}
12851}
12852
12853// Code returns the exception type name.
12854func (s *ServiceException) Code() string {
12855	return "ServiceException"
12856}
12857
12858// Message returns the exception's message.
12859func (s *ServiceException) Message() string {
12860	if s.Message_ != nil {
12861		return *s.Message_
12862	}
12863	return ""
12864}
12865
12866// OrigErr always returns nil, satisfies awserr.Error interface.
12867func (s *ServiceException) OrigErr() error {
12868	return nil
12869}
12870
12871func (s *ServiceException) Error() string {
12872	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
12873}
12874
12875// Status code returns the HTTP status code for the request's response error.
12876func (s *ServiceException) StatusCode() int {
12877	return s.RespMetadata.StatusCode
12878}
12879
12880// RequestID returns the service's response RequestID for request.
12881func (s *ServiceException) RequestID() string {
12882	return s.RespMetadata.RequestID
12883}
12884
12885// AWS Lambda was not able to set up VPC access for the Lambda function because
12886// one or more configured subnets has no available IP addresses.
12887type SubnetIPAddressLimitReachedException struct {
12888	_            struct{}                  `type:"structure"`
12889	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
12890
12891	Message_ *string `locationName:"Message" type:"string"`
12892
12893	Type *string `type:"string"`
12894}
12895
12896// String returns the string representation
12897func (s SubnetIPAddressLimitReachedException) String() string {
12898	return awsutil.Prettify(s)
12899}
12900
12901// GoString returns the string representation
12902func (s SubnetIPAddressLimitReachedException) GoString() string {
12903	return s.String()
12904}
12905
12906func newErrorSubnetIPAddressLimitReachedException(v protocol.ResponseMetadata) error {
12907	return &SubnetIPAddressLimitReachedException{
12908		RespMetadata: v,
12909	}
12910}
12911
12912// Code returns the exception type name.
12913func (s *SubnetIPAddressLimitReachedException) Code() string {
12914	return "SubnetIPAddressLimitReachedException"
12915}
12916
12917// Message returns the exception's message.
12918func (s *SubnetIPAddressLimitReachedException) Message() string {
12919	if s.Message_ != nil {
12920		return *s.Message_
12921	}
12922	return ""
12923}
12924
12925// OrigErr always returns nil, satisfies awserr.Error interface.
12926func (s *SubnetIPAddressLimitReachedException) OrigErr() error {
12927	return nil
12928}
12929
12930func (s *SubnetIPAddressLimitReachedException) Error() string {
12931	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
12932}
12933
12934// Status code returns the HTTP status code for the request's response error.
12935func (s *SubnetIPAddressLimitReachedException) StatusCode() int {
12936	return s.RespMetadata.StatusCode
12937}
12938
12939// RequestID returns the service's response RequestID for request.
12940func (s *SubnetIPAddressLimitReachedException) RequestID() string {
12941	return s.RespMetadata.RequestID
12942}
12943
12944type TagResourceInput struct {
12945	_ struct{} `type:"structure"`
12946
12947	// The function's Amazon Resource Name (ARN).
12948	//
12949	// Resource is a required field
12950	Resource *string `location:"uri" locationName:"ARN" type:"string" required:"true"`
12951
12952	// A list of tags to apply to the function.
12953	//
12954	// Tags is a required field
12955	Tags map[string]*string `type:"map" required:"true"`
12956}
12957
12958// String returns the string representation
12959func (s TagResourceInput) String() string {
12960	return awsutil.Prettify(s)
12961}
12962
12963// GoString returns the string representation
12964func (s TagResourceInput) GoString() string {
12965	return s.String()
12966}
12967
12968// Validate inspects the fields of the type to determine if they are valid.
12969func (s *TagResourceInput) Validate() error {
12970	invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"}
12971	if s.Resource == nil {
12972		invalidParams.Add(request.NewErrParamRequired("Resource"))
12973	}
12974	if s.Resource != nil && len(*s.Resource) < 1 {
12975		invalidParams.Add(request.NewErrParamMinLen("Resource", 1))
12976	}
12977	if s.Tags == nil {
12978		invalidParams.Add(request.NewErrParamRequired("Tags"))
12979	}
12980
12981	if invalidParams.Len() > 0 {
12982		return invalidParams
12983	}
12984	return nil
12985}
12986
12987// SetResource sets the Resource field's value.
12988func (s *TagResourceInput) SetResource(v string) *TagResourceInput {
12989	s.Resource = &v
12990	return s
12991}
12992
12993// SetTags sets the Tags field's value.
12994func (s *TagResourceInput) SetTags(v map[string]*string) *TagResourceInput {
12995	s.Tags = v
12996	return s
12997}
12998
12999type TagResourceOutput struct {
13000	_ struct{} `type:"structure"`
13001}
13002
13003// String returns the string representation
13004func (s TagResourceOutput) String() string {
13005	return awsutil.Prettify(s)
13006}
13007
13008// GoString returns the string representation
13009func (s TagResourceOutput) GoString() string {
13010	return s.String()
13011}
13012
13013// The request throughput limit was exceeded.
13014type TooManyRequestsException struct {
13015	_            struct{}                  `type:"structure"`
13016	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
13017
13018	Message_ *string `locationName:"message" type:"string"`
13019
13020	Reason *string `type:"string" enum:"ThrottleReason"`
13021
13022	// The number of seconds the caller should wait before retrying.
13023	RetryAfterSeconds *string `location:"header" locationName:"Retry-After" type:"string"`
13024
13025	Type *string `type:"string"`
13026}
13027
13028// String returns the string representation
13029func (s TooManyRequestsException) String() string {
13030	return awsutil.Prettify(s)
13031}
13032
13033// GoString returns the string representation
13034func (s TooManyRequestsException) GoString() string {
13035	return s.String()
13036}
13037
13038func newErrorTooManyRequestsException(v protocol.ResponseMetadata) error {
13039	return &TooManyRequestsException{
13040		RespMetadata: v,
13041	}
13042}
13043
13044// Code returns the exception type name.
13045func (s *TooManyRequestsException) Code() string {
13046	return "TooManyRequestsException"
13047}
13048
13049// Message returns the exception's message.
13050func (s *TooManyRequestsException) Message() string {
13051	if s.Message_ != nil {
13052		return *s.Message_
13053	}
13054	return ""
13055}
13056
13057// OrigErr always returns nil, satisfies awserr.Error interface.
13058func (s *TooManyRequestsException) OrigErr() error {
13059	return nil
13060}
13061
13062func (s *TooManyRequestsException) Error() string {
13063	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
13064}
13065
13066// Status code returns the HTTP status code for the request's response error.
13067func (s *TooManyRequestsException) StatusCode() int {
13068	return s.RespMetadata.StatusCode
13069}
13070
13071// RequestID returns the service's response RequestID for request.
13072func (s *TooManyRequestsException) RequestID() string {
13073	return s.RespMetadata.RequestID
13074}
13075
13076// The function's AWS X-Ray tracing configuration. To sample and record incoming
13077// requests, set Mode to Active.
13078type TracingConfig struct {
13079	_ struct{} `type:"structure"`
13080
13081	// The tracing mode.
13082	Mode *string `type:"string" enum:"TracingMode"`
13083}
13084
13085// String returns the string representation
13086func (s TracingConfig) String() string {
13087	return awsutil.Prettify(s)
13088}
13089
13090// GoString returns the string representation
13091func (s TracingConfig) GoString() string {
13092	return s.String()
13093}
13094
13095// SetMode sets the Mode field's value.
13096func (s *TracingConfig) SetMode(v string) *TracingConfig {
13097	s.Mode = &v
13098	return s
13099}
13100
13101// The function's AWS X-Ray tracing configuration.
13102type TracingConfigResponse struct {
13103	_ struct{} `type:"structure"`
13104
13105	// The tracing mode.
13106	Mode *string `type:"string" enum:"TracingMode"`
13107}
13108
13109// String returns the string representation
13110func (s TracingConfigResponse) String() string {
13111	return awsutil.Prettify(s)
13112}
13113
13114// GoString returns the string representation
13115func (s TracingConfigResponse) GoString() string {
13116	return s.String()
13117}
13118
13119// SetMode sets the Mode field's value.
13120func (s *TracingConfigResponse) SetMode(v string) *TracingConfigResponse {
13121	s.Mode = &v
13122	return s
13123}
13124
13125// The content type of the Invoke request body is not JSON.
13126type UnsupportedMediaTypeException struct {
13127	_            struct{}                  `type:"structure"`
13128	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
13129
13130	Message_ *string `locationName:"message" type:"string"`
13131
13132	Type *string `type:"string"`
13133}
13134
13135// String returns the string representation
13136func (s UnsupportedMediaTypeException) String() string {
13137	return awsutil.Prettify(s)
13138}
13139
13140// GoString returns the string representation
13141func (s UnsupportedMediaTypeException) GoString() string {
13142	return s.String()
13143}
13144
13145func newErrorUnsupportedMediaTypeException(v protocol.ResponseMetadata) error {
13146	return &UnsupportedMediaTypeException{
13147		RespMetadata: v,
13148	}
13149}
13150
13151// Code returns the exception type name.
13152func (s *UnsupportedMediaTypeException) Code() string {
13153	return "UnsupportedMediaTypeException"
13154}
13155
13156// Message returns the exception's message.
13157func (s *UnsupportedMediaTypeException) Message() string {
13158	if s.Message_ != nil {
13159		return *s.Message_
13160	}
13161	return ""
13162}
13163
13164// OrigErr always returns nil, satisfies awserr.Error interface.
13165func (s *UnsupportedMediaTypeException) OrigErr() error {
13166	return nil
13167}
13168
13169func (s *UnsupportedMediaTypeException) Error() string {
13170	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
13171}
13172
13173// Status code returns the HTTP status code for the request's response error.
13174func (s *UnsupportedMediaTypeException) StatusCode() int {
13175	return s.RespMetadata.StatusCode
13176}
13177
13178// RequestID returns the service's response RequestID for request.
13179func (s *UnsupportedMediaTypeException) RequestID() string {
13180	return s.RespMetadata.RequestID
13181}
13182
13183type UntagResourceInput struct {
13184	_ struct{} `type:"structure"`
13185
13186	// The function's Amazon Resource Name (ARN).
13187	//
13188	// Resource is a required field
13189	Resource *string `location:"uri" locationName:"ARN" type:"string" required:"true"`
13190
13191	// A list of tag keys to remove from the function.
13192	//
13193	// TagKeys is a required field
13194	TagKeys []*string `location:"querystring" locationName:"tagKeys" type:"list" required:"true"`
13195}
13196
13197// String returns the string representation
13198func (s UntagResourceInput) String() string {
13199	return awsutil.Prettify(s)
13200}
13201
13202// GoString returns the string representation
13203func (s UntagResourceInput) GoString() string {
13204	return s.String()
13205}
13206
13207// Validate inspects the fields of the type to determine if they are valid.
13208func (s *UntagResourceInput) Validate() error {
13209	invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"}
13210	if s.Resource == nil {
13211		invalidParams.Add(request.NewErrParamRequired("Resource"))
13212	}
13213	if s.Resource != nil && len(*s.Resource) < 1 {
13214		invalidParams.Add(request.NewErrParamMinLen("Resource", 1))
13215	}
13216	if s.TagKeys == nil {
13217		invalidParams.Add(request.NewErrParamRequired("TagKeys"))
13218	}
13219
13220	if invalidParams.Len() > 0 {
13221		return invalidParams
13222	}
13223	return nil
13224}
13225
13226// SetResource sets the Resource field's value.
13227func (s *UntagResourceInput) SetResource(v string) *UntagResourceInput {
13228	s.Resource = &v
13229	return s
13230}
13231
13232// SetTagKeys sets the TagKeys field's value.
13233func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput {
13234	s.TagKeys = v
13235	return s
13236}
13237
13238type UntagResourceOutput struct {
13239	_ struct{} `type:"structure"`
13240}
13241
13242// String returns the string representation
13243func (s UntagResourceOutput) String() string {
13244	return awsutil.Prettify(s)
13245}
13246
13247// GoString returns the string representation
13248func (s UntagResourceOutput) GoString() string {
13249	return s.String()
13250}
13251
13252type UpdateAliasInput struct {
13253	_ struct{} `type:"structure"`
13254
13255	// A description of the alias.
13256	Description *string `type:"string"`
13257
13258	// The name of the Lambda function.
13259	//
13260	// Name formats
13261	//
13262	//    * Function name - MyFunction.
13263	//
13264	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.
13265	//
13266	//    * Partial ARN - 123456789012:function:MyFunction.
13267	//
13268	// The length constraint applies only to the full ARN. If you specify only the
13269	// function name, it is limited to 64 characters in length.
13270	//
13271	// FunctionName is a required field
13272	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
13273
13274	// The function version that the alias invokes.
13275	FunctionVersion *string `min:"1" type:"string"`
13276
13277	// The name of the alias.
13278	//
13279	// Name is a required field
13280	Name *string `location:"uri" locationName:"Name" min:"1" type:"string" required:"true"`
13281
13282	// Only update the alias if the revision ID matches the ID that's specified.
13283	// Use this option to avoid modifying an alias that has changed since you last
13284	// read it.
13285	RevisionId *string `type:"string"`
13286
13287	// The routing configuration (https://docs.aws.amazon.com/lambda/latest/dg/configuration-aliases.html#configuring-alias-routing)
13288	// of the alias.
13289	RoutingConfig *AliasRoutingConfiguration `type:"structure"`
13290}
13291
13292// String returns the string representation
13293func (s UpdateAliasInput) String() string {
13294	return awsutil.Prettify(s)
13295}
13296
13297// GoString returns the string representation
13298func (s UpdateAliasInput) GoString() string {
13299	return s.String()
13300}
13301
13302// Validate inspects the fields of the type to determine if they are valid.
13303func (s *UpdateAliasInput) Validate() error {
13304	invalidParams := request.ErrInvalidParams{Context: "UpdateAliasInput"}
13305	if s.FunctionName == nil {
13306		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
13307	}
13308	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
13309		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
13310	}
13311	if s.FunctionVersion != nil && len(*s.FunctionVersion) < 1 {
13312		invalidParams.Add(request.NewErrParamMinLen("FunctionVersion", 1))
13313	}
13314	if s.Name == nil {
13315		invalidParams.Add(request.NewErrParamRequired("Name"))
13316	}
13317	if s.Name != nil && len(*s.Name) < 1 {
13318		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
13319	}
13320
13321	if invalidParams.Len() > 0 {
13322		return invalidParams
13323	}
13324	return nil
13325}
13326
13327// SetDescription sets the Description field's value.
13328func (s *UpdateAliasInput) SetDescription(v string) *UpdateAliasInput {
13329	s.Description = &v
13330	return s
13331}
13332
13333// SetFunctionName sets the FunctionName field's value.
13334func (s *UpdateAliasInput) SetFunctionName(v string) *UpdateAliasInput {
13335	s.FunctionName = &v
13336	return s
13337}
13338
13339// SetFunctionVersion sets the FunctionVersion field's value.
13340func (s *UpdateAliasInput) SetFunctionVersion(v string) *UpdateAliasInput {
13341	s.FunctionVersion = &v
13342	return s
13343}
13344
13345// SetName sets the Name field's value.
13346func (s *UpdateAliasInput) SetName(v string) *UpdateAliasInput {
13347	s.Name = &v
13348	return s
13349}
13350
13351// SetRevisionId sets the RevisionId field's value.
13352func (s *UpdateAliasInput) SetRevisionId(v string) *UpdateAliasInput {
13353	s.RevisionId = &v
13354	return s
13355}
13356
13357// SetRoutingConfig sets the RoutingConfig field's value.
13358func (s *UpdateAliasInput) SetRoutingConfig(v *AliasRoutingConfiguration) *UpdateAliasInput {
13359	s.RoutingConfig = v
13360	return s
13361}
13362
13363type UpdateEventSourceMappingInput struct {
13364	_ struct{} `type:"structure"`
13365
13366	// The maximum number of items to retrieve in a single batch.
13367	//
13368	//    * Amazon Kinesis - Default 100. Max 10,000.
13369	//
13370	//    * Amazon DynamoDB Streams - Default 100. Max 1,000.
13371	//
13372	//    * Amazon Simple Queue Service - Default 10. Max 10.
13373	BatchSize *int64 `min:"1" type:"integer"`
13374
13375	// (Streams) If the function returns an error, split the batch in two and retry.
13376	BisectBatchOnFunctionError *bool `type:"boolean"`
13377
13378	// (Streams) An Amazon SQS queue or Amazon SNS topic destination for discarded
13379	// records.
13380	DestinationConfig *DestinationConfig `type:"structure"`
13381
13382	// Disables the event source mapping to pause polling and invocation.
13383	Enabled *bool `type:"boolean"`
13384
13385	// The name of the Lambda function.
13386	//
13387	// Name formats
13388	//
13389	//    * Function name - MyFunction.
13390	//
13391	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.
13392	//
13393	//    * Version or Alias ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction:PROD.
13394	//
13395	//    * Partial ARN - 123456789012:function:MyFunction.
13396	//
13397	// The length constraint applies only to the full ARN. If you specify only the
13398	// function name, it's limited to 64 characters in length.
13399	FunctionName *string `min:"1" type:"string"`
13400
13401	// (Streams) The maximum amount of time to gather records before invoking the
13402	// function, in seconds.
13403	MaximumBatchingWindowInSeconds *int64 `type:"integer"`
13404
13405	// (Streams) The maximum age of a record that Lambda sends to a function for
13406	// processing.
13407	MaximumRecordAgeInSeconds *int64 `min:"60" type:"integer"`
13408
13409	// (Streams) The maximum number of times to retry when the function returns
13410	// an error.
13411	MaximumRetryAttempts *int64 `type:"integer"`
13412
13413	// (Streams) The number of batches to process from each shard concurrently.
13414	ParallelizationFactor *int64 `min:"1" type:"integer"`
13415
13416	// The identifier of the event source mapping.
13417	//
13418	// UUID is a required field
13419	UUID *string `location:"uri" locationName:"UUID" type:"string" required:"true"`
13420}
13421
13422// String returns the string representation
13423func (s UpdateEventSourceMappingInput) String() string {
13424	return awsutil.Prettify(s)
13425}
13426
13427// GoString returns the string representation
13428func (s UpdateEventSourceMappingInput) GoString() string {
13429	return s.String()
13430}
13431
13432// Validate inspects the fields of the type to determine if they are valid.
13433func (s *UpdateEventSourceMappingInput) Validate() error {
13434	invalidParams := request.ErrInvalidParams{Context: "UpdateEventSourceMappingInput"}
13435	if s.BatchSize != nil && *s.BatchSize < 1 {
13436		invalidParams.Add(request.NewErrParamMinValue("BatchSize", 1))
13437	}
13438	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
13439		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
13440	}
13441	if s.MaximumRecordAgeInSeconds != nil && *s.MaximumRecordAgeInSeconds < 60 {
13442		invalidParams.Add(request.NewErrParamMinValue("MaximumRecordAgeInSeconds", 60))
13443	}
13444	if s.ParallelizationFactor != nil && *s.ParallelizationFactor < 1 {
13445		invalidParams.Add(request.NewErrParamMinValue("ParallelizationFactor", 1))
13446	}
13447	if s.UUID == nil {
13448		invalidParams.Add(request.NewErrParamRequired("UUID"))
13449	}
13450	if s.UUID != nil && len(*s.UUID) < 1 {
13451		invalidParams.Add(request.NewErrParamMinLen("UUID", 1))
13452	}
13453
13454	if invalidParams.Len() > 0 {
13455		return invalidParams
13456	}
13457	return nil
13458}
13459
13460// SetBatchSize sets the BatchSize field's value.
13461func (s *UpdateEventSourceMappingInput) SetBatchSize(v int64) *UpdateEventSourceMappingInput {
13462	s.BatchSize = &v
13463	return s
13464}
13465
13466// SetBisectBatchOnFunctionError sets the BisectBatchOnFunctionError field's value.
13467func (s *UpdateEventSourceMappingInput) SetBisectBatchOnFunctionError(v bool) *UpdateEventSourceMappingInput {
13468	s.BisectBatchOnFunctionError = &v
13469	return s
13470}
13471
13472// SetDestinationConfig sets the DestinationConfig field's value.
13473func (s *UpdateEventSourceMappingInput) SetDestinationConfig(v *DestinationConfig) *UpdateEventSourceMappingInput {
13474	s.DestinationConfig = v
13475	return s
13476}
13477
13478// SetEnabled sets the Enabled field's value.
13479func (s *UpdateEventSourceMappingInput) SetEnabled(v bool) *UpdateEventSourceMappingInput {
13480	s.Enabled = &v
13481	return s
13482}
13483
13484// SetFunctionName sets the FunctionName field's value.
13485func (s *UpdateEventSourceMappingInput) SetFunctionName(v string) *UpdateEventSourceMappingInput {
13486	s.FunctionName = &v
13487	return s
13488}
13489
13490// SetMaximumBatchingWindowInSeconds sets the MaximumBatchingWindowInSeconds field's value.
13491func (s *UpdateEventSourceMappingInput) SetMaximumBatchingWindowInSeconds(v int64) *UpdateEventSourceMappingInput {
13492	s.MaximumBatchingWindowInSeconds = &v
13493	return s
13494}
13495
13496// SetMaximumRecordAgeInSeconds sets the MaximumRecordAgeInSeconds field's value.
13497func (s *UpdateEventSourceMappingInput) SetMaximumRecordAgeInSeconds(v int64) *UpdateEventSourceMappingInput {
13498	s.MaximumRecordAgeInSeconds = &v
13499	return s
13500}
13501
13502// SetMaximumRetryAttempts sets the MaximumRetryAttempts field's value.
13503func (s *UpdateEventSourceMappingInput) SetMaximumRetryAttempts(v int64) *UpdateEventSourceMappingInput {
13504	s.MaximumRetryAttempts = &v
13505	return s
13506}
13507
13508// SetParallelizationFactor sets the ParallelizationFactor field's value.
13509func (s *UpdateEventSourceMappingInput) SetParallelizationFactor(v int64) *UpdateEventSourceMappingInput {
13510	s.ParallelizationFactor = &v
13511	return s
13512}
13513
13514// SetUUID sets the UUID field's value.
13515func (s *UpdateEventSourceMappingInput) SetUUID(v string) *UpdateEventSourceMappingInput {
13516	s.UUID = &v
13517	return s
13518}
13519
13520type UpdateFunctionCodeInput struct {
13521	_ struct{} `type:"structure"`
13522
13523	// Set to true to validate the request parameters and access permissions without
13524	// modifying the function code.
13525	DryRun *bool `type:"boolean"`
13526
13527	// The name of the Lambda function.
13528	//
13529	// Name formats
13530	//
13531	//    * Function name - my-function.
13532	//
13533	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
13534	//
13535	//    * Partial ARN - 123456789012:function:my-function.
13536	//
13537	// The length constraint applies only to the full ARN. If you specify only the
13538	// function name, it is limited to 64 characters in length.
13539	//
13540	// FunctionName is a required field
13541	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
13542
13543	// Set to true to publish a new version of the function after updating the code.
13544	// This has the same effect as calling PublishVersion separately.
13545	Publish *bool `type:"boolean"`
13546
13547	// Only update the function if the revision ID matches the ID that's specified.
13548	// Use this option to avoid modifying a function that has changed since you
13549	// last read it.
13550	RevisionId *string `type:"string"`
13551
13552	// An Amazon S3 bucket in the same AWS Region as your function. The bucket can
13553	// be in a different AWS account.
13554	S3Bucket *string `min:"3" type:"string"`
13555
13556	// The Amazon S3 key of the deployment package.
13557	S3Key *string `min:"1" type:"string"`
13558
13559	// For versioned objects, the version of the deployment package object to use.
13560	S3ObjectVersion *string `min:"1" type:"string"`
13561
13562	// The base64-encoded contents of the deployment package. AWS SDK and AWS CLI
13563	// clients handle the encoding for you.
13564	//
13565	// ZipFile is automatically base64 encoded/decoded by the SDK.
13566	ZipFile []byte `type:"blob" sensitive:"true"`
13567}
13568
13569// String returns the string representation
13570func (s UpdateFunctionCodeInput) String() string {
13571	return awsutil.Prettify(s)
13572}
13573
13574// GoString returns the string representation
13575func (s UpdateFunctionCodeInput) GoString() string {
13576	return s.String()
13577}
13578
13579// Validate inspects the fields of the type to determine if they are valid.
13580func (s *UpdateFunctionCodeInput) Validate() error {
13581	invalidParams := request.ErrInvalidParams{Context: "UpdateFunctionCodeInput"}
13582	if s.FunctionName == nil {
13583		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
13584	}
13585	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
13586		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
13587	}
13588	if s.S3Bucket != nil && len(*s.S3Bucket) < 3 {
13589		invalidParams.Add(request.NewErrParamMinLen("S3Bucket", 3))
13590	}
13591	if s.S3Key != nil && len(*s.S3Key) < 1 {
13592		invalidParams.Add(request.NewErrParamMinLen("S3Key", 1))
13593	}
13594	if s.S3ObjectVersion != nil && len(*s.S3ObjectVersion) < 1 {
13595		invalidParams.Add(request.NewErrParamMinLen("S3ObjectVersion", 1))
13596	}
13597
13598	if invalidParams.Len() > 0 {
13599		return invalidParams
13600	}
13601	return nil
13602}
13603
13604// SetDryRun sets the DryRun field's value.
13605func (s *UpdateFunctionCodeInput) SetDryRun(v bool) *UpdateFunctionCodeInput {
13606	s.DryRun = &v
13607	return s
13608}
13609
13610// SetFunctionName sets the FunctionName field's value.
13611func (s *UpdateFunctionCodeInput) SetFunctionName(v string) *UpdateFunctionCodeInput {
13612	s.FunctionName = &v
13613	return s
13614}
13615
13616// SetPublish sets the Publish field's value.
13617func (s *UpdateFunctionCodeInput) SetPublish(v bool) *UpdateFunctionCodeInput {
13618	s.Publish = &v
13619	return s
13620}
13621
13622// SetRevisionId sets the RevisionId field's value.
13623func (s *UpdateFunctionCodeInput) SetRevisionId(v string) *UpdateFunctionCodeInput {
13624	s.RevisionId = &v
13625	return s
13626}
13627
13628// SetS3Bucket sets the S3Bucket field's value.
13629func (s *UpdateFunctionCodeInput) SetS3Bucket(v string) *UpdateFunctionCodeInput {
13630	s.S3Bucket = &v
13631	return s
13632}
13633
13634// SetS3Key sets the S3Key field's value.
13635func (s *UpdateFunctionCodeInput) SetS3Key(v string) *UpdateFunctionCodeInput {
13636	s.S3Key = &v
13637	return s
13638}
13639
13640// SetS3ObjectVersion sets the S3ObjectVersion field's value.
13641func (s *UpdateFunctionCodeInput) SetS3ObjectVersion(v string) *UpdateFunctionCodeInput {
13642	s.S3ObjectVersion = &v
13643	return s
13644}
13645
13646// SetZipFile sets the ZipFile field's value.
13647func (s *UpdateFunctionCodeInput) SetZipFile(v []byte) *UpdateFunctionCodeInput {
13648	s.ZipFile = v
13649	return s
13650}
13651
13652type UpdateFunctionConfigurationInput struct {
13653	_ struct{} `type:"structure"`
13654
13655	// A dead letter queue configuration that specifies the queue or topic where
13656	// Lambda sends asynchronous events when they fail processing. For more information,
13657	// see Dead Letter Queues (https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html#dlq).
13658	DeadLetterConfig *DeadLetterConfig `type:"structure"`
13659
13660	// A description of the function.
13661	Description *string `type:"string"`
13662
13663	// Environment variables that are accessible from function code during execution.
13664	Environment *Environment `type:"structure"`
13665
13666	// Connection settings for an Amazon EFS file system.
13667	FileSystemConfigs []*FileSystemConfig `type:"list"`
13668
13669	// The name of the Lambda function.
13670	//
13671	// Name formats
13672	//
13673	//    * Function name - my-function.
13674	//
13675	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
13676	//
13677	//    * Partial ARN - 123456789012:function:my-function.
13678	//
13679	// The length constraint applies only to the full ARN. If you specify only the
13680	// function name, it is limited to 64 characters in length.
13681	//
13682	// FunctionName is a required field
13683	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
13684
13685	// The name of the method within your code that Lambda calls to execute your
13686	// function. The format includes the file name. It can also include namespaces
13687	// and other qualifiers, depending on the runtime. For more information, see
13688	// Programming Model (https://docs.aws.amazon.com/lambda/latest/dg/programming-model-v2.html).
13689	Handler *string `type:"string"`
13690
13691	// The ARN of the AWS Key Management Service (AWS KMS) key that's used to encrypt
13692	// your function's environment variables. If it's not provided, AWS Lambda uses
13693	// a default service key.
13694	KMSKeyArn *string `type:"string"`
13695
13696	// A list of function layers (https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html)
13697	// to add to the function's execution environment. Specify each layer by its
13698	// ARN, including the version.
13699	Layers []*string `type:"list"`
13700
13701	// The amount of memory that your function has access to. Increasing the function's
13702	// memory also increases its CPU allocation. The default value is 128 MB. The
13703	// value must be a multiple of 64 MB.
13704	MemorySize *int64 `min:"128" type:"integer"`
13705
13706	// Only update the function if the revision ID matches the ID that's specified.
13707	// Use this option to avoid modifying a function that has changed since you
13708	// last read it.
13709	RevisionId *string `type:"string"`
13710
13711	// The Amazon Resource Name (ARN) of the function's execution role.
13712	Role *string `type:"string"`
13713
13714	// The identifier of the function's runtime (https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html).
13715	Runtime *string `type:"string" enum:"Runtime"`
13716
13717	// The amount of time that Lambda allows a function to run before stopping it.
13718	// The default is 3 seconds. The maximum allowed value is 900 seconds.
13719	Timeout *int64 `min:"1" type:"integer"`
13720
13721	// Set Mode to Active to sample and trace a subset of incoming requests with
13722	// AWS X-Ray.
13723	TracingConfig *TracingConfig `type:"structure"`
13724
13725	// For network connectivity to AWS resources in a VPC, specify a list of security
13726	// groups and subnets in the VPC. When you connect a function to a VPC, it can
13727	// only access resources and the internet through that VPC. For more information,
13728	// see VPC Settings (https://docs.aws.amazon.com/lambda/latest/dg/configuration-vpc.html).
13729	VpcConfig *VpcConfig `type:"structure"`
13730}
13731
13732// String returns the string representation
13733func (s UpdateFunctionConfigurationInput) String() string {
13734	return awsutil.Prettify(s)
13735}
13736
13737// GoString returns the string representation
13738func (s UpdateFunctionConfigurationInput) GoString() string {
13739	return s.String()
13740}
13741
13742// Validate inspects the fields of the type to determine if they are valid.
13743func (s *UpdateFunctionConfigurationInput) Validate() error {
13744	invalidParams := request.ErrInvalidParams{Context: "UpdateFunctionConfigurationInput"}
13745	if s.FunctionName == nil {
13746		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
13747	}
13748	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
13749		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
13750	}
13751	if s.MemorySize != nil && *s.MemorySize < 128 {
13752		invalidParams.Add(request.NewErrParamMinValue("MemorySize", 128))
13753	}
13754	if s.Timeout != nil && *s.Timeout < 1 {
13755		invalidParams.Add(request.NewErrParamMinValue("Timeout", 1))
13756	}
13757	if s.FileSystemConfigs != nil {
13758		for i, v := range s.FileSystemConfigs {
13759			if v == nil {
13760				continue
13761			}
13762			if err := v.Validate(); err != nil {
13763				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "FileSystemConfigs", i), err.(request.ErrInvalidParams))
13764			}
13765		}
13766	}
13767
13768	if invalidParams.Len() > 0 {
13769		return invalidParams
13770	}
13771	return nil
13772}
13773
13774// SetDeadLetterConfig sets the DeadLetterConfig field's value.
13775func (s *UpdateFunctionConfigurationInput) SetDeadLetterConfig(v *DeadLetterConfig) *UpdateFunctionConfigurationInput {
13776	s.DeadLetterConfig = v
13777	return s
13778}
13779
13780// SetDescription sets the Description field's value.
13781func (s *UpdateFunctionConfigurationInput) SetDescription(v string) *UpdateFunctionConfigurationInput {
13782	s.Description = &v
13783	return s
13784}
13785
13786// SetEnvironment sets the Environment field's value.
13787func (s *UpdateFunctionConfigurationInput) SetEnvironment(v *Environment) *UpdateFunctionConfigurationInput {
13788	s.Environment = v
13789	return s
13790}
13791
13792// SetFileSystemConfigs sets the FileSystemConfigs field's value.
13793func (s *UpdateFunctionConfigurationInput) SetFileSystemConfigs(v []*FileSystemConfig) *UpdateFunctionConfigurationInput {
13794	s.FileSystemConfigs = v
13795	return s
13796}
13797
13798// SetFunctionName sets the FunctionName field's value.
13799func (s *UpdateFunctionConfigurationInput) SetFunctionName(v string) *UpdateFunctionConfigurationInput {
13800	s.FunctionName = &v
13801	return s
13802}
13803
13804// SetHandler sets the Handler field's value.
13805func (s *UpdateFunctionConfigurationInput) SetHandler(v string) *UpdateFunctionConfigurationInput {
13806	s.Handler = &v
13807	return s
13808}
13809
13810// SetKMSKeyArn sets the KMSKeyArn field's value.
13811func (s *UpdateFunctionConfigurationInput) SetKMSKeyArn(v string) *UpdateFunctionConfigurationInput {
13812	s.KMSKeyArn = &v
13813	return s
13814}
13815
13816// SetLayers sets the Layers field's value.
13817func (s *UpdateFunctionConfigurationInput) SetLayers(v []*string) *UpdateFunctionConfigurationInput {
13818	s.Layers = v
13819	return s
13820}
13821
13822// SetMemorySize sets the MemorySize field's value.
13823func (s *UpdateFunctionConfigurationInput) SetMemorySize(v int64) *UpdateFunctionConfigurationInput {
13824	s.MemorySize = &v
13825	return s
13826}
13827
13828// SetRevisionId sets the RevisionId field's value.
13829func (s *UpdateFunctionConfigurationInput) SetRevisionId(v string) *UpdateFunctionConfigurationInput {
13830	s.RevisionId = &v
13831	return s
13832}
13833
13834// SetRole sets the Role field's value.
13835func (s *UpdateFunctionConfigurationInput) SetRole(v string) *UpdateFunctionConfigurationInput {
13836	s.Role = &v
13837	return s
13838}
13839
13840// SetRuntime sets the Runtime field's value.
13841func (s *UpdateFunctionConfigurationInput) SetRuntime(v string) *UpdateFunctionConfigurationInput {
13842	s.Runtime = &v
13843	return s
13844}
13845
13846// SetTimeout sets the Timeout field's value.
13847func (s *UpdateFunctionConfigurationInput) SetTimeout(v int64) *UpdateFunctionConfigurationInput {
13848	s.Timeout = &v
13849	return s
13850}
13851
13852// SetTracingConfig sets the TracingConfig field's value.
13853func (s *UpdateFunctionConfigurationInput) SetTracingConfig(v *TracingConfig) *UpdateFunctionConfigurationInput {
13854	s.TracingConfig = v
13855	return s
13856}
13857
13858// SetVpcConfig sets the VpcConfig field's value.
13859func (s *UpdateFunctionConfigurationInput) SetVpcConfig(v *VpcConfig) *UpdateFunctionConfigurationInput {
13860	s.VpcConfig = v
13861	return s
13862}
13863
13864type UpdateFunctionEventInvokeConfigInput struct {
13865	_ struct{} `type:"structure"`
13866
13867	// A destination for events after they have been sent to a function for processing.
13868	//
13869	// Destinations
13870	//
13871	//    * Function - The Amazon Resource Name (ARN) of a Lambda function.
13872	//
13873	//    * Queue - The ARN of an SQS queue.
13874	//
13875	//    * Topic - The ARN of an SNS topic.
13876	//
13877	//    * Event Bus - The ARN of an Amazon EventBridge event bus.
13878	DestinationConfig *DestinationConfig `type:"structure"`
13879
13880	// The name of the Lambda function, version, or alias.
13881	//
13882	// Name formats
13883	//
13884	//    * Function name - my-function (name-only), my-function:v1 (with alias).
13885	//
13886	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
13887	//
13888	//    * Partial ARN - 123456789012:function:my-function.
13889	//
13890	// You can append a version number or alias to any of the formats. The length
13891	// constraint applies only to the full ARN. If you specify only the function
13892	// name, it is limited to 64 characters in length.
13893	//
13894	// FunctionName is a required field
13895	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
13896
13897	// The maximum age of a request that Lambda sends to a function for processing.
13898	MaximumEventAgeInSeconds *int64 `min:"60" type:"integer"`
13899
13900	// The maximum number of times to retry when the function returns an error.
13901	MaximumRetryAttempts *int64 `type:"integer"`
13902
13903	// A version number or alias name.
13904	Qualifier *string `location:"querystring" locationName:"Qualifier" min:"1" type:"string"`
13905}
13906
13907// String returns the string representation
13908func (s UpdateFunctionEventInvokeConfigInput) String() string {
13909	return awsutil.Prettify(s)
13910}
13911
13912// GoString returns the string representation
13913func (s UpdateFunctionEventInvokeConfigInput) GoString() string {
13914	return s.String()
13915}
13916
13917// Validate inspects the fields of the type to determine if they are valid.
13918func (s *UpdateFunctionEventInvokeConfigInput) Validate() error {
13919	invalidParams := request.ErrInvalidParams{Context: "UpdateFunctionEventInvokeConfigInput"}
13920	if s.FunctionName == nil {
13921		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
13922	}
13923	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
13924		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
13925	}
13926	if s.MaximumEventAgeInSeconds != nil && *s.MaximumEventAgeInSeconds < 60 {
13927		invalidParams.Add(request.NewErrParamMinValue("MaximumEventAgeInSeconds", 60))
13928	}
13929	if s.Qualifier != nil && len(*s.Qualifier) < 1 {
13930		invalidParams.Add(request.NewErrParamMinLen("Qualifier", 1))
13931	}
13932
13933	if invalidParams.Len() > 0 {
13934		return invalidParams
13935	}
13936	return nil
13937}
13938
13939// SetDestinationConfig sets the DestinationConfig field's value.
13940func (s *UpdateFunctionEventInvokeConfigInput) SetDestinationConfig(v *DestinationConfig) *UpdateFunctionEventInvokeConfigInput {
13941	s.DestinationConfig = v
13942	return s
13943}
13944
13945// SetFunctionName sets the FunctionName field's value.
13946func (s *UpdateFunctionEventInvokeConfigInput) SetFunctionName(v string) *UpdateFunctionEventInvokeConfigInput {
13947	s.FunctionName = &v
13948	return s
13949}
13950
13951// SetMaximumEventAgeInSeconds sets the MaximumEventAgeInSeconds field's value.
13952func (s *UpdateFunctionEventInvokeConfigInput) SetMaximumEventAgeInSeconds(v int64) *UpdateFunctionEventInvokeConfigInput {
13953	s.MaximumEventAgeInSeconds = &v
13954	return s
13955}
13956
13957// SetMaximumRetryAttempts sets the MaximumRetryAttempts field's value.
13958func (s *UpdateFunctionEventInvokeConfigInput) SetMaximumRetryAttempts(v int64) *UpdateFunctionEventInvokeConfigInput {
13959	s.MaximumRetryAttempts = &v
13960	return s
13961}
13962
13963// SetQualifier sets the Qualifier field's value.
13964func (s *UpdateFunctionEventInvokeConfigInput) SetQualifier(v string) *UpdateFunctionEventInvokeConfigInput {
13965	s.Qualifier = &v
13966	return s
13967}
13968
13969type UpdateFunctionEventInvokeConfigOutput struct {
13970	_ struct{} `type:"structure"`
13971
13972	// A destination for events after they have been sent to a function for processing.
13973	//
13974	// Destinations
13975	//
13976	//    * Function - The Amazon Resource Name (ARN) of a Lambda function.
13977	//
13978	//    * Queue - The ARN of an SQS queue.
13979	//
13980	//    * Topic - The ARN of an SNS topic.
13981	//
13982	//    * Event Bus - The ARN of an Amazon EventBridge event bus.
13983	DestinationConfig *DestinationConfig `type:"structure"`
13984
13985	// The Amazon Resource Name (ARN) of the function.
13986	FunctionArn *string `type:"string"`
13987
13988	// The date and time that the configuration was last updated.
13989	LastModified *time.Time `type:"timestamp"`
13990
13991	// The maximum age of a request that Lambda sends to a function for processing.
13992	MaximumEventAgeInSeconds *int64 `min:"60" type:"integer"`
13993
13994	// The maximum number of times to retry when the function returns an error.
13995	MaximumRetryAttempts *int64 `type:"integer"`
13996}
13997
13998// String returns the string representation
13999func (s UpdateFunctionEventInvokeConfigOutput) String() string {
14000	return awsutil.Prettify(s)
14001}
14002
14003// GoString returns the string representation
14004func (s UpdateFunctionEventInvokeConfigOutput) GoString() string {
14005	return s.String()
14006}
14007
14008// SetDestinationConfig sets the DestinationConfig field's value.
14009func (s *UpdateFunctionEventInvokeConfigOutput) SetDestinationConfig(v *DestinationConfig) *UpdateFunctionEventInvokeConfigOutput {
14010	s.DestinationConfig = v
14011	return s
14012}
14013
14014// SetFunctionArn sets the FunctionArn field's value.
14015func (s *UpdateFunctionEventInvokeConfigOutput) SetFunctionArn(v string) *UpdateFunctionEventInvokeConfigOutput {
14016	s.FunctionArn = &v
14017	return s
14018}
14019
14020// SetLastModified sets the LastModified field's value.
14021func (s *UpdateFunctionEventInvokeConfigOutput) SetLastModified(v time.Time) *UpdateFunctionEventInvokeConfigOutput {
14022	s.LastModified = &v
14023	return s
14024}
14025
14026// SetMaximumEventAgeInSeconds sets the MaximumEventAgeInSeconds field's value.
14027func (s *UpdateFunctionEventInvokeConfigOutput) SetMaximumEventAgeInSeconds(v int64) *UpdateFunctionEventInvokeConfigOutput {
14028	s.MaximumEventAgeInSeconds = &v
14029	return s
14030}
14031
14032// SetMaximumRetryAttempts sets the MaximumRetryAttempts field's value.
14033func (s *UpdateFunctionEventInvokeConfigOutput) SetMaximumRetryAttempts(v int64) *UpdateFunctionEventInvokeConfigOutput {
14034	s.MaximumRetryAttempts = &v
14035	return s
14036}
14037
14038// The VPC security groups and subnets that are attached to a Lambda function.
14039// For more information, see VPC Settings (https://docs.aws.amazon.com/lambda/latest/dg/configuration-vpc.html).
14040type VpcConfig struct {
14041	_ struct{} `type:"structure"`
14042
14043	// A list of VPC security groups IDs.
14044	SecurityGroupIds []*string `type:"list"`
14045
14046	// A list of VPC subnet IDs.
14047	SubnetIds []*string `type:"list"`
14048}
14049
14050// String returns the string representation
14051func (s VpcConfig) String() string {
14052	return awsutil.Prettify(s)
14053}
14054
14055// GoString returns the string representation
14056func (s VpcConfig) GoString() string {
14057	return s.String()
14058}
14059
14060// SetSecurityGroupIds sets the SecurityGroupIds field's value.
14061func (s *VpcConfig) SetSecurityGroupIds(v []*string) *VpcConfig {
14062	s.SecurityGroupIds = v
14063	return s
14064}
14065
14066// SetSubnetIds sets the SubnetIds field's value.
14067func (s *VpcConfig) SetSubnetIds(v []*string) *VpcConfig {
14068	s.SubnetIds = v
14069	return s
14070}
14071
14072// The VPC security groups and subnets that are attached to a Lambda function.
14073type VpcConfigResponse struct {
14074	_ struct{} `type:"structure"`
14075
14076	// A list of VPC security groups IDs.
14077	SecurityGroupIds []*string `type:"list"`
14078
14079	// A list of VPC subnet IDs.
14080	SubnetIds []*string `type:"list"`
14081
14082	// The ID of the VPC.
14083	VpcId *string `type:"string"`
14084}
14085
14086// String returns the string representation
14087func (s VpcConfigResponse) String() string {
14088	return awsutil.Prettify(s)
14089}
14090
14091// GoString returns the string representation
14092func (s VpcConfigResponse) GoString() string {
14093	return s.String()
14094}
14095
14096// SetSecurityGroupIds sets the SecurityGroupIds field's value.
14097func (s *VpcConfigResponse) SetSecurityGroupIds(v []*string) *VpcConfigResponse {
14098	s.SecurityGroupIds = v
14099	return s
14100}
14101
14102// SetSubnetIds sets the SubnetIds field's value.
14103func (s *VpcConfigResponse) SetSubnetIds(v []*string) *VpcConfigResponse {
14104	s.SubnetIds = v
14105	return s
14106}
14107
14108// SetVpcId sets the VpcId field's value.
14109func (s *VpcConfigResponse) SetVpcId(v string) *VpcConfigResponse {
14110	s.VpcId = &v
14111	return s
14112}
14113
14114const (
14115	// EventSourcePositionTrimHorizon is a EventSourcePosition enum value
14116	EventSourcePositionTrimHorizon = "TRIM_HORIZON"
14117
14118	// EventSourcePositionLatest is a EventSourcePosition enum value
14119	EventSourcePositionLatest = "LATEST"
14120
14121	// EventSourcePositionAtTimestamp is a EventSourcePosition enum value
14122	EventSourcePositionAtTimestamp = "AT_TIMESTAMP"
14123)
14124
14125const (
14126	// FunctionVersionAll is a FunctionVersion enum value
14127	FunctionVersionAll = "ALL"
14128)
14129
14130const (
14131	// InvocationTypeEvent is a InvocationType enum value
14132	InvocationTypeEvent = "Event"
14133
14134	// InvocationTypeRequestResponse is a InvocationType enum value
14135	InvocationTypeRequestResponse = "RequestResponse"
14136
14137	// InvocationTypeDryRun is a InvocationType enum value
14138	InvocationTypeDryRun = "DryRun"
14139)
14140
14141const (
14142	// LastUpdateStatusSuccessful is a LastUpdateStatus enum value
14143	LastUpdateStatusSuccessful = "Successful"
14144
14145	// LastUpdateStatusFailed is a LastUpdateStatus enum value
14146	LastUpdateStatusFailed = "Failed"
14147
14148	// LastUpdateStatusInProgress is a LastUpdateStatus enum value
14149	LastUpdateStatusInProgress = "InProgress"
14150)
14151
14152const (
14153	// LastUpdateStatusReasonCodeEniLimitExceeded is a LastUpdateStatusReasonCode enum value
14154	LastUpdateStatusReasonCodeEniLimitExceeded = "EniLimitExceeded"
14155
14156	// LastUpdateStatusReasonCodeInsufficientRolePermissions is a LastUpdateStatusReasonCode enum value
14157	LastUpdateStatusReasonCodeInsufficientRolePermissions = "InsufficientRolePermissions"
14158
14159	// LastUpdateStatusReasonCodeInvalidConfiguration is a LastUpdateStatusReasonCode enum value
14160	LastUpdateStatusReasonCodeInvalidConfiguration = "InvalidConfiguration"
14161
14162	// LastUpdateStatusReasonCodeInternalError is a LastUpdateStatusReasonCode enum value
14163	LastUpdateStatusReasonCodeInternalError = "InternalError"
14164
14165	// LastUpdateStatusReasonCodeSubnetOutOfIpaddresses is a LastUpdateStatusReasonCode enum value
14166	LastUpdateStatusReasonCodeSubnetOutOfIpaddresses = "SubnetOutOfIPAddresses"
14167
14168	// LastUpdateStatusReasonCodeInvalidSubnet is a LastUpdateStatusReasonCode enum value
14169	LastUpdateStatusReasonCodeInvalidSubnet = "InvalidSubnet"
14170
14171	// LastUpdateStatusReasonCodeInvalidSecurityGroup is a LastUpdateStatusReasonCode enum value
14172	LastUpdateStatusReasonCodeInvalidSecurityGroup = "InvalidSecurityGroup"
14173)
14174
14175const (
14176	// LogTypeNone is a LogType enum value
14177	LogTypeNone = "None"
14178
14179	// LogTypeTail is a LogType enum value
14180	LogTypeTail = "Tail"
14181)
14182
14183const (
14184	// ProvisionedConcurrencyStatusEnumInProgress is a ProvisionedConcurrencyStatusEnum enum value
14185	ProvisionedConcurrencyStatusEnumInProgress = "IN_PROGRESS"
14186
14187	// ProvisionedConcurrencyStatusEnumReady is a ProvisionedConcurrencyStatusEnum enum value
14188	ProvisionedConcurrencyStatusEnumReady = "READY"
14189
14190	// ProvisionedConcurrencyStatusEnumFailed is a ProvisionedConcurrencyStatusEnum enum value
14191	ProvisionedConcurrencyStatusEnumFailed = "FAILED"
14192)
14193
14194const (
14195	// RuntimeNodejs is a Runtime enum value
14196	RuntimeNodejs = "nodejs"
14197
14198	// RuntimeNodejs43 is a Runtime enum value
14199	RuntimeNodejs43 = "nodejs4.3"
14200
14201	// RuntimeNodejs610 is a Runtime enum value
14202	RuntimeNodejs610 = "nodejs6.10"
14203
14204	// RuntimeNodejs810 is a Runtime enum value
14205	RuntimeNodejs810 = "nodejs8.10"
14206
14207	// RuntimeNodejs10X is a Runtime enum value
14208	RuntimeNodejs10X = "nodejs10.x"
14209
14210	// RuntimeNodejs12X is a Runtime enum value
14211	RuntimeNodejs12X = "nodejs12.x"
14212
14213	// RuntimeJava8 is a Runtime enum value
14214	RuntimeJava8 = "java8"
14215
14216	// RuntimeJava11 is a Runtime enum value
14217	RuntimeJava11 = "java11"
14218
14219	// RuntimePython27 is a Runtime enum value
14220	RuntimePython27 = "python2.7"
14221
14222	// RuntimePython36 is a Runtime enum value
14223	RuntimePython36 = "python3.6"
14224
14225	// RuntimePython37 is a Runtime enum value
14226	RuntimePython37 = "python3.7"
14227
14228	// RuntimePython38 is a Runtime enum value
14229	RuntimePython38 = "python3.8"
14230
14231	// RuntimeDotnetcore10 is a Runtime enum value
14232	RuntimeDotnetcore10 = "dotnetcore1.0"
14233
14234	// RuntimeDotnetcore20 is a Runtime enum value
14235	RuntimeDotnetcore20 = "dotnetcore2.0"
14236
14237	// RuntimeDotnetcore21 is a Runtime enum value
14238	RuntimeDotnetcore21 = "dotnetcore2.1"
14239
14240	// RuntimeDotnetcore31 is a Runtime enum value
14241	RuntimeDotnetcore31 = "dotnetcore3.1"
14242
14243	// RuntimeNodejs43Edge is a Runtime enum value
14244	RuntimeNodejs43Edge = "nodejs4.3-edge"
14245
14246	// RuntimeGo1X is a Runtime enum value
14247	RuntimeGo1X = "go1.x"
14248
14249	// RuntimeRuby25 is a Runtime enum value
14250	RuntimeRuby25 = "ruby2.5"
14251
14252	// RuntimeRuby27 is a Runtime enum value
14253	RuntimeRuby27 = "ruby2.7"
14254
14255	// RuntimeProvided is a Runtime enum value
14256	RuntimeProvided = "provided"
14257)
14258
14259const (
14260	// StatePending is a State enum value
14261	StatePending = "Pending"
14262
14263	// StateActive is a State enum value
14264	StateActive = "Active"
14265
14266	// StateInactive is a State enum value
14267	StateInactive = "Inactive"
14268
14269	// StateFailed is a State enum value
14270	StateFailed = "Failed"
14271)
14272
14273const (
14274	// StateReasonCodeIdle is a StateReasonCode enum value
14275	StateReasonCodeIdle = "Idle"
14276
14277	// StateReasonCodeCreating is a StateReasonCode enum value
14278	StateReasonCodeCreating = "Creating"
14279
14280	// StateReasonCodeRestoring is a StateReasonCode enum value
14281	StateReasonCodeRestoring = "Restoring"
14282
14283	// StateReasonCodeEniLimitExceeded is a StateReasonCode enum value
14284	StateReasonCodeEniLimitExceeded = "EniLimitExceeded"
14285
14286	// StateReasonCodeInsufficientRolePermissions is a StateReasonCode enum value
14287	StateReasonCodeInsufficientRolePermissions = "InsufficientRolePermissions"
14288
14289	// StateReasonCodeInvalidConfiguration is a StateReasonCode enum value
14290	StateReasonCodeInvalidConfiguration = "InvalidConfiguration"
14291
14292	// StateReasonCodeInternalError is a StateReasonCode enum value
14293	StateReasonCodeInternalError = "InternalError"
14294
14295	// StateReasonCodeSubnetOutOfIpaddresses is a StateReasonCode enum value
14296	StateReasonCodeSubnetOutOfIpaddresses = "SubnetOutOfIPAddresses"
14297
14298	// StateReasonCodeInvalidSubnet is a StateReasonCode enum value
14299	StateReasonCodeInvalidSubnet = "InvalidSubnet"
14300
14301	// StateReasonCodeInvalidSecurityGroup is a StateReasonCode enum value
14302	StateReasonCodeInvalidSecurityGroup = "InvalidSecurityGroup"
14303)
14304
14305const (
14306	// ThrottleReasonConcurrentInvocationLimitExceeded is a ThrottleReason enum value
14307	ThrottleReasonConcurrentInvocationLimitExceeded = "ConcurrentInvocationLimitExceeded"
14308
14309	// ThrottleReasonFunctionInvocationRateLimitExceeded is a ThrottleReason enum value
14310	ThrottleReasonFunctionInvocationRateLimitExceeded = "FunctionInvocationRateLimitExceeded"
14311
14312	// ThrottleReasonReservedFunctionConcurrentInvocationLimitExceeded is a ThrottleReason enum value
14313	ThrottleReasonReservedFunctionConcurrentInvocationLimitExceeded = "ReservedFunctionConcurrentInvocationLimitExceeded"
14314
14315	// ThrottleReasonReservedFunctionInvocationRateLimitExceeded is a ThrottleReason enum value
14316	ThrottleReasonReservedFunctionInvocationRateLimitExceeded = "ReservedFunctionInvocationRateLimitExceeded"
14317
14318	// ThrottleReasonCallerRateLimitExceeded is a ThrottleReason enum value
14319	ThrottleReasonCallerRateLimitExceeded = "CallerRateLimitExceeded"
14320)
14321
14322const (
14323	// TracingModeActive is a TracingMode enum value
14324	TracingModeActive = "Active"
14325
14326	// TracingModePassThrough is a TracingMode enum value
14327	TracingModePassThrough = "PassThrough"
14328)
14329