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 Lambda layer
62// (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 accounts in an organization, or
65// all Amazon Web Services accounts.
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 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 Amazon Web Services service or another account permission to use
168// a function. You can apply the policy at the function level, or specify a
169// qualifier to restrict access to a single version or alias. If you use a qualifier,
170// the invoker must use the full Amazon Resource Name (ARN) of that version
171// or alias to invoke the function.
172//
173// To grant permission to another account, specify the account ID as the Principal.
174// For Amazon Web Services services, the principal is a domain-style identifier
175// defined by the service, like s3.amazonaws.com or sns.amazonaws.com. For Amazon
176// Web Services services, you can also specify the ARN of the associated resource
177// as the SourceArn. If you grant permission to a service principal without
178// specifying the source, other accounts could potentially configure resources
179// in their account to 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 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 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 opCreateCodeSigningConfig = "CreateCodeSigningConfig"
336
337// CreateCodeSigningConfigRequest generates a "aws/request.Request" representing the
338// client's request for the CreateCodeSigningConfig 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 CreateCodeSigningConfig for more information on using the CreateCodeSigningConfig
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 CreateCodeSigningConfigRequest method.
353//    req, resp := client.CreateCodeSigningConfigRequest(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/CreateCodeSigningConfig
361func (c *Lambda) CreateCodeSigningConfigRequest(input *CreateCodeSigningConfigInput) (req *request.Request, output *CreateCodeSigningConfigOutput) {
362	op := &request.Operation{
363		Name:       opCreateCodeSigningConfig,
364		HTTPMethod: "POST",
365		HTTPPath:   "/2020-04-22/code-signing-configs/",
366	}
367
368	if input == nil {
369		input = &CreateCodeSigningConfigInput{}
370	}
371
372	output = &CreateCodeSigningConfigOutput{}
373	req = c.newRequest(op, input, output)
374	return
375}
376
377// CreateCodeSigningConfig API operation for AWS Lambda.
378//
379// Creates a code signing configuration. A code signing configuration (https://docs.aws.amazon.com/lambda/latest/dg/configuration-trustedcode.html)
380// defines a list of allowed signing profiles and defines the code-signing validation
381// policy (action to be taken if deployment validation checks fail).
382//
383// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
384// with awserr.Error's Code and Message methods to get detailed information about
385// the error.
386//
387// See the AWS API reference guide for AWS Lambda's
388// API operation CreateCodeSigningConfig for usage and error information.
389//
390// Returned Error Types:
391//   * ServiceException
392//   The Lambda service encountered an internal error.
393//
394//   * InvalidParameterValueException
395//   One of the parameters in the request is invalid.
396//
397// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/CreateCodeSigningConfig
398func (c *Lambda) CreateCodeSigningConfig(input *CreateCodeSigningConfigInput) (*CreateCodeSigningConfigOutput, error) {
399	req, out := c.CreateCodeSigningConfigRequest(input)
400	return out, req.Send()
401}
402
403// CreateCodeSigningConfigWithContext is the same as CreateCodeSigningConfig with the addition of
404// the ability to pass a context and additional request options.
405//
406// See CreateCodeSigningConfig for details on how to use this API operation.
407//
408// The context must be non-nil and will be used for request cancellation. If
409// the context is nil a panic will occur. In the future the SDK may create
410// sub-contexts for http.Requests. See https://golang.org/pkg/context/
411// for more information on using Contexts.
412func (c *Lambda) CreateCodeSigningConfigWithContext(ctx aws.Context, input *CreateCodeSigningConfigInput, opts ...request.Option) (*CreateCodeSigningConfigOutput, error) {
413	req, out := c.CreateCodeSigningConfigRequest(input)
414	req.SetContext(ctx)
415	req.ApplyOptions(opts...)
416	return out, req.Send()
417}
418
419const opCreateEventSourceMapping = "CreateEventSourceMapping"
420
421// CreateEventSourceMappingRequest generates a "aws/request.Request" representing the
422// client's request for the CreateEventSourceMapping operation. The "output" return
423// value will be populated with the request's response once the request completes
424// successfully.
425//
426// Use "Send" method on the returned Request to send the API call to the service.
427// the "output" return value is not valid until after Send returns without error.
428//
429// See CreateEventSourceMapping for more information on using the CreateEventSourceMapping
430// API call, and error handling.
431//
432// This method is useful when you want to inject custom logic or configuration
433// into the SDK's request lifecycle. Such as custom headers, or retry logic.
434//
435//
436//    // Example sending a request using the CreateEventSourceMappingRequest method.
437//    req, resp := client.CreateEventSourceMappingRequest(params)
438//
439//    err := req.Send()
440//    if err == nil { // resp is now filled
441//        fmt.Println(resp)
442//    }
443//
444// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/CreateEventSourceMapping
445func (c *Lambda) CreateEventSourceMappingRequest(input *CreateEventSourceMappingInput) (req *request.Request, output *EventSourceMappingConfiguration) {
446	op := &request.Operation{
447		Name:       opCreateEventSourceMapping,
448		HTTPMethod: "POST",
449		HTTPPath:   "/2015-03-31/event-source-mappings/",
450	}
451
452	if input == nil {
453		input = &CreateEventSourceMappingInput{}
454	}
455
456	output = &EventSourceMappingConfiguration{}
457	req = c.newRequest(op, input, output)
458	return
459}
460
461// CreateEventSourceMapping API operation for AWS Lambda.
462//
463// Creates a mapping between an event source and an Lambda function. Lambda
464// reads items from the event source and triggers the function.
465//
466// For details about each event source type, see the following topics. In particular,
467// each of the topics describes the required and optional parameters for the
468// specific event source.
469//
470//    * Configuring a Dynamo DB stream as an event source (https://docs.aws.amazon.com/lambda/latest/dg/with-ddb.html#services-dynamodb-eventsourcemapping)
471//
472//    * Configuring a Kinesis stream as an event source (https://docs.aws.amazon.com/lambda/latest/dg/with-kinesis.html#services-kinesis-eventsourcemapping)
473//
474//    * Configuring an SQS queue as an event source (https://docs.aws.amazon.com/lambda/latest/dg/with-sqs.html#events-sqs-eventsource)
475//
476//    * Configuring an MQ broker as an event source (https://docs.aws.amazon.com/lambda/latest/dg/with-mq.html#services-mq-eventsourcemapping)
477//
478//    * Configuring MSK as an event source (https://docs.aws.amazon.com/lambda/latest/dg/with-msk.html)
479//
480//    * Configuring Self-Managed Apache Kafka as an event source (https://docs.aws.amazon.com/lambda/latest/dg/kafka-smaa.html)
481//
482// The following error handling options are only available for stream sources
483// (DynamoDB and Kinesis):
484//
485//    * BisectBatchOnFunctionError - If the function returns an error, split
486//    the batch in two and retry.
487//
488//    * DestinationConfig - Send discarded records to an Amazon SQS queue or
489//    Amazon SNS topic.
490//
491//    * MaximumRecordAgeInSeconds - Discard records older than the specified
492//    age. The default value is infinite (-1). When set to infinite (-1), failed
493//    records are retried until the record expires
494//
495//    * MaximumRetryAttempts - Discard records after the specified number of
496//    retries. The default value is infinite (-1). When set to infinite (-1),
497//    failed records are retried until the record expires.
498//
499//    * ParallelizationFactor - Process multiple batches from each shard concurrently.
500//
501// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
502// with awserr.Error's Code and Message methods to get detailed information about
503// the error.
504//
505// See the AWS API reference guide for AWS Lambda's
506// API operation CreateEventSourceMapping for usage and error information.
507//
508// Returned Error Types:
509//   * ServiceException
510//   The Lambda service encountered an internal error.
511//
512//   * InvalidParameterValueException
513//   One of the parameters in the request is invalid.
514//
515//   * ResourceConflictException
516//   The resource already exists, or another operation is in progress.
517//
518//   * TooManyRequestsException
519//   The request throughput limit was exceeded.
520//
521//   * ResourceNotFoundException
522//   The resource specified in the request does not exist.
523//
524// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/CreateEventSourceMapping
525func (c *Lambda) CreateEventSourceMapping(input *CreateEventSourceMappingInput) (*EventSourceMappingConfiguration, error) {
526	req, out := c.CreateEventSourceMappingRequest(input)
527	return out, req.Send()
528}
529
530// CreateEventSourceMappingWithContext is the same as CreateEventSourceMapping with the addition of
531// the ability to pass a context and additional request options.
532//
533// See CreateEventSourceMapping for details on how to use this API operation.
534//
535// The context must be non-nil and will be used for request cancellation. If
536// the context is nil a panic will occur. In the future the SDK may create
537// sub-contexts for http.Requests. See https://golang.org/pkg/context/
538// for more information on using Contexts.
539func (c *Lambda) CreateEventSourceMappingWithContext(ctx aws.Context, input *CreateEventSourceMappingInput, opts ...request.Option) (*EventSourceMappingConfiguration, error) {
540	req, out := c.CreateEventSourceMappingRequest(input)
541	req.SetContext(ctx)
542	req.ApplyOptions(opts...)
543	return out, req.Send()
544}
545
546const opCreateFunction = "CreateFunction"
547
548// CreateFunctionRequest generates a "aws/request.Request" representing the
549// client's request for the CreateFunction operation. The "output" return
550// value will be populated with the request's response once the request completes
551// successfully.
552//
553// Use "Send" method on the returned Request to send the API call to the service.
554// the "output" return value is not valid until after Send returns without error.
555//
556// See CreateFunction for more information on using the CreateFunction
557// API call, and error handling.
558//
559// This method is useful when you want to inject custom logic or configuration
560// into the SDK's request lifecycle. Such as custom headers, or retry logic.
561//
562//
563//    // Example sending a request using the CreateFunctionRequest method.
564//    req, resp := client.CreateFunctionRequest(params)
565//
566//    err := req.Send()
567//    if err == nil { // resp is now filled
568//        fmt.Println(resp)
569//    }
570//
571// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/CreateFunction
572func (c *Lambda) CreateFunctionRequest(input *CreateFunctionInput) (req *request.Request, output *FunctionConfiguration) {
573	op := &request.Operation{
574		Name:       opCreateFunction,
575		HTTPMethod: "POST",
576		HTTPPath:   "/2015-03-31/functions",
577	}
578
579	if input == nil {
580		input = &CreateFunctionInput{}
581	}
582
583	output = &FunctionConfiguration{}
584	req = c.newRequest(op, input, output)
585	return
586}
587
588// CreateFunction API operation for AWS Lambda.
589//
590// Creates a Lambda function. To create a function, you need a deployment package
591// (https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html)
592// and an execution role (https://docs.aws.amazon.com/lambda/latest/dg/intro-permission-model.html#lambda-intro-execution-role).
593// The deployment package is a .zip file archive or container image that contains
594// your function code. The execution role grants the function permission to
595// use Amazon Web Services services, such as Amazon CloudWatch Logs for log
596// streaming and X-Ray for request tracing.
597//
598// You set the package type to Image if the deployment package is a container
599// image (https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html).
600// For a container image, the code property must include the URI of a container
601// image in the Amazon ECR registry. You do not need to specify the handler
602// and runtime properties.
603//
604// You set the package type to Zip if the deployment package is a .zip file
605// archive (https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html#gettingstarted-package-zip).
606// For a .zip file archive, the code property specifies the location of the
607// .zip file. You must also specify the handler and runtime properties.
608//
609// When you create a function, Lambda provisions an instance of the function
610// and its supporting resources. If your function connects to a VPC, this process
611// can take a minute or so. During this time, you can't invoke or modify the
612// function. The State, StateReason, and StateReasonCode fields in the response
613// from GetFunctionConfiguration indicate when the function is ready to invoke.
614// For more information, see Function States (https://docs.aws.amazon.com/lambda/latest/dg/functions-states.html).
615//
616// A function has an unpublished version, and can have published versions and
617// aliases. The unpublished version changes when you update your function's
618// code and configuration. A published version is a snapshot of your function
619// code and configuration that can't be changed. An alias is a named resource
620// that maps to a version, and can be changed to map to a different version.
621// Use the Publish parameter to create version 1 of your function from its initial
622// configuration.
623//
624// The other parameters let you configure version-specific and function-level
625// settings. You can modify version-specific settings later with UpdateFunctionConfiguration.
626// Function-level settings apply to both the unpublished and published versions
627// of the function, and include tags (TagResource) and per-function concurrency
628// limits (PutFunctionConcurrency).
629//
630// You can use code signing if your deployment package is a .zip file archive.
631// To enable code signing for this function, specify the ARN of a code-signing
632// configuration. When a user attempts to deploy a code package with UpdateFunctionCode,
633// Lambda checks that the code package has a valid signature from a trusted
634// publisher. The code-signing configuration includes set set of signing profiles,
635// which define the trusted publishers for this function.
636//
637// If another account or an Amazon Web Services service invokes your function,
638// use AddPermission to grant permission by creating a resource-based IAM policy.
639// You can grant permissions at the function level, on a version, or on an alias.
640//
641// To invoke your function directly, use Invoke. To invoke your function in
642// response to events in other Amazon Web Services services, create an event
643// source mapping (CreateEventSourceMapping), or configure a function trigger
644// in the other service. For more information, see Invoking Functions (https://docs.aws.amazon.com/lambda/latest/dg/lambda-invocation.html).
645//
646// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
647// with awserr.Error's Code and Message methods to get detailed information about
648// the error.
649//
650// See the AWS API reference guide for AWS Lambda's
651// API operation CreateFunction for usage and error information.
652//
653// Returned Error Types:
654//   * ServiceException
655//   The Lambda service encountered an internal error.
656//
657//   * InvalidParameterValueException
658//   One of the parameters in the request is invalid.
659//
660//   * ResourceNotFoundException
661//   The resource specified in the request does not exist.
662//
663//   * ResourceConflictException
664//   The resource already exists, or another operation is in progress.
665//
666//   * TooManyRequestsException
667//   The request throughput limit was exceeded.
668//
669//   * CodeStorageExceededException
670//   You have exceeded your maximum total code size per account. Learn more (https://docs.aws.amazon.com/lambda/latest/dg/limits.html)
671//
672//   * CodeVerificationFailedException
673//   The code signature failed one or more of the validation checks for signature
674//   mismatch or expiry, and the code signing policy is set to ENFORCE. Lambda
675//   blocks the deployment.
676//
677//   * InvalidCodeSignatureException
678//   The code signature failed the integrity check. Lambda always blocks deployment
679//   if the integrity check fails, even if code signing policy is set to WARN.
680//
681//   * CodeSigningConfigNotFoundException
682//   The specified code signing configuration does not exist.
683//
684// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/CreateFunction
685func (c *Lambda) CreateFunction(input *CreateFunctionInput) (*FunctionConfiguration, error) {
686	req, out := c.CreateFunctionRequest(input)
687	return out, req.Send()
688}
689
690// CreateFunctionWithContext is the same as CreateFunction with the addition of
691// the ability to pass a context and additional request options.
692//
693// See CreateFunction for details on how to use this API operation.
694//
695// The context must be non-nil and will be used for request cancellation. If
696// the context is nil a panic will occur. In the future the SDK may create
697// sub-contexts for http.Requests. See https://golang.org/pkg/context/
698// for more information on using Contexts.
699func (c *Lambda) CreateFunctionWithContext(ctx aws.Context, input *CreateFunctionInput, opts ...request.Option) (*FunctionConfiguration, error) {
700	req, out := c.CreateFunctionRequest(input)
701	req.SetContext(ctx)
702	req.ApplyOptions(opts...)
703	return out, req.Send()
704}
705
706const opDeleteAlias = "DeleteAlias"
707
708// DeleteAliasRequest generates a "aws/request.Request" representing the
709// client's request for the DeleteAlias operation. The "output" return
710// value will be populated with the request's response once the request completes
711// successfully.
712//
713// Use "Send" method on the returned Request to send the API call to the service.
714// the "output" return value is not valid until after Send returns without error.
715//
716// See DeleteAlias for more information on using the DeleteAlias
717// API call, and error handling.
718//
719// This method is useful when you want to inject custom logic or configuration
720// into the SDK's request lifecycle. Such as custom headers, or retry logic.
721//
722//
723//    // Example sending a request using the DeleteAliasRequest method.
724//    req, resp := client.DeleteAliasRequest(params)
725//
726//    err := req.Send()
727//    if err == nil { // resp is now filled
728//        fmt.Println(resp)
729//    }
730//
731// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/DeleteAlias
732func (c *Lambda) DeleteAliasRequest(input *DeleteAliasInput) (req *request.Request, output *DeleteAliasOutput) {
733	op := &request.Operation{
734		Name:       opDeleteAlias,
735		HTTPMethod: "DELETE",
736		HTTPPath:   "/2015-03-31/functions/{FunctionName}/aliases/{Name}",
737	}
738
739	if input == nil {
740		input = &DeleteAliasInput{}
741	}
742
743	output = &DeleteAliasOutput{}
744	req = c.newRequest(op, input, output)
745	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
746	return
747}
748
749// DeleteAlias API operation for AWS Lambda.
750//
751// Deletes a Lambda function alias (https://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html).
752//
753// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
754// with awserr.Error's Code and Message methods to get detailed information about
755// the error.
756//
757// See the AWS API reference guide for AWS Lambda's
758// API operation DeleteAlias for usage and error information.
759//
760// Returned Error Types:
761//   * ServiceException
762//   The Lambda service encountered an internal error.
763//
764//   * InvalidParameterValueException
765//   One of the parameters in the request is invalid.
766//
767//   * ResourceConflictException
768//   The resource already exists, or another operation is in progress.
769//
770//   * TooManyRequestsException
771//   The request throughput limit was exceeded.
772//
773// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/DeleteAlias
774func (c *Lambda) DeleteAlias(input *DeleteAliasInput) (*DeleteAliasOutput, error) {
775	req, out := c.DeleteAliasRequest(input)
776	return out, req.Send()
777}
778
779// DeleteAliasWithContext is the same as DeleteAlias with the addition of
780// the ability to pass a context and additional request options.
781//
782// See DeleteAlias for details on how to use this API operation.
783//
784// The context must be non-nil and will be used for request cancellation. If
785// the context is nil a panic will occur. In the future the SDK may create
786// sub-contexts for http.Requests. See https://golang.org/pkg/context/
787// for more information on using Contexts.
788func (c *Lambda) DeleteAliasWithContext(ctx aws.Context, input *DeleteAliasInput, opts ...request.Option) (*DeleteAliasOutput, error) {
789	req, out := c.DeleteAliasRequest(input)
790	req.SetContext(ctx)
791	req.ApplyOptions(opts...)
792	return out, req.Send()
793}
794
795const opDeleteCodeSigningConfig = "DeleteCodeSigningConfig"
796
797// DeleteCodeSigningConfigRequest generates a "aws/request.Request" representing the
798// client's request for the DeleteCodeSigningConfig operation. The "output" return
799// value will be populated with the request's response once the request completes
800// successfully.
801//
802// Use "Send" method on the returned Request to send the API call to the service.
803// the "output" return value is not valid until after Send returns without error.
804//
805// See DeleteCodeSigningConfig for more information on using the DeleteCodeSigningConfig
806// API call, and error handling.
807//
808// This method is useful when you want to inject custom logic or configuration
809// into the SDK's request lifecycle. Such as custom headers, or retry logic.
810//
811//
812//    // Example sending a request using the DeleteCodeSigningConfigRequest method.
813//    req, resp := client.DeleteCodeSigningConfigRequest(params)
814//
815//    err := req.Send()
816//    if err == nil { // resp is now filled
817//        fmt.Println(resp)
818//    }
819//
820// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/DeleteCodeSigningConfig
821func (c *Lambda) DeleteCodeSigningConfigRequest(input *DeleteCodeSigningConfigInput) (req *request.Request, output *DeleteCodeSigningConfigOutput) {
822	op := &request.Operation{
823		Name:       opDeleteCodeSigningConfig,
824		HTTPMethod: "DELETE",
825		HTTPPath:   "/2020-04-22/code-signing-configs/{CodeSigningConfigArn}",
826	}
827
828	if input == nil {
829		input = &DeleteCodeSigningConfigInput{}
830	}
831
832	output = &DeleteCodeSigningConfigOutput{}
833	req = c.newRequest(op, input, output)
834	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
835	return
836}
837
838// DeleteCodeSigningConfig API operation for AWS Lambda.
839//
840// Deletes the code signing configuration. You can delete the code signing configuration
841// only if no function is using it.
842//
843// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
844// with awserr.Error's Code and Message methods to get detailed information about
845// the error.
846//
847// See the AWS API reference guide for AWS Lambda's
848// API operation DeleteCodeSigningConfig for usage and error information.
849//
850// Returned Error Types:
851//   * ServiceException
852//   The Lambda service encountered an internal error.
853//
854//   * InvalidParameterValueException
855//   One of the parameters in the request is invalid.
856//
857//   * ResourceNotFoundException
858//   The resource specified in the request does not exist.
859//
860//   * ResourceConflictException
861//   The resource already exists, or another operation is in progress.
862//
863// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/DeleteCodeSigningConfig
864func (c *Lambda) DeleteCodeSigningConfig(input *DeleteCodeSigningConfigInput) (*DeleteCodeSigningConfigOutput, error) {
865	req, out := c.DeleteCodeSigningConfigRequest(input)
866	return out, req.Send()
867}
868
869// DeleteCodeSigningConfigWithContext is the same as DeleteCodeSigningConfig with the addition of
870// the ability to pass a context and additional request options.
871//
872// See DeleteCodeSigningConfig for details on how to use this API operation.
873//
874// The context must be non-nil and will be used for request cancellation. If
875// the context is nil a panic will occur. In the future the SDK may create
876// sub-contexts for http.Requests. See https://golang.org/pkg/context/
877// for more information on using Contexts.
878func (c *Lambda) DeleteCodeSigningConfigWithContext(ctx aws.Context, input *DeleteCodeSigningConfigInput, opts ...request.Option) (*DeleteCodeSigningConfigOutput, error) {
879	req, out := c.DeleteCodeSigningConfigRequest(input)
880	req.SetContext(ctx)
881	req.ApplyOptions(opts...)
882	return out, req.Send()
883}
884
885const opDeleteEventSourceMapping = "DeleteEventSourceMapping"
886
887// DeleteEventSourceMappingRequest generates a "aws/request.Request" representing the
888// client's request for the DeleteEventSourceMapping operation. The "output" return
889// value will be populated with the request's response once the request completes
890// successfully.
891//
892// Use "Send" method on the returned Request to send the API call to the service.
893// the "output" return value is not valid until after Send returns without error.
894//
895// See DeleteEventSourceMapping for more information on using the DeleteEventSourceMapping
896// API call, and error handling.
897//
898// This method is useful when you want to inject custom logic or configuration
899// into the SDK's request lifecycle. Such as custom headers, or retry logic.
900//
901//
902//    // Example sending a request using the DeleteEventSourceMappingRequest method.
903//    req, resp := client.DeleteEventSourceMappingRequest(params)
904//
905//    err := req.Send()
906//    if err == nil { // resp is now filled
907//        fmt.Println(resp)
908//    }
909//
910// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/DeleteEventSourceMapping
911func (c *Lambda) DeleteEventSourceMappingRequest(input *DeleteEventSourceMappingInput) (req *request.Request, output *EventSourceMappingConfiguration) {
912	op := &request.Operation{
913		Name:       opDeleteEventSourceMapping,
914		HTTPMethod: "DELETE",
915		HTTPPath:   "/2015-03-31/event-source-mappings/{UUID}",
916	}
917
918	if input == nil {
919		input = &DeleteEventSourceMappingInput{}
920	}
921
922	output = &EventSourceMappingConfiguration{}
923	req = c.newRequest(op, input, output)
924	return
925}
926
927// DeleteEventSourceMapping API operation for AWS Lambda.
928//
929// Deletes an event source mapping (https://docs.aws.amazon.com/lambda/latest/dg/intro-invocation-modes.html).
930// You can get the identifier of a mapping from the output of ListEventSourceMappings.
931//
932// When you delete an event source mapping, it enters a Deleting state and might
933// not be completely deleted for several seconds.
934//
935// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
936// with awserr.Error's Code and Message methods to get detailed information about
937// the error.
938//
939// See the AWS API reference guide for AWS Lambda's
940// API operation DeleteEventSourceMapping for usage and error information.
941//
942// Returned Error Types:
943//   * ServiceException
944//   The Lambda service encountered an internal error.
945//
946//   * ResourceNotFoundException
947//   The resource specified in the request does not exist.
948//
949//   * InvalidParameterValueException
950//   One of the parameters in the request is invalid.
951//
952//   * TooManyRequestsException
953//   The request throughput limit was exceeded.
954//
955//   * ResourceInUseException
956//   The operation conflicts with the resource's availability. For example, you
957//   attempted to update an EventSource Mapping in CREATING, or tried to delete
958//   a EventSource mapping currently in the UPDATING state.
959//
960// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/DeleteEventSourceMapping
961func (c *Lambda) DeleteEventSourceMapping(input *DeleteEventSourceMappingInput) (*EventSourceMappingConfiguration, error) {
962	req, out := c.DeleteEventSourceMappingRequest(input)
963	return out, req.Send()
964}
965
966// DeleteEventSourceMappingWithContext is the same as DeleteEventSourceMapping with the addition of
967// the ability to pass a context and additional request options.
968//
969// See DeleteEventSourceMapping for details on how to use this API operation.
970//
971// The context must be non-nil and will be used for request cancellation. If
972// the context is nil a panic will occur. In the future the SDK may create
973// sub-contexts for http.Requests. See https://golang.org/pkg/context/
974// for more information on using Contexts.
975func (c *Lambda) DeleteEventSourceMappingWithContext(ctx aws.Context, input *DeleteEventSourceMappingInput, opts ...request.Option) (*EventSourceMappingConfiguration, error) {
976	req, out := c.DeleteEventSourceMappingRequest(input)
977	req.SetContext(ctx)
978	req.ApplyOptions(opts...)
979	return out, req.Send()
980}
981
982const opDeleteFunction = "DeleteFunction"
983
984// DeleteFunctionRequest generates a "aws/request.Request" representing the
985// client's request for the DeleteFunction operation. The "output" return
986// value will be populated with the request's response once the request completes
987// successfully.
988//
989// Use "Send" method on the returned Request to send the API call to the service.
990// the "output" return value is not valid until after Send returns without error.
991//
992// See DeleteFunction for more information on using the DeleteFunction
993// API call, and error handling.
994//
995// This method is useful when you want to inject custom logic or configuration
996// into the SDK's request lifecycle. Such as custom headers, or retry logic.
997//
998//
999//    // Example sending a request using the DeleteFunctionRequest method.
1000//    req, resp := client.DeleteFunctionRequest(params)
1001//
1002//    err := req.Send()
1003//    if err == nil { // resp is now filled
1004//        fmt.Println(resp)
1005//    }
1006//
1007// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/DeleteFunction
1008func (c *Lambda) DeleteFunctionRequest(input *DeleteFunctionInput) (req *request.Request, output *DeleteFunctionOutput) {
1009	op := &request.Operation{
1010		Name:       opDeleteFunction,
1011		HTTPMethod: "DELETE",
1012		HTTPPath:   "/2015-03-31/functions/{FunctionName}",
1013	}
1014
1015	if input == nil {
1016		input = &DeleteFunctionInput{}
1017	}
1018
1019	output = &DeleteFunctionOutput{}
1020	req = c.newRequest(op, input, output)
1021	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1022	return
1023}
1024
1025// DeleteFunction API operation for AWS Lambda.
1026//
1027// Deletes a Lambda function. To delete a specific function version, use the
1028// Qualifier parameter. Otherwise, all versions and aliases are deleted.
1029//
1030// To delete Lambda event source mappings that invoke a function, use DeleteEventSourceMapping.
1031// For Amazon Web Services services and resources that invoke your function
1032// directly, delete the trigger in the service where you originally configured
1033// it.
1034//
1035// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1036// with awserr.Error's Code and Message methods to get detailed information about
1037// the error.
1038//
1039// See the AWS API reference guide for AWS Lambda's
1040// API operation DeleteFunction for usage and error information.
1041//
1042// Returned Error Types:
1043//   * ServiceException
1044//   The Lambda service encountered an internal error.
1045//
1046//   * ResourceNotFoundException
1047//   The resource specified in the request does not exist.
1048//
1049//   * TooManyRequestsException
1050//   The request throughput limit was exceeded.
1051//
1052//   * InvalidParameterValueException
1053//   One of the parameters in the request is invalid.
1054//
1055//   * ResourceConflictException
1056//   The resource already exists, or another operation is in progress.
1057//
1058// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/DeleteFunction
1059func (c *Lambda) DeleteFunction(input *DeleteFunctionInput) (*DeleteFunctionOutput, error) {
1060	req, out := c.DeleteFunctionRequest(input)
1061	return out, req.Send()
1062}
1063
1064// DeleteFunctionWithContext is the same as DeleteFunction with the addition of
1065// the ability to pass a context and additional request options.
1066//
1067// See DeleteFunction for details on how to use this API operation.
1068//
1069// The context must be non-nil and will be used for request cancellation. If
1070// the context is nil a panic will occur. In the future the SDK may create
1071// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1072// for more information on using Contexts.
1073func (c *Lambda) DeleteFunctionWithContext(ctx aws.Context, input *DeleteFunctionInput, opts ...request.Option) (*DeleteFunctionOutput, error) {
1074	req, out := c.DeleteFunctionRequest(input)
1075	req.SetContext(ctx)
1076	req.ApplyOptions(opts...)
1077	return out, req.Send()
1078}
1079
1080const opDeleteFunctionCodeSigningConfig = "DeleteFunctionCodeSigningConfig"
1081
1082// DeleteFunctionCodeSigningConfigRequest generates a "aws/request.Request" representing the
1083// client's request for the DeleteFunctionCodeSigningConfig operation. The "output" return
1084// value will be populated with the request's response once the request completes
1085// successfully.
1086//
1087// Use "Send" method on the returned Request to send the API call to the service.
1088// the "output" return value is not valid until after Send returns without error.
1089//
1090// See DeleteFunctionCodeSigningConfig for more information on using the DeleteFunctionCodeSigningConfig
1091// API call, and error handling.
1092//
1093// This method is useful when you want to inject custom logic or configuration
1094// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1095//
1096//
1097//    // Example sending a request using the DeleteFunctionCodeSigningConfigRequest method.
1098//    req, resp := client.DeleteFunctionCodeSigningConfigRequest(params)
1099//
1100//    err := req.Send()
1101//    if err == nil { // resp is now filled
1102//        fmt.Println(resp)
1103//    }
1104//
1105// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/DeleteFunctionCodeSigningConfig
1106func (c *Lambda) DeleteFunctionCodeSigningConfigRequest(input *DeleteFunctionCodeSigningConfigInput) (req *request.Request, output *DeleteFunctionCodeSigningConfigOutput) {
1107	op := &request.Operation{
1108		Name:       opDeleteFunctionCodeSigningConfig,
1109		HTTPMethod: "DELETE",
1110		HTTPPath:   "/2020-06-30/functions/{FunctionName}/code-signing-config",
1111	}
1112
1113	if input == nil {
1114		input = &DeleteFunctionCodeSigningConfigInput{}
1115	}
1116
1117	output = &DeleteFunctionCodeSigningConfigOutput{}
1118	req = c.newRequest(op, input, output)
1119	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1120	return
1121}
1122
1123// DeleteFunctionCodeSigningConfig API operation for AWS Lambda.
1124//
1125// Removes the code signing configuration from the function.
1126//
1127// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1128// with awserr.Error's Code and Message methods to get detailed information about
1129// the error.
1130//
1131// See the AWS API reference guide for AWS Lambda's
1132// API operation DeleteFunctionCodeSigningConfig for usage and error information.
1133//
1134// Returned Error Types:
1135//   * InvalidParameterValueException
1136//   One of the parameters in the request is invalid.
1137//
1138//   * CodeSigningConfigNotFoundException
1139//   The specified code signing configuration does not exist.
1140//
1141//   * ResourceNotFoundException
1142//   The resource specified in the request does not exist.
1143//
1144//   * ServiceException
1145//   The Lambda service encountered an internal error.
1146//
1147//   * TooManyRequestsException
1148//   The request throughput limit was exceeded.
1149//
1150//   * ResourceConflictException
1151//   The resource already exists, or another operation is in progress.
1152//
1153// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/DeleteFunctionCodeSigningConfig
1154func (c *Lambda) DeleteFunctionCodeSigningConfig(input *DeleteFunctionCodeSigningConfigInput) (*DeleteFunctionCodeSigningConfigOutput, error) {
1155	req, out := c.DeleteFunctionCodeSigningConfigRequest(input)
1156	return out, req.Send()
1157}
1158
1159// DeleteFunctionCodeSigningConfigWithContext is the same as DeleteFunctionCodeSigningConfig with the addition of
1160// the ability to pass a context and additional request options.
1161//
1162// See DeleteFunctionCodeSigningConfig for details on how to use this API operation.
1163//
1164// The context must be non-nil and will be used for request cancellation. If
1165// the context is nil a panic will occur. In the future the SDK may create
1166// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1167// for more information on using Contexts.
1168func (c *Lambda) DeleteFunctionCodeSigningConfigWithContext(ctx aws.Context, input *DeleteFunctionCodeSigningConfigInput, opts ...request.Option) (*DeleteFunctionCodeSigningConfigOutput, error) {
1169	req, out := c.DeleteFunctionCodeSigningConfigRequest(input)
1170	req.SetContext(ctx)
1171	req.ApplyOptions(opts...)
1172	return out, req.Send()
1173}
1174
1175const opDeleteFunctionConcurrency = "DeleteFunctionConcurrency"
1176
1177// DeleteFunctionConcurrencyRequest generates a "aws/request.Request" representing the
1178// client's request for the DeleteFunctionConcurrency operation. The "output" return
1179// value will be populated with the request's response once the request completes
1180// successfully.
1181//
1182// Use "Send" method on the returned Request to send the API call to the service.
1183// the "output" return value is not valid until after Send returns without error.
1184//
1185// See DeleteFunctionConcurrency for more information on using the DeleteFunctionConcurrency
1186// API call, and error handling.
1187//
1188// This method is useful when you want to inject custom logic or configuration
1189// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1190//
1191//
1192//    // Example sending a request using the DeleteFunctionConcurrencyRequest method.
1193//    req, resp := client.DeleteFunctionConcurrencyRequest(params)
1194//
1195//    err := req.Send()
1196//    if err == nil { // resp is now filled
1197//        fmt.Println(resp)
1198//    }
1199//
1200// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/DeleteFunctionConcurrency
1201func (c *Lambda) DeleteFunctionConcurrencyRequest(input *DeleteFunctionConcurrencyInput) (req *request.Request, output *DeleteFunctionConcurrencyOutput) {
1202	op := &request.Operation{
1203		Name:       opDeleteFunctionConcurrency,
1204		HTTPMethod: "DELETE",
1205		HTTPPath:   "/2017-10-31/functions/{FunctionName}/concurrency",
1206	}
1207
1208	if input == nil {
1209		input = &DeleteFunctionConcurrencyInput{}
1210	}
1211
1212	output = &DeleteFunctionConcurrencyOutput{}
1213	req = c.newRequest(op, input, output)
1214	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1215	return
1216}
1217
1218// DeleteFunctionConcurrency API operation for AWS Lambda.
1219//
1220// Removes a concurrent execution limit from a function.
1221//
1222// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1223// with awserr.Error's Code and Message methods to get detailed information about
1224// the error.
1225//
1226// See the AWS API reference guide for AWS Lambda's
1227// API operation DeleteFunctionConcurrency for usage and error information.
1228//
1229// Returned Error Types:
1230//   * ServiceException
1231//   The Lambda service encountered an internal error.
1232//
1233//   * ResourceNotFoundException
1234//   The resource specified in the request does not exist.
1235//
1236//   * TooManyRequestsException
1237//   The request throughput limit was exceeded.
1238//
1239//   * InvalidParameterValueException
1240//   One of the parameters in the request is invalid.
1241//
1242//   * ResourceConflictException
1243//   The resource already exists, or another operation is in progress.
1244//
1245// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/DeleteFunctionConcurrency
1246func (c *Lambda) DeleteFunctionConcurrency(input *DeleteFunctionConcurrencyInput) (*DeleteFunctionConcurrencyOutput, error) {
1247	req, out := c.DeleteFunctionConcurrencyRequest(input)
1248	return out, req.Send()
1249}
1250
1251// DeleteFunctionConcurrencyWithContext is the same as DeleteFunctionConcurrency with the addition of
1252// the ability to pass a context and additional request options.
1253//
1254// See DeleteFunctionConcurrency for details on how to use this API operation.
1255//
1256// The context must be non-nil and will be used for request cancellation. If
1257// the context is nil a panic will occur. In the future the SDK may create
1258// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1259// for more information on using Contexts.
1260func (c *Lambda) DeleteFunctionConcurrencyWithContext(ctx aws.Context, input *DeleteFunctionConcurrencyInput, opts ...request.Option) (*DeleteFunctionConcurrencyOutput, error) {
1261	req, out := c.DeleteFunctionConcurrencyRequest(input)
1262	req.SetContext(ctx)
1263	req.ApplyOptions(opts...)
1264	return out, req.Send()
1265}
1266
1267const opDeleteFunctionEventInvokeConfig = "DeleteFunctionEventInvokeConfig"
1268
1269// DeleteFunctionEventInvokeConfigRequest generates a "aws/request.Request" representing the
1270// client's request for the DeleteFunctionEventInvokeConfig operation. The "output" return
1271// value will be populated with the request's response once the request completes
1272// successfully.
1273//
1274// Use "Send" method on the returned Request to send the API call to the service.
1275// the "output" return value is not valid until after Send returns without error.
1276//
1277// See DeleteFunctionEventInvokeConfig for more information on using the DeleteFunctionEventInvokeConfig
1278// API call, and error handling.
1279//
1280// This method is useful when you want to inject custom logic or configuration
1281// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1282//
1283//
1284//    // Example sending a request using the DeleteFunctionEventInvokeConfigRequest method.
1285//    req, resp := client.DeleteFunctionEventInvokeConfigRequest(params)
1286//
1287//    err := req.Send()
1288//    if err == nil { // resp is now filled
1289//        fmt.Println(resp)
1290//    }
1291//
1292// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/DeleteFunctionEventInvokeConfig
1293func (c *Lambda) DeleteFunctionEventInvokeConfigRequest(input *DeleteFunctionEventInvokeConfigInput) (req *request.Request, output *DeleteFunctionEventInvokeConfigOutput) {
1294	op := &request.Operation{
1295		Name:       opDeleteFunctionEventInvokeConfig,
1296		HTTPMethod: "DELETE",
1297		HTTPPath:   "/2019-09-25/functions/{FunctionName}/event-invoke-config",
1298	}
1299
1300	if input == nil {
1301		input = &DeleteFunctionEventInvokeConfigInput{}
1302	}
1303
1304	output = &DeleteFunctionEventInvokeConfigOutput{}
1305	req = c.newRequest(op, input, output)
1306	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1307	return
1308}
1309
1310// DeleteFunctionEventInvokeConfig API operation for AWS Lambda.
1311//
1312// Deletes the configuration for asynchronous invocation for a function, version,
1313// or alias.
1314//
1315// To configure options for asynchronous invocation, use PutFunctionEventInvokeConfig.
1316//
1317// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1318// with awserr.Error's Code and Message methods to get detailed information about
1319// the error.
1320//
1321// See the AWS API reference guide for AWS Lambda's
1322// API operation DeleteFunctionEventInvokeConfig for usage and error information.
1323//
1324// Returned Error Types:
1325//   * ServiceException
1326//   The Lambda service encountered an internal error.
1327//
1328//   * ResourceNotFoundException
1329//   The resource specified in the request does not exist.
1330//
1331//   * InvalidParameterValueException
1332//   One of the parameters in the request is invalid.
1333//
1334//   * TooManyRequestsException
1335//   The request throughput limit was exceeded.
1336//
1337//   * ResourceConflictException
1338//   The resource already exists, or another operation is in progress.
1339//
1340// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/DeleteFunctionEventInvokeConfig
1341func (c *Lambda) DeleteFunctionEventInvokeConfig(input *DeleteFunctionEventInvokeConfigInput) (*DeleteFunctionEventInvokeConfigOutput, error) {
1342	req, out := c.DeleteFunctionEventInvokeConfigRequest(input)
1343	return out, req.Send()
1344}
1345
1346// DeleteFunctionEventInvokeConfigWithContext is the same as DeleteFunctionEventInvokeConfig with the addition of
1347// the ability to pass a context and additional request options.
1348//
1349// See DeleteFunctionEventInvokeConfig for details on how to use this API operation.
1350//
1351// The context must be non-nil and will be used for request cancellation. If
1352// the context is nil a panic will occur. In the future the SDK may create
1353// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1354// for more information on using Contexts.
1355func (c *Lambda) DeleteFunctionEventInvokeConfigWithContext(ctx aws.Context, input *DeleteFunctionEventInvokeConfigInput, opts ...request.Option) (*DeleteFunctionEventInvokeConfigOutput, error) {
1356	req, out := c.DeleteFunctionEventInvokeConfigRequest(input)
1357	req.SetContext(ctx)
1358	req.ApplyOptions(opts...)
1359	return out, req.Send()
1360}
1361
1362const opDeleteLayerVersion = "DeleteLayerVersion"
1363
1364// DeleteLayerVersionRequest generates a "aws/request.Request" representing the
1365// client's request for the DeleteLayerVersion operation. The "output" return
1366// value will be populated with the request's response once the request completes
1367// successfully.
1368//
1369// Use "Send" method on the returned Request to send the API call to the service.
1370// the "output" return value is not valid until after Send returns without error.
1371//
1372// See DeleteLayerVersion for more information on using the DeleteLayerVersion
1373// API call, and error handling.
1374//
1375// This method is useful when you want to inject custom logic or configuration
1376// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1377//
1378//
1379//    // Example sending a request using the DeleteLayerVersionRequest method.
1380//    req, resp := client.DeleteLayerVersionRequest(params)
1381//
1382//    err := req.Send()
1383//    if err == nil { // resp is now filled
1384//        fmt.Println(resp)
1385//    }
1386//
1387// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/DeleteLayerVersion
1388func (c *Lambda) DeleteLayerVersionRequest(input *DeleteLayerVersionInput) (req *request.Request, output *DeleteLayerVersionOutput) {
1389	op := &request.Operation{
1390		Name:       opDeleteLayerVersion,
1391		HTTPMethod: "DELETE",
1392		HTTPPath:   "/2018-10-31/layers/{LayerName}/versions/{VersionNumber}",
1393	}
1394
1395	if input == nil {
1396		input = &DeleteLayerVersionInput{}
1397	}
1398
1399	output = &DeleteLayerVersionOutput{}
1400	req = c.newRequest(op, input, output)
1401	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1402	return
1403}
1404
1405// DeleteLayerVersion API operation for AWS Lambda.
1406//
1407// Deletes a version of an Lambda layer (https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html).
1408// Deleted versions can no longer be viewed or added to functions. To avoid
1409// breaking functions, a copy of the version remains in Lambda until no functions
1410// refer to it.
1411//
1412// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1413// with awserr.Error's Code and Message methods to get detailed information about
1414// the error.
1415//
1416// See the AWS API reference guide for AWS Lambda's
1417// API operation DeleteLayerVersion for usage and error information.
1418//
1419// Returned Error Types:
1420//   * ServiceException
1421//   The Lambda service encountered an internal error.
1422//
1423//   * TooManyRequestsException
1424//   The request throughput limit was exceeded.
1425//
1426// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/DeleteLayerVersion
1427func (c *Lambda) DeleteLayerVersion(input *DeleteLayerVersionInput) (*DeleteLayerVersionOutput, error) {
1428	req, out := c.DeleteLayerVersionRequest(input)
1429	return out, req.Send()
1430}
1431
1432// DeleteLayerVersionWithContext is the same as DeleteLayerVersion with the addition of
1433// the ability to pass a context and additional request options.
1434//
1435// See DeleteLayerVersion for details on how to use this API operation.
1436//
1437// The context must be non-nil and will be used for request cancellation. If
1438// the context is nil a panic will occur. In the future the SDK may create
1439// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1440// for more information on using Contexts.
1441func (c *Lambda) DeleteLayerVersionWithContext(ctx aws.Context, input *DeleteLayerVersionInput, opts ...request.Option) (*DeleteLayerVersionOutput, error) {
1442	req, out := c.DeleteLayerVersionRequest(input)
1443	req.SetContext(ctx)
1444	req.ApplyOptions(opts...)
1445	return out, req.Send()
1446}
1447
1448const opDeleteProvisionedConcurrencyConfig = "DeleteProvisionedConcurrencyConfig"
1449
1450// DeleteProvisionedConcurrencyConfigRequest generates a "aws/request.Request" representing the
1451// client's request for the DeleteProvisionedConcurrencyConfig operation. The "output" return
1452// value will be populated with the request's response once the request completes
1453// successfully.
1454//
1455// Use "Send" method on the returned Request to send the API call to the service.
1456// the "output" return value is not valid until after Send returns without error.
1457//
1458// See DeleteProvisionedConcurrencyConfig for more information on using the DeleteProvisionedConcurrencyConfig
1459// API call, and error handling.
1460//
1461// This method is useful when you want to inject custom logic or configuration
1462// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1463//
1464//
1465//    // Example sending a request using the DeleteProvisionedConcurrencyConfigRequest method.
1466//    req, resp := client.DeleteProvisionedConcurrencyConfigRequest(params)
1467//
1468//    err := req.Send()
1469//    if err == nil { // resp is now filled
1470//        fmt.Println(resp)
1471//    }
1472//
1473// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/DeleteProvisionedConcurrencyConfig
1474func (c *Lambda) DeleteProvisionedConcurrencyConfigRequest(input *DeleteProvisionedConcurrencyConfigInput) (req *request.Request, output *DeleteProvisionedConcurrencyConfigOutput) {
1475	op := &request.Operation{
1476		Name:       opDeleteProvisionedConcurrencyConfig,
1477		HTTPMethod: "DELETE",
1478		HTTPPath:   "/2019-09-30/functions/{FunctionName}/provisioned-concurrency",
1479	}
1480
1481	if input == nil {
1482		input = &DeleteProvisionedConcurrencyConfigInput{}
1483	}
1484
1485	output = &DeleteProvisionedConcurrencyConfigOutput{}
1486	req = c.newRequest(op, input, output)
1487	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1488	return
1489}
1490
1491// DeleteProvisionedConcurrencyConfig API operation for AWS Lambda.
1492//
1493// Deletes the provisioned concurrency configuration for a function.
1494//
1495// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1496// with awserr.Error's Code and Message methods to get detailed information about
1497// the error.
1498//
1499// See the AWS API reference guide for AWS Lambda's
1500// API operation DeleteProvisionedConcurrencyConfig for usage and error information.
1501//
1502// Returned Error Types:
1503//   * InvalidParameterValueException
1504//   One of the parameters in the request is invalid.
1505//
1506//   * ResourceConflictException
1507//   The resource already exists, or another operation is in progress.
1508//
1509//   * ResourceNotFoundException
1510//   The resource specified in the request does not exist.
1511//
1512//   * TooManyRequestsException
1513//   The request throughput limit was exceeded.
1514//
1515//   * ServiceException
1516//   The Lambda service encountered an internal error.
1517//
1518// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/DeleteProvisionedConcurrencyConfig
1519func (c *Lambda) DeleteProvisionedConcurrencyConfig(input *DeleteProvisionedConcurrencyConfigInput) (*DeleteProvisionedConcurrencyConfigOutput, error) {
1520	req, out := c.DeleteProvisionedConcurrencyConfigRequest(input)
1521	return out, req.Send()
1522}
1523
1524// DeleteProvisionedConcurrencyConfigWithContext is the same as DeleteProvisionedConcurrencyConfig with the addition of
1525// the ability to pass a context and additional request options.
1526//
1527// See DeleteProvisionedConcurrencyConfig for details on how to use this API operation.
1528//
1529// The context must be non-nil and will be used for request cancellation. If
1530// the context is nil a panic will occur. In the future the SDK may create
1531// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1532// for more information on using Contexts.
1533func (c *Lambda) DeleteProvisionedConcurrencyConfigWithContext(ctx aws.Context, input *DeleteProvisionedConcurrencyConfigInput, opts ...request.Option) (*DeleteProvisionedConcurrencyConfigOutput, error) {
1534	req, out := c.DeleteProvisionedConcurrencyConfigRequest(input)
1535	req.SetContext(ctx)
1536	req.ApplyOptions(opts...)
1537	return out, req.Send()
1538}
1539
1540const opGetAccountSettings = "GetAccountSettings"
1541
1542// GetAccountSettingsRequest generates a "aws/request.Request" representing the
1543// client's request for the GetAccountSettings operation. The "output" return
1544// value will be populated with the request's response once the request completes
1545// successfully.
1546//
1547// Use "Send" method on the returned Request to send the API call to the service.
1548// the "output" return value is not valid until after Send returns without error.
1549//
1550// See GetAccountSettings for more information on using the GetAccountSettings
1551// API call, and error handling.
1552//
1553// This method is useful when you want to inject custom logic or configuration
1554// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1555//
1556//
1557//    // Example sending a request using the GetAccountSettingsRequest method.
1558//    req, resp := client.GetAccountSettingsRequest(params)
1559//
1560//    err := req.Send()
1561//    if err == nil { // resp is now filled
1562//        fmt.Println(resp)
1563//    }
1564//
1565// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetAccountSettings
1566func (c *Lambda) GetAccountSettingsRequest(input *GetAccountSettingsInput) (req *request.Request, output *GetAccountSettingsOutput) {
1567	op := &request.Operation{
1568		Name:       opGetAccountSettings,
1569		HTTPMethod: "GET",
1570		HTTPPath:   "/2016-08-19/account-settings/",
1571	}
1572
1573	if input == nil {
1574		input = &GetAccountSettingsInput{}
1575	}
1576
1577	output = &GetAccountSettingsOutput{}
1578	req = c.newRequest(op, input, output)
1579	return
1580}
1581
1582// GetAccountSettings API operation for AWS Lambda.
1583//
1584// Retrieves details about your account's limits (https://docs.aws.amazon.com/lambda/latest/dg/limits.html)
1585// and usage in an Amazon Web Services Region.
1586//
1587// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1588// with awserr.Error's Code and Message methods to get detailed information about
1589// the error.
1590//
1591// See the AWS API reference guide for AWS Lambda's
1592// API operation GetAccountSettings for usage and error information.
1593//
1594// Returned Error Types:
1595//   * TooManyRequestsException
1596//   The request throughput limit was exceeded.
1597//
1598//   * ServiceException
1599//   The Lambda service encountered an internal error.
1600//
1601// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetAccountSettings
1602func (c *Lambda) GetAccountSettings(input *GetAccountSettingsInput) (*GetAccountSettingsOutput, error) {
1603	req, out := c.GetAccountSettingsRequest(input)
1604	return out, req.Send()
1605}
1606
1607// GetAccountSettingsWithContext is the same as GetAccountSettings with the addition of
1608// the ability to pass a context and additional request options.
1609//
1610// See GetAccountSettings for details on how to use this API operation.
1611//
1612// The context must be non-nil and will be used for request cancellation. If
1613// the context is nil a panic will occur. In the future the SDK may create
1614// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1615// for more information on using Contexts.
1616func (c *Lambda) GetAccountSettingsWithContext(ctx aws.Context, input *GetAccountSettingsInput, opts ...request.Option) (*GetAccountSettingsOutput, error) {
1617	req, out := c.GetAccountSettingsRequest(input)
1618	req.SetContext(ctx)
1619	req.ApplyOptions(opts...)
1620	return out, req.Send()
1621}
1622
1623const opGetAlias = "GetAlias"
1624
1625// GetAliasRequest generates a "aws/request.Request" representing the
1626// client's request for the GetAlias operation. The "output" return
1627// value will be populated with the request's response once the request completes
1628// successfully.
1629//
1630// Use "Send" method on the returned Request to send the API call to the service.
1631// the "output" return value is not valid until after Send returns without error.
1632//
1633// See GetAlias for more information on using the GetAlias
1634// API call, and error handling.
1635//
1636// This method is useful when you want to inject custom logic or configuration
1637// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1638//
1639//
1640//    // Example sending a request using the GetAliasRequest method.
1641//    req, resp := client.GetAliasRequest(params)
1642//
1643//    err := req.Send()
1644//    if err == nil { // resp is now filled
1645//        fmt.Println(resp)
1646//    }
1647//
1648// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetAlias
1649func (c *Lambda) GetAliasRequest(input *GetAliasInput) (req *request.Request, output *AliasConfiguration) {
1650	op := &request.Operation{
1651		Name:       opGetAlias,
1652		HTTPMethod: "GET",
1653		HTTPPath:   "/2015-03-31/functions/{FunctionName}/aliases/{Name}",
1654	}
1655
1656	if input == nil {
1657		input = &GetAliasInput{}
1658	}
1659
1660	output = &AliasConfiguration{}
1661	req = c.newRequest(op, input, output)
1662	return
1663}
1664
1665// GetAlias API operation for AWS Lambda.
1666//
1667// Returns details about a Lambda function alias (https://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html).
1668//
1669// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1670// with awserr.Error's Code and Message methods to get detailed information about
1671// the error.
1672//
1673// See the AWS API reference guide for AWS Lambda's
1674// API operation GetAlias for usage and error information.
1675//
1676// Returned Error Types:
1677//   * ServiceException
1678//   The Lambda service encountered an internal error.
1679//
1680//   * ResourceNotFoundException
1681//   The resource specified in the request does not exist.
1682//
1683//   * InvalidParameterValueException
1684//   One of the parameters in the request is invalid.
1685//
1686//   * TooManyRequestsException
1687//   The request throughput limit was exceeded.
1688//
1689// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetAlias
1690func (c *Lambda) GetAlias(input *GetAliasInput) (*AliasConfiguration, error) {
1691	req, out := c.GetAliasRequest(input)
1692	return out, req.Send()
1693}
1694
1695// GetAliasWithContext is the same as GetAlias with the addition of
1696// the ability to pass a context and additional request options.
1697//
1698// See GetAlias for details on how to use this API operation.
1699//
1700// The context must be non-nil and will be used for request cancellation. If
1701// the context is nil a panic will occur. In the future the SDK may create
1702// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1703// for more information on using Contexts.
1704func (c *Lambda) GetAliasWithContext(ctx aws.Context, input *GetAliasInput, opts ...request.Option) (*AliasConfiguration, error) {
1705	req, out := c.GetAliasRequest(input)
1706	req.SetContext(ctx)
1707	req.ApplyOptions(opts...)
1708	return out, req.Send()
1709}
1710
1711const opGetCodeSigningConfig = "GetCodeSigningConfig"
1712
1713// GetCodeSigningConfigRequest generates a "aws/request.Request" representing the
1714// client's request for the GetCodeSigningConfig operation. The "output" return
1715// value will be populated with the request's response once the request completes
1716// successfully.
1717//
1718// Use "Send" method on the returned Request to send the API call to the service.
1719// the "output" return value is not valid until after Send returns without error.
1720//
1721// See GetCodeSigningConfig for more information on using the GetCodeSigningConfig
1722// API call, and error handling.
1723//
1724// This method is useful when you want to inject custom logic or configuration
1725// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1726//
1727//
1728//    // Example sending a request using the GetCodeSigningConfigRequest method.
1729//    req, resp := client.GetCodeSigningConfigRequest(params)
1730//
1731//    err := req.Send()
1732//    if err == nil { // resp is now filled
1733//        fmt.Println(resp)
1734//    }
1735//
1736// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetCodeSigningConfig
1737func (c *Lambda) GetCodeSigningConfigRequest(input *GetCodeSigningConfigInput) (req *request.Request, output *GetCodeSigningConfigOutput) {
1738	op := &request.Operation{
1739		Name:       opGetCodeSigningConfig,
1740		HTTPMethod: "GET",
1741		HTTPPath:   "/2020-04-22/code-signing-configs/{CodeSigningConfigArn}",
1742	}
1743
1744	if input == nil {
1745		input = &GetCodeSigningConfigInput{}
1746	}
1747
1748	output = &GetCodeSigningConfigOutput{}
1749	req = c.newRequest(op, input, output)
1750	return
1751}
1752
1753// GetCodeSigningConfig API operation for AWS Lambda.
1754//
1755// Returns information about the specified code signing configuration.
1756//
1757// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1758// with awserr.Error's Code and Message methods to get detailed information about
1759// the error.
1760//
1761// See the AWS API reference guide for AWS Lambda's
1762// API operation GetCodeSigningConfig for usage and error information.
1763//
1764// Returned Error Types:
1765//   * ServiceException
1766//   The Lambda service encountered an internal error.
1767//
1768//   * InvalidParameterValueException
1769//   One of the parameters in the request is invalid.
1770//
1771//   * ResourceNotFoundException
1772//   The resource specified in the request does not exist.
1773//
1774// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetCodeSigningConfig
1775func (c *Lambda) GetCodeSigningConfig(input *GetCodeSigningConfigInput) (*GetCodeSigningConfigOutput, error) {
1776	req, out := c.GetCodeSigningConfigRequest(input)
1777	return out, req.Send()
1778}
1779
1780// GetCodeSigningConfigWithContext is the same as GetCodeSigningConfig with the addition of
1781// the ability to pass a context and additional request options.
1782//
1783// See GetCodeSigningConfig for details on how to use this API operation.
1784//
1785// The context must be non-nil and will be used for request cancellation. If
1786// the context is nil a panic will occur. In the future the SDK may create
1787// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1788// for more information on using Contexts.
1789func (c *Lambda) GetCodeSigningConfigWithContext(ctx aws.Context, input *GetCodeSigningConfigInput, opts ...request.Option) (*GetCodeSigningConfigOutput, error) {
1790	req, out := c.GetCodeSigningConfigRequest(input)
1791	req.SetContext(ctx)
1792	req.ApplyOptions(opts...)
1793	return out, req.Send()
1794}
1795
1796const opGetEventSourceMapping = "GetEventSourceMapping"
1797
1798// GetEventSourceMappingRequest generates a "aws/request.Request" representing the
1799// client's request for the GetEventSourceMapping operation. The "output" return
1800// value will be populated with the request's response once the request completes
1801// successfully.
1802//
1803// Use "Send" method on the returned Request to send the API call to the service.
1804// the "output" return value is not valid until after Send returns without error.
1805//
1806// See GetEventSourceMapping for more information on using the GetEventSourceMapping
1807// API call, and error handling.
1808//
1809// This method is useful when you want to inject custom logic or configuration
1810// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1811//
1812//
1813//    // Example sending a request using the GetEventSourceMappingRequest method.
1814//    req, resp := client.GetEventSourceMappingRequest(params)
1815//
1816//    err := req.Send()
1817//    if err == nil { // resp is now filled
1818//        fmt.Println(resp)
1819//    }
1820//
1821// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetEventSourceMapping
1822func (c *Lambda) GetEventSourceMappingRequest(input *GetEventSourceMappingInput) (req *request.Request, output *EventSourceMappingConfiguration) {
1823	op := &request.Operation{
1824		Name:       opGetEventSourceMapping,
1825		HTTPMethod: "GET",
1826		HTTPPath:   "/2015-03-31/event-source-mappings/{UUID}",
1827	}
1828
1829	if input == nil {
1830		input = &GetEventSourceMappingInput{}
1831	}
1832
1833	output = &EventSourceMappingConfiguration{}
1834	req = c.newRequest(op, input, output)
1835	return
1836}
1837
1838// GetEventSourceMapping API operation for AWS Lambda.
1839//
1840// Returns details about an event source mapping. You can get the identifier
1841// of a mapping from the output of ListEventSourceMappings.
1842//
1843// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1844// with awserr.Error's Code and Message methods to get detailed information about
1845// the error.
1846//
1847// See the AWS API reference guide for AWS Lambda's
1848// API operation GetEventSourceMapping for usage and error information.
1849//
1850// Returned Error Types:
1851//   * ServiceException
1852//   The Lambda service encountered an internal error.
1853//
1854//   * ResourceNotFoundException
1855//   The resource specified in the request does not exist.
1856//
1857//   * InvalidParameterValueException
1858//   One of the parameters in the request is invalid.
1859//
1860//   * TooManyRequestsException
1861//   The request throughput limit was exceeded.
1862//
1863// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetEventSourceMapping
1864func (c *Lambda) GetEventSourceMapping(input *GetEventSourceMappingInput) (*EventSourceMappingConfiguration, error) {
1865	req, out := c.GetEventSourceMappingRequest(input)
1866	return out, req.Send()
1867}
1868
1869// GetEventSourceMappingWithContext is the same as GetEventSourceMapping with the addition of
1870// the ability to pass a context and additional request options.
1871//
1872// See GetEventSourceMapping for details on how to use this API operation.
1873//
1874// The context must be non-nil and will be used for request cancellation. If
1875// the context is nil a panic will occur. In the future the SDK may create
1876// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1877// for more information on using Contexts.
1878func (c *Lambda) GetEventSourceMappingWithContext(ctx aws.Context, input *GetEventSourceMappingInput, opts ...request.Option) (*EventSourceMappingConfiguration, error) {
1879	req, out := c.GetEventSourceMappingRequest(input)
1880	req.SetContext(ctx)
1881	req.ApplyOptions(opts...)
1882	return out, req.Send()
1883}
1884
1885const opGetFunction = "GetFunction"
1886
1887// GetFunctionRequest generates a "aws/request.Request" representing the
1888// client's request for the GetFunction operation. The "output" return
1889// value will be populated with the request's response once the request completes
1890// successfully.
1891//
1892// Use "Send" method on the returned Request to send the API call to the service.
1893// the "output" return value is not valid until after Send returns without error.
1894//
1895// See GetFunction for more information on using the GetFunction
1896// API call, and error handling.
1897//
1898// This method is useful when you want to inject custom logic or configuration
1899// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1900//
1901//
1902//    // Example sending a request using the GetFunctionRequest method.
1903//    req, resp := client.GetFunctionRequest(params)
1904//
1905//    err := req.Send()
1906//    if err == nil { // resp is now filled
1907//        fmt.Println(resp)
1908//    }
1909//
1910// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetFunction
1911func (c *Lambda) GetFunctionRequest(input *GetFunctionInput) (req *request.Request, output *GetFunctionOutput) {
1912	op := &request.Operation{
1913		Name:       opGetFunction,
1914		HTTPMethod: "GET",
1915		HTTPPath:   "/2015-03-31/functions/{FunctionName}",
1916	}
1917
1918	if input == nil {
1919		input = &GetFunctionInput{}
1920	}
1921
1922	output = &GetFunctionOutput{}
1923	req = c.newRequest(op, input, output)
1924	return
1925}
1926
1927// GetFunction API operation for AWS Lambda.
1928//
1929// Returns information about the function or function version, with a link to
1930// download the deployment package that's valid for 10 minutes. If you specify
1931// a function version, only details that are specific to that version are returned.
1932//
1933// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1934// with awserr.Error's Code and Message methods to get detailed information about
1935// the error.
1936//
1937// See the AWS API reference guide for AWS Lambda's
1938// API operation GetFunction for usage and error information.
1939//
1940// Returned Error Types:
1941//   * ServiceException
1942//   The Lambda service encountered an internal error.
1943//
1944//   * ResourceNotFoundException
1945//   The resource specified in the request does not exist.
1946//
1947//   * TooManyRequestsException
1948//   The request throughput limit was exceeded.
1949//
1950//   * InvalidParameterValueException
1951//   One of the parameters in the request is invalid.
1952//
1953// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetFunction
1954func (c *Lambda) GetFunction(input *GetFunctionInput) (*GetFunctionOutput, error) {
1955	req, out := c.GetFunctionRequest(input)
1956	return out, req.Send()
1957}
1958
1959// GetFunctionWithContext is the same as GetFunction with the addition of
1960// the ability to pass a context and additional request options.
1961//
1962// See GetFunction for details on how to use this API operation.
1963//
1964// The context must be non-nil and will be used for request cancellation. If
1965// the context is nil a panic will occur. In the future the SDK may create
1966// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1967// for more information on using Contexts.
1968func (c *Lambda) GetFunctionWithContext(ctx aws.Context, input *GetFunctionInput, opts ...request.Option) (*GetFunctionOutput, error) {
1969	req, out := c.GetFunctionRequest(input)
1970	req.SetContext(ctx)
1971	req.ApplyOptions(opts...)
1972	return out, req.Send()
1973}
1974
1975const opGetFunctionCodeSigningConfig = "GetFunctionCodeSigningConfig"
1976
1977// GetFunctionCodeSigningConfigRequest generates a "aws/request.Request" representing the
1978// client's request for the GetFunctionCodeSigningConfig operation. The "output" return
1979// value will be populated with the request's response once the request completes
1980// successfully.
1981//
1982// Use "Send" method on the returned Request to send the API call to the service.
1983// the "output" return value is not valid until after Send returns without error.
1984//
1985// See GetFunctionCodeSigningConfig for more information on using the GetFunctionCodeSigningConfig
1986// API call, and error handling.
1987//
1988// This method is useful when you want to inject custom logic or configuration
1989// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1990//
1991//
1992//    // Example sending a request using the GetFunctionCodeSigningConfigRequest method.
1993//    req, resp := client.GetFunctionCodeSigningConfigRequest(params)
1994//
1995//    err := req.Send()
1996//    if err == nil { // resp is now filled
1997//        fmt.Println(resp)
1998//    }
1999//
2000// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetFunctionCodeSigningConfig
2001func (c *Lambda) GetFunctionCodeSigningConfigRequest(input *GetFunctionCodeSigningConfigInput) (req *request.Request, output *GetFunctionCodeSigningConfigOutput) {
2002	op := &request.Operation{
2003		Name:       opGetFunctionCodeSigningConfig,
2004		HTTPMethod: "GET",
2005		HTTPPath:   "/2020-06-30/functions/{FunctionName}/code-signing-config",
2006	}
2007
2008	if input == nil {
2009		input = &GetFunctionCodeSigningConfigInput{}
2010	}
2011
2012	output = &GetFunctionCodeSigningConfigOutput{}
2013	req = c.newRequest(op, input, output)
2014	return
2015}
2016
2017// GetFunctionCodeSigningConfig API operation for AWS Lambda.
2018//
2019// Returns the code signing configuration for the specified function.
2020//
2021// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2022// with awserr.Error's Code and Message methods to get detailed information about
2023// the error.
2024//
2025// See the AWS API reference guide for AWS Lambda's
2026// API operation GetFunctionCodeSigningConfig for usage and error information.
2027//
2028// Returned Error Types:
2029//   * InvalidParameterValueException
2030//   One of the parameters in the request is invalid.
2031//
2032//   * ResourceNotFoundException
2033//   The resource specified in the request does not exist.
2034//
2035//   * ServiceException
2036//   The Lambda service encountered an internal error.
2037//
2038//   * TooManyRequestsException
2039//   The request throughput limit was exceeded.
2040//
2041// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetFunctionCodeSigningConfig
2042func (c *Lambda) GetFunctionCodeSigningConfig(input *GetFunctionCodeSigningConfigInput) (*GetFunctionCodeSigningConfigOutput, error) {
2043	req, out := c.GetFunctionCodeSigningConfigRequest(input)
2044	return out, req.Send()
2045}
2046
2047// GetFunctionCodeSigningConfigWithContext is the same as GetFunctionCodeSigningConfig with the addition of
2048// the ability to pass a context and additional request options.
2049//
2050// See GetFunctionCodeSigningConfig for details on how to use this API operation.
2051//
2052// The context must be non-nil and will be used for request cancellation. If
2053// the context is nil a panic will occur. In the future the SDK may create
2054// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2055// for more information on using Contexts.
2056func (c *Lambda) GetFunctionCodeSigningConfigWithContext(ctx aws.Context, input *GetFunctionCodeSigningConfigInput, opts ...request.Option) (*GetFunctionCodeSigningConfigOutput, error) {
2057	req, out := c.GetFunctionCodeSigningConfigRequest(input)
2058	req.SetContext(ctx)
2059	req.ApplyOptions(opts...)
2060	return out, req.Send()
2061}
2062
2063const opGetFunctionConcurrency = "GetFunctionConcurrency"
2064
2065// GetFunctionConcurrencyRequest generates a "aws/request.Request" representing the
2066// client's request for the GetFunctionConcurrency operation. The "output" return
2067// value will be populated with the request's response once the request completes
2068// successfully.
2069//
2070// Use "Send" method on the returned Request to send the API call to the service.
2071// the "output" return value is not valid until after Send returns without error.
2072//
2073// See GetFunctionConcurrency for more information on using the GetFunctionConcurrency
2074// API call, and error handling.
2075//
2076// This method is useful when you want to inject custom logic or configuration
2077// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2078//
2079//
2080//    // Example sending a request using the GetFunctionConcurrencyRequest method.
2081//    req, resp := client.GetFunctionConcurrencyRequest(params)
2082//
2083//    err := req.Send()
2084//    if err == nil { // resp is now filled
2085//        fmt.Println(resp)
2086//    }
2087//
2088// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetFunctionConcurrency
2089func (c *Lambda) GetFunctionConcurrencyRequest(input *GetFunctionConcurrencyInput) (req *request.Request, output *GetFunctionConcurrencyOutput) {
2090	op := &request.Operation{
2091		Name:       opGetFunctionConcurrency,
2092		HTTPMethod: "GET",
2093		HTTPPath:   "/2019-09-30/functions/{FunctionName}/concurrency",
2094	}
2095
2096	if input == nil {
2097		input = &GetFunctionConcurrencyInput{}
2098	}
2099
2100	output = &GetFunctionConcurrencyOutput{}
2101	req = c.newRequest(op, input, output)
2102	return
2103}
2104
2105// GetFunctionConcurrency API operation for AWS Lambda.
2106//
2107// Returns details about the reserved concurrency configuration for a function.
2108// To set a concurrency limit for a function, use PutFunctionConcurrency.
2109//
2110// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2111// with awserr.Error's Code and Message methods to get detailed information about
2112// the error.
2113//
2114// See the AWS API reference guide for AWS Lambda's
2115// API operation GetFunctionConcurrency for usage and error information.
2116//
2117// Returned Error Types:
2118//   * InvalidParameterValueException
2119//   One of the parameters in the request is invalid.
2120//
2121//   * ResourceNotFoundException
2122//   The resource specified in the request does not exist.
2123//
2124//   * TooManyRequestsException
2125//   The request throughput limit was exceeded.
2126//
2127//   * ServiceException
2128//   The Lambda service encountered an internal error.
2129//
2130// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetFunctionConcurrency
2131func (c *Lambda) GetFunctionConcurrency(input *GetFunctionConcurrencyInput) (*GetFunctionConcurrencyOutput, error) {
2132	req, out := c.GetFunctionConcurrencyRequest(input)
2133	return out, req.Send()
2134}
2135
2136// GetFunctionConcurrencyWithContext is the same as GetFunctionConcurrency with the addition of
2137// the ability to pass a context and additional request options.
2138//
2139// See GetFunctionConcurrency for details on how to use this API operation.
2140//
2141// The context must be non-nil and will be used for request cancellation. If
2142// the context is nil a panic will occur. In the future the SDK may create
2143// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2144// for more information on using Contexts.
2145func (c *Lambda) GetFunctionConcurrencyWithContext(ctx aws.Context, input *GetFunctionConcurrencyInput, opts ...request.Option) (*GetFunctionConcurrencyOutput, error) {
2146	req, out := c.GetFunctionConcurrencyRequest(input)
2147	req.SetContext(ctx)
2148	req.ApplyOptions(opts...)
2149	return out, req.Send()
2150}
2151
2152const opGetFunctionConfiguration = "GetFunctionConfiguration"
2153
2154// GetFunctionConfigurationRequest generates a "aws/request.Request" representing the
2155// client's request for the GetFunctionConfiguration operation. The "output" return
2156// value will be populated with the request's response once the request completes
2157// successfully.
2158//
2159// Use "Send" method on the returned Request to send the API call to the service.
2160// the "output" return value is not valid until after Send returns without error.
2161//
2162// See GetFunctionConfiguration for more information on using the GetFunctionConfiguration
2163// API call, and error handling.
2164//
2165// This method is useful when you want to inject custom logic or configuration
2166// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2167//
2168//
2169//    // Example sending a request using the GetFunctionConfigurationRequest method.
2170//    req, resp := client.GetFunctionConfigurationRequest(params)
2171//
2172//    err := req.Send()
2173//    if err == nil { // resp is now filled
2174//        fmt.Println(resp)
2175//    }
2176//
2177// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetFunctionConfiguration
2178func (c *Lambda) GetFunctionConfigurationRequest(input *GetFunctionConfigurationInput) (req *request.Request, output *FunctionConfiguration) {
2179	op := &request.Operation{
2180		Name:       opGetFunctionConfiguration,
2181		HTTPMethod: "GET",
2182		HTTPPath:   "/2015-03-31/functions/{FunctionName}/configuration",
2183	}
2184
2185	if input == nil {
2186		input = &GetFunctionConfigurationInput{}
2187	}
2188
2189	output = &FunctionConfiguration{}
2190	req = c.newRequest(op, input, output)
2191	return
2192}
2193
2194// GetFunctionConfiguration API operation for AWS Lambda.
2195//
2196// Returns the version-specific settings of a Lambda function or version. The
2197// output includes only options that can vary between versions of a function.
2198// To modify these settings, use UpdateFunctionConfiguration.
2199//
2200// To get all of a function's details, including function-level settings, use
2201// GetFunction.
2202//
2203// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2204// with awserr.Error's Code and Message methods to get detailed information about
2205// the error.
2206//
2207// See the AWS API reference guide for AWS Lambda's
2208// API operation GetFunctionConfiguration for usage and error information.
2209//
2210// Returned Error Types:
2211//   * ServiceException
2212//   The Lambda service encountered an internal error.
2213//
2214//   * ResourceNotFoundException
2215//   The resource specified in the request does not exist.
2216//
2217//   * TooManyRequestsException
2218//   The request throughput limit was exceeded.
2219//
2220//   * InvalidParameterValueException
2221//   One of the parameters in the request is invalid.
2222//
2223// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetFunctionConfiguration
2224func (c *Lambda) GetFunctionConfiguration(input *GetFunctionConfigurationInput) (*FunctionConfiguration, error) {
2225	req, out := c.GetFunctionConfigurationRequest(input)
2226	return out, req.Send()
2227}
2228
2229// GetFunctionConfigurationWithContext is the same as GetFunctionConfiguration with the addition of
2230// the ability to pass a context and additional request options.
2231//
2232// See GetFunctionConfiguration for details on how to use this API operation.
2233//
2234// The context must be non-nil and will be used for request cancellation. If
2235// the context is nil a panic will occur. In the future the SDK may create
2236// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2237// for more information on using Contexts.
2238func (c *Lambda) GetFunctionConfigurationWithContext(ctx aws.Context, input *GetFunctionConfigurationInput, opts ...request.Option) (*FunctionConfiguration, error) {
2239	req, out := c.GetFunctionConfigurationRequest(input)
2240	req.SetContext(ctx)
2241	req.ApplyOptions(opts...)
2242	return out, req.Send()
2243}
2244
2245const opGetFunctionEventInvokeConfig = "GetFunctionEventInvokeConfig"
2246
2247// GetFunctionEventInvokeConfigRequest generates a "aws/request.Request" representing the
2248// client's request for the GetFunctionEventInvokeConfig operation. The "output" return
2249// value will be populated with the request's response once the request completes
2250// successfully.
2251//
2252// Use "Send" method on the returned Request to send the API call to the service.
2253// the "output" return value is not valid until after Send returns without error.
2254//
2255// See GetFunctionEventInvokeConfig for more information on using the GetFunctionEventInvokeConfig
2256// API call, and error handling.
2257//
2258// This method is useful when you want to inject custom logic or configuration
2259// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2260//
2261//
2262//    // Example sending a request using the GetFunctionEventInvokeConfigRequest method.
2263//    req, resp := client.GetFunctionEventInvokeConfigRequest(params)
2264//
2265//    err := req.Send()
2266//    if err == nil { // resp is now filled
2267//        fmt.Println(resp)
2268//    }
2269//
2270// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetFunctionEventInvokeConfig
2271func (c *Lambda) GetFunctionEventInvokeConfigRequest(input *GetFunctionEventInvokeConfigInput) (req *request.Request, output *GetFunctionEventInvokeConfigOutput) {
2272	op := &request.Operation{
2273		Name:       opGetFunctionEventInvokeConfig,
2274		HTTPMethod: "GET",
2275		HTTPPath:   "/2019-09-25/functions/{FunctionName}/event-invoke-config",
2276	}
2277
2278	if input == nil {
2279		input = &GetFunctionEventInvokeConfigInput{}
2280	}
2281
2282	output = &GetFunctionEventInvokeConfigOutput{}
2283	req = c.newRequest(op, input, output)
2284	return
2285}
2286
2287// GetFunctionEventInvokeConfig API operation for AWS Lambda.
2288//
2289// Retrieves the configuration for asynchronous invocation for a function, version,
2290// or alias.
2291//
2292// To configure options for asynchronous invocation, use PutFunctionEventInvokeConfig.
2293//
2294// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2295// with awserr.Error's Code and Message methods to get detailed information about
2296// the error.
2297//
2298// See the AWS API reference guide for AWS Lambda's
2299// API operation GetFunctionEventInvokeConfig for usage and error information.
2300//
2301// Returned Error Types:
2302//   * ServiceException
2303//   The Lambda service encountered an internal error.
2304//
2305//   * ResourceNotFoundException
2306//   The resource specified in the request does not exist.
2307//
2308//   * InvalidParameterValueException
2309//   One of the parameters in the request is invalid.
2310//
2311//   * TooManyRequestsException
2312//   The request throughput limit was exceeded.
2313//
2314// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetFunctionEventInvokeConfig
2315func (c *Lambda) GetFunctionEventInvokeConfig(input *GetFunctionEventInvokeConfigInput) (*GetFunctionEventInvokeConfigOutput, error) {
2316	req, out := c.GetFunctionEventInvokeConfigRequest(input)
2317	return out, req.Send()
2318}
2319
2320// GetFunctionEventInvokeConfigWithContext is the same as GetFunctionEventInvokeConfig with the addition of
2321// the ability to pass a context and additional request options.
2322//
2323// See GetFunctionEventInvokeConfig for details on how to use this API operation.
2324//
2325// The context must be non-nil and will be used for request cancellation. If
2326// the context is nil a panic will occur. In the future the SDK may create
2327// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2328// for more information on using Contexts.
2329func (c *Lambda) GetFunctionEventInvokeConfigWithContext(ctx aws.Context, input *GetFunctionEventInvokeConfigInput, opts ...request.Option) (*GetFunctionEventInvokeConfigOutput, error) {
2330	req, out := c.GetFunctionEventInvokeConfigRequest(input)
2331	req.SetContext(ctx)
2332	req.ApplyOptions(opts...)
2333	return out, req.Send()
2334}
2335
2336const opGetLayerVersion = "GetLayerVersion"
2337
2338// GetLayerVersionRequest generates a "aws/request.Request" representing the
2339// client's request for the GetLayerVersion operation. The "output" return
2340// value will be populated with the request's response once the request completes
2341// successfully.
2342//
2343// Use "Send" method on the returned Request to send the API call to the service.
2344// the "output" return value is not valid until after Send returns without error.
2345//
2346// See GetLayerVersion for more information on using the GetLayerVersion
2347// API call, and error handling.
2348//
2349// This method is useful when you want to inject custom logic or configuration
2350// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2351//
2352//
2353//    // Example sending a request using the GetLayerVersionRequest method.
2354//    req, resp := client.GetLayerVersionRequest(params)
2355//
2356//    err := req.Send()
2357//    if err == nil { // resp is now filled
2358//        fmt.Println(resp)
2359//    }
2360//
2361// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetLayerVersion
2362func (c *Lambda) GetLayerVersionRequest(input *GetLayerVersionInput) (req *request.Request, output *GetLayerVersionOutput) {
2363	op := &request.Operation{
2364		Name:       opGetLayerVersion,
2365		HTTPMethod: "GET",
2366		HTTPPath:   "/2018-10-31/layers/{LayerName}/versions/{VersionNumber}",
2367	}
2368
2369	if input == nil {
2370		input = &GetLayerVersionInput{}
2371	}
2372
2373	output = &GetLayerVersionOutput{}
2374	req = c.newRequest(op, input, output)
2375	return
2376}
2377
2378// GetLayerVersion API operation for AWS Lambda.
2379//
2380// Returns information about a version of an Lambda layer (https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html),
2381// with a link to download the layer archive that's valid for 10 minutes.
2382//
2383// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2384// with awserr.Error's Code and Message methods to get detailed information about
2385// the error.
2386//
2387// See the AWS API reference guide for AWS Lambda's
2388// API operation GetLayerVersion for usage and error information.
2389//
2390// Returned Error Types:
2391//   * ServiceException
2392//   The Lambda service encountered an internal error.
2393//
2394//   * InvalidParameterValueException
2395//   One of the parameters in the request is invalid.
2396//
2397//   * TooManyRequestsException
2398//   The request throughput limit was exceeded.
2399//
2400//   * ResourceNotFoundException
2401//   The resource specified in the request does not exist.
2402//
2403// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetLayerVersion
2404func (c *Lambda) GetLayerVersion(input *GetLayerVersionInput) (*GetLayerVersionOutput, error) {
2405	req, out := c.GetLayerVersionRequest(input)
2406	return out, req.Send()
2407}
2408
2409// GetLayerVersionWithContext is the same as GetLayerVersion with the addition of
2410// the ability to pass a context and additional request options.
2411//
2412// See GetLayerVersion for details on how to use this API operation.
2413//
2414// The context must be non-nil and will be used for request cancellation. If
2415// the context is nil a panic will occur. In the future the SDK may create
2416// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2417// for more information on using Contexts.
2418func (c *Lambda) GetLayerVersionWithContext(ctx aws.Context, input *GetLayerVersionInput, opts ...request.Option) (*GetLayerVersionOutput, error) {
2419	req, out := c.GetLayerVersionRequest(input)
2420	req.SetContext(ctx)
2421	req.ApplyOptions(opts...)
2422	return out, req.Send()
2423}
2424
2425const opGetLayerVersionByArn = "GetLayerVersionByArn"
2426
2427// GetLayerVersionByArnRequest generates a "aws/request.Request" representing the
2428// client's request for the GetLayerVersionByArn operation. The "output" return
2429// value will be populated with the request's response once the request completes
2430// successfully.
2431//
2432// Use "Send" method on the returned Request to send the API call to the service.
2433// the "output" return value is not valid until after Send returns without error.
2434//
2435// See GetLayerVersionByArn for more information on using the GetLayerVersionByArn
2436// API call, and error handling.
2437//
2438// This method is useful when you want to inject custom logic or configuration
2439// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2440//
2441//
2442//    // Example sending a request using the GetLayerVersionByArnRequest method.
2443//    req, resp := client.GetLayerVersionByArnRequest(params)
2444//
2445//    err := req.Send()
2446//    if err == nil { // resp is now filled
2447//        fmt.Println(resp)
2448//    }
2449//
2450// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetLayerVersionByArn
2451func (c *Lambda) GetLayerVersionByArnRequest(input *GetLayerVersionByArnInput) (req *request.Request, output *GetLayerVersionByArnOutput) {
2452	op := &request.Operation{
2453		Name:       opGetLayerVersionByArn,
2454		HTTPMethod: "GET",
2455		HTTPPath:   "/2018-10-31/layers?find=LayerVersion",
2456	}
2457
2458	if input == nil {
2459		input = &GetLayerVersionByArnInput{}
2460	}
2461
2462	output = &GetLayerVersionByArnOutput{}
2463	req = c.newRequest(op, input, output)
2464	return
2465}
2466
2467// GetLayerVersionByArn API operation for AWS Lambda.
2468//
2469// Returns information about a version of an Lambda layer (https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html),
2470// with a link to download the layer archive that's valid for 10 minutes.
2471//
2472// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2473// with awserr.Error's Code and Message methods to get detailed information about
2474// the error.
2475//
2476// See the AWS API reference guide for AWS Lambda's
2477// API operation GetLayerVersionByArn for usage and error information.
2478//
2479// Returned Error Types:
2480//   * ServiceException
2481//   The Lambda service encountered an internal error.
2482//
2483//   * InvalidParameterValueException
2484//   One of the parameters in the request is invalid.
2485//
2486//   * TooManyRequestsException
2487//   The request throughput limit was exceeded.
2488//
2489//   * ResourceNotFoundException
2490//   The resource specified in the request does not exist.
2491//
2492// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetLayerVersionByArn
2493func (c *Lambda) GetLayerVersionByArn(input *GetLayerVersionByArnInput) (*GetLayerVersionByArnOutput, error) {
2494	req, out := c.GetLayerVersionByArnRequest(input)
2495	return out, req.Send()
2496}
2497
2498// GetLayerVersionByArnWithContext is the same as GetLayerVersionByArn with the addition of
2499// the ability to pass a context and additional request options.
2500//
2501// See GetLayerVersionByArn for details on how to use this API operation.
2502//
2503// The context must be non-nil and will be used for request cancellation. If
2504// the context is nil a panic will occur. In the future the SDK may create
2505// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2506// for more information on using Contexts.
2507func (c *Lambda) GetLayerVersionByArnWithContext(ctx aws.Context, input *GetLayerVersionByArnInput, opts ...request.Option) (*GetLayerVersionByArnOutput, error) {
2508	req, out := c.GetLayerVersionByArnRequest(input)
2509	req.SetContext(ctx)
2510	req.ApplyOptions(opts...)
2511	return out, req.Send()
2512}
2513
2514const opGetLayerVersionPolicy = "GetLayerVersionPolicy"
2515
2516// GetLayerVersionPolicyRequest generates a "aws/request.Request" representing the
2517// client's request for the GetLayerVersionPolicy operation. The "output" return
2518// value will be populated with the request's response once the request completes
2519// successfully.
2520//
2521// Use "Send" method on the returned Request to send the API call to the service.
2522// the "output" return value is not valid until after Send returns without error.
2523//
2524// See GetLayerVersionPolicy for more information on using the GetLayerVersionPolicy
2525// API call, and error handling.
2526//
2527// This method is useful when you want to inject custom logic or configuration
2528// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2529//
2530//
2531//    // Example sending a request using the GetLayerVersionPolicyRequest method.
2532//    req, resp := client.GetLayerVersionPolicyRequest(params)
2533//
2534//    err := req.Send()
2535//    if err == nil { // resp is now filled
2536//        fmt.Println(resp)
2537//    }
2538//
2539// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetLayerVersionPolicy
2540func (c *Lambda) GetLayerVersionPolicyRequest(input *GetLayerVersionPolicyInput) (req *request.Request, output *GetLayerVersionPolicyOutput) {
2541	op := &request.Operation{
2542		Name:       opGetLayerVersionPolicy,
2543		HTTPMethod: "GET",
2544		HTTPPath:   "/2018-10-31/layers/{LayerName}/versions/{VersionNumber}/policy",
2545	}
2546
2547	if input == nil {
2548		input = &GetLayerVersionPolicyInput{}
2549	}
2550
2551	output = &GetLayerVersionPolicyOutput{}
2552	req = c.newRequest(op, input, output)
2553	return
2554}
2555
2556// GetLayerVersionPolicy API operation for AWS Lambda.
2557//
2558// Returns the permission policy for a version of an Lambda layer (https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html).
2559// For more information, see AddLayerVersionPermission.
2560//
2561// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2562// with awserr.Error's Code and Message methods to get detailed information about
2563// the error.
2564//
2565// See the AWS API reference guide for AWS Lambda's
2566// API operation GetLayerVersionPolicy for usage and error information.
2567//
2568// Returned Error Types:
2569//   * ServiceException
2570//   The Lambda service encountered an internal error.
2571//
2572//   * ResourceNotFoundException
2573//   The resource specified in the request does not exist.
2574//
2575//   * TooManyRequestsException
2576//   The request throughput limit was exceeded.
2577//
2578//   * InvalidParameterValueException
2579//   One of the parameters in the request is invalid.
2580//
2581// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetLayerVersionPolicy
2582func (c *Lambda) GetLayerVersionPolicy(input *GetLayerVersionPolicyInput) (*GetLayerVersionPolicyOutput, error) {
2583	req, out := c.GetLayerVersionPolicyRequest(input)
2584	return out, req.Send()
2585}
2586
2587// GetLayerVersionPolicyWithContext is the same as GetLayerVersionPolicy with the addition of
2588// the ability to pass a context and additional request options.
2589//
2590// See GetLayerVersionPolicy 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.
2596func (c *Lambda) GetLayerVersionPolicyWithContext(ctx aws.Context, input *GetLayerVersionPolicyInput, opts ...request.Option) (*GetLayerVersionPolicyOutput, error) {
2597	req, out := c.GetLayerVersionPolicyRequest(input)
2598	req.SetContext(ctx)
2599	req.ApplyOptions(opts...)
2600	return out, req.Send()
2601}
2602
2603const opGetPolicy = "GetPolicy"
2604
2605// GetPolicyRequest generates a "aws/request.Request" representing the
2606// client's request for the GetPolicy operation. The "output" return
2607// value will be populated with the request's response once the request completes
2608// successfully.
2609//
2610// Use "Send" method on the returned Request to send the API call to the service.
2611// the "output" return value is not valid until after Send returns without error.
2612//
2613// See GetPolicy for more information on using the GetPolicy
2614// API call, and error handling.
2615//
2616// This method is useful when you want to inject custom logic or configuration
2617// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2618//
2619//
2620//    // Example sending a request using the GetPolicyRequest method.
2621//    req, resp := client.GetPolicyRequest(params)
2622//
2623//    err := req.Send()
2624//    if err == nil { // resp is now filled
2625//        fmt.Println(resp)
2626//    }
2627//
2628// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetPolicy
2629func (c *Lambda) GetPolicyRequest(input *GetPolicyInput) (req *request.Request, output *GetPolicyOutput) {
2630	op := &request.Operation{
2631		Name:       opGetPolicy,
2632		HTTPMethod: "GET",
2633		HTTPPath:   "/2015-03-31/functions/{FunctionName}/policy",
2634	}
2635
2636	if input == nil {
2637		input = &GetPolicyInput{}
2638	}
2639
2640	output = &GetPolicyOutput{}
2641	req = c.newRequest(op, input, output)
2642	return
2643}
2644
2645// GetPolicy API operation for AWS Lambda.
2646//
2647// Returns the resource-based IAM policy (https://docs.aws.amazon.com/lambda/latest/dg/access-control-resource-based.html)
2648// for a function, version, or alias.
2649//
2650// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2651// with awserr.Error's Code and Message methods to get detailed information about
2652// the error.
2653//
2654// See the AWS API reference guide for AWS Lambda's
2655// API operation GetPolicy for usage and error information.
2656//
2657// Returned Error Types:
2658//   * ServiceException
2659//   The Lambda service encountered an internal error.
2660//
2661//   * ResourceNotFoundException
2662//   The resource specified in the request does not exist.
2663//
2664//   * TooManyRequestsException
2665//   The request throughput limit was exceeded.
2666//
2667//   * InvalidParameterValueException
2668//   One of the parameters in the request is invalid.
2669//
2670// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetPolicy
2671func (c *Lambda) GetPolicy(input *GetPolicyInput) (*GetPolicyOutput, error) {
2672	req, out := c.GetPolicyRequest(input)
2673	return out, req.Send()
2674}
2675
2676// GetPolicyWithContext is the same as GetPolicy with the addition of
2677// the ability to pass a context and additional request options.
2678//
2679// See GetPolicy for details on how to use this API operation.
2680//
2681// The context must be non-nil and will be used for request cancellation. If
2682// the context is nil a panic will occur. In the future the SDK may create
2683// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2684// for more information on using Contexts.
2685func (c *Lambda) GetPolicyWithContext(ctx aws.Context, input *GetPolicyInput, opts ...request.Option) (*GetPolicyOutput, error) {
2686	req, out := c.GetPolicyRequest(input)
2687	req.SetContext(ctx)
2688	req.ApplyOptions(opts...)
2689	return out, req.Send()
2690}
2691
2692const opGetProvisionedConcurrencyConfig = "GetProvisionedConcurrencyConfig"
2693
2694// GetProvisionedConcurrencyConfigRequest generates a "aws/request.Request" representing the
2695// client's request for the GetProvisionedConcurrencyConfig operation. The "output" return
2696// value will be populated with the request's response once the request completes
2697// successfully.
2698//
2699// Use "Send" method on the returned Request to send the API call to the service.
2700// the "output" return value is not valid until after Send returns without error.
2701//
2702// See GetProvisionedConcurrencyConfig for more information on using the GetProvisionedConcurrencyConfig
2703// API call, and error handling.
2704//
2705// This method is useful when you want to inject custom logic or configuration
2706// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2707//
2708//
2709//    // Example sending a request using the GetProvisionedConcurrencyConfigRequest method.
2710//    req, resp := client.GetProvisionedConcurrencyConfigRequest(params)
2711//
2712//    err := req.Send()
2713//    if err == nil { // resp is now filled
2714//        fmt.Println(resp)
2715//    }
2716//
2717// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetProvisionedConcurrencyConfig
2718func (c *Lambda) GetProvisionedConcurrencyConfigRequest(input *GetProvisionedConcurrencyConfigInput) (req *request.Request, output *GetProvisionedConcurrencyConfigOutput) {
2719	op := &request.Operation{
2720		Name:       opGetProvisionedConcurrencyConfig,
2721		HTTPMethod: "GET",
2722		HTTPPath:   "/2019-09-30/functions/{FunctionName}/provisioned-concurrency",
2723	}
2724
2725	if input == nil {
2726		input = &GetProvisionedConcurrencyConfigInput{}
2727	}
2728
2729	output = &GetProvisionedConcurrencyConfigOutput{}
2730	req = c.newRequest(op, input, output)
2731	return
2732}
2733
2734// GetProvisionedConcurrencyConfig API operation for AWS Lambda.
2735//
2736// Retrieves the provisioned concurrency configuration for a function's alias
2737// or version.
2738//
2739// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2740// with awserr.Error's Code and Message methods to get detailed information about
2741// the error.
2742//
2743// See the AWS API reference guide for AWS Lambda's
2744// API operation GetProvisionedConcurrencyConfig for usage and error information.
2745//
2746// Returned Error Types:
2747//   * InvalidParameterValueException
2748//   One of the parameters in the request is invalid.
2749//
2750//   * ResourceNotFoundException
2751//   The resource specified in the request does not exist.
2752//
2753//   * TooManyRequestsException
2754//   The request throughput limit was exceeded.
2755//
2756//   * ServiceException
2757//   The Lambda service encountered an internal error.
2758//
2759//   * ProvisionedConcurrencyConfigNotFoundException
2760//   The specified configuration does not exist.
2761//
2762// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/GetProvisionedConcurrencyConfig
2763func (c *Lambda) GetProvisionedConcurrencyConfig(input *GetProvisionedConcurrencyConfigInput) (*GetProvisionedConcurrencyConfigOutput, error) {
2764	req, out := c.GetProvisionedConcurrencyConfigRequest(input)
2765	return out, req.Send()
2766}
2767
2768// GetProvisionedConcurrencyConfigWithContext is the same as GetProvisionedConcurrencyConfig with the addition of
2769// the ability to pass a context and additional request options.
2770//
2771// See GetProvisionedConcurrencyConfig for details on how to use this API operation.
2772//
2773// The context must be non-nil and will be used for request cancellation. If
2774// the context is nil a panic will occur. In the future the SDK may create
2775// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2776// for more information on using Contexts.
2777func (c *Lambda) GetProvisionedConcurrencyConfigWithContext(ctx aws.Context, input *GetProvisionedConcurrencyConfigInput, opts ...request.Option) (*GetProvisionedConcurrencyConfigOutput, error) {
2778	req, out := c.GetProvisionedConcurrencyConfigRequest(input)
2779	req.SetContext(ctx)
2780	req.ApplyOptions(opts...)
2781	return out, req.Send()
2782}
2783
2784const opInvoke = "Invoke"
2785
2786// InvokeRequest generates a "aws/request.Request" representing the
2787// client's request for the Invoke operation. The "output" return
2788// value will be populated with the request's response once the request completes
2789// successfully.
2790//
2791// Use "Send" method on the returned Request to send the API call to the service.
2792// the "output" return value is not valid until after Send returns without error.
2793//
2794// See Invoke for more information on using the Invoke
2795// API call, and error handling.
2796//
2797// This method is useful when you want to inject custom logic or configuration
2798// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2799//
2800//
2801//    // Example sending a request using the InvokeRequest method.
2802//    req, resp := client.InvokeRequest(params)
2803//
2804//    err := req.Send()
2805//    if err == nil { // resp is now filled
2806//        fmt.Println(resp)
2807//    }
2808//
2809// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/Invoke
2810func (c *Lambda) InvokeRequest(input *InvokeInput) (req *request.Request, output *InvokeOutput) {
2811	op := &request.Operation{
2812		Name:       opInvoke,
2813		HTTPMethod: "POST",
2814		HTTPPath:   "/2015-03-31/functions/{FunctionName}/invocations",
2815	}
2816
2817	if input == nil {
2818		input = &InvokeInput{}
2819	}
2820
2821	output = &InvokeOutput{}
2822	req = c.newRequest(op, input, output)
2823	return
2824}
2825
2826// Invoke API operation for AWS Lambda.
2827//
2828// Invokes a Lambda function. You can invoke a function synchronously (and wait
2829// for the response), or asynchronously. To invoke a function asynchronously,
2830// set InvocationType to Event.
2831//
2832// For synchronous invocation (https://docs.aws.amazon.com/lambda/latest/dg/invocation-sync.html),
2833// details about the function response, including errors, are included in the
2834// response body and headers. For either invocation type, you can find more
2835// information in the execution log (https://docs.aws.amazon.com/lambda/latest/dg/monitoring-functions.html)
2836// and trace (https://docs.aws.amazon.com/lambda/latest/dg/lambda-x-ray.html).
2837//
2838// When an error occurs, your function may be invoked multiple times. Retry
2839// behavior varies by error type, client, event source, and invocation type.
2840// For example, if you invoke a function asynchronously and it returns an error,
2841// Lambda executes the function up to two more times. For more information,
2842// see Retry Behavior (https://docs.aws.amazon.com/lambda/latest/dg/retries-on-errors.html).
2843//
2844// For asynchronous invocation (https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html),
2845// Lambda adds events to a queue before sending them to your function. If your
2846// function does not have enough capacity to keep up with the queue, events
2847// may be lost. Occasionally, your function may receive the same event multiple
2848// times, even if no error occurs. To retain events that were not processed,
2849// configure your function with a dead-letter queue (https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html#dlq).
2850//
2851// The status code in the API response doesn't reflect function errors. Error
2852// codes are reserved for errors that prevent your function from executing,
2853// such as permissions errors, limit errors (https://docs.aws.amazon.com/lambda/latest/dg/limits.html),
2854// or issues with your function's code and configuration. For example, Lambda
2855// returns TooManyRequestsException if executing the function would cause you
2856// to exceed a concurrency limit at either the account level (ConcurrentInvocationLimitExceeded)
2857// or function level (ReservedFunctionConcurrentInvocationLimitExceeded).
2858//
2859// For functions with a long timeout, your client might be disconnected during
2860// synchronous invocation while it waits for a response. Configure your HTTP
2861// client, SDK, firewall, proxy, or operating system to allow for long connections
2862// with timeout or keep-alive settings.
2863//
2864// This operation requires permission for the lambda:InvokeFunction (https://docs.aws.amazon.com/IAM/latest/UserGuide/list_awslambda.html)
2865// action.
2866//
2867// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2868// with awserr.Error's Code and Message methods to get detailed information about
2869// the error.
2870//
2871// See the AWS API reference guide for AWS Lambda's
2872// API operation Invoke for usage and error information.
2873//
2874// Returned Error Types:
2875//   * ServiceException
2876//   The Lambda service encountered an internal error.
2877//
2878//   * ResourceNotFoundException
2879//   The resource specified in the request does not exist.
2880//
2881//   * InvalidRequestContentException
2882//   The request body could not be parsed as JSON.
2883//
2884//   * RequestTooLargeException
2885//   The request payload exceeded the Invoke request body JSON input limit. For
2886//   more information, see Limits (https://docs.aws.amazon.com/lambda/latest/dg/limits.html).
2887//
2888//   * UnsupportedMediaTypeException
2889//   The content type of the Invoke request body is not JSON.
2890//
2891//   * TooManyRequestsException
2892//   The request throughput limit was exceeded.
2893//
2894//   * InvalidParameterValueException
2895//   One of the parameters in the request is invalid.
2896//
2897//   * EC2UnexpectedException
2898//   Lambda received an unexpected EC2 client exception while setting up for the
2899//   Lambda function.
2900//
2901//   * SubnetIPAddressLimitReachedException
2902//   Lambda was not able to set up VPC access for the Lambda function because
2903//   one or more configured subnets has no available IP addresses.
2904//
2905//   * ENILimitReachedException
2906//   Lambda was not able to create an elastic network interface in the VPC, specified
2907//   as part of Lambda function configuration, because the limit for network interfaces
2908//   has been reached.
2909//
2910//   * EFSMountConnectivityException
2911//   The function couldn't make a network connection to the configured file system.
2912//
2913//   * EFSMountFailureException
2914//   The function couldn't mount the configured file system due to a permission
2915//   or configuration issue.
2916//
2917//   * EFSMountTimeoutException
2918//   The function was able to make a network connection to the configured file
2919//   system, but the mount operation timed out.
2920//
2921//   * EFSIOException
2922//   An error occured when reading from or writing to a connected file system.
2923//
2924//   * EC2ThrottledException
2925//   Lambda was throttled by Amazon EC2 during Lambda function initialization
2926//   using the execution role provided for the Lambda function.
2927//
2928//   * EC2AccessDeniedException
2929//   Need additional permissions to configure VPC settings.
2930//
2931//   * InvalidSubnetIDException
2932//   The Subnet ID provided in the Lambda function VPC configuration is invalid.
2933//
2934//   * InvalidSecurityGroupIDException
2935//   The Security Group ID provided in the Lambda function VPC configuration is
2936//   invalid.
2937//
2938//   * InvalidZipFileException
2939//   Lambda could not unzip the deployment package.
2940//
2941//   * KMSDisabledException
2942//   Lambda was unable to decrypt the environment variables because the KMS key
2943//   used is disabled. Check the Lambda function's KMS key settings.
2944//
2945//   * KMSInvalidStateException
2946//   Lambda was unable to decrypt the environment variables because the KMS key
2947//   used is in an invalid state for Decrypt. Check the function's KMS key settings.
2948//
2949//   * KMSAccessDeniedException
2950//   Lambda was unable to decrypt the environment variables because KMS access
2951//   was denied. Check the Lambda function's KMS permissions.
2952//
2953//   * KMSNotFoundException
2954//   Lambda was unable to decrypt the environment variables because the KMS key
2955//   was not found. Check the function's KMS key settings.
2956//
2957//   * InvalidRuntimeException
2958//   The runtime or runtime version specified is not supported.
2959//
2960//   * ResourceConflictException
2961//   The resource already exists, or another operation is in progress.
2962//
2963//   * ResourceNotReadyException
2964//   The function is inactive and its VPC connection is no longer available. Wait
2965//   for the VPC connection to reestablish and try again.
2966//
2967// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/Invoke
2968func (c *Lambda) Invoke(input *InvokeInput) (*InvokeOutput, error) {
2969	req, out := c.InvokeRequest(input)
2970	return out, req.Send()
2971}
2972
2973// InvokeWithContext is the same as Invoke with the addition of
2974// the ability to pass a context and additional request options.
2975//
2976// See Invoke for details on how to use this API operation.
2977//
2978// The context must be non-nil and will be used for request cancellation. If
2979// the context is nil a panic will occur. In the future the SDK may create
2980// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2981// for more information on using Contexts.
2982func (c *Lambda) InvokeWithContext(ctx aws.Context, input *InvokeInput, opts ...request.Option) (*InvokeOutput, error) {
2983	req, out := c.InvokeRequest(input)
2984	req.SetContext(ctx)
2985	req.ApplyOptions(opts...)
2986	return out, req.Send()
2987}
2988
2989const opInvokeAsync = "InvokeAsync"
2990
2991// InvokeAsyncRequest generates a "aws/request.Request" representing the
2992// client's request for the InvokeAsync operation. The "output" return
2993// value will be populated with the request's response once the request completes
2994// successfully.
2995//
2996// Use "Send" method on the returned Request to send the API call to the service.
2997// the "output" return value is not valid until after Send returns without error.
2998//
2999// See InvokeAsync for more information on using the InvokeAsync
3000// API call, and error handling.
3001//
3002// This method is useful when you want to inject custom logic or configuration
3003// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3004//
3005//
3006//    // Example sending a request using the InvokeAsyncRequest method.
3007//    req, resp := client.InvokeAsyncRequest(params)
3008//
3009//    err := req.Send()
3010//    if err == nil { // resp is now filled
3011//        fmt.Println(resp)
3012//    }
3013//
3014// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/InvokeAsync
3015//
3016// Deprecated: InvokeAsync has been deprecated
3017func (c *Lambda) InvokeAsyncRequest(input *InvokeAsyncInput) (req *request.Request, output *InvokeAsyncOutput) {
3018	if c.Client.Config.Logger != nil {
3019		c.Client.Config.Logger.Log("This operation, InvokeAsync, has been deprecated")
3020	}
3021	op := &request.Operation{
3022		Name:       opInvokeAsync,
3023		HTTPMethod: "POST",
3024		HTTPPath:   "/2014-11-13/functions/{FunctionName}/invoke-async/",
3025	}
3026
3027	if input == nil {
3028		input = &InvokeAsyncInput{}
3029	}
3030
3031	output = &InvokeAsyncOutput{}
3032	req = c.newRequest(op, input, output)
3033	return
3034}
3035
3036// InvokeAsync API operation for AWS Lambda.
3037//
3038//
3039// For asynchronous function invocation, use Invoke.
3040//
3041// Invokes a function asynchronously.
3042//
3043// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3044// with awserr.Error's Code and Message methods to get detailed information about
3045// the error.
3046//
3047// See the AWS API reference guide for AWS Lambda's
3048// API operation InvokeAsync for usage and error information.
3049//
3050// Returned Error Types:
3051//   * ServiceException
3052//   The Lambda service encountered an internal error.
3053//
3054//   * ResourceNotFoundException
3055//   The resource specified in the request does not exist.
3056//
3057//   * InvalidRequestContentException
3058//   The request body could not be parsed as JSON.
3059//
3060//   * InvalidRuntimeException
3061//   The runtime or runtime version specified is not supported.
3062//
3063//   * ResourceConflictException
3064//   The resource already exists, or another operation is in progress.
3065//
3066// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/InvokeAsync
3067//
3068// Deprecated: InvokeAsync has been deprecated
3069func (c *Lambda) InvokeAsync(input *InvokeAsyncInput) (*InvokeAsyncOutput, error) {
3070	req, out := c.InvokeAsyncRequest(input)
3071	return out, req.Send()
3072}
3073
3074// InvokeAsyncWithContext is the same as InvokeAsync with the addition of
3075// the ability to pass a context and additional request options.
3076//
3077// See InvokeAsync for details on how to use this API operation.
3078//
3079// The context must be non-nil and will be used for request cancellation. If
3080// the context is nil a panic will occur. In the future the SDK may create
3081// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3082// for more information on using Contexts.
3083//
3084// Deprecated: InvokeAsyncWithContext has been deprecated
3085func (c *Lambda) InvokeAsyncWithContext(ctx aws.Context, input *InvokeAsyncInput, opts ...request.Option) (*InvokeAsyncOutput, error) {
3086	req, out := c.InvokeAsyncRequest(input)
3087	req.SetContext(ctx)
3088	req.ApplyOptions(opts...)
3089	return out, req.Send()
3090}
3091
3092const opListAliases = "ListAliases"
3093
3094// ListAliasesRequest generates a "aws/request.Request" representing the
3095// client's request for the ListAliases operation. The "output" return
3096// value will be populated with the request's response once the request completes
3097// successfully.
3098//
3099// Use "Send" method on the returned Request to send the API call to the service.
3100// the "output" return value is not valid until after Send returns without error.
3101//
3102// See ListAliases for more information on using the ListAliases
3103// API call, and error handling.
3104//
3105// This method is useful when you want to inject custom logic or configuration
3106// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3107//
3108//
3109//    // Example sending a request using the ListAliasesRequest method.
3110//    req, resp := client.ListAliasesRequest(params)
3111//
3112//    err := req.Send()
3113//    if err == nil { // resp is now filled
3114//        fmt.Println(resp)
3115//    }
3116//
3117// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListAliases
3118func (c *Lambda) ListAliasesRequest(input *ListAliasesInput) (req *request.Request, output *ListAliasesOutput) {
3119	op := &request.Operation{
3120		Name:       opListAliases,
3121		HTTPMethod: "GET",
3122		HTTPPath:   "/2015-03-31/functions/{FunctionName}/aliases",
3123		Paginator: &request.Paginator{
3124			InputTokens:     []string{"Marker"},
3125			OutputTokens:    []string{"NextMarker"},
3126			LimitToken:      "MaxItems",
3127			TruncationToken: "",
3128		},
3129	}
3130
3131	if input == nil {
3132		input = &ListAliasesInput{}
3133	}
3134
3135	output = &ListAliasesOutput{}
3136	req = c.newRequest(op, input, output)
3137	return
3138}
3139
3140// ListAliases API operation for AWS Lambda.
3141//
3142// Returns a list of aliases (https://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html)
3143// for a Lambda function.
3144//
3145// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3146// with awserr.Error's Code and Message methods to get detailed information about
3147// the error.
3148//
3149// See the AWS API reference guide for AWS Lambda's
3150// API operation ListAliases for usage and error information.
3151//
3152// Returned Error Types:
3153//   * ServiceException
3154//   The Lambda service encountered an internal error.
3155//
3156//   * ResourceNotFoundException
3157//   The resource specified in the request does not exist.
3158//
3159//   * InvalidParameterValueException
3160//   One of the parameters in the request is invalid.
3161//
3162//   * TooManyRequestsException
3163//   The request throughput limit was exceeded.
3164//
3165// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListAliases
3166func (c *Lambda) ListAliases(input *ListAliasesInput) (*ListAliasesOutput, error) {
3167	req, out := c.ListAliasesRequest(input)
3168	return out, req.Send()
3169}
3170
3171// ListAliasesWithContext is the same as ListAliases with the addition of
3172// the ability to pass a context and additional request options.
3173//
3174// See ListAliases for details on how to use this API operation.
3175//
3176// The context must be non-nil and will be used for request cancellation. If
3177// the context is nil a panic will occur. In the future the SDK may create
3178// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3179// for more information on using Contexts.
3180func (c *Lambda) ListAliasesWithContext(ctx aws.Context, input *ListAliasesInput, opts ...request.Option) (*ListAliasesOutput, error) {
3181	req, out := c.ListAliasesRequest(input)
3182	req.SetContext(ctx)
3183	req.ApplyOptions(opts...)
3184	return out, req.Send()
3185}
3186
3187// ListAliasesPages iterates over the pages of a ListAliases operation,
3188// calling the "fn" function with the response data for each page. To stop
3189// iterating, return false from the fn function.
3190//
3191// See ListAliases method for more information on how to use this operation.
3192//
3193// Note: This operation can generate multiple requests to a service.
3194//
3195//    // Example iterating over at most 3 pages of a ListAliases operation.
3196//    pageNum := 0
3197//    err := client.ListAliasesPages(params,
3198//        func(page *lambda.ListAliasesOutput, lastPage bool) bool {
3199//            pageNum++
3200//            fmt.Println(page)
3201//            return pageNum <= 3
3202//        })
3203//
3204func (c *Lambda) ListAliasesPages(input *ListAliasesInput, fn func(*ListAliasesOutput, bool) bool) error {
3205	return c.ListAliasesPagesWithContext(aws.BackgroundContext(), input, fn)
3206}
3207
3208// ListAliasesPagesWithContext same as ListAliasesPages except
3209// it takes a Context and allows setting request options on the pages.
3210//
3211// The context must be non-nil and will be used for request cancellation. If
3212// the context is nil a panic will occur. In the future the SDK may create
3213// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3214// for more information on using Contexts.
3215func (c *Lambda) ListAliasesPagesWithContext(ctx aws.Context, input *ListAliasesInput, fn func(*ListAliasesOutput, bool) bool, opts ...request.Option) error {
3216	p := request.Pagination{
3217		NewRequest: func() (*request.Request, error) {
3218			var inCpy *ListAliasesInput
3219			if input != nil {
3220				tmp := *input
3221				inCpy = &tmp
3222			}
3223			req, _ := c.ListAliasesRequest(inCpy)
3224			req.SetContext(ctx)
3225			req.ApplyOptions(opts...)
3226			return req, nil
3227		},
3228	}
3229
3230	for p.Next() {
3231		if !fn(p.Page().(*ListAliasesOutput), !p.HasNextPage()) {
3232			break
3233		}
3234	}
3235
3236	return p.Err()
3237}
3238
3239const opListCodeSigningConfigs = "ListCodeSigningConfigs"
3240
3241// ListCodeSigningConfigsRequest generates a "aws/request.Request" representing the
3242// client's request for the ListCodeSigningConfigs operation. The "output" return
3243// value will be populated with the request's response once the request completes
3244// successfully.
3245//
3246// Use "Send" method on the returned Request to send the API call to the service.
3247// the "output" return value is not valid until after Send returns without error.
3248//
3249// See ListCodeSigningConfigs for more information on using the ListCodeSigningConfigs
3250// API call, and error handling.
3251//
3252// This method is useful when you want to inject custom logic or configuration
3253// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3254//
3255//
3256//    // Example sending a request using the ListCodeSigningConfigsRequest method.
3257//    req, resp := client.ListCodeSigningConfigsRequest(params)
3258//
3259//    err := req.Send()
3260//    if err == nil { // resp is now filled
3261//        fmt.Println(resp)
3262//    }
3263//
3264// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListCodeSigningConfigs
3265func (c *Lambda) ListCodeSigningConfigsRequest(input *ListCodeSigningConfigsInput) (req *request.Request, output *ListCodeSigningConfigsOutput) {
3266	op := &request.Operation{
3267		Name:       opListCodeSigningConfigs,
3268		HTTPMethod: "GET",
3269		HTTPPath:   "/2020-04-22/code-signing-configs/",
3270		Paginator: &request.Paginator{
3271			InputTokens:     []string{"Marker"},
3272			OutputTokens:    []string{"NextMarker"},
3273			LimitToken:      "MaxItems",
3274			TruncationToken: "",
3275		},
3276	}
3277
3278	if input == nil {
3279		input = &ListCodeSigningConfigsInput{}
3280	}
3281
3282	output = &ListCodeSigningConfigsOutput{}
3283	req = c.newRequest(op, input, output)
3284	return
3285}
3286
3287// ListCodeSigningConfigs API operation for AWS Lambda.
3288//
3289// Returns a list of code signing configurations (https://docs.aws.amazon.com/lambda/latest/dg/configuring-codesigning.html).
3290// A request returns up to 10,000 configurations per call. You can use the MaxItems
3291// parameter to return fewer configurations per call.
3292//
3293// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3294// with awserr.Error's Code and Message methods to get detailed information about
3295// the error.
3296//
3297// See the AWS API reference guide for AWS Lambda's
3298// API operation ListCodeSigningConfigs for usage and error information.
3299//
3300// Returned Error Types:
3301//   * ServiceException
3302//   The Lambda service encountered an internal error.
3303//
3304//   * InvalidParameterValueException
3305//   One of the parameters in the request is invalid.
3306//
3307// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListCodeSigningConfigs
3308func (c *Lambda) ListCodeSigningConfigs(input *ListCodeSigningConfigsInput) (*ListCodeSigningConfigsOutput, error) {
3309	req, out := c.ListCodeSigningConfigsRequest(input)
3310	return out, req.Send()
3311}
3312
3313// ListCodeSigningConfigsWithContext is the same as ListCodeSigningConfigs with the addition of
3314// the ability to pass a context and additional request options.
3315//
3316// See ListCodeSigningConfigs for details on how to use this API operation.
3317//
3318// The context must be non-nil and will be used for request cancellation. If
3319// the context is nil a panic will occur. In the future the SDK may create
3320// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3321// for more information on using Contexts.
3322func (c *Lambda) ListCodeSigningConfigsWithContext(ctx aws.Context, input *ListCodeSigningConfigsInput, opts ...request.Option) (*ListCodeSigningConfigsOutput, error) {
3323	req, out := c.ListCodeSigningConfigsRequest(input)
3324	req.SetContext(ctx)
3325	req.ApplyOptions(opts...)
3326	return out, req.Send()
3327}
3328
3329// ListCodeSigningConfigsPages iterates over the pages of a ListCodeSigningConfigs operation,
3330// calling the "fn" function with the response data for each page. To stop
3331// iterating, return false from the fn function.
3332//
3333// See ListCodeSigningConfigs method for more information on how to use this operation.
3334//
3335// Note: This operation can generate multiple requests to a service.
3336//
3337//    // Example iterating over at most 3 pages of a ListCodeSigningConfigs operation.
3338//    pageNum := 0
3339//    err := client.ListCodeSigningConfigsPages(params,
3340//        func(page *lambda.ListCodeSigningConfigsOutput, lastPage bool) bool {
3341//            pageNum++
3342//            fmt.Println(page)
3343//            return pageNum <= 3
3344//        })
3345//
3346func (c *Lambda) ListCodeSigningConfigsPages(input *ListCodeSigningConfigsInput, fn func(*ListCodeSigningConfigsOutput, bool) bool) error {
3347	return c.ListCodeSigningConfigsPagesWithContext(aws.BackgroundContext(), input, fn)
3348}
3349
3350// ListCodeSigningConfigsPagesWithContext same as ListCodeSigningConfigsPages except
3351// it takes a Context and allows setting request options on the pages.
3352//
3353// The context must be non-nil and will be used for request cancellation. If
3354// the context is nil a panic will occur. In the future the SDK may create
3355// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3356// for more information on using Contexts.
3357func (c *Lambda) ListCodeSigningConfigsPagesWithContext(ctx aws.Context, input *ListCodeSigningConfigsInput, fn func(*ListCodeSigningConfigsOutput, bool) bool, opts ...request.Option) error {
3358	p := request.Pagination{
3359		NewRequest: func() (*request.Request, error) {
3360			var inCpy *ListCodeSigningConfigsInput
3361			if input != nil {
3362				tmp := *input
3363				inCpy = &tmp
3364			}
3365			req, _ := c.ListCodeSigningConfigsRequest(inCpy)
3366			req.SetContext(ctx)
3367			req.ApplyOptions(opts...)
3368			return req, nil
3369		},
3370	}
3371
3372	for p.Next() {
3373		if !fn(p.Page().(*ListCodeSigningConfigsOutput), !p.HasNextPage()) {
3374			break
3375		}
3376	}
3377
3378	return p.Err()
3379}
3380
3381const opListEventSourceMappings = "ListEventSourceMappings"
3382
3383// ListEventSourceMappingsRequest generates a "aws/request.Request" representing the
3384// client's request for the ListEventSourceMappings operation. The "output" return
3385// value will be populated with the request's response once the request completes
3386// successfully.
3387//
3388// Use "Send" method on the returned Request to send the API call to the service.
3389// the "output" return value is not valid until after Send returns without error.
3390//
3391// See ListEventSourceMappings for more information on using the ListEventSourceMappings
3392// API call, and error handling.
3393//
3394// This method is useful when you want to inject custom logic or configuration
3395// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3396//
3397//
3398//    // Example sending a request using the ListEventSourceMappingsRequest method.
3399//    req, resp := client.ListEventSourceMappingsRequest(params)
3400//
3401//    err := req.Send()
3402//    if err == nil { // resp is now filled
3403//        fmt.Println(resp)
3404//    }
3405//
3406// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListEventSourceMappings
3407func (c *Lambda) ListEventSourceMappingsRequest(input *ListEventSourceMappingsInput) (req *request.Request, output *ListEventSourceMappingsOutput) {
3408	op := &request.Operation{
3409		Name:       opListEventSourceMappings,
3410		HTTPMethod: "GET",
3411		HTTPPath:   "/2015-03-31/event-source-mappings/",
3412		Paginator: &request.Paginator{
3413			InputTokens:     []string{"Marker"},
3414			OutputTokens:    []string{"NextMarker"},
3415			LimitToken:      "MaxItems",
3416			TruncationToken: "",
3417		},
3418	}
3419
3420	if input == nil {
3421		input = &ListEventSourceMappingsInput{}
3422	}
3423
3424	output = &ListEventSourceMappingsOutput{}
3425	req = c.newRequest(op, input, output)
3426	return
3427}
3428
3429// ListEventSourceMappings API operation for AWS Lambda.
3430//
3431// Lists event source mappings. Specify an EventSourceArn to only show event
3432// source mappings for a single event source.
3433//
3434// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3435// with awserr.Error's Code and Message methods to get detailed information about
3436// the error.
3437//
3438// See the AWS API reference guide for AWS Lambda's
3439// API operation ListEventSourceMappings for usage and error information.
3440//
3441// Returned Error Types:
3442//   * ServiceException
3443//   The Lambda service encountered an internal error.
3444//
3445//   * ResourceNotFoundException
3446//   The resource specified in the request does not exist.
3447//
3448//   * InvalidParameterValueException
3449//   One of the parameters in the request is invalid.
3450//
3451//   * TooManyRequestsException
3452//   The request throughput limit was exceeded.
3453//
3454// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListEventSourceMappings
3455func (c *Lambda) ListEventSourceMappings(input *ListEventSourceMappingsInput) (*ListEventSourceMappingsOutput, error) {
3456	req, out := c.ListEventSourceMappingsRequest(input)
3457	return out, req.Send()
3458}
3459
3460// ListEventSourceMappingsWithContext is the same as ListEventSourceMappings with the addition of
3461// the ability to pass a context and additional request options.
3462//
3463// See ListEventSourceMappings for details on how to use this API operation.
3464//
3465// The context must be non-nil and will be used for request cancellation. If
3466// the context is nil a panic will occur. In the future the SDK may create
3467// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3468// for more information on using Contexts.
3469func (c *Lambda) ListEventSourceMappingsWithContext(ctx aws.Context, input *ListEventSourceMappingsInput, opts ...request.Option) (*ListEventSourceMappingsOutput, error) {
3470	req, out := c.ListEventSourceMappingsRequest(input)
3471	req.SetContext(ctx)
3472	req.ApplyOptions(opts...)
3473	return out, req.Send()
3474}
3475
3476// ListEventSourceMappingsPages iterates over the pages of a ListEventSourceMappings operation,
3477// calling the "fn" function with the response data for each page. To stop
3478// iterating, return false from the fn function.
3479//
3480// See ListEventSourceMappings method for more information on how to use this operation.
3481//
3482// Note: This operation can generate multiple requests to a service.
3483//
3484//    // Example iterating over at most 3 pages of a ListEventSourceMappings operation.
3485//    pageNum := 0
3486//    err := client.ListEventSourceMappingsPages(params,
3487//        func(page *lambda.ListEventSourceMappingsOutput, lastPage bool) bool {
3488//            pageNum++
3489//            fmt.Println(page)
3490//            return pageNum <= 3
3491//        })
3492//
3493func (c *Lambda) ListEventSourceMappingsPages(input *ListEventSourceMappingsInput, fn func(*ListEventSourceMappingsOutput, bool) bool) error {
3494	return c.ListEventSourceMappingsPagesWithContext(aws.BackgroundContext(), input, fn)
3495}
3496
3497// ListEventSourceMappingsPagesWithContext same as ListEventSourceMappingsPages except
3498// it takes a Context and allows setting request options on the pages.
3499//
3500// The context must be non-nil and will be used for request cancellation. If
3501// the context is nil a panic will occur. In the future the SDK may create
3502// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3503// for more information on using Contexts.
3504func (c *Lambda) ListEventSourceMappingsPagesWithContext(ctx aws.Context, input *ListEventSourceMappingsInput, fn func(*ListEventSourceMappingsOutput, bool) bool, opts ...request.Option) error {
3505	p := request.Pagination{
3506		NewRequest: func() (*request.Request, error) {
3507			var inCpy *ListEventSourceMappingsInput
3508			if input != nil {
3509				tmp := *input
3510				inCpy = &tmp
3511			}
3512			req, _ := c.ListEventSourceMappingsRequest(inCpy)
3513			req.SetContext(ctx)
3514			req.ApplyOptions(opts...)
3515			return req, nil
3516		},
3517	}
3518
3519	for p.Next() {
3520		if !fn(p.Page().(*ListEventSourceMappingsOutput), !p.HasNextPage()) {
3521			break
3522		}
3523	}
3524
3525	return p.Err()
3526}
3527
3528const opListFunctionEventInvokeConfigs = "ListFunctionEventInvokeConfigs"
3529
3530// ListFunctionEventInvokeConfigsRequest generates a "aws/request.Request" representing the
3531// client's request for the ListFunctionEventInvokeConfigs operation. The "output" return
3532// value will be populated with the request's response once the request completes
3533// successfully.
3534//
3535// Use "Send" method on the returned Request to send the API call to the service.
3536// the "output" return value is not valid until after Send returns without error.
3537//
3538// See ListFunctionEventInvokeConfigs for more information on using the ListFunctionEventInvokeConfigs
3539// API call, and error handling.
3540//
3541// This method is useful when you want to inject custom logic or configuration
3542// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3543//
3544//
3545//    // Example sending a request using the ListFunctionEventInvokeConfigsRequest method.
3546//    req, resp := client.ListFunctionEventInvokeConfigsRequest(params)
3547//
3548//    err := req.Send()
3549//    if err == nil { // resp is now filled
3550//        fmt.Println(resp)
3551//    }
3552//
3553// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListFunctionEventInvokeConfigs
3554func (c *Lambda) ListFunctionEventInvokeConfigsRequest(input *ListFunctionEventInvokeConfigsInput) (req *request.Request, output *ListFunctionEventInvokeConfigsOutput) {
3555	op := &request.Operation{
3556		Name:       opListFunctionEventInvokeConfigs,
3557		HTTPMethod: "GET",
3558		HTTPPath:   "/2019-09-25/functions/{FunctionName}/event-invoke-config/list",
3559		Paginator: &request.Paginator{
3560			InputTokens:     []string{"Marker"},
3561			OutputTokens:    []string{"NextMarker"},
3562			LimitToken:      "MaxItems",
3563			TruncationToken: "",
3564		},
3565	}
3566
3567	if input == nil {
3568		input = &ListFunctionEventInvokeConfigsInput{}
3569	}
3570
3571	output = &ListFunctionEventInvokeConfigsOutput{}
3572	req = c.newRequest(op, input, output)
3573	return
3574}
3575
3576// ListFunctionEventInvokeConfigs API operation for AWS Lambda.
3577//
3578// Retrieves a list of configurations for asynchronous invocation for a function.
3579//
3580// To configure options for asynchronous invocation, use PutFunctionEventInvokeConfig.
3581//
3582// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3583// with awserr.Error's Code and Message methods to get detailed information about
3584// the error.
3585//
3586// See the AWS API reference guide for AWS Lambda's
3587// API operation ListFunctionEventInvokeConfigs for usage and error information.
3588//
3589// Returned Error Types:
3590//   * InvalidParameterValueException
3591//   One of the parameters in the request is invalid.
3592//
3593//   * ResourceNotFoundException
3594//   The resource specified in the request does not exist.
3595//
3596//   * TooManyRequestsException
3597//   The request throughput limit was exceeded.
3598//
3599//   * ServiceException
3600//   The Lambda service encountered an internal error.
3601//
3602// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListFunctionEventInvokeConfigs
3603func (c *Lambda) ListFunctionEventInvokeConfigs(input *ListFunctionEventInvokeConfigsInput) (*ListFunctionEventInvokeConfigsOutput, error) {
3604	req, out := c.ListFunctionEventInvokeConfigsRequest(input)
3605	return out, req.Send()
3606}
3607
3608// ListFunctionEventInvokeConfigsWithContext is the same as ListFunctionEventInvokeConfigs with the addition of
3609// the ability to pass a context and additional request options.
3610//
3611// See ListFunctionEventInvokeConfigs for details on how to use this API operation.
3612//
3613// The context must be non-nil and will be used for request cancellation. If
3614// the context is nil a panic will occur. In the future the SDK may create
3615// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3616// for more information on using Contexts.
3617func (c *Lambda) ListFunctionEventInvokeConfigsWithContext(ctx aws.Context, input *ListFunctionEventInvokeConfigsInput, opts ...request.Option) (*ListFunctionEventInvokeConfigsOutput, error) {
3618	req, out := c.ListFunctionEventInvokeConfigsRequest(input)
3619	req.SetContext(ctx)
3620	req.ApplyOptions(opts...)
3621	return out, req.Send()
3622}
3623
3624// ListFunctionEventInvokeConfigsPages iterates over the pages of a ListFunctionEventInvokeConfigs operation,
3625// calling the "fn" function with the response data for each page. To stop
3626// iterating, return false from the fn function.
3627//
3628// See ListFunctionEventInvokeConfigs method for more information on how to use this operation.
3629//
3630// Note: This operation can generate multiple requests to a service.
3631//
3632//    // Example iterating over at most 3 pages of a ListFunctionEventInvokeConfigs operation.
3633//    pageNum := 0
3634//    err := client.ListFunctionEventInvokeConfigsPages(params,
3635//        func(page *lambda.ListFunctionEventInvokeConfigsOutput, lastPage bool) bool {
3636//            pageNum++
3637//            fmt.Println(page)
3638//            return pageNum <= 3
3639//        })
3640//
3641func (c *Lambda) ListFunctionEventInvokeConfigsPages(input *ListFunctionEventInvokeConfigsInput, fn func(*ListFunctionEventInvokeConfigsOutput, bool) bool) error {
3642	return c.ListFunctionEventInvokeConfigsPagesWithContext(aws.BackgroundContext(), input, fn)
3643}
3644
3645// ListFunctionEventInvokeConfigsPagesWithContext same as ListFunctionEventInvokeConfigsPages except
3646// it takes a Context and allows setting request options on the pages.
3647//
3648// The context must be non-nil and will be used for request cancellation. If
3649// the context is nil a panic will occur. In the future the SDK may create
3650// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3651// for more information on using Contexts.
3652func (c *Lambda) ListFunctionEventInvokeConfigsPagesWithContext(ctx aws.Context, input *ListFunctionEventInvokeConfigsInput, fn func(*ListFunctionEventInvokeConfigsOutput, bool) bool, opts ...request.Option) error {
3653	p := request.Pagination{
3654		NewRequest: func() (*request.Request, error) {
3655			var inCpy *ListFunctionEventInvokeConfigsInput
3656			if input != nil {
3657				tmp := *input
3658				inCpy = &tmp
3659			}
3660			req, _ := c.ListFunctionEventInvokeConfigsRequest(inCpy)
3661			req.SetContext(ctx)
3662			req.ApplyOptions(opts...)
3663			return req, nil
3664		},
3665	}
3666
3667	for p.Next() {
3668		if !fn(p.Page().(*ListFunctionEventInvokeConfigsOutput), !p.HasNextPage()) {
3669			break
3670		}
3671	}
3672
3673	return p.Err()
3674}
3675
3676const opListFunctions = "ListFunctions"
3677
3678// ListFunctionsRequest generates a "aws/request.Request" representing the
3679// client's request for the ListFunctions operation. The "output" return
3680// value will be populated with the request's response once the request completes
3681// successfully.
3682//
3683// Use "Send" method on the returned Request to send the API call to the service.
3684// the "output" return value is not valid until after Send returns without error.
3685//
3686// See ListFunctions for more information on using the ListFunctions
3687// API call, and error handling.
3688//
3689// This method is useful when you want to inject custom logic or configuration
3690// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3691//
3692//
3693//    // Example sending a request using the ListFunctionsRequest method.
3694//    req, resp := client.ListFunctionsRequest(params)
3695//
3696//    err := req.Send()
3697//    if err == nil { // resp is now filled
3698//        fmt.Println(resp)
3699//    }
3700//
3701// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListFunctions
3702func (c *Lambda) ListFunctionsRequest(input *ListFunctionsInput) (req *request.Request, output *ListFunctionsOutput) {
3703	op := &request.Operation{
3704		Name:       opListFunctions,
3705		HTTPMethod: "GET",
3706		HTTPPath:   "/2015-03-31/functions/",
3707		Paginator: &request.Paginator{
3708			InputTokens:     []string{"Marker"},
3709			OutputTokens:    []string{"NextMarker"},
3710			LimitToken:      "MaxItems",
3711			TruncationToken: "",
3712		},
3713	}
3714
3715	if input == nil {
3716		input = &ListFunctionsInput{}
3717	}
3718
3719	output = &ListFunctionsOutput{}
3720	req = c.newRequest(op, input, output)
3721	return
3722}
3723
3724// ListFunctions API operation for AWS Lambda.
3725//
3726// Returns a list of Lambda functions, with the version-specific configuration
3727// of each. Lambda returns up to 50 functions per call.
3728//
3729// Set FunctionVersion to ALL to include all published versions of each function
3730// in addition to the unpublished version.
3731//
3732// The ListFunctions action returns a subset of the FunctionConfiguration fields.
3733// To get the additional fields (State, StateReasonCode, StateReason, LastUpdateStatus,
3734// LastUpdateStatusReason, LastUpdateStatusReasonCode) for a function or version,
3735// use GetFunction.
3736//
3737// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3738// with awserr.Error's Code and Message methods to get detailed information about
3739// the error.
3740//
3741// See the AWS API reference guide for AWS Lambda's
3742// API operation ListFunctions for usage and error information.
3743//
3744// Returned Error Types:
3745//   * ServiceException
3746//   The Lambda service encountered an internal error.
3747//
3748//   * TooManyRequestsException
3749//   The request throughput limit was exceeded.
3750//
3751//   * InvalidParameterValueException
3752//   One of the parameters in the request is invalid.
3753//
3754// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListFunctions
3755func (c *Lambda) ListFunctions(input *ListFunctionsInput) (*ListFunctionsOutput, error) {
3756	req, out := c.ListFunctionsRequest(input)
3757	return out, req.Send()
3758}
3759
3760// ListFunctionsWithContext is the same as ListFunctions with the addition of
3761// the ability to pass a context and additional request options.
3762//
3763// See ListFunctions for details on how to use this API operation.
3764//
3765// The context must be non-nil and will be used for request cancellation. If
3766// the context is nil a panic will occur. In the future the SDK may create
3767// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3768// for more information on using Contexts.
3769func (c *Lambda) ListFunctionsWithContext(ctx aws.Context, input *ListFunctionsInput, opts ...request.Option) (*ListFunctionsOutput, error) {
3770	req, out := c.ListFunctionsRequest(input)
3771	req.SetContext(ctx)
3772	req.ApplyOptions(opts...)
3773	return out, req.Send()
3774}
3775
3776// ListFunctionsPages iterates over the pages of a ListFunctions operation,
3777// calling the "fn" function with the response data for each page. To stop
3778// iterating, return false from the fn function.
3779//
3780// See ListFunctions method for more information on how to use this operation.
3781//
3782// Note: This operation can generate multiple requests to a service.
3783//
3784//    // Example iterating over at most 3 pages of a ListFunctions operation.
3785//    pageNum := 0
3786//    err := client.ListFunctionsPages(params,
3787//        func(page *lambda.ListFunctionsOutput, lastPage bool) bool {
3788//            pageNum++
3789//            fmt.Println(page)
3790//            return pageNum <= 3
3791//        })
3792//
3793func (c *Lambda) ListFunctionsPages(input *ListFunctionsInput, fn func(*ListFunctionsOutput, bool) bool) error {
3794	return c.ListFunctionsPagesWithContext(aws.BackgroundContext(), input, fn)
3795}
3796
3797// ListFunctionsPagesWithContext same as ListFunctionsPages except
3798// it takes a Context and allows setting request options on the pages.
3799//
3800// The context must be non-nil and will be used for request cancellation. If
3801// the context is nil a panic will occur. In the future the SDK may create
3802// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3803// for more information on using Contexts.
3804func (c *Lambda) ListFunctionsPagesWithContext(ctx aws.Context, input *ListFunctionsInput, fn func(*ListFunctionsOutput, bool) bool, opts ...request.Option) error {
3805	p := request.Pagination{
3806		NewRequest: func() (*request.Request, error) {
3807			var inCpy *ListFunctionsInput
3808			if input != nil {
3809				tmp := *input
3810				inCpy = &tmp
3811			}
3812			req, _ := c.ListFunctionsRequest(inCpy)
3813			req.SetContext(ctx)
3814			req.ApplyOptions(opts...)
3815			return req, nil
3816		},
3817	}
3818
3819	for p.Next() {
3820		if !fn(p.Page().(*ListFunctionsOutput), !p.HasNextPage()) {
3821			break
3822		}
3823	}
3824
3825	return p.Err()
3826}
3827
3828const opListFunctionsByCodeSigningConfig = "ListFunctionsByCodeSigningConfig"
3829
3830// ListFunctionsByCodeSigningConfigRequest generates a "aws/request.Request" representing the
3831// client's request for the ListFunctionsByCodeSigningConfig operation. The "output" return
3832// value will be populated with the request's response once the request completes
3833// successfully.
3834//
3835// Use "Send" method on the returned Request to send the API call to the service.
3836// the "output" return value is not valid until after Send returns without error.
3837//
3838// See ListFunctionsByCodeSigningConfig for more information on using the ListFunctionsByCodeSigningConfig
3839// API call, and error handling.
3840//
3841// This method is useful when you want to inject custom logic or configuration
3842// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3843//
3844//
3845//    // Example sending a request using the ListFunctionsByCodeSigningConfigRequest method.
3846//    req, resp := client.ListFunctionsByCodeSigningConfigRequest(params)
3847//
3848//    err := req.Send()
3849//    if err == nil { // resp is now filled
3850//        fmt.Println(resp)
3851//    }
3852//
3853// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListFunctionsByCodeSigningConfig
3854func (c *Lambda) ListFunctionsByCodeSigningConfigRequest(input *ListFunctionsByCodeSigningConfigInput) (req *request.Request, output *ListFunctionsByCodeSigningConfigOutput) {
3855	op := &request.Operation{
3856		Name:       opListFunctionsByCodeSigningConfig,
3857		HTTPMethod: "GET",
3858		HTTPPath:   "/2020-04-22/code-signing-configs/{CodeSigningConfigArn}/functions",
3859		Paginator: &request.Paginator{
3860			InputTokens:     []string{"Marker"},
3861			OutputTokens:    []string{"NextMarker"},
3862			LimitToken:      "MaxItems",
3863			TruncationToken: "",
3864		},
3865	}
3866
3867	if input == nil {
3868		input = &ListFunctionsByCodeSigningConfigInput{}
3869	}
3870
3871	output = &ListFunctionsByCodeSigningConfigOutput{}
3872	req = c.newRequest(op, input, output)
3873	return
3874}
3875
3876// ListFunctionsByCodeSigningConfig API operation for AWS Lambda.
3877//
3878// List the functions that use the specified code signing configuration. You
3879// can use this method prior to deleting a code signing configuration, to verify
3880// that no functions are using it.
3881//
3882// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3883// with awserr.Error's Code and Message methods to get detailed information about
3884// the error.
3885//
3886// See the AWS API reference guide for AWS Lambda's
3887// API operation ListFunctionsByCodeSigningConfig for usage and error information.
3888//
3889// Returned Error Types:
3890//   * ServiceException
3891//   The Lambda service encountered an internal error.
3892//
3893//   * InvalidParameterValueException
3894//   One of the parameters in the request is invalid.
3895//
3896//   * ResourceNotFoundException
3897//   The resource specified in the request does not exist.
3898//
3899// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListFunctionsByCodeSigningConfig
3900func (c *Lambda) ListFunctionsByCodeSigningConfig(input *ListFunctionsByCodeSigningConfigInput) (*ListFunctionsByCodeSigningConfigOutput, error) {
3901	req, out := c.ListFunctionsByCodeSigningConfigRequest(input)
3902	return out, req.Send()
3903}
3904
3905// ListFunctionsByCodeSigningConfigWithContext is the same as ListFunctionsByCodeSigningConfig with the addition of
3906// the ability to pass a context and additional request options.
3907//
3908// See ListFunctionsByCodeSigningConfig for details on how to use this API operation.
3909//
3910// The context must be non-nil and will be used for request cancellation. If
3911// the context is nil a panic will occur. In the future the SDK may create
3912// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3913// for more information on using Contexts.
3914func (c *Lambda) ListFunctionsByCodeSigningConfigWithContext(ctx aws.Context, input *ListFunctionsByCodeSigningConfigInput, opts ...request.Option) (*ListFunctionsByCodeSigningConfigOutput, error) {
3915	req, out := c.ListFunctionsByCodeSigningConfigRequest(input)
3916	req.SetContext(ctx)
3917	req.ApplyOptions(opts...)
3918	return out, req.Send()
3919}
3920
3921// ListFunctionsByCodeSigningConfigPages iterates over the pages of a ListFunctionsByCodeSigningConfig operation,
3922// calling the "fn" function with the response data for each page. To stop
3923// iterating, return false from the fn function.
3924//
3925// See ListFunctionsByCodeSigningConfig method for more information on how to use this operation.
3926//
3927// Note: This operation can generate multiple requests to a service.
3928//
3929//    // Example iterating over at most 3 pages of a ListFunctionsByCodeSigningConfig operation.
3930//    pageNum := 0
3931//    err := client.ListFunctionsByCodeSigningConfigPages(params,
3932//        func(page *lambda.ListFunctionsByCodeSigningConfigOutput, lastPage bool) bool {
3933//            pageNum++
3934//            fmt.Println(page)
3935//            return pageNum <= 3
3936//        })
3937//
3938func (c *Lambda) ListFunctionsByCodeSigningConfigPages(input *ListFunctionsByCodeSigningConfigInput, fn func(*ListFunctionsByCodeSigningConfigOutput, bool) bool) error {
3939	return c.ListFunctionsByCodeSigningConfigPagesWithContext(aws.BackgroundContext(), input, fn)
3940}
3941
3942// ListFunctionsByCodeSigningConfigPagesWithContext same as ListFunctionsByCodeSigningConfigPages except
3943// it takes a Context and allows setting request options on the pages.
3944//
3945// The context must be non-nil and will be used for request cancellation. If
3946// the context is nil a panic will occur. In the future the SDK may create
3947// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3948// for more information on using Contexts.
3949func (c *Lambda) ListFunctionsByCodeSigningConfigPagesWithContext(ctx aws.Context, input *ListFunctionsByCodeSigningConfigInput, fn func(*ListFunctionsByCodeSigningConfigOutput, bool) bool, opts ...request.Option) error {
3950	p := request.Pagination{
3951		NewRequest: func() (*request.Request, error) {
3952			var inCpy *ListFunctionsByCodeSigningConfigInput
3953			if input != nil {
3954				tmp := *input
3955				inCpy = &tmp
3956			}
3957			req, _ := c.ListFunctionsByCodeSigningConfigRequest(inCpy)
3958			req.SetContext(ctx)
3959			req.ApplyOptions(opts...)
3960			return req, nil
3961		},
3962	}
3963
3964	for p.Next() {
3965		if !fn(p.Page().(*ListFunctionsByCodeSigningConfigOutput), !p.HasNextPage()) {
3966			break
3967		}
3968	}
3969
3970	return p.Err()
3971}
3972
3973const opListLayerVersions = "ListLayerVersions"
3974
3975// ListLayerVersionsRequest generates a "aws/request.Request" representing the
3976// client's request for the ListLayerVersions operation. The "output" return
3977// value will be populated with the request's response once the request completes
3978// successfully.
3979//
3980// Use "Send" method on the returned Request to send the API call to the service.
3981// the "output" return value is not valid until after Send returns without error.
3982//
3983// See ListLayerVersions for more information on using the ListLayerVersions
3984// API call, and error handling.
3985//
3986// This method is useful when you want to inject custom logic or configuration
3987// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3988//
3989//
3990//    // Example sending a request using the ListLayerVersionsRequest method.
3991//    req, resp := client.ListLayerVersionsRequest(params)
3992//
3993//    err := req.Send()
3994//    if err == nil { // resp is now filled
3995//        fmt.Println(resp)
3996//    }
3997//
3998// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListLayerVersions
3999func (c *Lambda) ListLayerVersionsRequest(input *ListLayerVersionsInput) (req *request.Request, output *ListLayerVersionsOutput) {
4000	op := &request.Operation{
4001		Name:       opListLayerVersions,
4002		HTTPMethod: "GET",
4003		HTTPPath:   "/2018-10-31/layers/{LayerName}/versions",
4004		Paginator: &request.Paginator{
4005			InputTokens:     []string{"Marker"},
4006			OutputTokens:    []string{"NextMarker"},
4007			LimitToken:      "MaxItems",
4008			TruncationToken: "",
4009		},
4010	}
4011
4012	if input == nil {
4013		input = &ListLayerVersionsInput{}
4014	}
4015
4016	output = &ListLayerVersionsOutput{}
4017	req = c.newRequest(op, input, output)
4018	return
4019}
4020
4021// ListLayerVersions API operation for AWS Lambda.
4022//
4023// Lists the versions of an Lambda layer (https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html).
4024// Versions that have been deleted aren't listed. Specify a runtime identifier
4025// (https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html) to list
4026// only versions that indicate that they're compatible with that runtime.
4027//
4028// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4029// with awserr.Error's Code and Message methods to get detailed information about
4030// the error.
4031//
4032// See the AWS API reference guide for AWS Lambda's
4033// API operation ListLayerVersions for usage and error information.
4034//
4035// Returned Error Types:
4036//   * ServiceException
4037//   The Lambda service encountered an internal error.
4038//
4039//   * InvalidParameterValueException
4040//   One of the parameters in the request is invalid.
4041//
4042//   * ResourceNotFoundException
4043//   The resource specified in the request does not exist.
4044//
4045//   * TooManyRequestsException
4046//   The request throughput limit was exceeded.
4047//
4048// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListLayerVersions
4049func (c *Lambda) ListLayerVersions(input *ListLayerVersionsInput) (*ListLayerVersionsOutput, error) {
4050	req, out := c.ListLayerVersionsRequest(input)
4051	return out, req.Send()
4052}
4053
4054// ListLayerVersionsWithContext is the same as ListLayerVersions with the addition of
4055// the ability to pass a context and additional request options.
4056//
4057// See ListLayerVersions for details on how to use this API operation.
4058//
4059// The context must be non-nil and will be used for request cancellation. If
4060// the context is nil a panic will occur. In the future the SDK may create
4061// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4062// for more information on using Contexts.
4063func (c *Lambda) ListLayerVersionsWithContext(ctx aws.Context, input *ListLayerVersionsInput, opts ...request.Option) (*ListLayerVersionsOutput, error) {
4064	req, out := c.ListLayerVersionsRequest(input)
4065	req.SetContext(ctx)
4066	req.ApplyOptions(opts...)
4067	return out, req.Send()
4068}
4069
4070// ListLayerVersionsPages iterates over the pages of a ListLayerVersions operation,
4071// calling the "fn" function with the response data for each page. To stop
4072// iterating, return false from the fn function.
4073//
4074// See ListLayerVersions method for more information on how to use this operation.
4075//
4076// Note: This operation can generate multiple requests to a service.
4077//
4078//    // Example iterating over at most 3 pages of a ListLayerVersions operation.
4079//    pageNum := 0
4080//    err := client.ListLayerVersionsPages(params,
4081//        func(page *lambda.ListLayerVersionsOutput, lastPage bool) bool {
4082//            pageNum++
4083//            fmt.Println(page)
4084//            return pageNum <= 3
4085//        })
4086//
4087func (c *Lambda) ListLayerVersionsPages(input *ListLayerVersionsInput, fn func(*ListLayerVersionsOutput, bool) bool) error {
4088	return c.ListLayerVersionsPagesWithContext(aws.BackgroundContext(), input, fn)
4089}
4090
4091// ListLayerVersionsPagesWithContext same as ListLayerVersionsPages except
4092// it takes a Context and allows setting request options on the pages.
4093//
4094// The context must be non-nil and will be used for request cancellation. If
4095// the context is nil a panic will occur. In the future the SDK may create
4096// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4097// for more information on using Contexts.
4098func (c *Lambda) ListLayerVersionsPagesWithContext(ctx aws.Context, input *ListLayerVersionsInput, fn func(*ListLayerVersionsOutput, bool) bool, opts ...request.Option) error {
4099	p := request.Pagination{
4100		NewRequest: func() (*request.Request, error) {
4101			var inCpy *ListLayerVersionsInput
4102			if input != nil {
4103				tmp := *input
4104				inCpy = &tmp
4105			}
4106			req, _ := c.ListLayerVersionsRequest(inCpy)
4107			req.SetContext(ctx)
4108			req.ApplyOptions(opts...)
4109			return req, nil
4110		},
4111	}
4112
4113	for p.Next() {
4114		if !fn(p.Page().(*ListLayerVersionsOutput), !p.HasNextPage()) {
4115			break
4116		}
4117	}
4118
4119	return p.Err()
4120}
4121
4122const opListLayers = "ListLayers"
4123
4124// ListLayersRequest generates a "aws/request.Request" representing the
4125// client's request for the ListLayers operation. The "output" return
4126// value will be populated with the request's response once the request completes
4127// successfully.
4128//
4129// Use "Send" method on the returned Request to send the API call to the service.
4130// the "output" return value is not valid until after Send returns without error.
4131//
4132// See ListLayers for more information on using the ListLayers
4133// API call, and error handling.
4134//
4135// This method is useful when you want to inject custom logic or configuration
4136// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4137//
4138//
4139//    // Example sending a request using the ListLayersRequest method.
4140//    req, resp := client.ListLayersRequest(params)
4141//
4142//    err := req.Send()
4143//    if err == nil { // resp is now filled
4144//        fmt.Println(resp)
4145//    }
4146//
4147// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListLayers
4148func (c *Lambda) ListLayersRequest(input *ListLayersInput) (req *request.Request, output *ListLayersOutput) {
4149	op := &request.Operation{
4150		Name:       opListLayers,
4151		HTTPMethod: "GET",
4152		HTTPPath:   "/2018-10-31/layers",
4153		Paginator: &request.Paginator{
4154			InputTokens:     []string{"Marker"},
4155			OutputTokens:    []string{"NextMarker"},
4156			LimitToken:      "MaxItems",
4157			TruncationToken: "",
4158		},
4159	}
4160
4161	if input == nil {
4162		input = &ListLayersInput{}
4163	}
4164
4165	output = &ListLayersOutput{}
4166	req = c.newRequest(op, input, output)
4167	return
4168}
4169
4170// ListLayers API operation for AWS Lambda.
4171//
4172// Lists Lambda layers (https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html)
4173// and shows information about the latest version of each. Specify a runtime
4174// identifier (https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html)
4175// to list only layers that indicate that they're compatible with that runtime.
4176//
4177// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4178// with awserr.Error's Code and Message methods to get detailed information about
4179// the error.
4180//
4181// See the AWS API reference guide for AWS Lambda's
4182// API operation ListLayers for usage and error information.
4183//
4184// Returned Error Types:
4185//   * ServiceException
4186//   The Lambda service encountered an internal error.
4187//
4188//   * InvalidParameterValueException
4189//   One of the parameters in the request is invalid.
4190//
4191//   * TooManyRequestsException
4192//   The request throughput limit was exceeded.
4193//
4194// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListLayers
4195func (c *Lambda) ListLayers(input *ListLayersInput) (*ListLayersOutput, error) {
4196	req, out := c.ListLayersRequest(input)
4197	return out, req.Send()
4198}
4199
4200// ListLayersWithContext is the same as ListLayers with the addition of
4201// the ability to pass a context and additional request options.
4202//
4203// See ListLayers for details on how to use this API operation.
4204//
4205// The context must be non-nil and will be used for request cancellation. If
4206// the context is nil a panic will occur. In the future the SDK may create
4207// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4208// for more information on using Contexts.
4209func (c *Lambda) ListLayersWithContext(ctx aws.Context, input *ListLayersInput, opts ...request.Option) (*ListLayersOutput, error) {
4210	req, out := c.ListLayersRequest(input)
4211	req.SetContext(ctx)
4212	req.ApplyOptions(opts...)
4213	return out, req.Send()
4214}
4215
4216// ListLayersPages iterates over the pages of a ListLayers operation,
4217// calling the "fn" function with the response data for each page. To stop
4218// iterating, return false from the fn function.
4219//
4220// See ListLayers method for more information on how to use this operation.
4221//
4222// Note: This operation can generate multiple requests to a service.
4223//
4224//    // Example iterating over at most 3 pages of a ListLayers operation.
4225//    pageNum := 0
4226//    err := client.ListLayersPages(params,
4227//        func(page *lambda.ListLayersOutput, lastPage bool) bool {
4228//            pageNum++
4229//            fmt.Println(page)
4230//            return pageNum <= 3
4231//        })
4232//
4233func (c *Lambda) ListLayersPages(input *ListLayersInput, fn func(*ListLayersOutput, bool) bool) error {
4234	return c.ListLayersPagesWithContext(aws.BackgroundContext(), input, fn)
4235}
4236
4237// ListLayersPagesWithContext same as ListLayersPages except
4238// it takes a Context and allows setting request options on the pages.
4239//
4240// The context must be non-nil and will be used for request cancellation. If
4241// the context is nil a panic will occur. In the future the SDK may create
4242// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4243// for more information on using Contexts.
4244func (c *Lambda) ListLayersPagesWithContext(ctx aws.Context, input *ListLayersInput, fn func(*ListLayersOutput, bool) bool, opts ...request.Option) error {
4245	p := request.Pagination{
4246		NewRequest: func() (*request.Request, error) {
4247			var inCpy *ListLayersInput
4248			if input != nil {
4249				tmp := *input
4250				inCpy = &tmp
4251			}
4252			req, _ := c.ListLayersRequest(inCpy)
4253			req.SetContext(ctx)
4254			req.ApplyOptions(opts...)
4255			return req, nil
4256		},
4257	}
4258
4259	for p.Next() {
4260		if !fn(p.Page().(*ListLayersOutput), !p.HasNextPage()) {
4261			break
4262		}
4263	}
4264
4265	return p.Err()
4266}
4267
4268const opListProvisionedConcurrencyConfigs = "ListProvisionedConcurrencyConfigs"
4269
4270// ListProvisionedConcurrencyConfigsRequest generates a "aws/request.Request" representing the
4271// client's request for the ListProvisionedConcurrencyConfigs operation. The "output" return
4272// value will be populated with the request's response once the request completes
4273// successfully.
4274//
4275// Use "Send" method on the returned Request to send the API call to the service.
4276// the "output" return value is not valid until after Send returns without error.
4277//
4278// See ListProvisionedConcurrencyConfigs for more information on using the ListProvisionedConcurrencyConfigs
4279// API call, and error handling.
4280//
4281// This method is useful when you want to inject custom logic or configuration
4282// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4283//
4284//
4285//    // Example sending a request using the ListProvisionedConcurrencyConfigsRequest method.
4286//    req, resp := client.ListProvisionedConcurrencyConfigsRequest(params)
4287//
4288//    err := req.Send()
4289//    if err == nil { // resp is now filled
4290//        fmt.Println(resp)
4291//    }
4292//
4293// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListProvisionedConcurrencyConfigs
4294func (c *Lambda) ListProvisionedConcurrencyConfigsRequest(input *ListProvisionedConcurrencyConfigsInput) (req *request.Request, output *ListProvisionedConcurrencyConfigsOutput) {
4295	op := &request.Operation{
4296		Name:       opListProvisionedConcurrencyConfigs,
4297		HTTPMethod: "GET",
4298		HTTPPath:   "/2019-09-30/functions/{FunctionName}/provisioned-concurrency?List=ALL",
4299		Paginator: &request.Paginator{
4300			InputTokens:     []string{"Marker"},
4301			OutputTokens:    []string{"NextMarker"},
4302			LimitToken:      "MaxItems",
4303			TruncationToken: "",
4304		},
4305	}
4306
4307	if input == nil {
4308		input = &ListProvisionedConcurrencyConfigsInput{}
4309	}
4310
4311	output = &ListProvisionedConcurrencyConfigsOutput{}
4312	req = c.newRequest(op, input, output)
4313	return
4314}
4315
4316// ListProvisionedConcurrencyConfigs API operation for AWS Lambda.
4317//
4318// Retrieves a list of provisioned concurrency configurations for a function.
4319//
4320// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4321// with awserr.Error's Code and Message methods to get detailed information about
4322// the error.
4323//
4324// See the AWS API reference guide for AWS Lambda's
4325// API operation ListProvisionedConcurrencyConfigs for usage and error information.
4326//
4327// Returned Error Types:
4328//   * InvalidParameterValueException
4329//   One of the parameters in the request is invalid.
4330//
4331//   * ResourceNotFoundException
4332//   The resource specified in the request does not exist.
4333//
4334//   * TooManyRequestsException
4335//   The request throughput limit was exceeded.
4336//
4337//   * ServiceException
4338//   The Lambda service encountered an internal error.
4339//
4340// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListProvisionedConcurrencyConfigs
4341func (c *Lambda) ListProvisionedConcurrencyConfigs(input *ListProvisionedConcurrencyConfigsInput) (*ListProvisionedConcurrencyConfigsOutput, error) {
4342	req, out := c.ListProvisionedConcurrencyConfigsRequest(input)
4343	return out, req.Send()
4344}
4345
4346// ListProvisionedConcurrencyConfigsWithContext is the same as ListProvisionedConcurrencyConfigs with the addition of
4347// the ability to pass a context and additional request options.
4348//
4349// See ListProvisionedConcurrencyConfigs for details on how to use this API operation.
4350//
4351// The context must be non-nil and will be used for request cancellation. If
4352// the context is nil a panic will occur. In the future the SDK may create
4353// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4354// for more information on using Contexts.
4355func (c *Lambda) ListProvisionedConcurrencyConfigsWithContext(ctx aws.Context, input *ListProvisionedConcurrencyConfigsInput, opts ...request.Option) (*ListProvisionedConcurrencyConfigsOutput, error) {
4356	req, out := c.ListProvisionedConcurrencyConfigsRequest(input)
4357	req.SetContext(ctx)
4358	req.ApplyOptions(opts...)
4359	return out, req.Send()
4360}
4361
4362// ListProvisionedConcurrencyConfigsPages iterates over the pages of a ListProvisionedConcurrencyConfigs operation,
4363// calling the "fn" function with the response data for each page. To stop
4364// iterating, return false from the fn function.
4365//
4366// See ListProvisionedConcurrencyConfigs method for more information on how to use this operation.
4367//
4368// Note: This operation can generate multiple requests to a service.
4369//
4370//    // Example iterating over at most 3 pages of a ListProvisionedConcurrencyConfigs operation.
4371//    pageNum := 0
4372//    err := client.ListProvisionedConcurrencyConfigsPages(params,
4373//        func(page *lambda.ListProvisionedConcurrencyConfigsOutput, lastPage bool) bool {
4374//            pageNum++
4375//            fmt.Println(page)
4376//            return pageNum <= 3
4377//        })
4378//
4379func (c *Lambda) ListProvisionedConcurrencyConfigsPages(input *ListProvisionedConcurrencyConfigsInput, fn func(*ListProvisionedConcurrencyConfigsOutput, bool) bool) error {
4380	return c.ListProvisionedConcurrencyConfigsPagesWithContext(aws.BackgroundContext(), input, fn)
4381}
4382
4383// ListProvisionedConcurrencyConfigsPagesWithContext same as ListProvisionedConcurrencyConfigsPages except
4384// it takes a Context and allows setting request options on the pages.
4385//
4386// The context must be non-nil and will be used for request cancellation. If
4387// the context is nil a panic will occur. In the future the SDK may create
4388// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4389// for more information on using Contexts.
4390func (c *Lambda) ListProvisionedConcurrencyConfigsPagesWithContext(ctx aws.Context, input *ListProvisionedConcurrencyConfigsInput, fn func(*ListProvisionedConcurrencyConfigsOutput, bool) bool, opts ...request.Option) error {
4391	p := request.Pagination{
4392		NewRequest: func() (*request.Request, error) {
4393			var inCpy *ListProvisionedConcurrencyConfigsInput
4394			if input != nil {
4395				tmp := *input
4396				inCpy = &tmp
4397			}
4398			req, _ := c.ListProvisionedConcurrencyConfigsRequest(inCpy)
4399			req.SetContext(ctx)
4400			req.ApplyOptions(opts...)
4401			return req, nil
4402		},
4403	}
4404
4405	for p.Next() {
4406		if !fn(p.Page().(*ListProvisionedConcurrencyConfigsOutput), !p.HasNextPage()) {
4407			break
4408		}
4409	}
4410
4411	return p.Err()
4412}
4413
4414const opListTags = "ListTags"
4415
4416// ListTagsRequest generates a "aws/request.Request" representing the
4417// client's request for the ListTags operation. The "output" return
4418// value will be populated with the request's response once the request completes
4419// successfully.
4420//
4421// Use "Send" method on the returned Request to send the API call to the service.
4422// the "output" return value is not valid until after Send returns without error.
4423//
4424// See ListTags for more information on using the ListTags
4425// API call, and error handling.
4426//
4427// This method is useful when you want to inject custom logic or configuration
4428// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4429//
4430//
4431//    // Example sending a request using the ListTagsRequest method.
4432//    req, resp := client.ListTagsRequest(params)
4433//
4434//    err := req.Send()
4435//    if err == nil { // resp is now filled
4436//        fmt.Println(resp)
4437//    }
4438//
4439// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListTags
4440func (c *Lambda) ListTagsRequest(input *ListTagsInput) (req *request.Request, output *ListTagsOutput) {
4441	op := &request.Operation{
4442		Name:       opListTags,
4443		HTTPMethod: "GET",
4444		HTTPPath:   "/2017-03-31/tags/{ARN}",
4445	}
4446
4447	if input == nil {
4448		input = &ListTagsInput{}
4449	}
4450
4451	output = &ListTagsOutput{}
4452	req = c.newRequest(op, input, output)
4453	return
4454}
4455
4456// ListTags API operation for AWS Lambda.
4457//
4458// Returns a function's tags (https://docs.aws.amazon.com/lambda/latest/dg/tagging.html).
4459// You can also view tags with GetFunction.
4460//
4461// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4462// with awserr.Error's Code and Message methods to get detailed information about
4463// the error.
4464//
4465// See the AWS API reference guide for AWS Lambda's
4466// API operation ListTags for usage and error information.
4467//
4468// Returned Error Types:
4469//   * ServiceException
4470//   The Lambda service encountered an internal error.
4471//
4472//   * ResourceNotFoundException
4473//   The resource specified in the request does not exist.
4474//
4475//   * InvalidParameterValueException
4476//   One of the parameters in the request is invalid.
4477//
4478//   * TooManyRequestsException
4479//   The request throughput limit was exceeded.
4480//
4481// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListTags
4482func (c *Lambda) ListTags(input *ListTagsInput) (*ListTagsOutput, error) {
4483	req, out := c.ListTagsRequest(input)
4484	return out, req.Send()
4485}
4486
4487// ListTagsWithContext is the same as ListTags with the addition of
4488// the ability to pass a context and additional request options.
4489//
4490// See ListTags for details on how to use this API operation.
4491//
4492// The context must be non-nil and will be used for request cancellation. If
4493// the context is nil a panic will occur. In the future the SDK may create
4494// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4495// for more information on using Contexts.
4496func (c *Lambda) ListTagsWithContext(ctx aws.Context, input *ListTagsInput, opts ...request.Option) (*ListTagsOutput, error) {
4497	req, out := c.ListTagsRequest(input)
4498	req.SetContext(ctx)
4499	req.ApplyOptions(opts...)
4500	return out, req.Send()
4501}
4502
4503const opListVersionsByFunction = "ListVersionsByFunction"
4504
4505// ListVersionsByFunctionRequest generates a "aws/request.Request" representing the
4506// client's request for the ListVersionsByFunction operation. The "output" return
4507// value will be populated with the request's response once the request completes
4508// successfully.
4509//
4510// Use "Send" method on the returned Request to send the API call to the service.
4511// the "output" return value is not valid until after Send returns without error.
4512//
4513// See ListVersionsByFunction for more information on using the ListVersionsByFunction
4514// API call, and error handling.
4515//
4516// This method is useful when you want to inject custom logic or configuration
4517// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4518//
4519//
4520//    // Example sending a request using the ListVersionsByFunctionRequest method.
4521//    req, resp := client.ListVersionsByFunctionRequest(params)
4522//
4523//    err := req.Send()
4524//    if err == nil { // resp is now filled
4525//        fmt.Println(resp)
4526//    }
4527//
4528// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListVersionsByFunction
4529func (c *Lambda) ListVersionsByFunctionRequest(input *ListVersionsByFunctionInput) (req *request.Request, output *ListVersionsByFunctionOutput) {
4530	op := &request.Operation{
4531		Name:       opListVersionsByFunction,
4532		HTTPMethod: "GET",
4533		HTTPPath:   "/2015-03-31/functions/{FunctionName}/versions",
4534		Paginator: &request.Paginator{
4535			InputTokens:     []string{"Marker"},
4536			OutputTokens:    []string{"NextMarker"},
4537			LimitToken:      "MaxItems",
4538			TruncationToken: "",
4539		},
4540	}
4541
4542	if input == nil {
4543		input = &ListVersionsByFunctionInput{}
4544	}
4545
4546	output = &ListVersionsByFunctionOutput{}
4547	req = c.newRequest(op, input, output)
4548	return
4549}
4550
4551// ListVersionsByFunction API operation for AWS Lambda.
4552//
4553// Returns a list of versions (https://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html),
4554// with the version-specific configuration of each. Lambda returns up to 50
4555// versions per call.
4556//
4557// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4558// with awserr.Error's Code and Message methods to get detailed information about
4559// the error.
4560//
4561// See the AWS API reference guide for AWS Lambda's
4562// API operation ListVersionsByFunction for usage and error information.
4563//
4564// Returned Error Types:
4565//   * ServiceException
4566//   The Lambda service encountered an internal error.
4567//
4568//   * ResourceNotFoundException
4569//   The resource specified in the request does not exist.
4570//
4571//   * InvalidParameterValueException
4572//   One of the parameters in the request is invalid.
4573//
4574//   * TooManyRequestsException
4575//   The request throughput limit was exceeded.
4576//
4577// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ListVersionsByFunction
4578func (c *Lambda) ListVersionsByFunction(input *ListVersionsByFunctionInput) (*ListVersionsByFunctionOutput, error) {
4579	req, out := c.ListVersionsByFunctionRequest(input)
4580	return out, req.Send()
4581}
4582
4583// ListVersionsByFunctionWithContext is the same as ListVersionsByFunction with the addition of
4584// the ability to pass a context and additional request options.
4585//
4586// See ListVersionsByFunction for details on how to use this API operation.
4587//
4588// The context must be non-nil and will be used for request cancellation. If
4589// the context is nil a panic will occur. In the future the SDK may create
4590// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4591// for more information on using Contexts.
4592func (c *Lambda) ListVersionsByFunctionWithContext(ctx aws.Context, input *ListVersionsByFunctionInput, opts ...request.Option) (*ListVersionsByFunctionOutput, error) {
4593	req, out := c.ListVersionsByFunctionRequest(input)
4594	req.SetContext(ctx)
4595	req.ApplyOptions(opts...)
4596	return out, req.Send()
4597}
4598
4599// ListVersionsByFunctionPages iterates over the pages of a ListVersionsByFunction operation,
4600// calling the "fn" function with the response data for each page. To stop
4601// iterating, return false from the fn function.
4602//
4603// See ListVersionsByFunction method for more information on how to use this operation.
4604//
4605// Note: This operation can generate multiple requests to a service.
4606//
4607//    // Example iterating over at most 3 pages of a ListVersionsByFunction operation.
4608//    pageNum := 0
4609//    err := client.ListVersionsByFunctionPages(params,
4610//        func(page *lambda.ListVersionsByFunctionOutput, lastPage bool) bool {
4611//            pageNum++
4612//            fmt.Println(page)
4613//            return pageNum <= 3
4614//        })
4615//
4616func (c *Lambda) ListVersionsByFunctionPages(input *ListVersionsByFunctionInput, fn func(*ListVersionsByFunctionOutput, bool) bool) error {
4617	return c.ListVersionsByFunctionPagesWithContext(aws.BackgroundContext(), input, fn)
4618}
4619
4620// ListVersionsByFunctionPagesWithContext same as ListVersionsByFunctionPages except
4621// it takes a Context and allows setting request options on the pages.
4622//
4623// The context must be non-nil and will be used for request cancellation. If
4624// the context is nil a panic will occur. In the future the SDK may create
4625// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4626// for more information on using Contexts.
4627func (c *Lambda) ListVersionsByFunctionPagesWithContext(ctx aws.Context, input *ListVersionsByFunctionInput, fn func(*ListVersionsByFunctionOutput, bool) bool, opts ...request.Option) error {
4628	p := request.Pagination{
4629		NewRequest: func() (*request.Request, error) {
4630			var inCpy *ListVersionsByFunctionInput
4631			if input != nil {
4632				tmp := *input
4633				inCpy = &tmp
4634			}
4635			req, _ := c.ListVersionsByFunctionRequest(inCpy)
4636			req.SetContext(ctx)
4637			req.ApplyOptions(opts...)
4638			return req, nil
4639		},
4640	}
4641
4642	for p.Next() {
4643		if !fn(p.Page().(*ListVersionsByFunctionOutput), !p.HasNextPage()) {
4644			break
4645		}
4646	}
4647
4648	return p.Err()
4649}
4650
4651const opPublishLayerVersion = "PublishLayerVersion"
4652
4653// PublishLayerVersionRequest generates a "aws/request.Request" representing the
4654// client's request for the PublishLayerVersion operation. The "output" return
4655// value will be populated with the request's response once the request completes
4656// successfully.
4657//
4658// Use "Send" method on the returned Request to send the API call to the service.
4659// the "output" return value is not valid until after Send returns without error.
4660//
4661// See PublishLayerVersion for more information on using the PublishLayerVersion
4662// API call, and error handling.
4663//
4664// This method is useful when you want to inject custom logic or configuration
4665// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4666//
4667//
4668//    // Example sending a request using the PublishLayerVersionRequest method.
4669//    req, resp := client.PublishLayerVersionRequest(params)
4670//
4671//    err := req.Send()
4672//    if err == nil { // resp is now filled
4673//        fmt.Println(resp)
4674//    }
4675//
4676// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/PublishLayerVersion
4677func (c *Lambda) PublishLayerVersionRequest(input *PublishLayerVersionInput) (req *request.Request, output *PublishLayerVersionOutput) {
4678	op := &request.Operation{
4679		Name:       opPublishLayerVersion,
4680		HTTPMethod: "POST",
4681		HTTPPath:   "/2018-10-31/layers/{LayerName}/versions",
4682	}
4683
4684	if input == nil {
4685		input = &PublishLayerVersionInput{}
4686	}
4687
4688	output = &PublishLayerVersionOutput{}
4689	req = c.newRequest(op, input, output)
4690	return
4691}
4692
4693// PublishLayerVersion API operation for AWS Lambda.
4694//
4695// Creates an Lambda layer (https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html)
4696// from a ZIP archive. Each time you call PublishLayerVersion with the same
4697// layer name, a new version is created.
4698//
4699// Add layers to your function with CreateFunction or UpdateFunctionConfiguration.
4700//
4701// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4702// with awserr.Error's Code and Message methods to get detailed information about
4703// the error.
4704//
4705// See the AWS API reference guide for AWS Lambda's
4706// API operation PublishLayerVersion for usage and error information.
4707//
4708// Returned Error Types:
4709//   * ServiceException
4710//   The Lambda service encountered an internal error.
4711//
4712//   * ResourceNotFoundException
4713//   The resource specified in the request does not exist.
4714//
4715//   * TooManyRequestsException
4716//   The request throughput limit was exceeded.
4717//
4718//   * InvalidParameterValueException
4719//   One of the parameters in the request is invalid.
4720//
4721//   * CodeStorageExceededException
4722//   You have exceeded your maximum total code size per account. Learn more (https://docs.aws.amazon.com/lambda/latest/dg/limits.html)
4723//
4724// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/PublishLayerVersion
4725func (c *Lambda) PublishLayerVersion(input *PublishLayerVersionInput) (*PublishLayerVersionOutput, error) {
4726	req, out := c.PublishLayerVersionRequest(input)
4727	return out, req.Send()
4728}
4729
4730// PublishLayerVersionWithContext is the same as PublishLayerVersion with the addition of
4731// the ability to pass a context and additional request options.
4732//
4733// See PublishLayerVersion for details on how to use this API operation.
4734//
4735// The context must be non-nil and will be used for request cancellation. If
4736// the context is nil a panic will occur. In the future the SDK may create
4737// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4738// for more information on using Contexts.
4739func (c *Lambda) PublishLayerVersionWithContext(ctx aws.Context, input *PublishLayerVersionInput, opts ...request.Option) (*PublishLayerVersionOutput, error) {
4740	req, out := c.PublishLayerVersionRequest(input)
4741	req.SetContext(ctx)
4742	req.ApplyOptions(opts...)
4743	return out, req.Send()
4744}
4745
4746const opPublishVersion = "PublishVersion"
4747
4748// PublishVersionRequest generates a "aws/request.Request" representing the
4749// client's request for the PublishVersion operation. The "output" return
4750// value will be populated with the request's response once the request completes
4751// successfully.
4752//
4753// Use "Send" method on the returned Request to send the API call to the service.
4754// the "output" return value is not valid until after Send returns without error.
4755//
4756// See PublishVersion for more information on using the PublishVersion
4757// API call, and error handling.
4758//
4759// This method is useful when you want to inject custom logic or configuration
4760// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4761//
4762//
4763//    // Example sending a request using the PublishVersionRequest method.
4764//    req, resp := client.PublishVersionRequest(params)
4765//
4766//    err := req.Send()
4767//    if err == nil { // resp is now filled
4768//        fmt.Println(resp)
4769//    }
4770//
4771// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/PublishVersion
4772func (c *Lambda) PublishVersionRequest(input *PublishVersionInput) (req *request.Request, output *FunctionConfiguration) {
4773	op := &request.Operation{
4774		Name:       opPublishVersion,
4775		HTTPMethod: "POST",
4776		HTTPPath:   "/2015-03-31/functions/{FunctionName}/versions",
4777	}
4778
4779	if input == nil {
4780		input = &PublishVersionInput{}
4781	}
4782
4783	output = &FunctionConfiguration{}
4784	req = c.newRequest(op, input, output)
4785	return
4786}
4787
4788// PublishVersion API operation for AWS Lambda.
4789//
4790// Creates a version (https://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html)
4791// from the current code and configuration of a function. Use versions to create
4792// a snapshot of your function code and configuration that doesn't change.
4793//
4794// Lambda doesn't publish a version if the function's configuration and code
4795// haven't changed since the last version. Use UpdateFunctionCode or UpdateFunctionConfiguration
4796// to update the function before publishing a version.
4797//
4798// Clients can invoke versions directly or with an alias. To create an alias,
4799// use CreateAlias.
4800//
4801// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4802// with awserr.Error's Code and Message methods to get detailed information about
4803// the error.
4804//
4805// See the AWS API reference guide for AWS Lambda's
4806// API operation PublishVersion for usage and error information.
4807//
4808// Returned Error Types:
4809//   * ServiceException
4810//   The Lambda service encountered an internal error.
4811//
4812//   * ResourceNotFoundException
4813//   The resource specified in the request does not exist.
4814//
4815//   * InvalidParameterValueException
4816//   One of the parameters in the request is invalid.
4817//
4818//   * TooManyRequestsException
4819//   The request throughput limit was exceeded.
4820//
4821//   * CodeStorageExceededException
4822//   You have exceeded your maximum total code size per account. Learn more (https://docs.aws.amazon.com/lambda/latest/dg/limits.html)
4823//
4824//   * PreconditionFailedException
4825//   The RevisionId provided does not match the latest RevisionId for the Lambda
4826//   function or alias. Call the GetFunction or the GetAlias API to retrieve the
4827//   latest RevisionId for your resource.
4828//
4829//   * ResourceConflictException
4830//   The resource already exists, or another operation is in progress.
4831//
4832// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/PublishVersion
4833func (c *Lambda) PublishVersion(input *PublishVersionInput) (*FunctionConfiguration, error) {
4834	req, out := c.PublishVersionRequest(input)
4835	return out, req.Send()
4836}
4837
4838// PublishVersionWithContext is the same as PublishVersion with the addition of
4839// the ability to pass a context and additional request options.
4840//
4841// See PublishVersion for details on how to use this API operation.
4842//
4843// The context must be non-nil and will be used for request cancellation. If
4844// the context is nil a panic will occur. In the future the SDK may create
4845// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4846// for more information on using Contexts.
4847func (c *Lambda) PublishVersionWithContext(ctx aws.Context, input *PublishVersionInput, opts ...request.Option) (*FunctionConfiguration, error) {
4848	req, out := c.PublishVersionRequest(input)
4849	req.SetContext(ctx)
4850	req.ApplyOptions(opts...)
4851	return out, req.Send()
4852}
4853
4854const opPutFunctionCodeSigningConfig = "PutFunctionCodeSigningConfig"
4855
4856// PutFunctionCodeSigningConfigRequest generates a "aws/request.Request" representing the
4857// client's request for the PutFunctionCodeSigningConfig operation. The "output" return
4858// value will be populated with the request's response once the request completes
4859// successfully.
4860//
4861// Use "Send" method on the returned Request to send the API call to the service.
4862// the "output" return value is not valid until after Send returns without error.
4863//
4864// See PutFunctionCodeSigningConfig for more information on using the PutFunctionCodeSigningConfig
4865// API call, and error handling.
4866//
4867// This method is useful when you want to inject custom logic or configuration
4868// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4869//
4870//
4871//    // Example sending a request using the PutFunctionCodeSigningConfigRequest method.
4872//    req, resp := client.PutFunctionCodeSigningConfigRequest(params)
4873//
4874//    err := req.Send()
4875//    if err == nil { // resp is now filled
4876//        fmt.Println(resp)
4877//    }
4878//
4879// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/PutFunctionCodeSigningConfig
4880func (c *Lambda) PutFunctionCodeSigningConfigRequest(input *PutFunctionCodeSigningConfigInput) (req *request.Request, output *PutFunctionCodeSigningConfigOutput) {
4881	op := &request.Operation{
4882		Name:       opPutFunctionCodeSigningConfig,
4883		HTTPMethod: "PUT",
4884		HTTPPath:   "/2020-06-30/functions/{FunctionName}/code-signing-config",
4885	}
4886
4887	if input == nil {
4888		input = &PutFunctionCodeSigningConfigInput{}
4889	}
4890
4891	output = &PutFunctionCodeSigningConfigOutput{}
4892	req = c.newRequest(op, input, output)
4893	return
4894}
4895
4896// PutFunctionCodeSigningConfig API operation for AWS Lambda.
4897//
4898// Update the code signing configuration for the function. Changes to the code
4899// signing configuration take effect the next time a user tries to deploy a
4900// code package to the function.
4901//
4902// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4903// with awserr.Error's Code and Message methods to get detailed information about
4904// the error.
4905//
4906// See the AWS API reference guide for AWS Lambda's
4907// API operation PutFunctionCodeSigningConfig for usage and error information.
4908//
4909// Returned Error Types:
4910//   * ServiceException
4911//   The Lambda service encountered an internal error.
4912//
4913//   * InvalidParameterValueException
4914//   One of the parameters in the request is invalid.
4915//
4916//   * ResourceNotFoundException
4917//   The resource specified in the request does not exist.
4918//
4919//   * TooManyRequestsException
4920//   The request throughput limit was exceeded.
4921//
4922//   * ResourceConflictException
4923//   The resource already exists, or another operation is in progress.
4924//
4925//   * CodeSigningConfigNotFoundException
4926//   The specified code signing configuration does not exist.
4927//
4928// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/PutFunctionCodeSigningConfig
4929func (c *Lambda) PutFunctionCodeSigningConfig(input *PutFunctionCodeSigningConfigInput) (*PutFunctionCodeSigningConfigOutput, error) {
4930	req, out := c.PutFunctionCodeSigningConfigRequest(input)
4931	return out, req.Send()
4932}
4933
4934// PutFunctionCodeSigningConfigWithContext is the same as PutFunctionCodeSigningConfig with the addition of
4935// the ability to pass a context and additional request options.
4936//
4937// See PutFunctionCodeSigningConfig for details on how to use this API operation.
4938//
4939// The context must be non-nil and will be used for request cancellation. If
4940// the context is nil a panic will occur. In the future the SDK may create
4941// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4942// for more information on using Contexts.
4943func (c *Lambda) PutFunctionCodeSigningConfigWithContext(ctx aws.Context, input *PutFunctionCodeSigningConfigInput, opts ...request.Option) (*PutFunctionCodeSigningConfigOutput, error) {
4944	req, out := c.PutFunctionCodeSigningConfigRequest(input)
4945	req.SetContext(ctx)
4946	req.ApplyOptions(opts...)
4947	return out, req.Send()
4948}
4949
4950const opPutFunctionConcurrency = "PutFunctionConcurrency"
4951
4952// PutFunctionConcurrencyRequest generates a "aws/request.Request" representing the
4953// client's request for the PutFunctionConcurrency operation. The "output" return
4954// value will be populated with the request's response once the request completes
4955// successfully.
4956//
4957// Use "Send" method on the returned Request to send the API call to the service.
4958// the "output" return value is not valid until after Send returns without error.
4959//
4960// See PutFunctionConcurrency for more information on using the PutFunctionConcurrency
4961// API call, and error handling.
4962//
4963// This method is useful when you want to inject custom logic or configuration
4964// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4965//
4966//
4967//    // Example sending a request using the PutFunctionConcurrencyRequest method.
4968//    req, resp := client.PutFunctionConcurrencyRequest(params)
4969//
4970//    err := req.Send()
4971//    if err == nil { // resp is now filled
4972//        fmt.Println(resp)
4973//    }
4974//
4975// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/PutFunctionConcurrency
4976func (c *Lambda) PutFunctionConcurrencyRequest(input *PutFunctionConcurrencyInput) (req *request.Request, output *PutFunctionConcurrencyOutput) {
4977	op := &request.Operation{
4978		Name:       opPutFunctionConcurrency,
4979		HTTPMethod: "PUT",
4980		HTTPPath:   "/2017-10-31/functions/{FunctionName}/concurrency",
4981	}
4982
4983	if input == nil {
4984		input = &PutFunctionConcurrencyInput{}
4985	}
4986
4987	output = &PutFunctionConcurrencyOutput{}
4988	req = c.newRequest(op, input, output)
4989	return
4990}
4991
4992// PutFunctionConcurrency API operation for AWS Lambda.
4993//
4994// Sets the maximum number of simultaneous executions for a function, and reserves
4995// capacity for that concurrency level.
4996//
4997// Concurrency settings apply to the function as a whole, including all published
4998// versions and the unpublished version. Reserving concurrency both ensures
4999// that your function has capacity to process the specified number of events
5000// simultaneously, and prevents it from scaling beyond that level. Use GetFunction
5001// to see the current setting for a function.
5002//
5003// Use GetAccountSettings to see your Regional concurrency limit. You can reserve
5004// concurrency for as many functions as you like, as long as you leave at least
5005// 100 simultaneous executions unreserved for functions that aren't configured
5006// with a per-function limit. For more information, see Managing Concurrency
5007// (https://docs.aws.amazon.com/lambda/latest/dg/concurrent-executions.html).
5008//
5009// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5010// with awserr.Error's Code and Message methods to get detailed information about
5011// the error.
5012//
5013// See the AWS API reference guide for AWS Lambda's
5014// API operation PutFunctionConcurrency for usage and error information.
5015//
5016// Returned Error Types:
5017//   * ServiceException
5018//   The Lambda service encountered an internal error.
5019//
5020//   * InvalidParameterValueException
5021//   One of the parameters in the request is invalid.
5022//
5023//   * ResourceNotFoundException
5024//   The resource specified in the request does not exist.
5025//
5026//   * TooManyRequestsException
5027//   The request throughput limit was exceeded.
5028//
5029//   * ResourceConflictException
5030//   The resource already exists, or another operation is in progress.
5031//
5032// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/PutFunctionConcurrency
5033func (c *Lambda) PutFunctionConcurrency(input *PutFunctionConcurrencyInput) (*PutFunctionConcurrencyOutput, error) {
5034	req, out := c.PutFunctionConcurrencyRequest(input)
5035	return out, req.Send()
5036}
5037
5038// PutFunctionConcurrencyWithContext is the same as PutFunctionConcurrency with the addition of
5039// the ability to pass a context and additional request options.
5040//
5041// See PutFunctionConcurrency for details on how to use this API operation.
5042//
5043// The context must be non-nil and will be used for request cancellation. If
5044// the context is nil a panic will occur. In the future the SDK may create
5045// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5046// for more information on using Contexts.
5047func (c *Lambda) PutFunctionConcurrencyWithContext(ctx aws.Context, input *PutFunctionConcurrencyInput, opts ...request.Option) (*PutFunctionConcurrencyOutput, error) {
5048	req, out := c.PutFunctionConcurrencyRequest(input)
5049	req.SetContext(ctx)
5050	req.ApplyOptions(opts...)
5051	return out, req.Send()
5052}
5053
5054const opPutFunctionEventInvokeConfig = "PutFunctionEventInvokeConfig"
5055
5056// PutFunctionEventInvokeConfigRequest generates a "aws/request.Request" representing the
5057// client's request for the PutFunctionEventInvokeConfig operation. The "output" return
5058// value will be populated with the request's response once the request completes
5059// successfully.
5060//
5061// Use "Send" method on the returned Request to send the API call to the service.
5062// the "output" return value is not valid until after Send returns without error.
5063//
5064// See PutFunctionEventInvokeConfig for more information on using the PutFunctionEventInvokeConfig
5065// API call, and error handling.
5066//
5067// This method is useful when you want to inject custom logic or configuration
5068// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5069//
5070//
5071//    // Example sending a request using the PutFunctionEventInvokeConfigRequest method.
5072//    req, resp := client.PutFunctionEventInvokeConfigRequest(params)
5073//
5074//    err := req.Send()
5075//    if err == nil { // resp is now filled
5076//        fmt.Println(resp)
5077//    }
5078//
5079// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/PutFunctionEventInvokeConfig
5080func (c *Lambda) PutFunctionEventInvokeConfigRequest(input *PutFunctionEventInvokeConfigInput) (req *request.Request, output *PutFunctionEventInvokeConfigOutput) {
5081	op := &request.Operation{
5082		Name:       opPutFunctionEventInvokeConfig,
5083		HTTPMethod: "PUT",
5084		HTTPPath:   "/2019-09-25/functions/{FunctionName}/event-invoke-config",
5085	}
5086
5087	if input == nil {
5088		input = &PutFunctionEventInvokeConfigInput{}
5089	}
5090
5091	output = &PutFunctionEventInvokeConfigOutput{}
5092	req = c.newRequest(op, input, output)
5093	return
5094}
5095
5096// PutFunctionEventInvokeConfig API operation for AWS Lambda.
5097//
5098// Configures options for asynchronous invocation (https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html)
5099// on a function, version, or alias. If a configuration already exists for a
5100// function, version, or alias, this operation overwrites it. If you exclude
5101// any settings, they are removed. To set one option without affecting existing
5102// settings for other options, use UpdateFunctionEventInvokeConfig.
5103//
5104// By default, Lambda retries an asynchronous invocation twice if the function
5105// returns an error. It retains events in a queue for up to six hours. When
5106// an event fails all processing attempts or stays in the asynchronous invocation
5107// queue for too long, Lambda discards it. To retain discarded events, configure
5108// a dead-letter queue with UpdateFunctionConfiguration.
5109//
5110// To send an invocation record to a queue, topic, function, or event bus, specify
5111// a destination (https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html#invocation-async-destinations).
5112// You can configure separate destinations for successful invocations (on-success)
5113// and events that fail all processing attempts (on-failure). You can configure
5114// destinations in addition to or instead of a dead-letter queue.
5115//
5116// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5117// with awserr.Error's Code and Message methods to get detailed information about
5118// the error.
5119//
5120// See the AWS API reference guide for AWS Lambda's
5121// API operation PutFunctionEventInvokeConfig for usage and error information.
5122//
5123// Returned Error Types:
5124//   * ServiceException
5125//   The Lambda service encountered an internal error.
5126//
5127//   * ResourceNotFoundException
5128//   The resource specified in the request does not exist.
5129//
5130//   * InvalidParameterValueException
5131//   One of the parameters in the request is invalid.
5132//
5133//   * TooManyRequestsException
5134//   The request throughput limit was exceeded.
5135//
5136//   * ResourceConflictException
5137//   The resource already exists, or another operation is in progress.
5138//
5139// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/PutFunctionEventInvokeConfig
5140func (c *Lambda) PutFunctionEventInvokeConfig(input *PutFunctionEventInvokeConfigInput) (*PutFunctionEventInvokeConfigOutput, error) {
5141	req, out := c.PutFunctionEventInvokeConfigRequest(input)
5142	return out, req.Send()
5143}
5144
5145// PutFunctionEventInvokeConfigWithContext is the same as PutFunctionEventInvokeConfig with the addition of
5146// the ability to pass a context and additional request options.
5147//
5148// See PutFunctionEventInvokeConfig for details on how to use this API operation.
5149//
5150// The context must be non-nil and will be used for request cancellation. If
5151// the context is nil a panic will occur. In the future the SDK may create
5152// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5153// for more information on using Contexts.
5154func (c *Lambda) PutFunctionEventInvokeConfigWithContext(ctx aws.Context, input *PutFunctionEventInvokeConfigInput, opts ...request.Option) (*PutFunctionEventInvokeConfigOutput, error) {
5155	req, out := c.PutFunctionEventInvokeConfigRequest(input)
5156	req.SetContext(ctx)
5157	req.ApplyOptions(opts...)
5158	return out, req.Send()
5159}
5160
5161const opPutProvisionedConcurrencyConfig = "PutProvisionedConcurrencyConfig"
5162
5163// PutProvisionedConcurrencyConfigRequest generates a "aws/request.Request" representing the
5164// client's request for the PutProvisionedConcurrencyConfig operation. The "output" return
5165// value will be populated with the request's response once the request completes
5166// successfully.
5167//
5168// Use "Send" method on the returned Request to send the API call to the service.
5169// the "output" return value is not valid until after Send returns without error.
5170//
5171// See PutProvisionedConcurrencyConfig for more information on using the PutProvisionedConcurrencyConfig
5172// API call, and error handling.
5173//
5174// This method is useful when you want to inject custom logic or configuration
5175// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5176//
5177//
5178//    // Example sending a request using the PutProvisionedConcurrencyConfigRequest method.
5179//    req, resp := client.PutProvisionedConcurrencyConfigRequest(params)
5180//
5181//    err := req.Send()
5182//    if err == nil { // resp is now filled
5183//        fmt.Println(resp)
5184//    }
5185//
5186// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/PutProvisionedConcurrencyConfig
5187func (c *Lambda) PutProvisionedConcurrencyConfigRequest(input *PutProvisionedConcurrencyConfigInput) (req *request.Request, output *PutProvisionedConcurrencyConfigOutput) {
5188	op := &request.Operation{
5189		Name:       opPutProvisionedConcurrencyConfig,
5190		HTTPMethod: "PUT",
5191		HTTPPath:   "/2019-09-30/functions/{FunctionName}/provisioned-concurrency",
5192	}
5193
5194	if input == nil {
5195		input = &PutProvisionedConcurrencyConfigInput{}
5196	}
5197
5198	output = &PutProvisionedConcurrencyConfigOutput{}
5199	req = c.newRequest(op, input, output)
5200	return
5201}
5202
5203// PutProvisionedConcurrencyConfig API operation for AWS Lambda.
5204//
5205// Adds a provisioned concurrency configuration to a function's alias or version.
5206//
5207// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5208// with awserr.Error's Code and Message methods to get detailed information about
5209// the error.
5210//
5211// See the AWS API reference guide for AWS Lambda's
5212// API operation PutProvisionedConcurrencyConfig for usage and error information.
5213//
5214// Returned Error Types:
5215//   * InvalidParameterValueException
5216//   One of the parameters in the request is invalid.
5217//
5218//   * ResourceNotFoundException
5219//   The resource specified in the request does not exist.
5220//
5221//   * ResourceConflictException
5222//   The resource already exists, or another operation is in progress.
5223//
5224//   * TooManyRequestsException
5225//   The request throughput limit was exceeded.
5226//
5227//   * ServiceException
5228//   The Lambda service encountered an internal error.
5229//
5230// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/PutProvisionedConcurrencyConfig
5231func (c *Lambda) PutProvisionedConcurrencyConfig(input *PutProvisionedConcurrencyConfigInput) (*PutProvisionedConcurrencyConfigOutput, error) {
5232	req, out := c.PutProvisionedConcurrencyConfigRequest(input)
5233	return out, req.Send()
5234}
5235
5236// PutProvisionedConcurrencyConfigWithContext is the same as PutProvisionedConcurrencyConfig with the addition of
5237// the ability to pass a context and additional request options.
5238//
5239// See PutProvisionedConcurrencyConfig for details on how to use this API operation.
5240//
5241// The context must be non-nil and will be used for request cancellation. If
5242// the context is nil a panic will occur. In the future the SDK may create
5243// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5244// for more information on using Contexts.
5245func (c *Lambda) PutProvisionedConcurrencyConfigWithContext(ctx aws.Context, input *PutProvisionedConcurrencyConfigInput, opts ...request.Option) (*PutProvisionedConcurrencyConfigOutput, error) {
5246	req, out := c.PutProvisionedConcurrencyConfigRequest(input)
5247	req.SetContext(ctx)
5248	req.ApplyOptions(opts...)
5249	return out, req.Send()
5250}
5251
5252const opRemoveLayerVersionPermission = "RemoveLayerVersionPermission"
5253
5254// RemoveLayerVersionPermissionRequest generates a "aws/request.Request" representing the
5255// client's request for the RemoveLayerVersionPermission operation. The "output" return
5256// value will be populated with the request's response once the request completes
5257// successfully.
5258//
5259// Use "Send" method on the returned Request to send the API call to the service.
5260// the "output" return value is not valid until after Send returns without error.
5261//
5262// See RemoveLayerVersionPermission for more information on using the RemoveLayerVersionPermission
5263// API call, and error handling.
5264//
5265// This method is useful when you want to inject custom logic or configuration
5266// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5267//
5268//
5269//    // Example sending a request using the RemoveLayerVersionPermissionRequest method.
5270//    req, resp := client.RemoveLayerVersionPermissionRequest(params)
5271//
5272//    err := req.Send()
5273//    if err == nil { // resp is now filled
5274//        fmt.Println(resp)
5275//    }
5276//
5277// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/RemoveLayerVersionPermission
5278func (c *Lambda) RemoveLayerVersionPermissionRequest(input *RemoveLayerVersionPermissionInput) (req *request.Request, output *RemoveLayerVersionPermissionOutput) {
5279	op := &request.Operation{
5280		Name:       opRemoveLayerVersionPermission,
5281		HTTPMethod: "DELETE",
5282		HTTPPath:   "/2018-10-31/layers/{LayerName}/versions/{VersionNumber}/policy/{StatementId}",
5283	}
5284
5285	if input == nil {
5286		input = &RemoveLayerVersionPermissionInput{}
5287	}
5288
5289	output = &RemoveLayerVersionPermissionOutput{}
5290	req = c.newRequest(op, input, output)
5291	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5292	return
5293}
5294
5295// RemoveLayerVersionPermission API operation for AWS Lambda.
5296//
5297// Removes a statement from the permissions policy for a version of an Lambda
5298// layer (https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html).
5299// For more information, see AddLayerVersionPermission.
5300//
5301// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5302// with awserr.Error's Code and Message methods to get detailed information about
5303// the error.
5304//
5305// See the AWS API reference guide for AWS Lambda's
5306// API operation RemoveLayerVersionPermission for usage and error information.
5307//
5308// Returned Error Types:
5309//   * ServiceException
5310//   The Lambda service encountered an internal error.
5311//
5312//   * ResourceNotFoundException
5313//   The resource specified in the request does not exist.
5314//
5315//   * InvalidParameterValueException
5316//   One of the parameters in the request is invalid.
5317//
5318//   * TooManyRequestsException
5319//   The request throughput limit was exceeded.
5320//
5321//   * PreconditionFailedException
5322//   The RevisionId provided does not match the latest RevisionId for the Lambda
5323//   function or alias. Call the GetFunction or the GetAlias API to retrieve the
5324//   latest RevisionId for your resource.
5325//
5326// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/RemoveLayerVersionPermission
5327func (c *Lambda) RemoveLayerVersionPermission(input *RemoveLayerVersionPermissionInput) (*RemoveLayerVersionPermissionOutput, error) {
5328	req, out := c.RemoveLayerVersionPermissionRequest(input)
5329	return out, req.Send()
5330}
5331
5332// RemoveLayerVersionPermissionWithContext is the same as RemoveLayerVersionPermission with the addition of
5333// the ability to pass a context and additional request options.
5334//
5335// See RemoveLayerVersionPermission for details on how to use this API operation.
5336//
5337// The context must be non-nil and will be used for request cancellation. If
5338// the context is nil a panic will occur. In the future the SDK may create
5339// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5340// for more information on using Contexts.
5341func (c *Lambda) RemoveLayerVersionPermissionWithContext(ctx aws.Context, input *RemoveLayerVersionPermissionInput, opts ...request.Option) (*RemoveLayerVersionPermissionOutput, error) {
5342	req, out := c.RemoveLayerVersionPermissionRequest(input)
5343	req.SetContext(ctx)
5344	req.ApplyOptions(opts...)
5345	return out, req.Send()
5346}
5347
5348const opRemovePermission = "RemovePermission"
5349
5350// RemovePermissionRequest generates a "aws/request.Request" representing the
5351// client's request for the RemovePermission operation. The "output" return
5352// value will be populated with the request's response once the request completes
5353// successfully.
5354//
5355// Use "Send" method on the returned Request to send the API call to the service.
5356// the "output" return value is not valid until after Send returns without error.
5357//
5358// See RemovePermission for more information on using the RemovePermission
5359// API call, and error handling.
5360//
5361// This method is useful when you want to inject custom logic or configuration
5362// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5363//
5364//
5365//    // Example sending a request using the RemovePermissionRequest method.
5366//    req, resp := client.RemovePermissionRequest(params)
5367//
5368//    err := req.Send()
5369//    if err == nil { // resp is now filled
5370//        fmt.Println(resp)
5371//    }
5372//
5373// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/RemovePermission
5374func (c *Lambda) RemovePermissionRequest(input *RemovePermissionInput) (req *request.Request, output *RemovePermissionOutput) {
5375	op := &request.Operation{
5376		Name:       opRemovePermission,
5377		HTTPMethod: "DELETE",
5378		HTTPPath:   "/2015-03-31/functions/{FunctionName}/policy/{StatementId}",
5379	}
5380
5381	if input == nil {
5382		input = &RemovePermissionInput{}
5383	}
5384
5385	output = &RemovePermissionOutput{}
5386	req = c.newRequest(op, input, output)
5387	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5388	return
5389}
5390
5391// RemovePermission API operation for AWS Lambda.
5392//
5393// Revokes function-use permission from an Amazon Web Services service or another
5394// account. You can get the ID of the statement from the output of GetPolicy.
5395//
5396// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5397// with awserr.Error's Code and Message methods to get detailed information about
5398// the error.
5399//
5400// See the AWS API reference guide for AWS Lambda's
5401// API operation RemovePermission for usage and error information.
5402//
5403// Returned Error Types:
5404//   * ServiceException
5405//   The Lambda service encountered an internal error.
5406//
5407//   * ResourceNotFoundException
5408//   The resource specified in the request does not exist.
5409//
5410//   * InvalidParameterValueException
5411//   One of the parameters in the request is invalid.
5412//
5413//   * TooManyRequestsException
5414//   The request throughput limit was exceeded.
5415//
5416//   * PreconditionFailedException
5417//   The RevisionId provided does not match the latest RevisionId for the Lambda
5418//   function or alias. Call the GetFunction or the GetAlias API to retrieve the
5419//   latest RevisionId for your resource.
5420//
5421// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/RemovePermission
5422func (c *Lambda) RemovePermission(input *RemovePermissionInput) (*RemovePermissionOutput, error) {
5423	req, out := c.RemovePermissionRequest(input)
5424	return out, req.Send()
5425}
5426
5427// RemovePermissionWithContext is the same as RemovePermission with the addition of
5428// the ability to pass a context and additional request options.
5429//
5430// See RemovePermission for details on how to use this API operation.
5431//
5432// The context must be non-nil and will be used for request cancellation. If
5433// the context is nil a panic will occur. In the future the SDK may create
5434// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5435// for more information on using Contexts.
5436func (c *Lambda) RemovePermissionWithContext(ctx aws.Context, input *RemovePermissionInput, opts ...request.Option) (*RemovePermissionOutput, error) {
5437	req, out := c.RemovePermissionRequest(input)
5438	req.SetContext(ctx)
5439	req.ApplyOptions(opts...)
5440	return out, req.Send()
5441}
5442
5443const opTagResource = "TagResource"
5444
5445// TagResourceRequest generates a "aws/request.Request" representing the
5446// client's request for the TagResource operation. The "output" return
5447// value will be populated with the request's response once the request completes
5448// successfully.
5449//
5450// Use "Send" method on the returned Request to send the API call to the service.
5451// the "output" return value is not valid until after Send returns without error.
5452//
5453// See TagResource for more information on using the TagResource
5454// API call, and error handling.
5455//
5456// This method is useful when you want to inject custom logic or configuration
5457// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5458//
5459//
5460//    // Example sending a request using the TagResourceRequest method.
5461//    req, resp := client.TagResourceRequest(params)
5462//
5463//    err := req.Send()
5464//    if err == nil { // resp is now filled
5465//        fmt.Println(resp)
5466//    }
5467//
5468// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/TagResource
5469func (c *Lambda) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) {
5470	op := &request.Operation{
5471		Name:       opTagResource,
5472		HTTPMethod: "POST",
5473		HTTPPath:   "/2017-03-31/tags/{ARN}",
5474	}
5475
5476	if input == nil {
5477		input = &TagResourceInput{}
5478	}
5479
5480	output = &TagResourceOutput{}
5481	req = c.newRequest(op, input, output)
5482	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5483	return
5484}
5485
5486// TagResource API operation for AWS Lambda.
5487//
5488// Adds tags (https://docs.aws.amazon.com/lambda/latest/dg/tagging.html) to
5489// a function.
5490//
5491// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5492// with awserr.Error's Code and Message methods to get detailed information about
5493// the error.
5494//
5495// See the AWS API reference guide for AWS Lambda's
5496// API operation TagResource for usage and error information.
5497//
5498// Returned Error Types:
5499//   * ServiceException
5500//   The Lambda service encountered an internal error.
5501//
5502//   * ResourceNotFoundException
5503//   The resource specified in the request does not exist.
5504//
5505//   * InvalidParameterValueException
5506//   One of the parameters in the request is invalid.
5507//
5508//   * TooManyRequestsException
5509//   The request throughput limit was exceeded.
5510//
5511//   * ResourceConflictException
5512//   The resource already exists, or another operation is in progress.
5513//
5514// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/TagResource
5515func (c *Lambda) TagResource(input *TagResourceInput) (*TagResourceOutput, error) {
5516	req, out := c.TagResourceRequest(input)
5517	return out, req.Send()
5518}
5519
5520// TagResourceWithContext is the same as TagResource with the addition of
5521// the ability to pass a context and additional request options.
5522//
5523// See TagResource for details on how to use this API operation.
5524//
5525// The context must be non-nil and will be used for request cancellation. If
5526// the context is nil a panic will occur. In the future the SDK may create
5527// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5528// for more information on using Contexts.
5529func (c *Lambda) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) {
5530	req, out := c.TagResourceRequest(input)
5531	req.SetContext(ctx)
5532	req.ApplyOptions(opts...)
5533	return out, req.Send()
5534}
5535
5536const opUntagResource = "UntagResource"
5537
5538// UntagResourceRequest generates a "aws/request.Request" representing the
5539// client's request for the UntagResource operation. The "output" return
5540// value will be populated with the request's response once the request completes
5541// successfully.
5542//
5543// Use "Send" method on the returned Request to send the API call to the service.
5544// the "output" return value is not valid until after Send returns without error.
5545//
5546// See UntagResource for more information on using the UntagResource
5547// API call, and error handling.
5548//
5549// This method is useful when you want to inject custom logic or configuration
5550// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5551//
5552//
5553//    // Example sending a request using the UntagResourceRequest method.
5554//    req, resp := client.UntagResourceRequest(params)
5555//
5556//    err := req.Send()
5557//    if err == nil { // resp is now filled
5558//        fmt.Println(resp)
5559//    }
5560//
5561// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/UntagResource
5562func (c *Lambda) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) {
5563	op := &request.Operation{
5564		Name:       opUntagResource,
5565		HTTPMethod: "DELETE",
5566		HTTPPath:   "/2017-03-31/tags/{ARN}",
5567	}
5568
5569	if input == nil {
5570		input = &UntagResourceInput{}
5571	}
5572
5573	output = &UntagResourceOutput{}
5574	req = c.newRequest(op, input, output)
5575	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5576	return
5577}
5578
5579// UntagResource API operation for AWS Lambda.
5580//
5581// Removes tags (https://docs.aws.amazon.com/lambda/latest/dg/tagging.html)
5582// from a function.
5583//
5584// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5585// with awserr.Error's Code and Message methods to get detailed information about
5586// the error.
5587//
5588// See the AWS API reference guide for AWS Lambda's
5589// API operation UntagResource for usage and error information.
5590//
5591// Returned Error Types:
5592//   * ServiceException
5593//   The Lambda service encountered an internal error.
5594//
5595//   * ResourceNotFoundException
5596//   The resource specified in the request does not exist.
5597//
5598//   * InvalidParameterValueException
5599//   One of the parameters in the request is invalid.
5600//
5601//   * TooManyRequestsException
5602//   The request throughput limit was exceeded.
5603//
5604//   * ResourceConflictException
5605//   The resource already exists, or another operation is in progress.
5606//
5607// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/UntagResource
5608func (c *Lambda) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) {
5609	req, out := c.UntagResourceRequest(input)
5610	return out, req.Send()
5611}
5612
5613// UntagResourceWithContext is the same as UntagResource with the addition of
5614// the ability to pass a context and additional request options.
5615//
5616// See UntagResource for details on how to use this API operation.
5617//
5618// The context must be non-nil and will be used for request cancellation. If
5619// the context is nil a panic will occur. In the future the SDK may create
5620// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5621// for more information on using Contexts.
5622func (c *Lambda) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) {
5623	req, out := c.UntagResourceRequest(input)
5624	req.SetContext(ctx)
5625	req.ApplyOptions(opts...)
5626	return out, req.Send()
5627}
5628
5629const opUpdateAlias = "UpdateAlias"
5630
5631// UpdateAliasRequest generates a "aws/request.Request" representing the
5632// client's request for the UpdateAlias operation. The "output" return
5633// value will be populated with the request's response once the request completes
5634// successfully.
5635//
5636// Use "Send" method on the returned Request to send the API call to the service.
5637// the "output" return value is not valid until after Send returns without error.
5638//
5639// See UpdateAlias for more information on using the UpdateAlias
5640// API call, and error handling.
5641//
5642// This method is useful when you want to inject custom logic or configuration
5643// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5644//
5645//
5646//    // Example sending a request using the UpdateAliasRequest method.
5647//    req, resp := client.UpdateAliasRequest(params)
5648//
5649//    err := req.Send()
5650//    if err == nil { // resp is now filled
5651//        fmt.Println(resp)
5652//    }
5653//
5654// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/UpdateAlias
5655func (c *Lambda) UpdateAliasRequest(input *UpdateAliasInput) (req *request.Request, output *AliasConfiguration) {
5656	op := &request.Operation{
5657		Name:       opUpdateAlias,
5658		HTTPMethod: "PUT",
5659		HTTPPath:   "/2015-03-31/functions/{FunctionName}/aliases/{Name}",
5660	}
5661
5662	if input == nil {
5663		input = &UpdateAliasInput{}
5664	}
5665
5666	output = &AliasConfiguration{}
5667	req = c.newRequest(op, input, output)
5668	return
5669}
5670
5671// UpdateAlias API operation for AWS Lambda.
5672//
5673// Updates the configuration of a Lambda function alias (https://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html).
5674//
5675// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5676// with awserr.Error's Code and Message methods to get detailed information about
5677// the error.
5678//
5679// See the AWS API reference guide for AWS Lambda's
5680// API operation UpdateAlias for usage and error information.
5681//
5682// Returned Error Types:
5683//   * ServiceException
5684//   The Lambda service encountered an internal error.
5685//
5686//   * ResourceNotFoundException
5687//   The resource specified in the request does not exist.
5688//
5689//   * InvalidParameterValueException
5690//   One of the parameters in the request is invalid.
5691//
5692//   * TooManyRequestsException
5693//   The request throughput limit was exceeded.
5694//
5695//   * PreconditionFailedException
5696//   The RevisionId provided does not match the latest RevisionId for the Lambda
5697//   function or alias. Call the GetFunction or the GetAlias API to retrieve the
5698//   latest RevisionId for your resource.
5699//
5700//   * ResourceConflictException
5701//   The resource already exists, or another operation is in progress.
5702//
5703// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/UpdateAlias
5704func (c *Lambda) UpdateAlias(input *UpdateAliasInput) (*AliasConfiguration, error) {
5705	req, out := c.UpdateAliasRequest(input)
5706	return out, req.Send()
5707}
5708
5709// UpdateAliasWithContext is the same as UpdateAlias with the addition of
5710// the ability to pass a context and additional request options.
5711//
5712// See UpdateAlias for details on how to use this API operation.
5713//
5714// The context must be non-nil and will be used for request cancellation. If
5715// the context is nil a panic will occur. In the future the SDK may create
5716// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5717// for more information on using Contexts.
5718func (c *Lambda) UpdateAliasWithContext(ctx aws.Context, input *UpdateAliasInput, opts ...request.Option) (*AliasConfiguration, error) {
5719	req, out := c.UpdateAliasRequest(input)
5720	req.SetContext(ctx)
5721	req.ApplyOptions(opts...)
5722	return out, req.Send()
5723}
5724
5725const opUpdateCodeSigningConfig = "UpdateCodeSigningConfig"
5726
5727// UpdateCodeSigningConfigRequest generates a "aws/request.Request" representing the
5728// client's request for the UpdateCodeSigningConfig operation. The "output" return
5729// value will be populated with the request's response once the request completes
5730// successfully.
5731//
5732// Use "Send" method on the returned Request to send the API call to the service.
5733// the "output" return value is not valid until after Send returns without error.
5734//
5735// See UpdateCodeSigningConfig for more information on using the UpdateCodeSigningConfig
5736// API call, and error handling.
5737//
5738// This method is useful when you want to inject custom logic or configuration
5739// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5740//
5741//
5742//    // Example sending a request using the UpdateCodeSigningConfigRequest method.
5743//    req, resp := client.UpdateCodeSigningConfigRequest(params)
5744//
5745//    err := req.Send()
5746//    if err == nil { // resp is now filled
5747//        fmt.Println(resp)
5748//    }
5749//
5750// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/UpdateCodeSigningConfig
5751func (c *Lambda) UpdateCodeSigningConfigRequest(input *UpdateCodeSigningConfigInput) (req *request.Request, output *UpdateCodeSigningConfigOutput) {
5752	op := &request.Operation{
5753		Name:       opUpdateCodeSigningConfig,
5754		HTTPMethod: "PUT",
5755		HTTPPath:   "/2020-04-22/code-signing-configs/{CodeSigningConfigArn}",
5756	}
5757
5758	if input == nil {
5759		input = &UpdateCodeSigningConfigInput{}
5760	}
5761
5762	output = &UpdateCodeSigningConfigOutput{}
5763	req = c.newRequest(op, input, output)
5764	return
5765}
5766
5767// UpdateCodeSigningConfig API operation for AWS Lambda.
5768//
5769// Update the code signing configuration. Changes to the code signing configuration
5770// take effect the next time a user tries to deploy a code package to the function.
5771//
5772// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5773// with awserr.Error's Code and Message methods to get detailed information about
5774// the error.
5775//
5776// See the AWS API reference guide for AWS Lambda's
5777// API operation UpdateCodeSigningConfig for usage and error information.
5778//
5779// Returned Error Types:
5780//   * ServiceException
5781//   The Lambda service encountered an internal error.
5782//
5783//   * InvalidParameterValueException
5784//   One of the parameters in the request is invalid.
5785//
5786//   * ResourceNotFoundException
5787//   The resource specified in the request does not exist.
5788//
5789// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/UpdateCodeSigningConfig
5790func (c *Lambda) UpdateCodeSigningConfig(input *UpdateCodeSigningConfigInput) (*UpdateCodeSigningConfigOutput, error) {
5791	req, out := c.UpdateCodeSigningConfigRequest(input)
5792	return out, req.Send()
5793}
5794
5795// UpdateCodeSigningConfigWithContext is the same as UpdateCodeSigningConfig with the addition of
5796// the ability to pass a context and additional request options.
5797//
5798// See UpdateCodeSigningConfig for details on how to use this API operation.
5799//
5800// The context must be non-nil and will be used for request cancellation. If
5801// the context is nil a panic will occur. In the future the SDK may create
5802// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5803// for more information on using Contexts.
5804func (c *Lambda) UpdateCodeSigningConfigWithContext(ctx aws.Context, input *UpdateCodeSigningConfigInput, opts ...request.Option) (*UpdateCodeSigningConfigOutput, error) {
5805	req, out := c.UpdateCodeSigningConfigRequest(input)
5806	req.SetContext(ctx)
5807	req.ApplyOptions(opts...)
5808	return out, req.Send()
5809}
5810
5811const opUpdateEventSourceMapping = "UpdateEventSourceMapping"
5812
5813// UpdateEventSourceMappingRequest generates a "aws/request.Request" representing the
5814// client's request for the UpdateEventSourceMapping operation. The "output" return
5815// value will be populated with the request's response once the request completes
5816// successfully.
5817//
5818// Use "Send" method on the returned Request to send the API call to the service.
5819// the "output" return value is not valid until after Send returns without error.
5820//
5821// See UpdateEventSourceMapping for more information on using the UpdateEventSourceMapping
5822// API call, and error handling.
5823//
5824// This method is useful when you want to inject custom logic or configuration
5825// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5826//
5827//
5828//    // Example sending a request using the UpdateEventSourceMappingRequest method.
5829//    req, resp := client.UpdateEventSourceMappingRequest(params)
5830//
5831//    err := req.Send()
5832//    if err == nil { // resp is now filled
5833//        fmt.Println(resp)
5834//    }
5835//
5836// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/UpdateEventSourceMapping
5837func (c *Lambda) UpdateEventSourceMappingRequest(input *UpdateEventSourceMappingInput) (req *request.Request, output *EventSourceMappingConfiguration) {
5838	op := &request.Operation{
5839		Name:       opUpdateEventSourceMapping,
5840		HTTPMethod: "PUT",
5841		HTTPPath:   "/2015-03-31/event-source-mappings/{UUID}",
5842	}
5843
5844	if input == nil {
5845		input = &UpdateEventSourceMappingInput{}
5846	}
5847
5848	output = &EventSourceMappingConfiguration{}
5849	req = c.newRequest(op, input, output)
5850	return
5851}
5852
5853// UpdateEventSourceMapping API operation for AWS Lambda.
5854//
5855// Updates an event source mapping. You can change the function that Lambda
5856// invokes, or pause invocation and resume later from the same location.
5857//
5858// The following error handling options are only available for stream sources
5859// (DynamoDB and Kinesis):
5860//
5861//    * BisectBatchOnFunctionError - If the function returns an error, split
5862//    the batch in two and retry.
5863//
5864//    * DestinationConfig - Send discarded records to an Amazon SQS queue or
5865//    Amazon SNS topic.
5866//
5867//    * MaximumRecordAgeInSeconds - Discard records older than the specified
5868//    age. The default value is infinite (-1). When set to infinite (-1), failed
5869//    records are retried until the record expires
5870//
5871//    * MaximumRetryAttempts - Discard records after the specified number of
5872//    retries. The default value is infinite (-1). When set to infinite (-1),
5873//    failed records are retried until the record expires.
5874//
5875//    * ParallelizationFactor - Process multiple batches from each shard concurrently.
5876//
5877// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5878// with awserr.Error's Code and Message methods to get detailed information about
5879// the error.
5880//
5881// See the AWS API reference guide for AWS Lambda's
5882// API operation UpdateEventSourceMapping for usage and error information.
5883//
5884// Returned Error Types:
5885//   * ServiceException
5886//   The Lambda service encountered an internal error.
5887//
5888//   * ResourceNotFoundException
5889//   The resource specified in the request does not exist.
5890//
5891//   * InvalidParameterValueException
5892//   One of the parameters in the request is invalid.
5893//
5894//   * TooManyRequestsException
5895//   The request throughput limit was exceeded.
5896//
5897//   * ResourceConflictException
5898//   The resource already exists, or another operation is in progress.
5899//
5900//   * ResourceInUseException
5901//   The operation conflicts with the resource's availability. For example, you
5902//   attempted to update an EventSource Mapping in CREATING, or tried to delete
5903//   a EventSource mapping currently in the UPDATING state.
5904//
5905// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/UpdateEventSourceMapping
5906func (c *Lambda) UpdateEventSourceMapping(input *UpdateEventSourceMappingInput) (*EventSourceMappingConfiguration, error) {
5907	req, out := c.UpdateEventSourceMappingRequest(input)
5908	return out, req.Send()
5909}
5910
5911// UpdateEventSourceMappingWithContext is the same as UpdateEventSourceMapping with the addition of
5912// the ability to pass a context and additional request options.
5913//
5914// See UpdateEventSourceMapping for details on how to use this API operation.
5915//
5916// The context must be non-nil and will be used for request cancellation. If
5917// the context is nil a panic will occur. In the future the SDK may create
5918// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5919// for more information on using Contexts.
5920func (c *Lambda) UpdateEventSourceMappingWithContext(ctx aws.Context, input *UpdateEventSourceMappingInput, opts ...request.Option) (*EventSourceMappingConfiguration, error) {
5921	req, out := c.UpdateEventSourceMappingRequest(input)
5922	req.SetContext(ctx)
5923	req.ApplyOptions(opts...)
5924	return out, req.Send()
5925}
5926
5927const opUpdateFunctionCode = "UpdateFunctionCode"
5928
5929// UpdateFunctionCodeRequest generates a "aws/request.Request" representing the
5930// client's request for the UpdateFunctionCode operation. The "output" return
5931// value will be populated with the request's response once the request completes
5932// successfully.
5933//
5934// Use "Send" method on the returned Request to send the API call to the service.
5935// the "output" return value is not valid until after Send returns without error.
5936//
5937// See UpdateFunctionCode for more information on using the UpdateFunctionCode
5938// API call, and error handling.
5939//
5940// This method is useful when you want to inject custom logic or configuration
5941// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5942//
5943//
5944//    // Example sending a request using the UpdateFunctionCodeRequest method.
5945//    req, resp := client.UpdateFunctionCodeRequest(params)
5946//
5947//    err := req.Send()
5948//    if err == nil { // resp is now filled
5949//        fmt.Println(resp)
5950//    }
5951//
5952// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/UpdateFunctionCode
5953func (c *Lambda) UpdateFunctionCodeRequest(input *UpdateFunctionCodeInput) (req *request.Request, output *FunctionConfiguration) {
5954	op := &request.Operation{
5955		Name:       opUpdateFunctionCode,
5956		HTTPMethod: "PUT",
5957		HTTPPath:   "/2015-03-31/functions/{FunctionName}/code",
5958	}
5959
5960	if input == nil {
5961		input = &UpdateFunctionCodeInput{}
5962	}
5963
5964	output = &FunctionConfiguration{}
5965	req = c.newRequest(op, input, output)
5966	return
5967}
5968
5969// UpdateFunctionCode API operation for AWS Lambda.
5970//
5971// Updates a Lambda function's code. If code signing is enabled for the function,
5972// the code package must be signed by a trusted publisher. For more information,
5973// see Configuring code signing (https://docs.aws.amazon.com/lambda/latest/dg/configuration-trustedcode.html).
5974//
5975// The function's code is locked when you publish a version. You can't modify
5976// the code of a published version, only the unpublished version.
5977//
5978// For a function defined as a container image, Lambda resolves the image tag
5979// to an image digest. In Amazon ECR, if you update the image tag to a new image,
5980// Lambda does not automatically update the function.
5981//
5982// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5983// with awserr.Error's Code and Message methods to get detailed information about
5984// the error.
5985//
5986// See the AWS API reference guide for AWS Lambda's
5987// API operation UpdateFunctionCode for usage and error information.
5988//
5989// Returned Error Types:
5990//   * ServiceException
5991//   The Lambda service encountered an internal error.
5992//
5993//   * ResourceNotFoundException
5994//   The resource specified in the request does not exist.
5995//
5996//   * InvalidParameterValueException
5997//   One of the parameters in the request is invalid.
5998//
5999//   * TooManyRequestsException
6000//   The request throughput limit was exceeded.
6001//
6002//   * CodeStorageExceededException
6003//   You have exceeded your maximum total code size per account. Learn more (https://docs.aws.amazon.com/lambda/latest/dg/limits.html)
6004//
6005//   * PreconditionFailedException
6006//   The RevisionId provided does not match the latest RevisionId for the Lambda
6007//   function or alias. Call the GetFunction or the GetAlias API to retrieve the
6008//   latest RevisionId for your resource.
6009//
6010//   * ResourceConflictException
6011//   The resource already exists, or another operation is in progress.
6012//
6013//   * CodeVerificationFailedException
6014//   The code signature failed one or more of the validation checks for signature
6015//   mismatch or expiry, and the code signing policy is set to ENFORCE. Lambda
6016//   blocks the deployment.
6017//
6018//   * InvalidCodeSignatureException
6019//   The code signature failed the integrity check. Lambda always blocks deployment
6020//   if the integrity check fails, even if code signing policy is set to WARN.
6021//
6022//   * CodeSigningConfigNotFoundException
6023//   The specified code signing configuration does not exist.
6024//
6025// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/UpdateFunctionCode
6026func (c *Lambda) UpdateFunctionCode(input *UpdateFunctionCodeInput) (*FunctionConfiguration, error) {
6027	req, out := c.UpdateFunctionCodeRequest(input)
6028	return out, req.Send()
6029}
6030
6031// UpdateFunctionCodeWithContext is the same as UpdateFunctionCode with the addition of
6032// the ability to pass a context and additional request options.
6033//
6034// See UpdateFunctionCode for details on how to use this API operation.
6035//
6036// The context must be non-nil and will be used for request cancellation. If
6037// the context is nil a panic will occur. In the future the SDK may create
6038// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6039// for more information on using Contexts.
6040func (c *Lambda) UpdateFunctionCodeWithContext(ctx aws.Context, input *UpdateFunctionCodeInput, opts ...request.Option) (*FunctionConfiguration, error) {
6041	req, out := c.UpdateFunctionCodeRequest(input)
6042	req.SetContext(ctx)
6043	req.ApplyOptions(opts...)
6044	return out, req.Send()
6045}
6046
6047const opUpdateFunctionConfiguration = "UpdateFunctionConfiguration"
6048
6049// UpdateFunctionConfigurationRequest generates a "aws/request.Request" representing the
6050// client's request for the UpdateFunctionConfiguration operation. The "output" return
6051// value will be populated with the request's response once the request completes
6052// successfully.
6053//
6054// Use "Send" method on the returned Request to send the API call to the service.
6055// the "output" return value is not valid until after Send returns without error.
6056//
6057// See UpdateFunctionConfiguration for more information on using the UpdateFunctionConfiguration
6058// API call, and error handling.
6059//
6060// This method is useful when you want to inject custom logic or configuration
6061// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6062//
6063//
6064//    // Example sending a request using the UpdateFunctionConfigurationRequest method.
6065//    req, resp := client.UpdateFunctionConfigurationRequest(params)
6066//
6067//    err := req.Send()
6068//    if err == nil { // resp is now filled
6069//        fmt.Println(resp)
6070//    }
6071//
6072// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/UpdateFunctionConfiguration
6073func (c *Lambda) UpdateFunctionConfigurationRequest(input *UpdateFunctionConfigurationInput) (req *request.Request, output *FunctionConfiguration) {
6074	op := &request.Operation{
6075		Name:       opUpdateFunctionConfiguration,
6076		HTTPMethod: "PUT",
6077		HTTPPath:   "/2015-03-31/functions/{FunctionName}/configuration",
6078	}
6079
6080	if input == nil {
6081		input = &UpdateFunctionConfigurationInput{}
6082	}
6083
6084	output = &FunctionConfiguration{}
6085	req = c.newRequest(op, input, output)
6086	return
6087}
6088
6089// UpdateFunctionConfiguration API operation for AWS Lambda.
6090//
6091// Modify the version-specific settings of a Lambda function.
6092//
6093// When you update a function, Lambda provisions an instance of the function
6094// and its supporting resources. If your function connects to a VPC, this process
6095// can take a minute. During this time, you can't modify the function, but you
6096// can still invoke it. The LastUpdateStatus, LastUpdateStatusReason, and LastUpdateStatusReasonCode
6097// fields in the response from GetFunctionConfiguration indicate when the update
6098// is complete and the function is processing events with the new configuration.
6099// For more information, see Function States (https://docs.aws.amazon.com/lambda/latest/dg/functions-states.html).
6100//
6101// These settings can vary between versions of a function and are locked when
6102// you publish a version. You can't modify the configuration of a published
6103// version, only the unpublished version.
6104//
6105// To configure function concurrency, use PutFunctionConcurrency. To grant invoke
6106// permissions to an account or Amazon Web Services service, use AddPermission.
6107//
6108// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6109// with awserr.Error's Code and Message methods to get detailed information about
6110// the error.
6111//
6112// See the AWS API reference guide for AWS Lambda's
6113// API operation UpdateFunctionConfiguration for usage and error information.
6114//
6115// Returned Error Types:
6116//   * ServiceException
6117//   The Lambda service encountered an internal error.
6118//
6119//   * ResourceNotFoundException
6120//   The resource specified in the request does not exist.
6121//
6122//   * InvalidParameterValueException
6123//   One of the parameters in the request is invalid.
6124//
6125//   * TooManyRequestsException
6126//   The request throughput limit was exceeded.
6127//
6128//   * ResourceConflictException
6129//   The resource already exists, or another operation is in progress.
6130//
6131//   * PreconditionFailedException
6132//   The RevisionId provided does not match the latest RevisionId for the Lambda
6133//   function or alias. Call the GetFunction or the GetAlias API to retrieve the
6134//   latest RevisionId for your resource.
6135//
6136//   * CodeVerificationFailedException
6137//   The code signature failed one or more of the validation checks for signature
6138//   mismatch or expiry, and the code signing policy is set to ENFORCE. Lambda
6139//   blocks the deployment.
6140//
6141//   * InvalidCodeSignatureException
6142//   The code signature failed the integrity check. Lambda always blocks deployment
6143//   if the integrity check fails, even if code signing policy is set to WARN.
6144//
6145//   * CodeSigningConfigNotFoundException
6146//   The specified code signing configuration does not exist.
6147//
6148// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/UpdateFunctionConfiguration
6149func (c *Lambda) UpdateFunctionConfiguration(input *UpdateFunctionConfigurationInput) (*FunctionConfiguration, error) {
6150	req, out := c.UpdateFunctionConfigurationRequest(input)
6151	return out, req.Send()
6152}
6153
6154// UpdateFunctionConfigurationWithContext is the same as UpdateFunctionConfiguration with the addition of
6155// the ability to pass a context and additional request options.
6156//
6157// See UpdateFunctionConfiguration for details on how to use this API operation.
6158//
6159// The context must be non-nil and will be used for request cancellation. If
6160// the context is nil a panic will occur. In the future the SDK may create
6161// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6162// for more information on using Contexts.
6163func (c *Lambda) UpdateFunctionConfigurationWithContext(ctx aws.Context, input *UpdateFunctionConfigurationInput, opts ...request.Option) (*FunctionConfiguration, error) {
6164	req, out := c.UpdateFunctionConfigurationRequest(input)
6165	req.SetContext(ctx)
6166	req.ApplyOptions(opts...)
6167	return out, req.Send()
6168}
6169
6170const opUpdateFunctionEventInvokeConfig = "UpdateFunctionEventInvokeConfig"
6171
6172// UpdateFunctionEventInvokeConfigRequest generates a "aws/request.Request" representing the
6173// client's request for the UpdateFunctionEventInvokeConfig operation. The "output" return
6174// value will be populated with the request's response once the request completes
6175// successfully.
6176//
6177// Use "Send" method on the returned Request to send the API call to the service.
6178// the "output" return value is not valid until after Send returns without error.
6179//
6180// See UpdateFunctionEventInvokeConfig for more information on using the UpdateFunctionEventInvokeConfig
6181// API call, and error handling.
6182//
6183// This method is useful when you want to inject custom logic or configuration
6184// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6185//
6186//
6187//    // Example sending a request using the UpdateFunctionEventInvokeConfigRequest method.
6188//    req, resp := client.UpdateFunctionEventInvokeConfigRequest(params)
6189//
6190//    err := req.Send()
6191//    if err == nil { // resp is now filled
6192//        fmt.Println(resp)
6193//    }
6194//
6195// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/UpdateFunctionEventInvokeConfig
6196func (c *Lambda) UpdateFunctionEventInvokeConfigRequest(input *UpdateFunctionEventInvokeConfigInput) (req *request.Request, output *UpdateFunctionEventInvokeConfigOutput) {
6197	op := &request.Operation{
6198		Name:       opUpdateFunctionEventInvokeConfig,
6199		HTTPMethod: "POST",
6200		HTTPPath:   "/2019-09-25/functions/{FunctionName}/event-invoke-config",
6201	}
6202
6203	if input == nil {
6204		input = &UpdateFunctionEventInvokeConfigInput{}
6205	}
6206
6207	output = &UpdateFunctionEventInvokeConfigOutput{}
6208	req = c.newRequest(op, input, output)
6209	return
6210}
6211
6212// UpdateFunctionEventInvokeConfig API operation for AWS Lambda.
6213//
6214// Updates the configuration for asynchronous invocation for a function, version,
6215// or alias.
6216//
6217// To configure options for asynchronous invocation, use PutFunctionEventInvokeConfig.
6218//
6219// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6220// with awserr.Error's Code and Message methods to get detailed information about
6221// the error.
6222//
6223// See the AWS API reference guide for AWS Lambda's
6224// API operation UpdateFunctionEventInvokeConfig for usage and error information.
6225//
6226// Returned Error Types:
6227//   * ServiceException
6228//   The Lambda service encountered an internal error.
6229//
6230//   * ResourceNotFoundException
6231//   The resource specified in the request does not exist.
6232//
6233//   * InvalidParameterValueException
6234//   One of the parameters in the request is invalid.
6235//
6236//   * TooManyRequestsException
6237//   The request throughput limit was exceeded.
6238//
6239//   * ResourceConflictException
6240//   The resource already exists, or another operation is in progress.
6241//
6242// See also, https://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/UpdateFunctionEventInvokeConfig
6243func (c *Lambda) UpdateFunctionEventInvokeConfig(input *UpdateFunctionEventInvokeConfigInput) (*UpdateFunctionEventInvokeConfigOutput, error) {
6244	req, out := c.UpdateFunctionEventInvokeConfigRequest(input)
6245	return out, req.Send()
6246}
6247
6248// UpdateFunctionEventInvokeConfigWithContext is the same as UpdateFunctionEventInvokeConfig with the addition of
6249// the ability to pass a context and additional request options.
6250//
6251// See UpdateFunctionEventInvokeConfig for details on how to use this API operation.
6252//
6253// The context must be non-nil and will be used for request cancellation. If
6254// the context is nil a panic will occur. In the future the SDK may create
6255// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6256// for more information on using Contexts.
6257func (c *Lambda) UpdateFunctionEventInvokeConfigWithContext(ctx aws.Context, input *UpdateFunctionEventInvokeConfigInput, opts ...request.Option) (*UpdateFunctionEventInvokeConfigOutput, error) {
6258	req, out := c.UpdateFunctionEventInvokeConfigRequest(input)
6259	req.SetContext(ctx)
6260	req.ApplyOptions(opts...)
6261	return out, req.Send()
6262}
6263
6264// Limits that are related to concurrency and storage. All file and storage
6265// sizes are in bytes.
6266type AccountLimit struct {
6267	_ struct{} `type:"structure"`
6268
6269	// The maximum size of a function's deployment package and layers when they're
6270	// extracted.
6271	CodeSizeUnzipped *int64 `type:"long"`
6272
6273	// The maximum size of a deployment package when it's uploaded directly to Lambda.
6274	// Use Amazon S3 for larger files.
6275	CodeSizeZipped *int64 `type:"long"`
6276
6277	// The maximum number of simultaneous function executions.
6278	ConcurrentExecutions *int64 `type:"integer"`
6279
6280	// The amount of storage space that you can use for all deployment packages
6281	// and layer archives.
6282	TotalCodeSize *int64 `type:"long"`
6283
6284	// The maximum number of simultaneous function executions, minus the capacity
6285	// that's reserved for individual functions with PutFunctionConcurrency.
6286	UnreservedConcurrentExecutions *int64 `type:"integer"`
6287}
6288
6289// String returns the string representation
6290func (s AccountLimit) String() string {
6291	return awsutil.Prettify(s)
6292}
6293
6294// GoString returns the string representation
6295func (s AccountLimit) GoString() string {
6296	return s.String()
6297}
6298
6299// SetCodeSizeUnzipped sets the CodeSizeUnzipped field's value.
6300func (s *AccountLimit) SetCodeSizeUnzipped(v int64) *AccountLimit {
6301	s.CodeSizeUnzipped = &v
6302	return s
6303}
6304
6305// SetCodeSizeZipped sets the CodeSizeZipped field's value.
6306func (s *AccountLimit) SetCodeSizeZipped(v int64) *AccountLimit {
6307	s.CodeSizeZipped = &v
6308	return s
6309}
6310
6311// SetConcurrentExecutions sets the ConcurrentExecutions field's value.
6312func (s *AccountLimit) SetConcurrentExecutions(v int64) *AccountLimit {
6313	s.ConcurrentExecutions = &v
6314	return s
6315}
6316
6317// SetTotalCodeSize sets the TotalCodeSize field's value.
6318func (s *AccountLimit) SetTotalCodeSize(v int64) *AccountLimit {
6319	s.TotalCodeSize = &v
6320	return s
6321}
6322
6323// SetUnreservedConcurrentExecutions sets the UnreservedConcurrentExecutions field's value.
6324func (s *AccountLimit) SetUnreservedConcurrentExecutions(v int64) *AccountLimit {
6325	s.UnreservedConcurrentExecutions = &v
6326	return s
6327}
6328
6329// The number of functions and amount of storage in use.
6330type AccountUsage struct {
6331	_ struct{} `type:"structure"`
6332
6333	// The number of Lambda functions.
6334	FunctionCount *int64 `type:"long"`
6335
6336	// The amount of storage space, in bytes, that's being used by deployment packages
6337	// and layer archives.
6338	TotalCodeSize *int64 `type:"long"`
6339}
6340
6341// String returns the string representation
6342func (s AccountUsage) String() string {
6343	return awsutil.Prettify(s)
6344}
6345
6346// GoString returns the string representation
6347func (s AccountUsage) GoString() string {
6348	return s.String()
6349}
6350
6351// SetFunctionCount sets the FunctionCount field's value.
6352func (s *AccountUsage) SetFunctionCount(v int64) *AccountUsage {
6353	s.FunctionCount = &v
6354	return s
6355}
6356
6357// SetTotalCodeSize sets the TotalCodeSize field's value.
6358func (s *AccountUsage) SetTotalCodeSize(v int64) *AccountUsage {
6359	s.TotalCodeSize = &v
6360	return s
6361}
6362
6363type AddLayerVersionPermissionInput struct {
6364	_ struct{} `type:"structure"`
6365
6366	// The API action that grants access to the layer. For example, lambda:GetLayerVersion.
6367	//
6368	// Action is a required field
6369	Action *string `type:"string" required:"true"`
6370
6371	// The name or Amazon Resource Name (ARN) of the layer.
6372	//
6373	// LayerName is a required field
6374	LayerName *string `location:"uri" locationName:"LayerName" min:"1" type:"string" required:"true"`
6375
6376	// With the principal set to *, grant permission to all accounts in the specified
6377	// organization.
6378	OrganizationId *string `type:"string"`
6379
6380	// An account ID, or * to grant layer usage permission to all accounts in an
6381	// organization, or all Amazon Web Services accounts (if organizationId is not
6382	// specified). For the last case, make sure that you really do want all Amazon
6383	// Web Services accounts to have usage permission to this layer.
6384	//
6385	// Principal is a required field
6386	Principal *string `type:"string" required:"true"`
6387
6388	// Only update the policy if the revision ID matches the ID specified. Use this
6389	// option to avoid modifying a policy that has changed since you last read it.
6390	RevisionId *string `location:"querystring" locationName:"RevisionId" type:"string"`
6391
6392	// An identifier that distinguishes the policy from others on the same layer
6393	// version.
6394	//
6395	// StatementId is a required field
6396	StatementId *string `min:"1" type:"string" required:"true"`
6397
6398	// The version number.
6399	//
6400	// VersionNumber is a required field
6401	VersionNumber *int64 `location:"uri" locationName:"VersionNumber" type:"long" required:"true"`
6402}
6403
6404// String returns the string representation
6405func (s AddLayerVersionPermissionInput) String() string {
6406	return awsutil.Prettify(s)
6407}
6408
6409// GoString returns the string representation
6410func (s AddLayerVersionPermissionInput) GoString() string {
6411	return s.String()
6412}
6413
6414// Validate inspects the fields of the type to determine if they are valid.
6415func (s *AddLayerVersionPermissionInput) Validate() error {
6416	invalidParams := request.ErrInvalidParams{Context: "AddLayerVersionPermissionInput"}
6417	if s.Action == nil {
6418		invalidParams.Add(request.NewErrParamRequired("Action"))
6419	}
6420	if s.LayerName == nil {
6421		invalidParams.Add(request.NewErrParamRequired("LayerName"))
6422	}
6423	if s.LayerName != nil && len(*s.LayerName) < 1 {
6424		invalidParams.Add(request.NewErrParamMinLen("LayerName", 1))
6425	}
6426	if s.Principal == nil {
6427		invalidParams.Add(request.NewErrParamRequired("Principal"))
6428	}
6429	if s.StatementId == nil {
6430		invalidParams.Add(request.NewErrParamRequired("StatementId"))
6431	}
6432	if s.StatementId != nil && len(*s.StatementId) < 1 {
6433		invalidParams.Add(request.NewErrParamMinLen("StatementId", 1))
6434	}
6435	if s.VersionNumber == nil {
6436		invalidParams.Add(request.NewErrParamRequired("VersionNumber"))
6437	}
6438
6439	if invalidParams.Len() > 0 {
6440		return invalidParams
6441	}
6442	return nil
6443}
6444
6445// SetAction sets the Action field's value.
6446func (s *AddLayerVersionPermissionInput) SetAction(v string) *AddLayerVersionPermissionInput {
6447	s.Action = &v
6448	return s
6449}
6450
6451// SetLayerName sets the LayerName field's value.
6452func (s *AddLayerVersionPermissionInput) SetLayerName(v string) *AddLayerVersionPermissionInput {
6453	s.LayerName = &v
6454	return s
6455}
6456
6457// SetOrganizationId sets the OrganizationId field's value.
6458func (s *AddLayerVersionPermissionInput) SetOrganizationId(v string) *AddLayerVersionPermissionInput {
6459	s.OrganizationId = &v
6460	return s
6461}
6462
6463// SetPrincipal sets the Principal field's value.
6464func (s *AddLayerVersionPermissionInput) SetPrincipal(v string) *AddLayerVersionPermissionInput {
6465	s.Principal = &v
6466	return s
6467}
6468
6469// SetRevisionId sets the RevisionId field's value.
6470func (s *AddLayerVersionPermissionInput) SetRevisionId(v string) *AddLayerVersionPermissionInput {
6471	s.RevisionId = &v
6472	return s
6473}
6474
6475// SetStatementId sets the StatementId field's value.
6476func (s *AddLayerVersionPermissionInput) SetStatementId(v string) *AddLayerVersionPermissionInput {
6477	s.StatementId = &v
6478	return s
6479}
6480
6481// SetVersionNumber sets the VersionNumber field's value.
6482func (s *AddLayerVersionPermissionInput) SetVersionNumber(v int64) *AddLayerVersionPermissionInput {
6483	s.VersionNumber = &v
6484	return s
6485}
6486
6487type AddLayerVersionPermissionOutput struct {
6488	_ struct{} `type:"structure"`
6489
6490	// A unique identifier for the current revision of the policy.
6491	RevisionId *string `type:"string"`
6492
6493	// The permission statement.
6494	Statement *string `type:"string"`
6495}
6496
6497// String returns the string representation
6498func (s AddLayerVersionPermissionOutput) String() string {
6499	return awsutil.Prettify(s)
6500}
6501
6502// GoString returns the string representation
6503func (s AddLayerVersionPermissionOutput) GoString() string {
6504	return s.String()
6505}
6506
6507// SetRevisionId sets the RevisionId field's value.
6508func (s *AddLayerVersionPermissionOutput) SetRevisionId(v string) *AddLayerVersionPermissionOutput {
6509	s.RevisionId = &v
6510	return s
6511}
6512
6513// SetStatement sets the Statement field's value.
6514func (s *AddLayerVersionPermissionOutput) SetStatement(v string) *AddLayerVersionPermissionOutput {
6515	s.Statement = &v
6516	return s
6517}
6518
6519type AddPermissionInput struct {
6520	_ struct{} `type:"structure"`
6521
6522	// The action that the principal can use on the function. For example, lambda:InvokeFunction
6523	// or lambda:GetFunction.
6524	//
6525	// Action is a required field
6526	Action *string `type:"string" required:"true"`
6527
6528	// For Alexa Smart Home functions, a token that must be supplied by the invoker.
6529	EventSourceToken *string `type:"string"`
6530
6531	// The name of the Lambda function, version, or alias.
6532	//
6533	// Name formats
6534	//
6535	//    * Function name - my-function (name-only), my-function:v1 (with alias).
6536	//
6537	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
6538	//
6539	//    * Partial ARN - 123456789012:function:my-function.
6540	//
6541	// You can append a version number or alias to any of the formats. The length
6542	// constraint applies only to the full ARN. If you specify only the function
6543	// name, it is limited to 64 characters in length.
6544	//
6545	// FunctionName is a required field
6546	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
6547
6548	// The Amazon Web Services service or account that invokes the function. If
6549	// you specify a service, use SourceArn or SourceAccount to limit who can invoke
6550	// the function through that service.
6551	//
6552	// Principal is a required field
6553	Principal *string `type:"string" required:"true"`
6554
6555	// Specify a version or alias to add permissions to a published version of the
6556	// function.
6557	Qualifier *string `location:"querystring" locationName:"Qualifier" min:"1" type:"string"`
6558
6559	// Only update the policy if the revision ID matches the ID that's specified.
6560	// Use this option to avoid modifying a policy that has changed since you last
6561	// read it.
6562	RevisionId *string `type:"string"`
6563
6564	// For Amazon S3, the ID of the account that owns the resource. Use this together
6565	// with SourceArn to ensure that the resource is owned by the specified account.
6566	// It is possible for an Amazon S3 bucket to be deleted by its owner and recreated
6567	// by another account.
6568	SourceAccount *string `type:"string"`
6569
6570	// For Amazon Web Services services, the ARN of the Amazon Web Services resource
6571	// that invokes the function. For example, an Amazon S3 bucket or Amazon SNS
6572	// topic.
6573	SourceArn *string `type:"string"`
6574
6575	// A statement identifier that differentiates the statement from others in the
6576	// same policy.
6577	//
6578	// StatementId is a required field
6579	StatementId *string `min:"1" type:"string" required:"true"`
6580}
6581
6582// String returns the string representation
6583func (s AddPermissionInput) String() string {
6584	return awsutil.Prettify(s)
6585}
6586
6587// GoString returns the string representation
6588func (s AddPermissionInput) GoString() string {
6589	return s.String()
6590}
6591
6592// Validate inspects the fields of the type to determine if they are valid.
6593func (s *AddPermissionInput) Validate() error {
6594	invalidParams := request.ErrInvalidParams{Context: "AddPermissionInput"}
6595	if s.Action == nil {
6596		invalidParams.Add(request.NewErrParamRequired("Action"))
6597	}
6598	if s.FunctionName == nil {
6599		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
6600	}
6601	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
6602		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
6603	}
6604	if s.Principal == nil {
6605		invalidParams.Add(request.NewErrParamRequired("Principal"))
6606	}
6607	if s.Qualifier != nil && len(*s.Qualifier) < 1 {
6608		invalidParams.Add(request.NewErrParamMinLen("Qualifier", 1))
6609	}
6610	if s.StatementId == nil {
6611		invalidParams.Add(request.NewErrParamRequired("StatementId"))
6612	}
6613	if s.StatementId != nil && len(*s.StatementId) < 1 {
6614		invalidParams.Add(request.NewErrParamMinLen("StatementId", 1))
6615	}
6616
6617	if invalidParams.Len() > 0 {
6618		return invalidParams
6619	}
6620	return nil
6621}
6622
6623// SetAction sets the Action field's value.
6624func (s *AddPermissionInput) SetAction(v string) *AddPermissionInput {
6625	s.Action = &v
6626	return s
6627}
6628
6629// SetEventSourceToken sets the EventSourceToken field's value.
6630func (s *AddPermissionInput) SetEventSourceToken(v string) *AddPermissionInput {
6631	s.EventSourceToken = &v
6632	return s
6633}
6634
6635// SetFunctionName sets the FunctionName field's value.
6636func (s *AddPermissionInput) SetFunctionName(v string) *AddPermissionInput {
6637	s.FunctionName = &v
6638	return s
6639}
6640
6641// SetPrincipal sets the Principal field's value.
6642func (s *AddPermissionInput) SetPrincipal(v string) *AddPermissionInput {
6643	s.Principal = &v
6644	return s
6645}
6646
6647// SetQualifier sets the Qualifier field's value.
6648func (s *AddPermissionInput) SetQualifier(v string) *AddPermissionInput {
6649	s.Qualifier = &v
6650	return s
6651}
6652
6653// SetRevisionId sets the RevisionId field's value.
6654func (s *AddPermissionInput) SetRevisionId(v string) *AddPermissionInput {
6655	s.RevisionId = &v
6656	return s
6657}
6658
6659// SetSourceAccount sets the SourceAccount field's value.
6660func (s *AddPermissionInput) SetSourceAccount(v string) *AddPermissionInput {
6661	s.SourceAccount = &v
6662	return s
6663}
6664
6665// SetSourceArn sets the SourceArn field's value.
6666func (s *AddPermissionInput) SetSourceArn(v string) *AddPermissionInput {
6667	s.SourceArn = &v
6668	return s
6669}
6670
6671// SetStatementId sets the StatementId field's value.
6672func (s *AddPermissionInput) SetStatementId(v string) *AddPermissionInput {
6673	s.StatementId = &v
6674	return s
6675}
6676
6677type AddPermissionOutput struct {
6678	_ struct{} `type:"structure"`
6679
6680	// The permission statement that's added to the function policy.
6681	Statement *string `type:"string"`
6682}
6683
6684// String returns the string representation
6685func (s AddPermissionOutput) String() string {
6686	return awsutil.Prettify(s)
6687}
6688
6689// GoString returns the string representation
6690func (s AddPermissionOutput) GoString() string {
6691	return s.String()
6692}
6693
6694// SetStatement sets the Statement field's value.
6695func (s *AddPermissionOutput) SetStatement(v string) *AddPermissionOutput {
6696	s.Statement = &v
6697	return s
6698}
6699
6700// Provides configuration information about a Lambda function alias (https://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html).
6701type AliasConfiguration struct {
6702	_ struct{} `type:"structure"`
6703
6704	// The Amazon Resource Name (ARN) of the alias.
6705	AliasArn *string `type:"string"`
6706
6707	// A description of the alias.
6708	Description *string `type:"string"`
6709
6710	// The function version that the alias invokes.
6711	FunctionVersion *string `min:"1" type:"string"`
6712
6713	// The name of the alias.
6714	Name *string `min:"1" type:"string"`
6715
6716	// A unique identifier that changes when you update the alias.
6717	RevisionId *string `type:"string"`
6718
6719	// The routing configuration (https://docs.aws.amazon.com/lambda/latest/dg/lambda-traffic-shifting-using-aliases.html)
6720	// of the alias.
6721	RoutingConfig *AliasRoutingConfiguration `type:"structure"`
6722}
6723
6724// String returns the string representation
6725func (s AliasConfiguration) String() string {
6726	return awsutil.Prettify(s)
6727}
6728
6729// GoString returns the string representation
6730func (s AliasConfiguration) GoString() string {
6731	return s.String()
6732}
6733
6734// SetAliasArn sets the AliasArn field's value.
6735func (s *AliasConfiguration) SetAliasArn(v string) *AliasConfiguration {
6736	s.AliasArn = &v
6737	return s
6738}
6739
6740// SetDescription sets the Description field's value.
6741func (s *AliasConfiguration) SetDescription(v string) *AliasConfiguration {
6742	s.Description = &v
6743	return s
6744}
6745
6746// SetFunctionVersion sets the FunctionVersion field's value.
6747func (s *AliasConfiguration) SetFunctionVersion(v string) *AliasConfiguration {
6748	s.FunctionVersion = &v
6749	return s
6750}
6751
6752// SetName sets the Name field's value.
6753func (s *AliasConfiguration) SetName(v string) *AliasConfiguration {
6754	s.Name = &v
6755	return s
6756}
6757
6758// SetRevisionId sets the RevisionId field's value.
6759func (s *AliasConfiguration) SetRevisionId(v string) *AliasConfiguration {
6760	s.RevisionId = &v
6761	return s
6762}
6763
6764// SetRoutingConfig sets the RoutingConfig field's value.
6765func (s *AliasConfiguration) SetRoutingConfig(v *AliasRoutingConfiguration) *AliasConfiguration {
6766	s.RoutingConfig = v
6767	return s
6768}
6769
6770// The traffic-shifting (https://docs.aws.amazon.com/lambda/latest/dg/lambda-traffic-shifting-using-aliases.html)
6771// configuration of a Lambda function alias.
6772type AliasRoutingConfiguration struct {
6773	_ struct{} `type:"structure"`
6774
6775	// The second version, and the percentage of traffic that's routed to it.
6776	AdditionalVersionWeights map[string]*float64 `type:"map"`
6777}
6778
6779// String returns the string representation
6780func (s AliasRoutingConfiguration) String() string {
6781	return awsutil.Prettify(s)
6782}
6783
6784// GoString returns the string representation
6785func (s AliasRoutingConfiguration) GoString() string {
6786	return s.String()
6787}
6788
6789// SetAdditionalVersionWeights sets the AdditionalVersionWeights field's value.
6790func (s *AliasRoutingConfiguration) SetAdditionalVersionWeights(v map[string]*float64) *AliasRoutingConfiguration {
6791	s.AdditionalVersionWeights = v
6792	return s
6793}
6794
6795// List of signing profiles that can sign a code package.
6796type AllowedPublishers struct {
6797	_ struct{} `type:"structure"`
6798
6799	// The Amazon Resource Name (ARN) for each of the signing profiles. A signing
6800	// profile defines a trusted user who can sign a code package.
6801	//
6802	// SigningProfileVersionArns is a required field
6803	SigningProfileVersionArns []*string `min:"1" type:"list" required:"true"`
6804}
6805
6806// String returns the string representation
6807func (s AllowedPublishers) String() string {
6808	return awsutil.Prettify(s)
6809}
6810
6811// GoString returns the string representation
6812func (s AllowedPublishers) GoString() string {
6813	return s.String()
6814}
6815
6816// Validate inspects the fields of the type to determine if they are valid.
6817func (s *AllowedPublishers) Validate() error {
6818	invalidParams := request.ErrInvalidParams{Context: "AllowedPublishers"}
6819	if s.SigningProfileVersionArns == nil {
6820		invalidParams.Add(request.NewErrParamRequired("SigningProfileVersionArns"))
6821	}
6822	if s.SigningProfileVersionArns != nil && len(s.SigningProfileVersionArns) < 1 {
6823		invalidParams.Add(request.NewErrParamMinLen("SigningProfileVersionArns", 1))
6824	}
6825
6826	if invalidParams.Len() > 0 {
6827		return invalidParams
6828	}
6829	return nil
6830}
6831
6832// SetSigningProfileVersionArns sets the SigningProfileVersionArns field's value.
6833func (s *AllowedPublishers) SetSigningProfileVersionArns(v []*string) *AllowedPublishers {
6834	s.SigningProfileVersionArns = v
6835	return s
6836}
6837
6838// Details about a Code signing configuration (https://docs.aws.amazon.com/lambda/latest/dg/configuration-codesigning.html).
6839type CodeSigningConfig struct {
6840	_ struct{} `type:"structure"`
6841
6842	// List of allowed publishers.
6843	//
6844	// AllowedPublishers is a required field
6845	AllowedPublishers *AllowedPublishers `type:"structure" required:"true"`
6846
6847	// The Amazon Resource Name (ARN) of the Code signing configuration.
6848	//
6849	// CodeSigningConfigArn is a required field
6850	CodeSigningConfigArn *string `type:"string" required:"true"`
6851
6852	// Unique identifer for the Code signing configuration.
6853	//
6854	// CodeSigningConfigId is a required field
6855	CodeSigningConfigId *string `type:"string" required:"true"`
6856
6857	// The code signing policy controls the validation failure action for signature
6858	// mismatch or expiry.
6859	//
6860	// CodeSigningPolicies is a required field
6861	CodeSigningPolicies *CodeSigningPolicies `type:"structure" required:"true"`
6862
6863	// Code signing configuration description.
6864	Description *string `type:"string"`
6865
6866	// The date and time that the Code signing configuration was last modified,
6867	// in ISO-8601 format (YYYY-MM-DDThh:mm:ss.sTZD).
6868	//
6869	// LastModified is a required field
6870	LastModified *string `type:"string" required:"true"`
6871}
6872
6873// String returns the string representation
6874func (s CodeSigningConfig) String() string {
6875	return awsutil.Prettify(s)
6876}
6877
6878// GoString returns the string representation
6879func (s CodeSigningConfig) GoString() string {
6880	return s.String()
6881}
6882
6883// SetAllowedPublishers sets the AllowedPublishers field's value.
6884func (s *CodeSigningConfig) SetAllowedPublishers(v *AllowedPublishers) *CodeSigningConfig {
6885	s.AllowedPublishers = v
6886	return s
6887}
6888
6889// SetCodeSigningConfigArn sets the CodeSigningConfigArn field's value.
6890func (s *CodeSigningConfig) SetCodeSigningConfigArn(v string) *CodeSigningConfig {
6891	s.CodeSigningConfigArn = &v
6892	return s
6893}
6894
6895// SetCodeSigningConfigId sets the CodeSigningConfigId field's value.
6896func (s *CodeSigningConfig) SetCodeSigningConfigId(v string) *CodeSigningConfig {
6897	s.CodeSigningConfigId = &v
6898	return s
6899}
6900
6901// SetCodeSigningPolicies sets the CodeSigningPolicies field's value.
6902func (s *CodeSigningConfig) SetCodeSigningPolicies(v *CodeSigningPolicies) *CodeSigningConfig {
6903	s.CodeSigningPolicies = v
6904	return s
6905}
6906
6907// SetDescription sets the Description field's value.
6908func (s *CodeSigningConfig) SetDescription(v string) *CodeSigningConfig {
6909	s.Description = &v
6910	return s
6911}
6912
6913// SetLastModified sets the LastModified field's value.
6914func (s *CodeSigningConfig) SetLastModified(v string) *CodeSigningConfig {
6915	s.LastModified = &v
6916	return s
6917}
6918
6919// The specified code signing configuration does not exist.
6920type CodeSigningConfigNotFoundException struct {
6921	_            struct{}                  `type:"structure"`
6922	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
6923
6924	Message_ *string `locationName:"Message" type:"string"`
6925
6926	Type *string `type:"string"`
6927}
6928
6929// String returns the string representation
6930func (s CodeSigningConfigNotFoundException) String() string {
6931	return awsutil.Prettify(s)
6932}
6933
6934// GoString returns the string representation
6935func (s CodeSigningConfigNotFoundException) GoString() string {
6936	return s.String()
6937}
6938
6939func newErrorCodeSigningConfigNotFoundException(v protocol.ResponseMetadata) error {
6940	return &CodeSigningConfigNotFoundException{
6941		RespMetadata: v,
6942	}
6943}
6944
6945// Code returns the exception type name.
6946func (s *CodeSigningConfigNotFoundException) Code() string {
6947	return "CodeSigningConfigNotFoundException"
6948}
6949
6950// Message returns the exception's message.
6951func (s *CodeSigningConfigNotFoundException) Message() string {
6952	if s.Message_ != nil {
6953		return *s.Message_
6954	}
6955	return ""
6956}
6957
6958// OrigErr always returns nil, satisfies awserr.Error interface.
6959func (s *CodeSigningConfigNotFoundException) OrigErr() error {
6960	return nil
6961}
6962
6963func (s *CodeSigningConfigNotFoundException) Error() string {
6964	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
6965}
6966
6967// Status code returns the HTTP status code for the request's response error.
6968func (s *CodeSigningConfigNotFoundException) StatusCode() int {
6969	return s.RespMetadata.StatusCode
6970}
6971
6972// RequestID returns the service's response RequestID for request.
6973func (s *CodeSigningConfigNotFoundException) RequestID() string {
6974	return s.RespMetadata.RequestID
6975}
6976
6977// Code signing configuration policies (https://docs.aws.amazon.com/lambda/latest/dg/configuration-codesigning.html#config-codesigning-policies)
6978// specify the validation failure action for signature mismatch or expiry.
6979type CodeSigningPolicies struct {
6980	_ struct{} `type:"structure"`
6981
6982	// Code signing configuration policy for deployment validation failure. If you
6983	// set the policy to Enforce, Lambda blocks the deployment request if signature
6984	// validation checks fail. If you set the policy to Warn, Lambda allows the
6985	// deployment and creates a CloudWatch log.
6986	//
6987	// Default value: Warn
6988	UntrustedArtifactOnDeployment *string `type:"string" enum:"CodeSigningPolicy"`
6989}
6990
6991// String returns the string representation
6992func (s CodeSigningPolicies) String() string {
6993	return awsutil.Prettify(s)
6994}
6995
6996// GoString returns the string representation
6997func (s CodeSigningPolicies) GoString() string {
6998	return s.String()
6999}
7000
7001// SetUntrustedArtifactOnDeployment sets the UntrustedArtifactOnDeployment field's value.
7002func (s *CodeSigningPolicies) SetUntrustedArtifactOnDeployment(v string) *CodeSigningPolicies {
7003	s.UntrustedArtifactOnDeployment = &v
7004	return s
7005}
7006
7007// You have exceeded your maximum total code size per account. Learn more (https://docs.aws.amazon.com/lambda/latest/dg/limits.html)
7008type CodeStorageExceededException struct {
7009	_            struct{}                  `type:"structure"`
7010	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
7011
7012	Message_ *string `locationName:"message" type:"string"`
7013
7014	// The exception type.
7015	Type *string `type:"string"`
7016}
7017
7018// String returns the string representation
7019func (s CodeStorageExceededException) String() string {
7020	return awsutil.Prettify(s)
7021}
7022
7023// GoString returns the string representation
7024func (s CodeStorageExceededException) GoString() string {
7025	return s.String()
7026}
7027
7028func newErrorCodeStorageExceededException(v protocol.ResponseMetadata) error {
7029	return &CodeStorageExceededException{
7030		RespMetadata: v,
7031	}
7032}
7033
7034// Code returns the exception type name.
7035func (s *CodeStorageExceededException) Code() string {
7036	return "CodeStorageExceededException"
7037}
7038
7039// Message returns the exception's message.
7040func (s *CodeStorageExceededException) Message() string {
7041	if s.Message_ != nil {
7042		return *s.Message_
7043	}
7044	return ""
7045}
7046
7047// OrigErr always returns nil, satisfies awserr.Error interface.
7048func (s *CodeStorageExceededException) OrigErr() error {
7049	return nil
7050}
7051
7052func (s *CodeStorageExceededException) Error() string {
7053	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
7054}
7055
7056// Status code returns the HTTP status code for the request's response error.
7057func (s *CodeStorageExceededException) StatusCode() int {
7058	return s.RespMetadata.StatusCode
7059}
7060
7061// RequestID returns the service's response RequestID for request.
7062func (s *CodeStorageExceededException) RequestID() string {
7063	return s.RespMetadata.RequestID
7064}
7065
7066// The code signature failed one or more of the validation checks for signature
7067// mismatch or expiry, and the code signing policy is set to ENFORCE. Lambda
7068// blocks the deployment.
7069type CodeVerificationFailedException struct {
7070	_            struct{}                  `type:"structure"`
7071	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
7072
7073	Message_ *string `locationName:"Message" type:"string"`
7074
7075	Type *string `type:"string"`
7076}
7077
7078// String returns the string representation
7079func (s CodeVerificationFailedException) String() string {
7080	return awsutil.Prettify(s)
7081}
7082
7083// GoString returns the string representation
7084func (s CodeVerificationFailedException) GoString() string {
7085	return s.String()
7086}
7087
7088func newErrorCodeVerificationFailedException(v protocol.ResponseMetadata) error {
7089	return &CodeVerificationFailedException{
7090		RespMetadata: v,
7091	}
7092}
7093
7094// Code returns the exception type name.
7095func (s *CodeVerificationFailedException) Code() string {
7096	return "CodeVerificationFailedException"
7097}
7098
7099// Message returns the exception's message.
7100func (s *CodeVerificationFailedException) Message() string {
7101	if s.Message_ != nil {
7102		return *s.Message_
7103	}
7104	return ""
7105}
7106
7107// OrigErr always returns nil, satisfies awserr.Error interface.
7108func (s *CodeVerificationFailedException) OrigErr() error {
7109	return nil
7110}
7111
7112func (s *CodeVerificationFailedException) Error() string {
7113	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
7114}
7115
7116// Status code returns the HTTP status code for the request's response error.
7117func (s *CodeVerificationFailedException) StatusCode() int {
7118	return s.RespMetadata.StatusCode
7119}
7120
7121// RequestID returns the service's response RequestID for request.
7122func (s *CodeVerificationFailedException) RequestID() string {
7123	return s.RespMetadata.RequestID
7124}
7125
7126type CreateAliasInput struct {
7127	_ struct{} `type:"structure"`
7128
7129	// A description of the alias.
7130	Description *string `type:"string"`
7131
7132	// The name of the Lambda function.
7133	//
7134	// Name formats
7135	//
7136	//    * Function name - MyFunction.
7137	//
7138	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.
7139	//
7140	//    * Partial ARN - 123456789012:function:MyFunction.
7141	//
7142	// The length constraint applies only to the full ARN. If you specify only the
7143	// function name, it is limited to 64 characters in length.
7144	//
7145	// FunctionName is a required field
7146	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
7147
7148	// The function version that the alias invokes.
7149	//
7150	// FunctionVersion is a required field
7151	FunctionVersion *string `min:"1" type:"string" required:"true"`
7152
7153	// The name of the alias.
7154	//
7155	// Name is a required field
7156	Name *string `min:"1" type:"string" required:"true"`
7157
7158	// The routing configuration (https://docs.aws.amazon.com/lambda/latest/dg/configuration-aliases.html#configuring-alias-routing)
7159	// of the alias.
7160	RoutingConfig *AliasRoutingConfiguration `type:"structure"`
7161}
7162
7163// String returns the string representation
7164func (s CreateAliasInput) String() string {
7165	return awsutil.Prettify(s)
7166}
7167
7168// GoString returns the string representation
7169func (s CreateAliasInput) GoString() string {
7170	return s.String()
7171}
7172
7173// Validate inspects the fields of the type to determine if they are valid.
7174func (s *CreateAliasInput) Validate() error {
7175	invalidParams := request.ErrInvalidParams{Context: "CreateAliasInput"}
7176	if s.FunctionName == nil {
7177		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
7178	}
7179	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
7180		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
7181	}
7182	if s.FunctionVersion == nil {
7183		invalidParams.Add(request.NewErrParamRequired("FunctionVersion"))
7184	}
7185	if s.FunctionVersion != nil && len(*s.FunctionVersion) < 1 {
7186		invalidParams.Add(request.NewErrParamMinLen("FunctionVersion", 1))
7187	}
7188	if s.Name == nil {
7189		invalidParams.Add(request.NewErrParamRequired("Name"))
7190	}
7191	if s.Name != nil && len(*s.Name) < 1 {
7192		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
7193	}
7194
7195	if invalidParams.Len() > 0 {
7196		return invalidParams
7197	}
7198	return nil
7199}
7200
7201// SetDescription sets the Description field's value.
7202func (s *CreateAliasInput) SetDescription(v string) *CreateAliasInput {
7203	s.Description = &v
7204	return s
7205}
7206
7207// SetFunctionName sets the FunctionName field's value.
7208func (s *CreateAliasInput) SetFunctionName(v string) *CreateAliasInput {
7209	s.FunctionName = &v
7210	return s
7211}
7212
7213// SetFunctionVersion sets the FunctionVersion field's value.
7214func (s *CreateAliasInput) SetFunctionVersion(v string) *CreateAliasInput {
7215	s.FunctionVersion = &v
7216	return s
7217}
7218
7219// SetName sets the Name field's value.
7220func (s *CreateAliasInput) SetName(v string) *CreateAliasInput {
7221	s.Name = &v
7222	return s
7223}
7224
7225// SetRoutingConfig sets the RoutingConfig field's value.
7226func (s *CreateAliasInput) SetRoutingConfig(v *AliasRoutingConfiguration) *CreateAliasInput {
7227	s.RoutingConfig = v
7228	return s
7229}
7230
7231type CreateCodeSigningConfigInput struct {
7232	_ struct{} `type:"structure"`
7233
7234	// Signing profiles for this code signing configuration.
7235	//
7236	// AllowedPublishers is a required field
7237	AllowedPublishers *AllowedPublishers `type:"structure" required:"true"`
7238
7239	// The code signing policies define the actions to take if the validation checks
7240	// fail.
7241	CodeSigningPolicies *CodeSigningPolicies `type:"structure"`
7242
7243	// Descriptive name for this code signing configuration.
7244	Description *string `type:"string"`
7245}
7246
7247// String returns the string representation
7248func (s CreateCodeSigningConfigInput) String() string {
7249	return awsutil.Prettify(s)
7250}
7251
7252// GoString returns the string representation
7253func (s CreateCodeSigningConfigInput) GoString() string {
7254	return s.String()
7255}
7256
7257// Validate inspects the fields of the type to determine if they are valid.
7258func (s *CreateCodeSigningConfigInput) Validate() error {
7259	invalidParams := request.ErrInvalidParams{Context: "CreateCodeSigningConfigInput"}
7260	if s.AllowedPublishers == nil {
7261		invalidParams.Add(request.NewErrParamRequired("AllowedPublishers"))
7262	}
7263	if s.AllowedPublishers != nil {
7264		if err := s.AllowedPublishers.Validate(); err != nil {
7265			invalidParams.AddNested("AllowedPublishers", err.(request.ErrInvalidParams))
7266		}
7267	}
7268
7269	if invalidParams.Len() > 0 {
7270		return invalidParams
7271	}
7272	return nil
7273}
7274
7275// SetAllowedPublishers sets the AllowedPublishers field's value.
7276func (s *CreateCodeSigningConfigInput) SetAllowedPublishers(v *AllowedPublishers) *CreateCodeSigningConfigInput {
7277	s.AllowedPublishers = v
7278	return s
7279}
7280
7281// SetCodeSigningPolicies sets the CodeSigningPolicies field's value.
7282func (s *CreateCodeSigningConfigInput) SetCodeSigningPolicies(v *CodeSigningPolicies) *CreateCodeSigningConfigInput {
7283	s.CodeSigningPolicies = v
7284	return s
7285}
7286
7287// SetDescription sets the Description field's value.
7288func (s *CreateCodeSigningConfigInput) SetDescription(v string) *CreateCodeSigningConfigInput {
7289	s.Description = &v
7290	return s
7291}
7292
7293type CreateCodeSigningConfigOutput struct {
7294	_ struct{} `type:"structure"`
7295
7296	// The code signing configuration.
7297	//
7298	// CodeSigningConfig is a required field
7299	CodeSigningConfig *CodeSigningConfig `type:"structure" required:"true"`
7300}
7301
7302// String returns the string representation
7303func (s CreateCodeSigningConfigOutput) String() string {
7304	return awsutil.Prettify(s)
7305}
7306
7307// GoString returns the string representation
7308func (s CreateCodeSigningConfigOutput) GoString() string {
7309	return s.String()
7310}
7311
7312// SetCodeSigningConfig sets the CodeSigningConfig field's value.
7313func (s *CreateCodeSigningConfigOutput) SetCodeSigningConfig(v *CodeSigningConfig) *CreateCodeSigningConfigOutput {
7314	s.CodeSigningConfig = v
7315	return s
7316}
7317
7318type CreateEventSourceMappingInput struct {
7319	_ struct{} `type:"structure"`
7320
7321	// The maximum number of items to retrieve in a single batch.
7322	//
7323	//    * Amazon Kinesis - Default 100. Max 10,000.
7324	//
7325	//    * Amazon DynamoDB Streams - Default 100. Max 1,000.
7326	//
7327	//    * Amazon Simple Queue Service - Default 10. For standard queues the max
7328	//    is 10,000. For FIFO queues the max is 10.
7329	//
7330	//    * Amazon Managed Streaming for Apache Kafka - Default 100. Max 10,000.
7331	//
7332	//    * Self-Managed Apache Kafka - Default 100. Max 10,000.
7333	BatchSize *int64 `min:"1" type:"integer"`
7334
7335	// (Streams only) If the function returns an error, split the batch in two and
7336	// retry.
7337	BisectBatchOnFunctionError *bool `type:"boolean"`
7338
7339	// (Streams only) An Amazon SQS queue or Amazon SNS topic destination for discarded
7340	// records.
7341	DestinationConfig *DestinationConfig `type:"structure"`
7342
7343	// If true, the event source mapping is active. Set to false to pause polling
7344	// and invocation.
7345	Enabled *bool `type:"boolean"`
7346
7347	// The Amazon Resource Name (ARN) of the event source.
7348	//
7349	//    * Amazon Kinesis - The ARN of the data stream or a stream consumer.
7350	//
7351	//    * Amazon DynamoDB Streams - The ARN of the stream.
7352	//
7353	//    * Amazon Simple Queue Service - The ARN of the queue.
7354	//
7355	//    * Amazon Managed Streaming for Apache Kafka - The ARN of the cluster.
7356	EventSourceArn *string `type:"string"`
7357
7358	// The name of the Lambda function.
7359	//
7360	// Name formats
7361	//
7362	//    * Function name - MyFunction.
7363	//
7364	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.
7365	//
7366	//    * Version or Alias ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction:PROD.
7367	//
7368	//    * Partial ARN - 123456789012:function:MyFunction.
7369	//
7370	// The length constraint applies only to the full ARN. If you specify only the
7371	// function name, it's limited to 64 characters in length.
7372	//
7373	// FunctionName is a required field
7374	FunctionName *string `min:"1" type:"string" required:"true"`
7375
7376	// (Streams only) A list of current response type enums applied to the event
7377	// source mapping.
7378	FunctionResponseTypes []*string `type:"list"`
7379
7380	// (Streams and SQS standard queues) The maximum amount of time to gather records
7381	// before invoking the function, in seconds.
7382	MaximumBatchingWindowInSeconds *int64 `type:"integer"`
7383
7384	// (Streams only) Discard records older than the specified age. The default
7385	// value is infinite (-1).
7386	MaximumRecordAgeInSeconds *int64 `type:"integer"`
7387
7388	// (Streams only) Discard records after the specified number of retries. The
7389	// default value is infinite (-1). When set to infinite (-1), failed records
7390	// will be retried until the record expires.
7391	MaximumRetryAttempts *int64 `type:"integer"`
7392
7393	// (Streams only) The number of batches to process from each shard concurrently.
7394	ParallelizationFactor *int64 `min:"1" type:"integer"`
7395
7396	// (MQ) The name of the Amazon MQ broker destination queue to consume.
7397	Queues []*string `min:"1" type:"list"`
7398
7399	// The Self-Managed Apache Kafka cluster to send records.
7400	SelfManagedEventSource *SelfManagedEventSource `type:"structure"`
7401
7402	// An array of authentication protocols or VPC components required to secure
7403	// your event source.
7404	SourceAccessConfigurations []*SourceAccessConfiguration `type:"list"`
7405
7406	// The position in a stream from which to start reading. Required for Amazon
7407	// Kinesis, Amazon DynamoDB, and Amazon MSK Streams sources. AT_TIMESTAMP is
7408	// only supported for Amazon Kinesis streams.
7409	StartingPosition *string `type:"string" enum:"EventSourcePosition"`
7410
7411	// With StartingPosition set to AT_TIMESTAMP, the time from which to start reading.
7412	StartingPositionTimestamp *time.Time `type:"timestamp"`
7413
7414	// The name of the Kafka topic.
7415	Topics []*string `min:"1" type:"list"`
7416
7417	// (Streams only) The duration in seconds of a processing window. The range
7418	// is between 1 second up to 900 seconds.
7419	TumblingWindowInSeconds *int64 `type:"integer"`
7420}
7421
7422// String returns the string representation
7423func (s CreateEventSourceMappingInput) String() string {
7424	return awsutil.Prettify(s)
7425}
7426
7427// GoString returns the string representation
7428func (s CreateEventSourceMappingInput) GoString() string {
7429	return s.String()
7430}
7431
7432// Validate inspects the fields of the type to determine if they are valid.
7433func (s *CreateEventSourceMappingInput) Validate() error {
7434	invalidParams := request.ErrInvalidParams{Context: "CreateEventSourceMappingInput"}
7435	if s.BatchSize != nil && *s.BatchSize < 1 {
7436		invalidParams.Add(request.NewErrParamMinValue("BatchSize", 1))
7437	}
7438	if s.FunctionName == nil {
7439		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
7440	}
7441	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
7442		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
7443	}
7444	if s.MaximumRecordAgeInSeconds != nil && *s.MaximumRecordAgeInSeconds < -1 {
7445		invalidParams.Add(request.NewErrParamMinValue("MaximumRecordAgeInSeconds", -1))
7446	}
7447	if s.MaximumRetryAttempts != nil && *s.MaximumRetryAttempts < -1 {
7448		invalidParams.Add(request.NewErrParamMinValue("MaximumRetryAttempts", -1))
7449	}
7450	if s.ParallelizationFactor != nil && *s.ParallelizationFactor < 1 {
7451		invalidParams.Add(request.NewErrParamMinValue("ParallelizationFactor", 1))
7452	}
7453	if s.Queues != nil && len(s.Queues) < 1 {
7454		invalidParams.Add(request.NewErrParamMinLen("Queues", 1))
7455	}
7456	if s.Topics != nil && len(s.Topics) < 1 {
7457		invalidParams.Add(request.NewErrParamMinLen("Topics", 1))
7458	}
7459	if s.SelfManagedEventSource != nil {
7460		if err := s.SelfManagedEventSource.Validate(); err != nil {
7461			invalidParams.AddNested("SelfManagedEventSource", err.(request.ErrInvalidParams))
7462		}
7463	}
7464	if s.SourceAccessConfigurations != nil {
7465		for i, v := range s.SourceAccessConfigurations {
7466			if v == nil {
7467				continue
7468			}
7469			if err := v.Validate(); err != nil {
7470				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SourceAccessConfigurations", i), err.(request.ErrInvalidParams))
7471			}
7472		}
7473	}
7474
7475	if invalidParams.Len() > 0 {
7476		return invalidParams
7477	}
7478	return nil
7479}
7480
7481// SetBatchSize sets the BatchSize field's value.
7482func (s *CreateEventSourceMappingInput) SetBatchSize(v int64) *CreateEventSourceMappingInput {
7483	s.BatchSize = &v
7484	return s
7485}
7486
7487// SetBisectBatchOnFunctionError sets the BisectBatchOnFunctionError field's value.
7488func (s *CreateEventSourceMappingInput) SetBisectBatchOnFunctionError(v bool) *CreateEventSourceMappingInput {
7489	s.BisectBatchOnFunctionError = &v
7490	return s
7491}
7492
7493// SetDestinationConfig sets the DestinationConfig field's value.
7494func (s *CreateEventSourceMappingInput) SetDestinationConfig(v *DestinationConfig) *CreateEventSourceMappingInput {
7495	s.DestinationConfig = v
7496	return s
7497}
7498
7499// SetEnabled sets the Enabled field's value.
7500func (s *CreateEventSourceMappingInput) SetEnabled(v bool) *CreateEventSourceMappingInput {
7501	s.Enabled = &v
7502	return s
7503}
7504
7505// SetEventSourceArn sets the EventSourceArn field's value.
7506func (s *CreateEventSourceMappingInput) SetEventSourceArn(v string) *CreateEventSourceMappingInput {
7507	s.EventSourceArn = &v
7508	return s
7509}
7510
7511// SetFunctionName sets the FunctionName field's value.
7512func (s *CreateEventSourceMappingInput) SetFunctionName(v string) *CreateEventSourceMappingInput {
7513	s.FunctionName = &v
7514	return s
7515}
7516
7517// SetFunctionResponseTypes sets the FunctionResponseTypes field's value.
7518func (s *CreateEventSourceMappingInput) SetFunctionResponseTypes(v []*string) *CreateEventSourceMappingInput {
7519	s.FunctionResponseTypes = v
7520	return s
7521}
7522
7523// SetMaximumBatchingWindowInSeconds sets the MaximumBatchingWindowInSeconds field's value.
7524func (s *CreateEventSourceMappingInput) SetMaximumBatchingWindowInSeconds(v int64) *CreateEventSourceMappingInput {
7525	s.MaximumBatchingWindowInSeconds = &v
7526	return s
7527}
7528
7529// SetMaximumRecordAgeInSeconds sets the MaximumRecordAgeInSeconds field's value.
7530func (s *CreateEventSourceMappingInput) SetMaximumRecordAgeInSeconds(v int64) *CreateEventSourceMappingInput {
7531	s.MaximumRecordAgeInSeconds = &v
7532	return s
7533}
7534
7535// SetMaximumRetryAttempts sets the MaximumRetryAttempts field's value.
7536func (s *CreateEventSourceMappingInput) SetMaximumRetryAttempts(v int64) *CreateEventSourceMappingInput {
7537	s.MaximumRetryAttempts = &v
7538	return s
7539}
7540
7541// SetParallelizationFactor sets the ParallelizationFactor field's value.
7542func (s *CreateEventSourceMappingInput) SetParallelizationFactor(v int64) *CreateEventSourceMappingInput {
7543	s.ParallelizationFactor = &v
7544	return s
7545}
7546
7547// SetQueues sets the Queues field's value.
7548func (s *CreateEventSourceMappingInput) SetQueues(v []*string) *CreateEventSourceMappingInput {
7549	s.Queues = v
7550	return s
7551}
7552
7553// SetSelfManagedEventSource sets the SelfManagedEventSource field's value.
7554func (s *CreateEventSourceMappingInput) SetSelfManagedEventSource(v *SelfManagedEventSource) *CreateEventSourceMappingInput {
7555	s.SelfManagedEventSource = v
7556	return s
7557}
7558
7559// SetSourceAccessConfigurations sets the SourceAccessConfigurations field's value.
7560func (s *CreateEventSourceMappingInput) SetSourceAccessConfigurations(v []*SourceAccessConfiguration) *CreateEventSourceMappingInput {
7561	s.SourceAccessConfigurations = v
7562	return s
7563}
7564
7565// SetStartingPosition sets the StartingPosition field's value.
7566func (s *CreateEventSourceMappingInput) SetStartingPosition(v string) *CreateEventSourceMappingInput {
7567	s.StartingPosition = &v
7568	return s
7569}
7570
7571// SetStartingPositionTimestamp sets the StartingPositionTimestamp field's value.
7572func (s *CreateEventSourceMappingInput) SetStartingPositionTimestamp(v time.Time) *CreateEventSourceMappingInput {
7573	s.StartingPositionTimestamp = &v
7574	return s
7575}
7576
7577// SetTopics sets the Topics field's value.
7578func (s *CreateEventSourceMappingInput) SetTopics(v []*string) *CreateEventSourceMappingInput {
7579	s.Topics = v
7580	return s
7581}
7582
7583// SetTumblingWindowInSeconds sets the TumblingWindowInSeconds field's value.
7584func (s *CreateEventSourceMappingInput) SetTumblingWindowInSeconds(v int64) *CreateEventSourceMappingInput {
7585	s.TumblingWindowInSeconds = &v
7586	return s
7587}
7588
7589type CreateFunctionInput struct {
7590	_ struct{} `type:"structure"`
7591
7592	// The code for the function.
7593	//
7594	// Code is a required field
7595	Code *FunctionCode `type:"structure" required:"true"`
7596
7597	// To enable code signing for this function, specify the ARN of a code-signing
7598	// configuration. A code-signing configuration includes a set of signing profiles,
7599	// which define the trusted publishers for this function.
7600	CodeSigningConfigArn *string `type:"string"`
7601
7602	// A dead letter queue configuration that specifies the queue or topic where
7603	// Lambda sends asynchronous events when they fail processing. For more information,
7604	// see Dead Letter Queues (https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html#dlq).
7605	DeadLetterConfig *DeadLetterConfig `type:"structure"`
7606
7607	// A description of the function.
7608	Description *string `type:"string"`
7609
7610	// Environment variables that are accessible from function code during execution.
7611	Environment *Environment `type:"structure"`
7612
7613	// Connection settings for an Amazon EFS file system.
7614	FileSystemConfigs []*FileSystemConfig `type:"list"`
7615
7616	// The name of the Lambda function.
7617	//
7618	// Name formats
7619	//
7620	//    * Function name - my-function.
7621	//
7622	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
7623	//
7624	//    * Partial ARN - 123456789012:function:my-function.
7625	//
7626	// The length constraint applies only to the full ARN. If you specify only the
7627	// function name, it is limited to 64 characters in length.
7628	//
7629	// FunctionName is a required field
7630	FunctionName *string `min:"1" type:"string" required:"true"`
7631
7632	// The name of the method within your code that Lambda calls to execute your
7633	// function. The format includes the file name. It can also include namespaces
7634	// and other qualifiers, depending on the runtime. For more information, see
7635	// Programming Model (https://docs.aws.amazon.com/lambda/latest/dg/programming-model-v2.html).
7636	Handler *string `type:"string"`
7637
7638	// Container image configuration values (https://docs.aws.amazon.com/lambda/latest/dg/configuration-images.html#configuration-images-settings)
7639	// that override the values in the container image Dockerfile.
7640	ImageConfig *ImageConfig `type:"structure"`
7641
7642	// The ARN of the Amazon Web Services Key Management Service (KMS) key that's
7643	// used to encrypt your function's environment variables. If it's not provided,
7644	// Lambda uses a default service key.
7645	KMSKeyArn *string `type:"string"`
7646
7647	// A list of function layers (https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html)
7648	// to add to the function's execution environment. Specify each layer by its
7649	// ARN, including the version.
7650	Layers []*string `type:"list"`
7651
7652	// The amount of memory available to the function (https://docs.aws.amazon.com/lambda/latest/dg/configuration-memory.html)
7653	// at runtime. Increasing the function memory also increases its CPU allocation.
7654	// The default value is 128 MB. The value can be any multiple of 1 MB.
7655	MemorySize *int64 `min:"128" type:"integer"`
7656
7657	// The type of deployment package. Set to Image for container image and set
7658	// Zip for ZIP archive.
7659	PackageType *string `type:"string" enum:"PackageType"`
7660
7661	// Set to true to publish the first version of the function during creation.
7662	Publish *bool `type:"boolean"`
7663
7664	// The Amazon Resource Name (ARN) of the function's execution role.
7665	//
7666	// Role is a required field
7667	Role *string `type:"string" required:"true"`
7668
7669	// The identifier of the function's runtime (https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html).
7670	Runtime *string `type:"string" enum:"Runtime"`
7671
7672	// A list of tags (https://docs.aws.amazon.com/lambda/latest/dg/tagging.html)
7673	// to apply to the function.
7674	Tags map[string]*string `type:"map"`
7675
7676	// The amount of time that Lambda allows a function to run before stopping it.
7677	// The default is 3 seconds. The maximum allowed value is 900 seconds. For additional
7678	// information, see Lambda execution environment (https://docs.aws.amazon.com/lambda/latest/dg/runtimes-context.html).
7679	Timeout *int64 `min:"1" type:"integer"`
7680
7681	// Set Mode to Active to sample and trace a subset of incoming requests with
7682	// X-Ray (https://docs.aws.amazon.com/lambda/latest/dg/services-xray.html).
7683	TracingConfig *TracingConfig `type:"structure"`
7684
7685	// For network connectivity to Amazon Web Services resources in a VPC, specify
7686	// a list of security groups and subnets in the VPC. When you connect a function
7687	// to a VPC, it can only access resources and the internet through that VPC.
7688	// For more information, see VPC Settings (https://docs.aws.amazon.com/lambda/latest/dg/configuration-vpc.html).
7689	VpcConfig *VpcConfig `type:"structure"`
7690}
7691
7692// String returns the string representation
7693func (s CreateFunctionInput) String() string {
7694	return awsutil.Prettify(s)
7695}
7696
7697// GoString returns the string representation
7698func (s CreateFunctionInput) GoString() string {
7699	return s.String()
7700}
7701
7702// Validate inspects the fields of the type to determine if they are valid.
7703func (s *CreateFunctionInput) Validate() error {
7704	invalidParams := request.ErrInvalidParams{Context: "CreateFunctionInput"}
7705	if s.Code == nil {
7706		invalidParams.Add(request.NewErrParamRequired("Code"))
7707	}
7708	if s.FunctionName == nil {
7709		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
7710	}
7711	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
7712		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
7713	}
7714	if s.MemorySize != nil && *s.MemorySize < 128 {
7715		invalidParams.Add(request.NewErrParamMinValue("MemorySize", 128))
7716	}
7717	if s.Role == nil {
7718		invalidParams.Add(request.NewErrParamRequired("Role"))
7719	}
7720	if s.Timeout != nil && *s.Timeout < 1 {
7721		invalidParams.Add(request.NewErrParamMinValue("Timeout", 1))
7722	}
7723	if s.Code != nil {
7724		if err := s.Code.Validate(); err != nil {
7725			invalidParams.AddNested("Code", err.(request.ErrInvalidParams))
7726		}
7727	}
7728	if s.FileSystemConfigs != nil {
7729		for i, v := range s.FileSystemConfigs {
7730			if v == nil {
7731				continue
7732			}
7733			if err := v.Validate(); err != nil {
7734				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "FileSystemConfigs", i), err.(request.ErrInvalidParams))
7735			}
7736		}
7737	}
7738
7739	if invalidParams.Len() > 0 {
7740		return invalidParams
7741	}
7742	return nil
7743}
7744
7745// SetCode sets the Code field's value.
7746func (s *CreateFunctionInput) SetCode(v *FunctionCode) *CreateFunctionInput {
7747	s.Code = v
7748	return s
7749}
7750
7751// SetCodeSigningConfigArn sets the CodeSigningConfigArn field's value.
7752func (s *CreateFunctionInput) SetCodeSigningConfigArn(v string) *CreateFunctionInput {
7753	s.CodeSigningConfigArn = &v
7754	return s
7755}
7756
7757// SetDeadLetterConfig sets the DeadLetterConfig field's value.
7758func (s *CreateFunctionInput) SetDeadLetterConfig(v *DeadLetterConfig) *CreateFunctionInput {
7759	s.DeadLetterConfig = v
7760	return s
7761}
7762
7763// SetDescription sets the Description field's value.
7764func (s *CreateFunctionInput) SetDescription(v string) *CreateFunctionInput {
7765	s.Description = &v
7766	return s
7767}
7768
7769// SetEnvironment sets the Environment field's value.
7770func (s *CreateFunctionInput) SetEnvironment(v *Environment) *CreateFunctionInput {
7771	s.Environment = v
7772	return s
7773}
7774
7775// SetFileSystemConfigs sets the FileSystemConfigs field's value.
7776func (s *CreateFunctionInput) SetFileSystemConfigs(v []*FileSystemConfig) *CreateFunctionInput {
7777	s.FileSystemConfigs = v
7778	return s
7779}
7780
7781// SetFunctionName sets the FunctionName field's value.
7782func (s *CreateFunctionInput) SetFunctionName(v string) *CreateFunctionInput {
7783	s.FunctionName = &v
7784	return s
7785}
7786
7787// SetHandler sets the Handler field's value.
7788func (s *CreateFunctionInput) SetHandler(v string) *CreateFunctionInput {
7789	s.Handler = &v
7790	return s
7791}
7792
7793// SetImageConfig sets the ImageConfig field's value.
7794func (s *CreateFunctionInput) SetImageConfig(v *ImageConfig) *CreateFunctionInput {
7795	s.ImageConfig = v
7796	return s
7797}
7798
7799// SetKMSKeyArn sets the KMSKeyArn field's value.
7800func (s *CreateFunctionInput) SetKMSKeyArn(v string) *CreateFunctionInput {
7801	s.KMSKeyArn = &v
7802	return s
7803}
7804
7805// SetLayers sets the Layers field's value.
7806func (s *CreateFunctionInput) SetLayers(v []*string) *CreateFunctionInput {
7807	s.Layers = v
7808	return s
7809}
7810
7811// SetMemorySize sets the MemorySize field's value.
7812func (s *CreateFunctionInput) SetMemorySize(v int64) *CreateFunctionInput {
7813	s.MemorySize = &v
7814	return s
7815}
7816
7817// SetPackageType sets the PackageType field's value.
7818func (s *CreateFunctionInput) SetPackageType(v string) *CreateFunctionInput {
7819	s.PackageType = &v
7820	return s
7821}
7822
7823// SetPublish sets the Publish field's value.
7824func (s *CreateFunctionInput) SetPublish(v bool) *CreateFunctionInput {
7825	s.Publish = &v
7826	return s
7827}
7828
7829// SetRole sets the Role field's value.
7830func (s *CreateFunctionInput) SetRole(v string) *CreateFunctionInput {
7831	s.Role = &v
7832	return s
7833}
7834
7835// SetRuntime sets the Runtime field's value.
7836func (s *CreateFunctionInput) SetRuntime(v string) *CreateFunctionInput {
7837	s.Runtime = &v
7838	return s
7839}
7840
7841// SetTags sets the Tags field's value.
7842func (s *CreateFunctionInput) SetTags(v map[string]*string) *CreateFunctionInput {
7843	s.Tags = v
7844	return s
7845}
7846
7847// SetTimeout sets the Timeout field's value.
7848func (s *CreateFunctionInput) SetTimeout(v int64) *CreateFunctionInput {
7849	s.Timeout = &v
7850	return s
7851}
7852
7853// SetTracingConfig sets the TracingConfig field's value.
7854func (s *CreateFunctionInput) SetTracingConfig(v *TracingConfig) *CreateFunctionInput {
7855	s.TracingConfig = v
7856	return s
7857}
7858
7859// SetVpcConfig sets the VpcConfig field's value.
7860func (s *CreateFunctionInput) SetVpcConfig(v *VpcConfig) *CreateFunctionInput {
7861	s.VpcConfig = v
7862	return s
7863}
7864
7865// The dead-letter queue (https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html#dlq)
7866// for failed asynchronous invocations.
7867type DeadLetterConfig struct {
7868	_ struct{} `type:"structure"`
7869
7870	// The Amazon Resource Name (ARN) of an Amazon SQS queue or Amazon SNS topic.
7871	TargetArn *string `type:"string"`
7872}
7873
7874// String returns the string representation
7875func (s DeadLetterConfig) String() string {
7876	return awsutil.Prettify(s)
7877}
7878
7879// GoString returns the string representation
7880func (s DeadLetterConfig) GoString() string {
7881	return s.String()
7882}
7883
7884// SetTargetArn sets the TargetArn field's value.
7885func (s *DeadLetterConfig) SetTargetArn(v string) *DeadLetterConfig {
7886	s.TargetArn = &v
7887	return s
7888}
7889
7890type DeleteAliasInput struct {
7891	_ struct{} `type:"structure"`
7892
7893	// The name of the Lambda function.
7894	//
7895	// Name formats
7896	//
7897	//    * Function name - MyFunction.
7898	//
7899	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.
7900	//
7901	//    * Partial ARN - 123456789012:function:MyFunction.
7902	//
7903	// The length constraint applies only to the full ARN. If you specify only the
7904	// function name, it is limited to 64 characters in length.
7905	//
7906	// FunctionName is a required field
7907	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
7908
7909	// The name of the alias.
7910	//
7911	// Name is a required field
7912	Name *string `location:"uri" locationName:"Name" min:"1" type:"string" required:"true"`
7913}
7914
7915// String returns the string representation
7916func (s DeleteAliasInput) String() string {
7917	return awsutil.Prettify(s)
7918}
7919
7920// GoString returns the string representation
7921func (s DeleteAliasInput) GoString() string {
7922	return s.String()
7923}
7924
7925// Validate inspects the fields of the type to determine if they are valid.
7926func (s *DeleteAliasInput) Validate() error {
7927	invalidParams := request.ErrInvalidParams{Context: "DeleteAliasInput"}
7928	if s.FunctionName == nil {
7929		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
7930	}
7931	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
7932		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
7933	}
7934	if s.Name == nil {
7935		invalidParams.Add(request.NewErrParamRequired("Name"))
7936	}
7937	if s.Name != nil && len(*s.Name) < 1 {
7938		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
7939	}
7940
7941	if invalidParams.Len() > 0 {
7942		return invalidParams
7943	}
7944	return nil
7945}
7946
7947// SetFunctionName sets the FunctionName field's value.
7948func (s *DeleteAliasInput) SetFunctionName(v string) *DeleteAliasInput {
7949	s.FunctionName = &v
7950	return s
7951}
7952
7953// SetName sets the Name field's value.
7954func (s *DeleteAliasInput) SetName(v string) *DeleteAliasInput {
7955	s.Name = &v
7956	return s
7957}
7958
7959type DeleteAliasOutput struct {
7960	_ struct{} `type:"structure"`
7961}
7962
7963// String returns the string representation
7964func (s DeleteAliasOutput) String() string {
7965	return awsutil.Prettify(s)
7966}
7967
7968// GoString returns the string representation
7969func (s DeleteAliasOutput) GoString() string {
7970	return s.String()
7971}
7972
7973type DeleteCodeSigningConfigInput struct {
7974	_ struct{} `type:"structure"`
7975
7976	// The The Amazon Resource Name (ARN) of the code signing configuration.
7977	//
7978	// CodeSigningConfigArn is a required field
7979	CodeSigningConfigArn *string `location:"uri" locationName:"CodeSigningConfigArn" type:"string" required:"true"`
7980}
7981
7982// String returns the string representation
7983func (s DeleteCodeSigningConfigInput) String() string {
7984	return awsutil.Prettify(s)
7985}
7986
7987// GoString returns the string representation
7988func (s DeleteCodeSigningConfigInput) GoString() string {
7989	return s.String()
7990}
7991
7992// Validate inspects the fields of the type to determine if they are valid.
7993func (s *DeleteCodeSigningConfigInput) Validate() error {
7994	invalidParams := request.ErrInvalidParams{Context: "DeleteCodeSigningConfigInput"}
7995	if s.CodeSigningConfigArn == nil {
7996		invalidParams.Add(request.NewErrParamRequired("CodeSigningConfigArn"))
7997	}
7998	if s.CodeSigningConfigArn != nil && len(*s.CodeSigningConfigArn) < 1 {
7999		invalidParams.Add(request.NewErrParamMinLen("CodeSigningConfigArn", 1))
8000	}
8001
8002	if invalidParams.Len() > 0 {
8003		return invalidParams
8004	}
8005	return nil
8006}
8007
8008// SetCodeSigningConfigArn sets the CodeSigningConfigArn field's value.
8009func (s *DeleteCodeSigningConfigInput) SetCodeSigningConfigArn(v string) *DeleteCodeSigningConfigInput {
8010	s.CodeSigningConfigArn = &v
8011	return s
8012}
8013
8014type DeleteCodeSigningConfigOutput struct {
8015	_ struct{} `type:"structure"`
8016}
8017
8018// String returns the string representation
8019func (s DeleteCodeSigningConfigOutput) String() string {
8020	return awsutil.Prettify(s)
8021}
8022
8023// GoString returns the string representation
8024func (s DeleteCodeSigningConfigOutput) GoString() string {
8025	return s.String()
8026}
8027
8028type DeleteEventSourceMappingInput struct {
8029	_ struct{} `type:"structure"`
8030
8031	// The identifier of the event source mapping.
8032	//
8033	// UUID is a required field
8034	UUID *string `location:"uri" locationName:"UUID" type:"string" required:"true"`
8035}
8036
8037// String returns the string representation
8038func (s DeleteEventSourceMappingInput) String() string {
8039	return awsutil.Prettify(s)
8040}
8041
8042// GoString returns the string representation
8043func (s DeleteEventSourceMappingInput) GoString() string {
8044	return s.String()
8045}
8046
8047// Validate inspects the fields of the type to determine if they are valid.
8048func (s *DeleteEventSourceMappingInput) Validate() error {
8049	invalidParams := request.ErrInvalidParams{Context: "DeleteEventSourceMappingInput"}
8050	if s.UUID == nil {
8051		invalidParams.Add(request.NewErrParamRequired("UUID"))
8052	}
8053	if s.UUID != nil && len(*s.UUID) < 1 {
8054		invalidParams.Add(request.NewErrParamMinLen("UUID", 1))
8055	}
8056
8057	if invalidParams.Len() > 0 {
8058		return invalidParams
8059	}
8060	return nil
8061}
8062
8063// SetUUID sets the UUID field's value.
8064func (s *DeleteEventSourceMappingInput) SetUUID(v string) *DeleteEventSourceMappingInput {
8065	s.UUID = &v
8066	return s
8067}
8068
8069type DeleteFunctionCodeSigningConfigInput struct {
8070	_ struct{} `type:"structure"`
8071
8072	// The name of the Lambda function.
8073	//
8074	// Name formats
8075	//
8076	//    * Function name - MyFunction.
8077	//
8078	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.
8079	//
8080	//    * Partial ARN - 123456789012:function:MyFunction.
8081	//
8082	// The length constraint applies only to the full ARN. If you specify only the
8083	// function name, it is limited to 64 characters in length.
8084	//
8085	// FunctionName is a required field
8086	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
8087}
8088
8089// String returns the string representation
8090func (s DeleteFunctionCodeSigningConfigInput) String() string {
8091	return awsutil.Prettify(s)
8092}
8093
8094// GoString returns the string representation
8095func (s DeleteFunctionCodeSigningConfigInput) GoString() string {
8096	return s.String()
8097}
8098
8099// Validate inspects the fields of the type to determine if they are valid.
8100func (s *DeleteFunctionCodeSigningConfigInput) Validate() error {
8101	invalidParams := request.ErrInvalidParams{Context: "DeleteFunctionCodeSigningConfigInput"}
8102	if s.FunctionName == nil {
8103		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
8104	}
8105	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
8106		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
8107	}
8108
8109	if invalidParams.Len() > 0 {
8110		return invalidParams
8111	}
8112	return nil
8113}
8114
8115// SetFunctionName sets the FunctionName field's value.
8116func (s *DeleteFunctionCodeSigningConfigInput) SetFunctionName(v string) *DeleteFunctionCodeSigningConfigInput {
8117	s.FunctionName = &v
8118	return s
8119}
8120
8121type DeleteFunctionCodeSigningConfigOutput struct {
8122	_ struct{} `type:"structure"`
8123}
8124
8125// String returns the string representation
8126func (s DeleteFunctionCodeSigningConfigOutput) String() string {
8127	return awsutil.Prettify(s)
8128}
8129
8130// GoString returns the string representation
8131func (s DeleteFunctionCodeSigningConfigOutput) GoString() string {
8132	return s.String()
8133}
8134
8135type DeleteFunctionConcurrencyInput struct {
8136	_ struct{} `type:"structure"`
8137
8138	// The name of the Lambda function.
8139	//
8140	// Name formats
8141	//
8142	//    * Function name - my-function.
8143	//
8144	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
8145	//
8146	//    * Partial ARN - 123456789012:function:my-function.
8147	//
8148	// The length constraint applies only to the full ARN. If you specify only the
8149	// function name, it is limited to 64 characters in length.
8150	//
8151	// FunctionName is a required field
8152	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
8153}
8154
8155// String returns the string representation
8156func (s DeleteFunctionConcurrencyInput) String() string {
8157	return awsutil.Prettify(s)
8158}
8159
8160// GoString returns the string representation
8161func (s DeleteFunctionConcurrencyInput) GoString() string {
8162	return s.String()
8163}
8164
8165// Validate inspects the fields of the type to determine if they are valid.
8166func (s *DeleteFunctionConcurrencyInput) Validate() error {
8167	invalidParams := request.ErrInvalidParams{Context: "DeleteFunctionConcurrencyInput"}
8168	if s.FunctionName == nil {
8169		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
8170	}
8171	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
8172		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
8173	}
8174
8175	if invalidParams.Len() > 0 {
8176		return invalidParams
8177	}
8178	return nil
8179}
8180
8181// SetFunctionName sets the FunctionName field's value.
8182func (s *DeleteFunctionConcurrencyInput) SetFunctionName(v string) *DeleteFunctionConcurrencyInput {
8183	s.FunctionName = &v
8184	return s
8185}
8186
8187type DeleteFunctionConcurrencyOutput struct {
8188	_ struct{} `type:"structure"`
8189}
8190
8191// String returns the string representation
8192func (s DeleteFunctionConcurrencyOutput) String() string {
8193	return awsutil.Prettify(s)
8194}
8195
8196// GoString returns the string representation
8197func (s DeleteFunctionConcurrencyOutput) GoString() string {
8198	return s.String()
8199}
8200
8201type DeleteFunctionEventInvokeConfigInput struct {
8202	_ struct{} `type:"structure"`
8203
8204	// The name of the Lambda function, version, or alias.
8205	//
8206	// Name formats
8207	//
8208	//    * Function name - my-function (name-only), my-function:v1 (with alias).
8209	//
8210	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
8211	//
8212	//    * Partial ARN - 123456789012:function:my-function.
8213	//
8214	// You can append a version number or alias to any of the formats. The length
8215	// constraint applies only to the full ARN. If you specify only the function
8216	// name, it is limited to 64 characters in length.
8217	//
8218	// FunctionName is a required field
8219	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
8220
8221	// A version number or alias name.
8222	Qualifier *string `location:"querystring" locationName:"Qualifier" min:"1" type:"string"`
8223}
8224
8225// String returns the string representation
8226func (s DeleteFunctionEventInvokeConfigInput) String() string {
8227	return awsutil.Prettify(s)
8228}
8229
8230// GoString returns the string representation
8231func (s DeleteFunctionEventInvokeConfigInput) GoString() string {
8232	return s.String()
8233}
8234
8235// Validate inspects the fields of the type to determine if they are valid.
8236func (s *DeleteFunctionEventInvokeConfigInput) Validate() error {
8237	invalidParams := request.ErrInvalidParams{Context: "DeleteFunctionEventInvokeConfigInput"}
8238	if s.FunctionName == nil {
8239		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
8240	}
8241	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
8242		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
8243	}
8244	if s.Qualifier != nil && len(*s.Qualifier) < 1 {
8245		invalidParams.Add(request.NewErrParamMinLen("Qualifier", 1))
8246	}
8247
8248	if invalidParams.Len() > 0 {
8249		return invalidParams
8250	}
8251	return nil
8252}
8253
8254// SetFunctionName sets the FunctionName field's value.
8255func (s *DeleteFunctionEventInvokeConfigInput) SetFunctionName(v string) *DeleteFunctionEventInvokeConfigInput {
8256	s.FunctionName = &v
8257	return s
8258}
8259
8260// SetQualifier sets the Qualifier field's value.
8261func (s *DeleteFunctionEventInvokeConfigInput) SetQualifier(v string) *DeleteFunctionEventInvokeConfigInput {
8262	s.Qualifier = &v
8263	return s
8264}
8265
8266type DeleteFunctionEventInvokeConfigOutput struct {
8267	_ struct{} `type:"structure"`
8268}
8269
8270// String returns the string representation
8271func (s DeleteFunctionEventInvokeConfigOutput) String() string {
8272	return awsutil.Prettify(s)
8273}
8274
8275// GoString returns the string representation
8276func (s DeleteFunctionEventInvokeConfigOutput) GoString() string {
8277	return s.String()
8278}
8279
8280type DeleteFunctionInput struct {
8281	_ struct{} `type:"structure"`
8282
8283	// The name of the Lambda function or version.
8284	//
8285	// Name formats
8286	//
8287	//    * Function name - my-function (name-only), my-function:1 (with version).
8288	//
8289	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
8290	//
8291	//    * Partial ARN - 123456789012:function:my-function.
8292	//
8293	// You can append a version number or alias to any of the formats. The length
8294	// constraint applies only to the full ARN. If you specify only the function
8295	// name, it is limited to 64 characters in length.
8296	//
8297	// FunctionName is a required field
8298	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
8299
8300	// Specify a version to delete. You can't delete a version that's referenced
8301	// by an alias.
8302	Qualifier *string `location:"querystring" locationName:"Qualifier" min:"1" type:"string"`
8303}
8304
8305// String returns the string representation
8306func (s DeleteFunctionInput) String() string {
8307	return awsutil.Prettify(s)
8308}
8309
8310// GoString returns the string representation
8311func (s DeleteFunctionInput) GoString() string {
8312	return s.String()
8313}
8314
8315// Validate inspects the fields of the type to determine if they are valid.
8316func (s *DeleteFunctionInput) Validate() error {
8317	invalidParams := request.ErrInvalidParams{Context: "DeleteFunctionInput"}
8318	if s.FunctionName == nil {
8319		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
8320	}
8321	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
8322		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
8323	}
8324	if s.Qualifier != nil && len(*s.Qualifier) < 1 {
8325		invalidParams.Add(request.NewErrParamMinLen("Qualifier", 1))
8326	}
8327
8328	if invalidParams.Len() > 0 {
8329		return invalidParams
8330	}
8331	return nil
8332}
8333
8334// SetFunctionName sets the FunctionName field's value.
8335func (s *DeleteFunctionInput) SetFunctionName(v string) *DeleteFunctionInput {
8336	s.FunctionName = &v
8337	return s
8338}
8339
8340// SetQualifier sets the Qualifier field's value.
8341func (s *DeleteFunctionInput) SetQualifier(v string) *DeleteFunctionInput {
8342	s.Qualifier = &v
8343	return s
8344}
8345
8346type DeleteFunctionOutput struct {
8347	_ struct{} `type:"structure"`
8348}
8349
8350// String returns the string representation
8351func (s DeleteFunctionOutput) String() string {
8352	return awsutil.Prettify(s)
8353}
8354
8355// GoString returns the string representation
8356func (s DeleteFunctionOutput) GoString() string {
8357	return s.String()
8358}
8359
8360type DeleteLayerVersionInput struct {
8361	_ struct{} `type:"structure"`
8362
8363	// The name or Amazon Resource Name (ARN) of the layer.
8364	//
8365	// LayerName is a required field
8366	LayerName *string `location:"uri" locationName:"LayerName" min:"1" type:"string" required:"true"`
8367
8368	// The version number.
8369	//
8370	// VersionNumber is a required field
8371	VersionNumber *int64 `location:"uri" locationName:"VersionNumber" type:"long" required:"true"`
8372}
8373
8374// String returns the string representation
8375func (s DeleteLayerVersionInput) String() string {
8376	return awsutil.Prettify(s)
8377}
8378
8379// GoString returns the string representation
8380func (s DeleteLayerVersionInput) GoString() string {
8381	return s.String()
8382}
8383
8384// Validate inspects the fields of the type to determine if they are valid.
8385func (s *DeleteLayerVersionInput) Validate() error {
8386	invalidParams := request.ErrInvalidParams{Context: "DeleteLayerVersionInput"}
8387	if s.LayerName == nil {
8388		invalidParams.Add(request.NewErrParamRequired("LayerName"))
8389	}
8390	if s.LayerName != nil && len(*s.LayerName) < 1 {
8391		invalidParams.Add(request.NewErrParamMinLen("LayerName", 1))
8392	}
8393	if s.VersionNumber == nil {
8394		invalidParams.Add(request.NewErrParamRequired("VersionNumber"))
8395	}
8396
8397	if invalidParams.Len() > 0 {
8398		return invalidParams
8399	}
8400	return nil
8401}
8402
8403// SetLayerName sets the LayerName field's value.
8404func (s *DeleteLayerVersionInput) SetLayerName(v string) *DeleteLayerVersionInput {
8405	s.LayerName = &v
8406	return s
8407}
8408
8409// SetVersionNumber sets the VersionNumber field's value.
8410func (s *DeleteLayerVersionInput) SetVersionNumber(v int64) *DeleteLayerVersionInput {
8411	s.VersionNumber = &v
8412	return s
8413}
8414
8415type DeleteLayerVersionOutput struct {
8416	_ struct{} `type:"structure"`
8417}
8418
8419// String returns the string representation
8420func (s DeleteLayerVersionOutput) String() string {
8421	return awsutil.Prettify(s)
8422}
8423
8424// GoString returns the string representation
8425func (s DeleteLayerVersionOutput) GoString() string {
8426	return s.String()
8427}
8428
8429type DeleteProvisionedConcurrencyConfigInput struct {
8430	_ struct{} `type:"structure"`
8431
8432	// The name of the Lambda function.
8433	//
8434	// Name formats
8435	//
8436	//    * Function name - my-function.
8437	//
8438	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
8439	//
8440	//    * Partial ARN - 123456789012:function:my-function.
8441	//
8442	// The length constraint applies only to the full ARN. If you specify only the
8443	// function name, it is limited to 64 characters in length.
8444	//
8445	// FunctionName is a required field
8446	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
8447
8448	// The version number or alias name.
8449	//
8450	// Qualifier is a required field
8451	Qualifier *string `location:"querystring" locationName:"Qualifier" min:"1" type:"string" required:"true"`
8452}
8453
8454// String returns the string representation
8455func (s DeleteProvisionedConcurrencyConfigInput) String() string {
8456	return awsutil.Prettify(s)
8457}
8458
8459// GoString returns the string representation
8460func (s DeleteProvisionedConcurrencyConfigInput) GoString() string {
8461	return s.String()
8462}
8463
8464// Validate inspects the fields of the type to determine if they are valid.
8465func (s *DeleteProvisionedConcurrencyConfigInput) Validate() error {
8466	invalidParams := request.ErrInvalidParams{Context: "DeleteProvisionedConcurrencyConfigInput"}
8467	if s.FunctionName == nil {
8468		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
8469	}
8470	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
8471		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
8472	}
8473	if s.Qualifier == nil {
8474		invalidParams.Add(request.NewErrParamRequired("Qualifier"))
8475	}
8476	if s.Qualifier != nil && len(*s.Qualifier) < 1 {
8477		invalidParams.Add(request.NewErrParamMinLen("Qualifier", 1))
8478	}
8479
8480	if invalidParams.Len() > 0 {
8481		return invalidParams
8482	}
8483	return nil
8484}
8485
8486// SetFunctionName sets the FunctionName field's value.
8487func (s *DeleteProvisionedConcurrencyConfigInput) SetFunctionName(v string) *DeleteProvisionedConcurrencyConfigInput {
8488	s.FunctionName = &v
8489	return s
8490}
8491
8492// SetQualifier sets the Qualifier field's value.
8493func (s *DeleteProvisionedConcurrencyConfigInput) SetQualifier(v string) *DeleteProvisionedConcurrencyConfigInput {
8494	s.Qualifier = &v
8495	return s
8496}
8497
8498type DeleteProvisionedConcurrencyConfigOutput struct {
8499	_ struct{} `type:"structure"`
8500}
8501
8502// String returns the string representation
8503func (s DeleteProvisionedConcurrencyConfigOutput) String() string {
8504	return awsutil.Prettify(s)
8505}
8506
8507// GoString returns the string representation
8508func (s DeleteProvisionedConcurrencyConfigOutput) GoString() string {
8509	return s.String()
8510}
8511
8512// A configuration object that specifies the destination of an event after Lambda
8513// processes it.
8514type DestinationConfig struct {
8515	_ struct{} `type:"structure"`
8516
8517	// The destination configuration for failed invocations.
8518	OnFailure *OnFailure `type:"structure"`
8519
8520	// The destination configuration for successful invocations.
8521	OnSuccess *OnSuccess `type:"structure"`
8522}
8523
8524// String returns the string representation
8525func (s DestinationConfig) String() string {
8526	return awsutil.Prettify(s)
8527}
8528
8529// GoString returns the string representation
8530func (s DestinationConfig) GoString() string {
8531	return s.String()
8532}
8533
8534// SetOnFailure sets the OnFailure field's value.
8535func (s *DestinationConfig) SetOnFailure(v *OnFailure) *DestinationConfig {
8536	s.OnFailure = v
8537	return s
8538}
8539
8540// SetOnSuccess sets the OnSuccess field's value.
8541func (s *DestinationConfig) SetOnSuccess(v *OnSuccess) *DestinationConfig {
8542	s.OnSuccess = v
8543	return s
8544}
8545
8546// Need additional permissions to configure VPC settings.
8547type EC2AccessDeniedException struct {
8548	_            struct{}                  `type:"structure"`
8549	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
8550
8551	Message_ *string `locationName:"Message" type:"string"`
8552
8553	Type *string `type:"string"`
8554}
8555
8556// String returns the string representation
8557func (s EC2AccessDeniedException) String() string {
8558	return awsutil.Prettify(s)
8559}
8560
8561// GoString returns the string representation
8562func (s EC2AccessDeniedException) GoString() string {
8563	return s.String()
8564}
8565
8566func newErrorEC2AccessDeniedException(v protocol.ResponseMetadata) error {
8567	return &EC2AccessDeniedException{
8568		RespMetadata: v,
8569	}
8570}
8571
8572// Code returns the exception type name.
8573func (s *EC2AccessDeniedException) Code() string {
8574	return "EC2AccessDeniedException"
8575}
8576
8577// Message returns the exception's message.
8578func (s *EC2AccessDeniedException) Message() string {
8579	if s.Message_ != nil {
8580		return *s.Message_
8581	}
8582	return ""
8583}
8584
8585// OrigErr always returns nil, satisfies awserr.Error interface.
8586func (s *EC2AccessDeniedException) OrigErr() error {
8587	return nil
8588}
8589
8590func (s *EC2AccessDeniedException) Error() string {
8591	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
8592}
8593
8594// Status code returns the HTTP status code for the request's response error.
8595func (s *EC2AccessDeniedException) StatusCode() int {
8596	return s.RespMetadata.StatusCode
8597}
8598
8599// RequestID returns the service's response RequestID for request.
8600func (s *EC2AccessDeniedException) RequestID() string {
8601	return s.RespMetadata.RequestID
8602}
8603
8604// Lambda was throttled by Amazon EC2 during Lambda function initialization
8605// using the execution role provided for the Lambda function.
8606type EC2ThrottledException struct {
8607	_            struct{}                  `type:"structure"`
8608	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
8609
8610	Message_ *string `locationName:"Message" type:"string"`
8611
8612	Type *string `type:"string"`
8613}
8614
8615// String returns the string representation
8616func (s EC2ThrottledException) String() string {
8617	return awsutil.Prettify(s)
8618}
8619
8620// GoString returns the string representation
8621func (s EC2ThrottledException) GoString() string {
8622	return s.String()
8623}
8624
8625func newErrorEC2ThrottledException(v protocol.ResponseMetadata) error {
8626	return &EC2ThrottledException{
8627		RespMetadata: v,
8628	}
8629}
8630
8631// Code returns the exception type name.
8632func (s *EC2ThrottledException) Code() string {
8633	return "EC2ThrottledException"
8634}
8635
8636// Message returns the exception's message.
8637func (s *EC2ThrottledException) Message() string {
8638	if s.Message_ != nil {
8639		return *s.Message_
8640	}
8641	return ""
8642}
8643
8644// OrigErr always returns nil, satisfies awserr.Error interface.
8645func (s *EC2ThrottledException) OrigErr() error {
8646	return nil
8647}
8648
8649func (s *EC2ThrottledException) Error() string {
8650	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
8651}
8652
8653// Status code returns the HTTP status code for the request's response error.
8654func (s *EC2ThrottledException) StatusCode() int {
8655	return s.RespMetadata.StatusCode
8656}
8657
8658// RequestID returns the service's response RequestID for request.
8659func (s *EC2ThrottledException) RequestID() string {
8660	return s.RespMetadata.RequestID
8661}
8662
8663// Lambda received an unexpected EC2 client exception while setting up for the
8664// Lambda function.
8665type EC2UnexpectedException struct {
8666	_            struct{}                  `type:"structure"`
8667	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
8668
8669	EC2ErrorCode *string `type:"string"`
8670
8671	Message_ *string `locationName:"Message" type:"string"`
8672
8673	Type *string `type:"string"`
8674}
8675
8676// String returns the string representation
8677func (s EC2UnexpectedException) String() string {
8678	return awsutil.Prettify(s)
8679}
8680
8681// GoString returns the string representation
8682func (s EC2UnexpectedException) GoString() string {
8683	return s.String()
8684}
8685
8686func newErrorEC2UnexpectedException(v protocol.ResponseMetadata) error {
8687	return &EC2UnexpectedException{
8688		RespMetadata: v,
8689	}
8690}
8691
8692// Code returns the exception type name.
8693func (s *EC2UnexpectedException) Code() string {
8694	return "EC2UnexpectedException"
8695}
8696
8697// Message returns the exception's message.
8698func (s *EC2UnexpectedException) Message() string {
8699	if s.Message_ != nil {
8700		return *s.Message_
8701	}
8702	return ""
8703}
8704
8705// OrigErr always returns nil, satisfies awserr.Error interface.
8706func (s *EC2UnexpectedException) OrigErr() error {
8707	return nil
8708}
8709
8710func (s *EC2UnexpectedException) Error() string {
8711	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
8712}
8713
8714// Status code returns the HTTP status code for the request's response error.
8715func (s *EC2UnexpectedException) StatusCode() int {
8716	return s.RespMetadata.StatusCode
8717}
8718
8719// RequestID returns the service's response RequestID for request.
8720func (s *EC2UnexpectedException) RequestID() string {
8721	return s.RespMetadata.RequestID
8722}
8723
8724// An error occured when reading from or writing to a connected file system.
8725type EFSIOException struct {
8726	_            struct{}                  `type:"structure"`
8727	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
8728
8729	Message_ *string `locationName:"Message" type:"string"`
8730
8731	Type *string `type:"string"`
8732}
8733
8734// String returns the string representation
8735func (s EFSIOException) String() string {
8736	return awsutil.Prettify(s)
8737}
8738
8739// GoString returns the string representation
8740func (s EFSIOException) GoString() string {
8741	return s.String()
8742}
8743
8744func newErrorEFSIOException(v protocol.ResponseMetadata) error {
8745	return &EFSIOException{
8746		RespMetadata: v,
8747	}
8748}
8749
8750// Code returns the exception type name.
8751func (s *EFSIOException) Code() string {
8752	return "EFSIOException"
8753}
8754
8755// Message returns the exception's message.
8756func (s *EFSIOException) Message() string {
8757	if s.Message_ != nil {
8758		return *s.Message_
8759	}
8760	return ""
8761}
8762
8763// OrigErr always returns nil, satisfies awserr.Error interface.
8764func (s *EFSIOException) OrigErr() error {
8765	return nil
8766}
8767
8768func (s *EFSIOException) Error() string {
8769	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
8770}
8771
8772// Status code returns the HTTP status code for the request's response error.
8773func (s *EFSIOException) StatusCode() int {
8774	return s.RespMetadata.StatusCode
8775}
8776
8777// RequestID returns the service's response RequestID for request.
8778func (s *EFSIOException) RequestID() string {
8779	return s.RespMetadata.RequestID
8780}
8781
8782// The function couldn't make a network connection to the configured file system.
8783type EFSMountConnectivityException struct {
8784	_            struct{}                  `type:"structure"`
8785	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
8786
8787	Message_ *string `locationName:"Message" type:"string"`
8788
8789	Type *string `type:"string"`
8790}
8791
8792// String returns the string representation
8793func (s EFSMountConnectivityException) String() string {
8794	return awsutil.Prettify(s)
8795}
8796
8797// GoString returns the string representation
8798func (s EFSMountConnectivityException) GoString() string {
8799	return s.String()
8800}
8801
8802func newErrorEFSMountConnectivityException(v protocol.ResponseMetadata) error {
8803	return &EFSMountConnectivityException{
8804		RespMetadata: v,
8805	}
8806}
8807
8808// Code returns the exception type name.
8809func (s *EFSMountConnectivityException) Code() string {
8810	return "EFSMountConnectivityException"
8811}
8812
8813// Message returns the exception's message.
8814func (s *EFSMountConnectivityException) Message() string {
8815	if s.Message_ != nil {
8816		return *s.Message_
8817	}
8818	return ""
8819}
8820
8821// OrigErr always returns nil, satisfies awserr.Error interface.
8822func (s *EFSMountConnectivityException) OrigErr() error {
8823	return nil
8824}
8825
8826func (s *EFSMountConnectivityException) Error() string {
8827	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
8828}
8829
8830// Status code returns the HTTP status code for the request's response error.
8831func (s *EFSMountConnectivityException) StatusCode() int {
8832	return s.RespMetadata.StatusCode
8833}
8834
8835// RequestID returns the service's response RequestID for request.
8836func (s *EFSMountConnectivityException) RequestID() string {
8837	return s.RespMetadata.RequestID
8838}
8839
8840// The function couldn't mount the configured file system due to a permission
8841// or configuration issue.
8842type EFSMountFailureException struct {
8843	_            struct{}                  `type:"structure"`
8844	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
8845
8846	Message_ *string `locationName:"Message" type:"string"`
8847
8848	Type *string `type:"string"`
8849}
8850
8851// String returns the string representation
8852func (s EFSMountFailureException) String() string {
8853	return awsutil.Prettify(s)
8854}
8855
8856// GoString returns the string representation
8857func (s EFSMountFailureException) GoString() string {
8858	return s.String()
8859}
8860
8861func newErrorEFSMountFailureException(v protocol.ResponseMetadata) error {
8862	return &EFSMountFailureException{
8863		RespMetadata: v,
8864	}
8865}
8866
8867// Code returns the exception type name.
8868func (s *EFSMountFailureException) Code() string {
8869	return "EFSMountFailureException"
8870}
8871
8872// Message returns the exception's message.
8873func (s *EFSMountFailureException) Message() string {
8874	if s.Message_ != nil {
8875		return *s.Message_
8876	}
8877	return ""
8878}
8879
8880// OrigErr always returns nil, satisfies awserr.Error interface.
8881func (s *EFSMountFailureException) OrigErr() error {
8882	return nil
8883}
8884
8885func (s *EFSMountFailureException) Error() string {
8886	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
8887}
8888
8889// Status code returns the HTTP status code for the request's response error.
8890func (s *EFSMountFailureException) StatusCode() int {
8891	return s.RespMetadata.StatusCode
8892}
8893
8894// RequestID returns the service's response RequestID for request.
8895func (s *EFSMountFailureException) RequestID() string {
8896	return s.RespMetadata.RequestID
8897}
8898
8899// The function was able to make a network connection to the configured file
8900// system, but the mount operation timed out.
8901type EFSMountTimeoutException struct {
8902	_            struct{}                  `type:"structure"`
8903	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
8904
8905	Message_ *string `locationName:"Message" type:"string"`
8906
8907	Type *string `type:"string"`
8908}
8909
8910// String returns the string representation
8911func (s EFSMountTimeoutException) String() string {
8912	return awsutil.Prettify(s)
8913}
8914
8915// GoString returns the string representation
8916func (s EFSMountTimeoutException) GoString() string {
8917	return s.String()
8918}
8919
8920func newErrorEFSMountTimeoutException(v protocol.ResponseMetadata) error {
8921	return &EFSMountTimeoutException{
8922		RespMetadata: v,
8923	}
8924}
8925
8926// Code returns the exception type name.
8927func (s *EFSMountTimeoutException) Code() string {
8928	return "EFSMountTimeoutException"
8929}
8930
8931// Message returns the exception's message.
8932func (s *EFSMountTimeoutException) Message() string {
8933	if s.Message_ != nil {
8934		return *s.Message_
8935	}
8936	return ""
8937}
8938
8939// OrigErr always returns nil, satisfies awserr.Error interface.
8940func (s *EFSMountTimeoutException) OrigErr() error {
8941	return nil
8942}
8943
8944func (s *EFSMountTimeoutException) Error() string {
8945	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
8946}
8947
8948// Status code returns the HTTP status code for the request's response error.
8949func (s *EFSMountTimeoutException) StatusCode() int {
8950	return s.RespMetadata.StatusCode
8951}
8952
8953// RequestID returns the service's response RequestID for request.
8954func (s *EFSMountTimeoutException) RequestID() string {
8955	return s.RespMetadata.RequestID
8956}
8957
8958// Lambda was not able to create an elastic network interface in the VPC, specified
8959// as part of Lambda function configuration, because the limit for network interfaces
8960// has been reached.
8961type ENILimitReachedException struct {
8962	_            struct{}                  `type:"structure"`
8963	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
8964
8965	Message_ *string `locationName:"Message" type:"string"`
8966
8967	Type *string `type:"string"`
8968}
8969
8970// String returns the string representation
8971func (s ENILimitReachedException) String() string {
8972	return awsutil.Prettify(s)
8973}
8974
8975// GoString returns the string representation
8976func (s ENILimitReachedException) GoString() string {
8977	return s.String()
8978}
8979
8980func newErrorENILimitReachedException(v protocol.ResponseMetadata) error {
8981	return &ENILimitReachedException{
8982		RespMetadata: v,
8983	}
8984}
8985
8986// Code returns the exception type name.
8987func (s *ENILimitReachedException) Code() string {
8988	return "ENILimitReachedException"
8989}
8990
8991// Message returns the exception's message.
8992func (s *ENILimitReachedException) Message() string {
8993	if s.Message_ != nil {
8994		return *s.Message_
8995	}
8996	return ""
8997}
8998
8999// OrigErr always returns nil, satisfies awserr.Error interface.
9000func (s *ENILimitReachedException) OrigErr() error {
9001	return nil
9002}
9003
9004func (s *ENILimitReachedException) Error() string {
9005	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
9006}
9007
9008// Status code returns the HTTP status code for the request's response error.
9009func (s *ENILimitReachedException) StatusCode() int {
9010	return s.RespMetadata.StatusCode
9011}
9012
9013// RequestID returns the service's response RequestID for request.
9014func (s *ENILimitReachedException) RequestID() string {
9015	return s.RespMetadata.RequestID
9016}
9017
9018// A function's environment variable settings. You can use environment variables
9019// to adjust your function's behavior without updating code. An environment
9020// variable is a pair of strings that are stored in a function's version-specific
9021// configuration.
9022type Environment struct {
9023	_ struct{} `type:"structure"`
9024
9025	// Environment variable key-value pairs. For more information, see Using Lambda
9026	// environment variables (https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html).
9027	Variables map[string]*string `type:"map" sensitive:"true"`
9028}
9029
9030// String returns the string representation
9031func (s Environment) String() string {
9032	return awsutil.Prettify(s)
9033}
9034
9035// GoString returns the string representation
9036func (s Environment) GoString() string {
9037	return s.String()
9038}
9039
9040// SetVariables sets the Variables field's value.
9041func (s *Environment) SetVariables(v map[string]*string) *Environment {
9042	s.Variables = v
9043	return s
9044}
9045
9046// Error messages for environment variables that couldn't be applied.
9047type EnvironmentError struct {
9048	_ struct{} `type:"structure"`
9049
9050	// The error code.
9051	ErrorCode *string `type:"string"`
9052
9053	// The error message.
9054	Message *string `type:"string" sensitive:"true"`
9055}
9056
9057// String returns the string representation
9058func (s EnvironmentError) String() string {
9059	return awsutil.Prettify(s)
9060}
9061
9062// GoString returns the string representation
9063func (s EnvironmentError) GoString() string {
9064	return s.String()
9065}
9066
9067// SetErrorCode sets the ErrorCode field's value.
9068func (s *EnvironmentError) SetErrorCode(v string) *EnvironmentError {
9069	s.ErrorCode = &v
9070	return s
9071}
9072
9073// SetMessage sets the Message field's value.
9074func (s *EnvironmentError) SetMessage(v string) *EnvironmentError {
9075	s.Message = &v
9076	return s
9077}
9078
9079// The results of an operation to update or read environment variables. If the
9080// operation is successful, the response contains the environment variables.
9081// If it failed, the response contains details about the error.
9082type EnvironmentResponse struct {
9083	_ struct{} `type:"structure"`
9084
9085	// Error messages for environment variables that couldn't be applied.
9086	Error *EnvironmentError `type:"structure"`
9087
9088	// Environment variable key-value pairs.
9089	Variables map[string]*string `type:"map" sensitive:"true"`
9090}
9091
9092// String returns the string representation
9093func (s EnvironmentResponse) String() string {
9094	return awsutil.Prettify(s)
9095}
9096
9097// GoString returns the string representation
9098func (s EnvironmentResponse) GoString() string {
9099	return s.String()
9100}
9101
9102// SetError sets the Error field's value.
9103func (s *EnvironmentResponse) SetError(v *EnvironmentError) *EnvironmentResponse {
9104	s.Error = v
9105	return s
9106}
9107
9108// SetVariables sets the Variables field's value.
9109func (s *EnvironmentResponse) SetVariables(v map[string]*string) *EnvironmentResponse {
9110	s.Variables = v
9111	return s
9112}
9113
9114// A mapping between an Amazon Web Services resource and a Lambda function.
9115// For details, see CreateEventSourceMapping.
9116type EventSourceMappingConfiguration struct {
9117	_ struct{} `type:"structure"`
9118
9119	// The maximum number of items to retrieve in a single batch.
9120	BatchSize *int64 `min:"1" type:"integer"`
9121
9122	// (Streams only) If the function returns an error, split the batch in two and
9123	// retry. The default value is false.
9124	BisectBatchOnFunctionError *bool `type:"boolean"`
9125
9126	// (Streams only) An Amazon SQS queue or Amazon SNS topic destination for discarded
9127	// records.
9128	DestinationConfig *DestinationConfig `type:"structure"`
9129
9130	// The Amazon Resource Name (ARN) of the event source.
9131	EventSourceArn *string `type:"string"`
9132
9133	// The ARN of the Lambda function.
9134	FunctionArn *string `type:"string"`
9135
9136	// (Streams only) A list of current response type enums applied to the event
9137	// source mapping.
9138	FunctionResponseTypes []*string `type:"list"`
9139
9140	// The date that the event source mapping was last updated or that its state
9141	// changed.
9142	LastModified *time.Time `type:"timestamp"`
9143
9144	// The result of the last Lambda invocation of your function.
9145	LastProcessingResult *string `type:"string"`
9146
9147	// (Streams and Amazon SQS standard queues) The maximum amount of time to gather
9148	// records before invoking the function, in seconds. The default value is zero.
9149	MaximumBatchingWindowInSeconds *int64 `type:"integer"`
9150
9151	// (Streams only) Discard records older than the specified age. The default
9152	// value is -1, which sets the maximum age to infinite. When the value is set
9153	// to infinite, Lambda never discards old records.
9154	MaximumRecordAgeInSeconds *int64 `type:"integer"`
9155
9156	// (Streams only) Discard records after the specified number of retries. The
9157	// default value is -1, which sets the maximum number of retries to infinite.
9158	// When MaximumRetryAttempts is infinite, Lambda retries failed records until
9159	// the record expires in the event source.
9160	MaximumRetryAttempts *int64 `type:"integer"`
9161
9162	// (Streams only) The number of batches to process concurrently from each shard.
9163	// The default value is 1.
9164	ParallelizationFactor *int64 `min:"1" type:"integer"`
9165
9166	// (Amazon MQ) The name of the Amazon MQ broker destination queue to consume.
9167	Queues []*string `min:"1" type:"list"`
9168
9169	// The self-managed Apache Kafka cluster for your event source.
9170	SelfManagedEventSource *SelfManagedEventSource `type:"structure"`
9171
9172	// An array of the authentication protocol, VPC components, or virtual host
9173	// to secure and define your event source.
9174	SourceAccessConfigurations []*SourceAccessConfiguration `type:"list"`
9175
9176	// The position in a stream from which to start reading. Required for Amazon
9177	// Kinesis, Amazon DynamoDB, and Amazon MSK stream sources. AT_TIMESTAMP is
9178	// supported only for Amazon Kinesis streams.
9179	StartingPosition *string `type:"string" enum:"EventSourcePosition"`
9180
9181	// With StartingPosition set to AT_TIMESTAMP, the time from which to start reading.
9182	StartingPositionTimestamp *time.Time `type:"timestamp"`
9183
9184	// The state of the event source mapping. It can be one of the following: Creating,
9185	// Enabling, Enabled, Disabling, Disabled, Updating, or Deleting.
9186	State *string `type:"string"`
9187
9188	// Indicates whether a user or Lambda made the last change to the event source
9189	// mapping.
9190	StateTransitionReason *string `type:"string"`
9191
9192	// The name of the Kafka topic.
9193	Topics []*string `min:"1" type:"list"`
9194
9195	// (Streams only) The duration in seconds of a processing window. The range
9196	// is 1–900 seconds.
9197	TumblingWindowInSeconds *int64 `type:"integer"`
9198
9199	// The identifier of the event source mapping.
9200	UUID *string `type:"string"`
9201}
9202
9203// String returns the string representation
9204func (s EventSourceMappingConfiguration) String() string {
9205	return awsutil.Prettify(s)
9206}
9207
9208// GoString returns the string representation
9209func (s EventSourceMappingConfiguration) GoString() string {
9210	return s.String()
9211}
9212
9213// SetBatchSize sets the BatchSize field's value.
9214func (s *EventSourceMappingConfiguration) SetBatchSize(v int64) *EventSourceMappingConfiguration {
9215	s.BatchSize = &v
9216	return s
9217}
9218
9219// SetBisectBatchOnFunctionError sets the BisectBatchOnFunctionError field's value.
9220func (s *EventSourceMappingConfiguration) SetBisectBatchOnFunctionError(v bool) *EventSourceMappingConfiguration {
9221	s.BisectBatchOnFunctionError = &v
9222	return s
9223}
9224
9225// SetDestinationConfig sets the DestinationConfig field's value.
9226func (s *EventSourceMappingConfiguration) SetDestinationConfig(v *DestinationConfig) *EventSourceMappingConfiguration {
9227	s.DestinationConfig = v
9228	return s
9229}
9230
9231// SetEventSourceArn sets the EventSourceArn field's value.
9232func (s *EventSourceMappingConfiguration) SetEventSourceArn(v string) *EventSourceMappingConfiguration {
9233	s.EventSourceArn = &v
9234	return s
9235}
9236
9237// SetFunctionArn sets the FunctionArn field's value.
9238func (s *EventSourceMappingConfiguration) SetFunctionArn(v string) *EventSourceMappingConfiguration {
9239	s.FunctionArn = &v
9240	return s
9241}
9242
9243// SetFunctionResponseTypes sets the FunctionResponseTypes field's value.
9244func (s *EventSourceMappingConfiguration) SetFunctionResponseTypes(v []*string) *EventSourceMappingConfiguration {
9245	s.FunctionResponseTypes = v
9246	return s
9247}
9248
9249// SetLastModified sets the LastModified field's value.
9250func (s *EventSourceMappingConfiguration) SetLastModified(v time.Time) *EventSourceMappingConfiguration {
9251	s.LastModified = &v
9252	return s
9253}
9254
9255// SetLastProcessingResult sets the LastProcessingResult field's value.
9256func (s *EventSourceMappingConfiguration) SetLastProcessingResult(v string) *EventSourceMappingConfiguration {
9257	s.LastProcessingResult = &v
9258	return s
9259}
9260
9261// SetMaximumBatchingWindowInSeconds sets the MaximumBatchingWindowInSeconds field's value.
9262func (s *EventSourceMappingConfiguration) SetMaximumBatchingWindowInSeconds(v int64) *EventSourceMappingConfiguration {
9263	s.MaximumBatchingWindowInSeconds = &v
9264	return s
9265}
9266
9267// SetMaximumRecordAgeInSeconds sets the MaximumRecordAgeInSeconds field's value.
9268func (s *EventSourceMappingConfiguration) SetMaximumRecordAgeInSeconds(v int64) *EventSourceMappingConfiguration {
9269	s.MaximumRecordAgeInSeconds = &v
9270	return s
9271}
9272
9273// SetMaximumRetryAttempts sets the MaximumRetryAttempts field's value.
9274func (s *EventSourceMappingConfiguration) SetMaximumRetryAttempts(v int64) *EventSourceMappingConfiguration {
9275	s.MaximumRetryAttempts = &v
9276	return s
9277}
9278
9279// SetParallelizationFactor sets the ParallelizationFactor field's value.
9280func (s *EventSourceMappingConfiguration) SetParallelizationFactor(v int64) *EventSourceMappingConfiguration {
9281	s.ParallelizationFactor = &v
9282	return s
9283}
9284
9285// SetQueues sets the Queues field's value.
9286func (s *EventSourceMappingConfiguration) SetQueues(v []*string) *EventSourceMappingConfiguration {
9287	s.Queues = v
9288	return s
9289}
9290
9291// SetSelfManagedEventSource sets the SelfManagedEventSource field's value.
9292func (s *EventSourceMappingConfiguration) SetSelfManagedEventSource(v *SelfManagedEventSource) *EventSourceMappingConfiguration {
9293	s.SelfManagedEventSource = v
9294	return s
9295}
9296
9297// SetSourceAccessConfigurations sets the SourceAccessConfigurations field's value.
9298func (s *EventSourceMappingConfiguration) SetSourceAccessConfigurations(v []*SourceAccessConfiguration) *EventSourceMappingConfiguration {
9299	s.SourceAccessConfigurations = v
9300	return s
9301}
9302
9303// SetStartingPosition sets the StartingPosition field's value.
9304func (s *EventSourceMappingConfiguration) SetStartingPosition(v string) *EventSourceMappingConfiguration {
9305	s.StartingPosition = &v
9306	return s
9307}
9308
9309// SetStartingPositionTimestamp sets the StartingPositionTimestamp field's value.
9310func (s *EventSourceMappingConfiguration) SetStartingPositionTimestamp(v time.Time) *EventSourceMappingConfiguration {
9311	s.StartingPositionTimestamp = &v
9312	return s
9313}
9314
9315// SetState sets the State field's value.
9316func (s *EventSourceMappingConfiguration) SetState(v string) *EventSourceMappingConfiguration {
9317	s.State = &v
9318	return s
9319}
9320
9321// SetStateTransitionReason sets the StateTransitionReason field's value.
9322func (s *EventSourceMappingConfiguration) SetStateTransitionReason(v string) *EventSourceMappingConfiguration {
9323	s.StateTransitionReason = &v
9324	return s
9325}
9326
9327// SetTopics sets the Topics field's value.
9328func (s *EventSourceMappingConfiguration) SetTopics(v []*string) *EventSourceMappingConfiguration {
9329	s.Topics = v
9330	return s
9331}
9332
9333// SetTumblingWindowInSeconds sets the TumblingWindowInSeconds field's value.
9334func (s *EventSourceMappingConfiguration) SetTumblingWindowInSeconds(v int64) *EventSourceMappingConfiguration {
9335	s.TumblingWindowInSeconds = &v
9336	return s
9337}
9338
9339// SetUUID sets the UUID field's value.
9340func (s *EventSourceMappingConfiguration) SetUUID(v string) *EventSourceMappingConfiguration {
9341	s.UUID = &v
9342	return s
9343}
9344
9345// Details about the connection between a Lambda function and an Amazon EFS
9346// file system (https://docs.aws.amazon.com/lambda/latest/dg/configuration-filesystem.html).
9347type FileSystemConfig struct {
9348	_ struct{} `type:"structure"`
9349
9350	// The Amazon Resource Name (ARN) of the Amazon EFS access point that provides
9351	// access to the file system.
9352	//
9353	// Arn is a required field
9354	Arn *string `type:"string" required:"true"`
9355
9356	// The path where the function can access the file system, starting with /mnt/.
9357	//
9358	// LocalMountPath is a required field
9359	LocalMountPath *string `type:"string" required:"true"`
9360}
9361
9362// String returns the string representation
9363func (s FileSystemConfig) String() string {
9364	return awsutil.Prettify(s)
9365}
9366
9367// GoString returns the string representation
9368func (s FileSystemConfig) GoString() string {
9369	return s.String()
9370}
9371
9372// Validate inspects the fields of the type to determine if they are valid.
9373func (s *FileSystemConfig) Validate() error {
9374	invalidParams := request.ErrInvalidParams{Context: "FileSystemConfig"}
9375	if s.Arn == nil {
9376		invalidParams.Add(request.NewErrParamRequired("Arn"))
9377	}
9378	if s.LocalMountPath == nil {
9379		invalidParams.Add(request.NewErrParamRequired("LocalMountPath"))
9380	}
9381
9382	if invalidParams.Len() > 0 {
9383		return invalidParams
9384	}
9385	return nil
9386}
9387
9388// SetArn sets the Arn field's value.
9389func (s *FileSystemConfig) SetArn(v string) *FileSystemConfig {
9390	s.Arn = &v
9391	return s
9392}
9393
9394// SetLocalMountPath sets the LocalMountPath field's value.
9395func (s *FileSystemConfig) SetLocalMountPath(v string) *FileSystemConfig {
9396	s.LocalMountPath = &v
9397	return s
9398}
9399
9400// The code for the Lambda function. You can specify either an object in Amazon
9401// S3, upload a .zip file archive deployment package directly, or specify the
9402// URI of a container image.
9403type FunctionCode struct {
9404	_ struct{} `type:"structure"`
9405
9406	// URI of a container image (https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html)
9407	// in the Amazon ECR registry.
9408	ImageUri *string `type:"string"`
9409
9410	// An Amazon S3 bucket in the same Amazon Web Services Region as your function.
9411	// The bucket can be in a different Amazon Web Services account.
9412	S3Bucket *string `min:"3" type:"string"`
9413
9414	// The Amazon S3 key of the deployment package.
9415	S3Key *string `min:"1" type:"string"`
9416
9417	// For versioned objects, the version of the deployment package object to use.
9418	S3ObjectVersion *string `min:"1" type:"string"`
9419
9420	// The base64-encoded contents of the deployment package. Amazon Web Services
9421	// SDK and Amazon Web Services CLI clients handle the encoding for you.
9422	//
9423	// ZipFile is automatically base64 encoded/decoded by the SDK.
9424	ZipFile []byte `type:"blob" sensitive:"true"`
9425}
9426
9427// String returns the string representation
9428func (s FunctionCode) String() string {
9429	return awsutil.Prettify(s)
9430}
9431
9432// GoString returns the string representation
9433func (s FunctionCode) GoString() string {
9434	return s.String()
9435}
9436
9437// Validate inspects the fields of the type to determine if they are valid.
9438func (s *FunctionCode) Validate() error {
9439	invalidParams := request.ErrInvalidParams{Context: "FunctionCode"}
9440	if s.S3Bucket != nil && len(*s.S3Bucket) < 3 {
9441		invalidParams.Add(request.NewErrParamMinLen("S3Bucket", 3))
9442	}
9443	if s.S3Key != nil && len(*s.S3Key) < 1 {
9444		invalidParams.Add(request.NewErrParamMinLen("S3Key", 1))
9445	}
9446	if s.S3ObjectVersion != nil && len(*s.S3ObjectVersion) < 1 {
9447		invalidParams.Add(request.NewErrParamMinLen("S3ObjectVersion", 1))
9448	}
9449
9450	if invalidParams.Len() > 0 {
9451		return invalidParams
9452	}
9453	return nil
9454}
9455
9456// SetImageUri sets the ImageUri field's value.
9457func (s *FunctionCode) SetImageUri(v string) *FunctionCode {
9458	s.ImageUri = &v
9459	return s
9460}
9461
9462// SetS3Bucket sets the S3Bucket field's value.
9463func (s *FunctionCode) SetS3Bucket(v string) *FunctionCode {
9464	s.S3Bucket = &v
9465	return s
9466}
9467
9468// SetS3Key sets the S3Key field's value.
9469func (s *FunctionCode) SetS3Key(v string) *FunctionCode {
9470	s.S3Key = &v
9471	return s
9472}
9473
9474// SetS3ObjectVersion sets the S3ObjectVersion field's value.
9475func (s *FunctionCode) SetS3ObjectVersion(v string) *FunctionCode {
9476	s.S3ObjectVersion = &v
9477	return s
9478}
9479
9480// SetZipFile sets the ZipFile field's value.
9481func (s *FunctionCode) SetZipFile(v []byte) *FunctionCode {
9482	s.ZipFile = v
9483	return s
9484}
9485
9486// Details about a function's deployment package.
9487type FunctionCodeLocation struct {
9488	_ struct{} `type:"structure"`
9489
9490	// URI of a container image in the Amazon ECR registry.
9491	ImageUri *string `type:"string"`
9492
9493	// A presigned URL that you can use to download the deployment package.
9494	Location *string `type:"string"`
9495
9496	// The service that's hosting the file.
9497	RepositoryType *string `type:"string"`
9498
9499	// The resolved URI for the image.
9500	ResolvedImageUri *string `type:"string"`
9501}
9502
9503// String returns the string representation
9504func (s FunctionCodeLocation) String() string {
9505	return awsutil.Prettify(s)
9506}
9507
9508// GoString returns the string representation
9509func (s FunctionCodeLocation) GoString() string {
9510	return s.String()
9511}
9512
9513// SetImageUri sets the ImageUri field's value.
9514func (s *FunctionCodeLocation) SetImageUri(v string) *FunctionCodeLocation {
9515	s.ImageUri = &v
9516	return s
9517}
9518
9519// SetLocation sets the Location field's value.
9520func (s *FunctionCodeLocation) SetLocation(v string) *FunctionCodeLocation {
9521	s.Location = &v
9522	return s
9523}
9524
9525// SetRepositoryType sets the RepositoryType field's value.
9526func (s *FunctionCodeLocation) SetRepositoryType(v string) *FunctionCodeLocation {
9527	s.RepositoryType = &v
9528	return s
9529}
9530
9531// SetResolvedImageUri sets the ResolvedImageUri field's value.
9532func (s *FunctionCodeLocation) SetResolvedImageUri(v string) *FunctionCodeLocation {
9533	s.ResolvedImageUri = &v
9534	return s
9535}
9536
9537// Details about a function's configuration.
9538type FunctionConfiguration struct {
9539	_ struct{} `type:"structure"`
9540
9541	// The SHA256 hash of the function's deployment package.
9542	CodeSha256 *string `type:"string"`
9543
9544	// The size of the function's deployment package, in bytes.
9545	CodeSize *int64 `type:"long"`
9546
9547	// The function's dead letter queue.
9548	DeadLetterConfig *DeadLetterConfig `type:"structure"`
9549
9550	// The function's description.
9551	Description *string `type:"string"`
9552
9553	// The function's environment variables (https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html).
9554	Environment *EnvironmentResponse `type:"structure"`
9555
9556	// Connection settings for an Amazon EFS file system (https://docs.aws.amazon.com/lambda/latest/dg/configuration-filesystem.html).
9557	FileSystemConfigs []*FileSystemConfig `type:"list"`
9558
9559	// The function's Amazon Resource Name (ARN).
9560	FunctionArn *string `type:"string"`
9561
9562	// The name of the function.
9563	FunctionName *string `min:"1" type:"string"`
9564
9565	// The function that Lambda calls to begin executing your function.
9566	Handler *string `type:"string"`
9567
9568	// The function's image configuration values.
9569	ImageConfigResponse *ImageConfigResponse `type:"structure"`
9570
9571	// The KMS key that's used to encrypt the function's environment variables.
9572	// This key is only returned if you've configured a customer managed CMK.
9573	KMSKeyArn *string `type:"string"`
9574
9575	// The date and time that the function was last updated, in ISO-8601 format
9576	// (https://www.w3.org/TR/NOTE-datetime) (YYYY-MM-DDThh:mm:ss.sTZD).
9577	LastModified *string `type:"string"`
9578
9579	// The status of the last update that was performed on the function. This is
9580	// first set to Successful after function creation completes.
9581	LastUpdateStatus *string `type:"string" enum:"LastUpdateStatus"`
9582
9583	// The reason for the last update that was performed on the function.
9584	LastUpdateStatusReason *string `type:"string"`
9585
9586	// The reason code for the last update that was performed on the function.
9587	LastUpdateStatusReasonCode *string `type:"string" enum:"LastUpdateStatusReasonCode"`
9588
9589	// The function's layers (https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html).
9590	Layers []*Layer `type:"list"`
9591
9592	// For Lambda@Edge functions, the ARN of the master function.
9593	MasterArn *string `type:"string"`
9594
9595	// The amount of memory available to the function at runtime.
9596	MemorySize *int64 `min:"128" type:"integer"`
9597
9598	// The type of deployment package. Set to Image for container image and set
9599	// Zip for .zip file archive.
9600	PackageType *string `type:"string" enum:"PackageType"`
9601
9602	// The latest updated revision of the function or alias.
9603	RevisionId *string `type:"string"`
9604
9605	// The function's execution role.
9606	Role *string `type:"string"`
9607
9608	// The runtime environment for the Lambda function.
9609	Runtime *string `type:"string" enum:"Runtime"`
9610
9611	// The ARN of the signing job.
9612	SigningJobArn *string `type:"string"`
9613
9614	// The ARN of the signing profile version.
9615	SigningProfileVersionArn *string `type:"string"`
9616
9617	// The current state of the function. When the state is Inactive, you can reactivate
9618	// the function by invoking it.
9619	State *string `type:"string" enum:"State"`
9620
9621	// The reason for the function's current state.
9622	StateReason *string `type:"string"`
9623
9624	// The reason code for the function's current state. When the code is Creating,
9625	// you can't invoke or modify the function.
9626	StateReasonCode *string `type:"string" enum:"StateReasonCode"`
9627
9628	// The amount of time in seconds that Lambda allows a function to run before
9629	// stopping it.
9630	Timeout *int64 `min:"1" type:"integer"`
9631
9632	// The function's X-Ray tracing configuration.
9633	TracingConfig *TracingConfigResponse `type:"structure"`
9634
9635	// The version of the Lambda function.
9636	Version *string `min:"1" type:"string"`
9637
9638	// The function's networking configuration.
9639	VpcConfig *VpcConfigResponse `type:"structure"`
9640}
9641
9642// String returns the string representation
9643func (s FunctionConfiguration) String() string {
9644	return awsutil.Prettify(s)
9645}
9646
9647// GoString returns the string representation
9648func (s FunctionConfiguration) GoString() string {
9649	return s.String()
9650}
9651
9652// SetCodeSha256 sets the CodeSha256 field's value.
9653func (s *FunctionConfiguration) SetCodeSha256(v string) *FunctionConfiguration {
9654	s.CodeSha256 = &v
9655	return s
9656}
9657
9658// SetCodeSize sets the CodeSize field's value.
9659func (s *FunctionConfiguration) SetCodeSize(v int64) *FunctionConfiguration {
9660	s.CodeSize = &v
9661	return s
9662}
9663
9664// SetDeadLetterConfig sets the DeadLetterConfig field's value.
9665func (s *FunctionConfiguration) SetDeadLetterConfig(v *DeadLetterConfig) *FunctionConfiguration {
9666	s.DeadLetterConfig = v
9667	return s
9668}
9669
9670// SetDescription sets the Description field's value.
9671func (s *FunctionConfiguration) SetDescription(v string) *FunctionConfiguration {
9672	s.Description = &v
9673	return s
9674}
9675
9676// SetEnvironment sets the Environment field's value.
9677func (s *FunctionConfiguration) SetEnvironment(v *EnvironmentResponse) *FunctionConfiguration {
9678	s.Environment = v
9679	return s
9680}
9681
9682// SetFileSystemConfigs sets the FileSystemConfigs field's value.
9683func (s *FunctionConfiguration) SetFileSystemConfigs(v []*FileSystemConfig) *FunctionConfiguration {
9684	s.FileSystemConfigs = v
9685	return s
9686}
9687
9688// SetFunctionArn sets the FunctionArn field's value.
9689func (s *FunctionConfiguration) SetFunctionArn(v string) *FunctionConfiguration {
9690	s.FunctionArn = &v
9691	return s
9692}
9693
9694// SetFunctionName sets the FunctionName field's value.
9695func (s *FunctionConfiguration) SetFunctionName(v string) *FunctionConfiguration {
9696	s.FunctionName = &v
9697	return s
9698}
9699
9700// SetHandler sets the Handler field's value.
9701func (s *FunctionConfiguration) SetHandler(v string) *FunctionConfiguration {
9702	s.Handler = &v
9703	return s
9704}
9705
9706// SetImageConfigResponse sets the ImageConfigResponse field's value.
9707func (s *FunctionConfiguration) SetImageConfigResponse(v *ImageConfigResponse) *FunctionConfiguration {
9708	s.ImageConfigResponse = v
9709	return s
9710}
9711
9712// SetKMSKeyArn sets the KMSKeyArn field's value.
9713func (s *FunctionConfiguration) SetKMSKeyArn(v string) *FunctionConfiguration {
9714	s.KMSKeyArn = &v
9715	return s
9716}
9717
9718// SetLastModified sets the LastModified field's value.
9719func (s *FunctionConfiguration) SetLastModified(v string) *FunctionConfiguration {
9720	s.LastModified = &v
9721	return s
9722}
9723
9724// SetLastUpdateStatus sets the LastUpdateStatus field's value.
9725func (s *FunctionConfiguration) SetLastUpdateStatus(v string) *FunctionConfiguration {
9726	s.LastUpdateStatus = &v
9727	return s
9728}
9729
9730// SetLastUpdateStatusReason sets the LastUpdateStatusReason field's value.
9731func (s *FunctionConfiguration) SetLastUpdateStatusReason(v string) *FunctionConfiguration {
9732	s.LastUpdateStatusReason = &v
9733	return s
9734}
9735
9736// SetLastUpdateStatusReasonCode sets the LastUpdateStatusReasonCode field's value.
9737func (s *FunctionConfiguration) SetLastUpdateStatusReasonCode(v string) *FunctionConfiguration {
9738	s.LastUpdateStatusReasonCode = &v
9739	return s
9740}
9741
9742// SetLayers sets the Layers field's value.
9743func (s *FunctionConfiguration) SetLayers(v []*Layer) *FunctionConfiguration {
9744	s.Layers = v
9745	return s
9746}
9747
9748// SetMasterArn sets the MasterArn field's value.
9749func (s *FunctionConfiguration) SetMasterArn(v string) *FunctionConfiguration {
9750	s.MasterArn = &v
9751	return s
9752}
9753
9754// SetMemorySize sets the MemorySize field's value.
9755func (s *FunctionConfiguration) SetMemorySize(v int64) *FunctionConfiguration {
9756	s.MemorySize = &v
9757	return s
9758}
9759
9760// SetPackageType sets the PackageType field's value.
9761func (s *FunctionConfiguration) SetPackageType(v string) *FunctionConfiguration {
9762	s.PackageType = &v
9763	return s
9764}
9765
9766// SetRevisionId sets the RevisionId field's value.
9767func (s *FunctionConfiguration) SetRevisionId(v string) *FunctionConfiguration {
9768	s.RevisionId = &v
9769	return s
9770}
9771
9772// SetRole sets the Role field's value.
9773func (s *FunctionConfiguration) SetRole(v string) *FunctionConfiguration {
9774	s.Role = &v
9775	return s
9776}
9777
9778// SetRuntime sets the Runtime field's value.
9779func (s *FunctionConfiguration) SetRuntime(v string) *FunctionConfiguration {
9780	s.Runtime = &v
9781	return s
9782}
9783
9784// SetSigningJobArn sets the SigningJobArn field's value.
9785func (s *FunctionConfiguration) SetSigningJobArn(v string) *FunctionConfiguration {
9786	s.SigningJobArn = &v
9787	return s
9788}
9789
9790// SetSigningProfileVersionArn sets the SigningProfileVersionArn field's value.
9791func (s *FunctionConfiguration) SetSigningProfileVersionArn(v string) *FunctionConfiguration {
9792	s.SigningProfileVersionArn = &v
9793	return s
9794}
9795
9796// SetState sets the State field's value.
9797func (s *FunctionConfiguration) SetState(v string) *FunctionConfiguration {
9798	s.State = &v
9799	return s
9800}
9801
9802// SetStateReason sets the StateReason field's value.
9803func (s *FunctionConfiguration) SetStateReason(v string) *FunctionConfiguration {
9804	s.StateReason = &v
9805	return s
9806}
9807
9808// SetStateReasonCode sets the StateReasonCode field's value.
9809func (s *FunctionConfiguration) SetStateReasonCode(v string) *FunctionConfiguration {
9810	s.StateReasonCode = &v
9811	return s
9812}
9813
9814// SetTimeout sets the Timeout field's value.
9815func (s *FunctionConfiguration) SetTimeout(v int64) *FunctionConfiguration {
9816	s.Timeout = &v
9817	return s
9818}
9819
9820// SetTracingConfig sets the TracingConfig field's value.
9821func (s *FunctionConfiguration) SetTracingConfig(v *TracingConfigResponse) *FunctionConfiguration {
9822	s.TracingConfig = v
9823	return s
9824}
9825
9826// SetVersion sets the Version field's value.
9827func (s *FunctionConfiguration) SetVersion(v string) *FunctionConfiguration {
9828	s.Version = &v
9829	return s
9830}
9831
9832// SetVpcConfig sets the VpcConfig field's value.
9833func (s *FunctionConfiguration) SetVpcConfig(v *VpcConfigResponse) *FunctionConfiguration {
9834	s.VpcConfig = v
9835	return s
9836}
9837
9838type FunctionEventInvokeConfig struct {
9839	_ struct{} `type:"structure"`
9840
9841	// A destination for events after they have been sent to a function for processing.
9842	//
9843	// Destinations
9844	//
9845	//    * Function - The Amazon Resource Name (ARN) of a Lambda function.
9846	//
9847	//    * Queue - The ARN of an SQS queue.
9848	//
9849	//    * Topic - The ARN of an SNS topic.
9850	//
9851	//    * Event Bus - The ARN of an Amazon EventBridge event bus.
9852	DestinationConfig *DestinationConfig `type:"structure"`
9853
9854	// The Amazon Resource Name (ARN) of the function.
9855	FunctionArn *string `type:"string"`
9856
9857	// The date and time that the configuration was last updated.
9858	LastModified *time.Time `type:"timestamp"`
9859
9860	// The maximum age of a request that Lambda sends to a function for processing.
9861	MaximumEventAgeInSeconds *int64 `min:"60" type:"integer"`
9862
9863	// The maximum number of times to retry when the function returns an error.
9864	MaximumRetryAttempts *int64 `type:"integer"`
9865}
9866
9867// String returns the string representation
9868func (s FunctionEventInvokeConfig) String() string {
9869	return awsutil.Prettify(s)
9870}
9871
9872// GoString returns the string representation
9873func (s FunctionEventInvokeConfig) GoString() string {
9874	return s.String()
9875}
9876
9877// SetDestinationConfig sets the DestinationConfig field's value.
9878func (s *FunctionEventInvokeConfig) SetDestinationConfig(v *DestinationConfig) *FunctionEventInvokeConfig {
9879	s.DestinationConfig = v
9880	return s
9881}
9882
9883// SetFunctionArn sets the FunctionArn field's value.
9884func (s *FunctionEventInvokeConfig) SetFunctionArn(v string) *FunctionEventInvokeConfig {
9885	s.FunctionArn = &v
9886	return s
9887}
9888
9889// SetLastModified sets the LastModified field's value.
9890func (s *FunctionEventInvokeConfig) SetLastModified(v time.Time) *FunctionEventInvokeConfig {
9891	s.LastModified = &v
9892	return s
9893}
9894
9895// SetMaximumEventAgeInSeconds sets the MaximumEventAgeInSeconds field's value.
9896func (s *FunctionEventInvokeConfig) SetMaximumEventAgeInSeconds(v int64) *FunctionEventInvokeConfig {
9897	s.MaximumEventAgeInSeconds = &v
9898	return s
9899}
9900
9901// SetMaximumRetryAttempts sets the MaximumRetryAttempts field's value.
9902func (s *FunctionEventInvokeConfig) SetMaximumRetryAttempts(v int64) *FunctionEventInvokeConfig {
9903	s.MaximumRetryAttempts = &v
9904	return s
9905}
9906
9907type GetAccountSettingsInput struct {
9908	_ struct{} `type:"structure"`
9909}
9910
9911// String returns the string representation
9912func (s GetAccountSettingsInput) String() string {
9913	return awsutil.Prettify(s)
9914}
9915
9916// GoString returns the string representation
9917func (s GetAccountSettingsInput) GoString() string {
9918	return s.String()
9919}
9920
9921type GetAccountSettingsOutput struct {
9922	_ struct{} `type:"structure"`
9923
9924	// Limits that are related to concurrency and code storage.
9925	AccountLimit *AccountLimit `type:"structure"`
9926
9927	// The number of functions and amount of storage in use.
9928	AccountUsage *AccountUsage `type:"structure"`
9929}
9930
9931// String returns the string representation
9932func (s GetAccountSettingsOutput) String() string {
9933	return awsutil.Prettify(s)
9934}
9935
9936// GoString returns the string representation
9937func (s GetAccountSettingsOutput) GoString() string {
9938	return s.String()
9939}
9940
9941// SetAccountLimit sets the AccountLimit field's value.
9942func (s *GetAccountSettingsOutput) SetAccountLimit(v *AccountLimit) *GetAccountSettingsOutput {
9943	s.AccountLimit = v
9944	return s
9945}
9946
9947// SetAccountUsage sets the AccountUsage field's value.
9948func (s *GetAccountSettingsOutput) SetAccountUsage(v *AccountUsage) *GetAccountSettingsOutput {
9949	s.AccountUsage = v
9950	return s
9951}
9952
9953type GetAliasInput struct {
9954	_ struct{} `type:"structure"`
9955
9956	// The name of the Lambda function.
9957	//
9958	// Name formats
9959	//
9960	//    * Function name - MyFunction.
9961	//
9962	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.
9963	//
9964	//    * Partial ARN - 123456789012:function:MyFunction.
9965	//
9966	// The length constraint applies only to the full ARN. If you specify only the
9967	// function name, it is limited to 64 characters in length.
9968	//
9969	// FunctionName is a required field
9970	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
9971
9972	// The name of the alias.
9973	//
9974	// Name is a required field
9975	Name *string `location:"uri" locationName:"Name" min:"1" type:"string" required:"true"`
9976}
9977
9978// String returns the string representation
9979func (s GetAliasInput) String() string {
9980	return awsutil.Prettify(s)
9981}
9982
9983// GoString returns the string representation
9984func (s GetAliasInput) GoString() string {
9985	return s.String()
9986}
9987
9988// Validate inspects the fields of the type to determine if they are valid.
9989func (s *GetAliasInput) Validate() error {
9990	invalidParams := request.ErrInvalidParams{Context: "GetAliasInput"}
9991	if s.FunctionName == nil {
9992		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
9993	}
9994	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
9995		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
9996	}
9997	if s.Name == nil {
9998		invalidParams.Add(request.NewErrParamRequired("Name"))
9999	}
10000	if s.Name != nil && len(*s.Name) < 1 {
10001		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
10002	}
10003
10004	if invalidParams.Len() > 0 {
10005		return invalidParams
10006	}
10007	return nil
10008}
10009
10010// SetFunctionName sets the FunctionName field's value.
10011func (s *GetAliasInput) SetFunctionName(v string) *GetAliasInput {
10012	s.FunctionName = &v
10013	return s
10014}
10015
10016// SetName sets the Name field's value.
10017func (s *GetAliasInput) SetName(v string) *GetAliasInput {
10018	s.Name = &v
10019	return s
10020}
10021
10022type GetCodeSigningConfigInput struct {
10023	_ struct{} `type:"structure"`
10024
10025	// The The Amazon Resource Name (ARN) of the code signing configuration.
10026	//
10027	// CodeSigningConfigArn is a required field
10028	CodeSigningConfigArn *string `location:"uri" locationName:"CodeSigningConfigArn" type:"string" required:"true"`
10029}
10030
10031// String returns the string representation
10032func (s GetCodeSigningConfigInput) String() string {
10033	return awsutil.Prettify(s)
10034}
10035
10036// GoString returns the string representation
10037func (s GetCodeSigningConfigInput) GoString() string {
10038	return s.String()
10039}
10040
10041// Validate inspects the fields of the type to determine if they are valid.
10042func (s *GetCodeSigningConfigInput) Validate() error {
10043	invalidParams := request.ErrInvalidParams{Context: "GetCodeSigningConfigInput"}
10044	if s.CodeSigningConfigArn == nil {
10045		invalidParams.Add(request.NewErrParamRequired("CodeSigningConfigArn"))
10046	}
10047	if s.CodeSigningConfigArn != nil && len(*s.CodeSigningConfigArn) < 1 {
10048		invalidParams.Add(request.NewErrParamMinLen("CodeSigningConfigArn", 1))
10049	}
10050
10051	if invalidParams.Len() > 0 {
10052		return invalidParams
10053	}
10054	return nil
10055}
10056
10057// SetCodeSigningConfigArn sets the CodeSigningConfigArn field's value.
10058func (s *GetCodeSigningConfigInput) SetCodeSigningConfigArn(v string) *GetCodeSigningConfigInput {
10059	s.CodeSigningConfigArn = &v
10060	return s
10061}
10062
10063type GetCodeSigningConfigOutput struct {
10064	_ struct{} `type:"structure"`
10065
10066	// The code signing configuration
10067	//
10068	// CodeSigningConfig is a required field
10069	CodeSigningConfig *CodeSigningConfig `type:"structure" required:"true"`
10070}
10071
10072// String returns the string representation
10073func (s GetCodeSigningConfigOutput) String() string {
10074	return awsutil.Prettify(s)
10075}
10076
10077// GoString returns the string representation
10078func (s GetCodeSigningConfigOutput) GoString() string {
10079	return s.String()
10080}
10081
10082// SetCodeSigningConfig sets the CodeSigningConfig field's value.
10083func (s *GetCodeSigningConfigOutput) SetCodeSigningConfig(v *CodeSigningConfig) *GetCodeSigningConfigOutput {
10084	s.CodeSigningConfig = v
10085	return s
10086}
10087
10088type GetEventSourceMappingInput struct {
10089	_ struct{} `type:"structure"`
10090
10091	// The identifier of the event source mapping.
10092	//
10093	// UUID is a required field
10094	UUID *string `location:"uri" locationName:"UUID" type:"string" required:"true"`
10095}
10096
10097// String returns the string representation
10098func (s GetEventSourceMappingInput) String() string {
10099	return awsutil.Prettify(s)
10100}
10101
10102// GoString returns the string representation
10103func (s GetEventSourceMappingInput) GoString() string {
10104	return s.String()
10105}
10106
10107// Validate inspects the fields of the type to determine if they are valid.
10108func (s *GetEventSourceMappingInput) Validate() error {
10109	invalidParams := request.ErrInvalidParams{Context: "GetEventSourceMappingInput"}
10110	if s.UUID == nil {
10111		invalidParams.Add(request.NewErrParamRequired("UUID"))
10112	}
10113	if s.UUID != nil && len(*s.UUID) < 1 {
10114		invalidParams.Add(request.NewErrParamMinLen("UUID", 1))
10115	}
10116
10117	if invalidParams.Len() > 0 {
10118		return invalidParams
10119	}
10120	return nil
10121}
10122
10123// SetUUID sets the UUID field's value.
10124func (s *GetEventSourceMappingInput) SetUUID(v string) *GetEventSourceMappingInput {
10125	s.UUID = &v
10126	return s
10127}
10128
10129type GetFunctionCodeSigningConfigInput struct {
10130	_ struct{} `type:"structure"`
10131
10132	// The name of the Lambda function.
10133	//
10134	// Name formats
10135	//
10136	//    * Function name - MyFunction.
10137	//
10138	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.
10139	//
10140	//    * Partial ARN - 123456789012:function:MyFunction.
10141	//
10142	// The length constraint applies only to the full ARN. If you specify only the
10143	// function name, it is limited to 64 characters in length.
10144	//
10145	// FunctionName is a required field
10146	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
10147}
10148
10149// String returns the string representation
10150func (s GetFunctionCodeSigningConfigInput) String() string {
10151	return awsutil.Prettify(s)
10152}
10153
10154// GoString returns the string representation
10155func (s GetFunctionCodeSigningConfigInput) GoString() string {
10156	return s.String()
10157}
10158
10159// Validate inspects the fields of the type to determine if they are valid.
10160func (s *GetFunctionCodeSigningConfigInput) Validate() error {
10161	invalidParams := request.ErrInvalidParams{Context: "GetFunctionCodeSigningConfigInput"}
10162	if s.FunctionName == nil {
10163		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
10164	}
10165	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
10166		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
10167	}
10168
10169	if invalidParams.Len() > 0 {
10170		return invalidParams
10171	}
10172	return nil
10173}
10174
10175// SetFunctionName sets the FunctionName field's value.
10176func (s *GetFunctionCodeSigningConfigInput) SetFunctionName(v string) *GetFunctionCodeSigningConfigInput {
10177	s.FunctionName = &v
10178	return s
10179}
10180
10181type GetFunctionCodeSigningConfigOutput struct {
10182	_ struct{} `type:"structure"`
10183
10184	// The The Amazon Resource Name (ARN) of the code signing configuration.
10185	//
10186	// CodeSigningConfigArn is a required field
10187	CodeSigningConfigArn *string `type:"string" required:"true"`
10188
10189	// The name of the Lambda function.
10190	//
10191	// Name formats
10192	//
10193	//    * Function name - MyFunction.
10194	//
10195	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.
10196	//
10197	//    * Partial ARN - 123456789012:function:MyFunction.
10198	//
10199	// The length constraint applies only to the full ARN. If you specify only the
10200	// function name, it is limited to 64 characters in length.
10201	//
10202	// FunctionName is a required field
10203	FunctionName *string `min:"1" type:"string" required:"true"`
10204}
10205
10206// String returns the string representation
10207func (s GetFunctionCodeSigningConfigOutput) String() string {
10208	return awsutil.Prettify(s)
10209}
10210
10211// GoString returns the string representation
10212func (s GetFunctionCodeSigningConfigOutput) GoString() string {
10213	return s.String()
10214}
10215
10216// SetCodeSigningConfigArn sets the CodeSigningConfigArn field's value.
10217func (s *GetFunctionCodeSigningConfigOutput) SetCodeSigningConfigArn(v string) *GetFunctionCodeSigningConfigOutput {
10218	s.CodeSigningConfigArn = &v
10219	return s
10220}
10221
10222// SetFunctionName sets the FunctionName field's value.
10223func (s *GetFunctionCodeSigningConfigOutput) SetFunctionName(v string) *GetFunctionCodeSigningConfigOutput {
10224	s.FunctionName = &v
10225	return s
10226}
10227
10228type GetFunctionConcurrencyInput struct {
10229	_ struct{} `type:"structure"`
10230
10231	// The name of the Lambda function.
10232	//
10233	// Name formats
10234	//
10235	//    * Function name - my-function.
10236	//
10237	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
10238	//
10239	//    * Partial ARN - 123456789012:function:my-function.
10240	//
10241	// The length constraint applies only to the full ARN. If you specify only the
10242	// function name, it is limited to 64 characters in length.
10243	//
10244	// FunctionName is a required field
10245	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
10246}
10247
10248// String returns the string representation
10249func (s GetFunctionConcurrencyInput) String() string {
10250	return awsutil.Prettify(s)
10251}
10252
10253// GoString returns the string representation
10254func (s GetFunctionConcurrencyInput) GoString() string {
10255	return s.String()
10256}
10257
10258// Validate inspects the fields of the type to determine if they are valid.
10259func (s *GetFunctionConcurrencyInput) Validate() error {
10260	invalidParams := request.ErrInvalidParams{Context: "GetFunctionConcurrencyInput"}
10261	if s.FunctionName == nil {
10262		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
10263	}
10264	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
10265		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
10266	}
10267
10268	if invalidParams.Len() > 0 {
10269		return invalidParams
10270	}
10271	return nil
10272}
10273
10274// SetFunctionName sets the FunctionName field's value.
10275func (s *GetFunctionConcurrencyInput) SetFunctionName(v string) *GetFunctionConcurrencyInput {
10276	s.FunctionName = &v
10277	return s
10278}
10279
10280type GetFunctionConcurrencyOutput struct {
10281	_ struct{} `type:"structure"`
10282
10283	// The number of simultaneous executions that are reserved for the function.
10284	ReservedConcurrentExecutions *int64 `type:"integer"`
10285}
10286
10287// String returns the string representation
10288func (s GetFunctionConcurrencyOutput) String() string {
10289	return awsutil.Prettify(s)
10290}
10291
10292// GoString returns the string representation
10293func (s GetFunctionConcurrencyOutput) GoString() string {
10294	return s.String()
10295}
10296
10297// SetReservedConcurrentExecutions sets the ReservedConcurrentExecutions field's value.
10298func (s *GetFunctionConcurrencyOutput) SetReservedConcurrentExecutions(v int64) *GetFunctionConcurrencyOutput {
10299	s.ReservedConcurrentExecutions = &v
10300	return s
10301}
10302
10303type GetFunctionConfigurationInput struct {
10304	_ struct{} `type:"structure"`
10305
10306	// The name of the Lambda function, version, or alias.
10307	//
10308	// Name formats
10309	//
10310	//    * Function name - my-function (name-only), my-function:v1 (with alias).
10311	//
10312	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
10313	//
10314	//    * Partial ARN - 123456789012:function:my-function.
10315	//
10316	// You can append a version number or alias to any of the formats. The length
10317	// constraint applies only to the full ARN. If you specify only the function
10318	// name, it is limited to 64 characters in length.
10319	//
10320	// FunctionName is a required field
10321	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
10322
10323	// Specify a version or alias to get details about a published version of the
10324	// function.
10325	Qualifier *string `location:"querystring" locationName:"Qualifier" min:"1" type:"string"`
10326}
10327
10328// String returns the string representation
10329func (s GetFunctionConfigurationInput) String() string {
10330	return awsutil.Prettify(s)
10331}
10332
10333// GoString returns the string representation
10334func (s GetFunctionConfigurationInput) GoString() string {
10335	return s.String()
10336}
10337
10338// Validate inspects the fields of the type to determine if they are valid.
10339func (s *GetFunctionConfigurationInput) Validate() error {
10340	invalidParams := request.ErrInvalidParams{Context: "GetFunctionConfigurationInput"}
10341	if s.FunctionName == nil {
10342		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
10343	}
10344	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
10345		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
10346	}
10347	if s.Qualifier != nil && len(*s.Qualifier) < 1 {
10348		invalidParams.Add(request.NewErrParamMinLen("Qualifier", 1))
10349	}
10350
10351	if invalidParams.Len() > 0 {
10352		return invalidParams
10353	}
10354	return nil
10355}
10356
10357// SetFunctionName sets the FunctionName field's value.
10358func (s *GetFunctionConfigurationInput) SetFunctionName(v string) *GetFunctionConfigurationInput {
10359	s.FunctionName = &v
10360	return s
10361}
10362
10363// SetQualifier sets the Qualifier field's value.
10364func (s *GetFunctionConfigurationInput) SetQualifier(v string) *GetFunctionConfigurationInput {
10365	s.Qualifier = &v
10366	return s
10367}
10368
10369type GetFunctionEventInvokeConfigInput struct {
10370	_ struct{} `type:"structure"`
10371
10372	// The name of the Lambda function, version, or alias.
10373	//
10374	// Name formats
10375	//
10376	//    * Function name - my-function (name-only), my-function:v1 (with alias).
10377	//
10378	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
10379	//
10380	//    * Partial ARN - 123456789012:function:my-function.
10381	//
10382	// You can append a version number or alias to any of the formats. The length
10383	// constraint applies only to the full ARN. If you specify only the function
10384	// name, it is limited to 64 characters in length.
10385	//
10386	// FunctionName is a required field
10387	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
10388
10389	// A version number or alias name.
10390	Qualifier *string `location:"querystring" locationName:"Qualifier" min:"1" type:"string"`
10391}
10392
10393// String returns the string representation
10394func (s GetFunctionEventInvokeConfigInput) String() string {
10395	return awsutil.Prettify(s)
10396}
10397
10398// GoString returns the string representation
10399func (s GetFunctionEventInvokeConfigInput) GoString() string {
10400	return s.String()
10401}
10402
10403// Validate inspects the fields of the type to determine if they are valid.
10404func (s *GetFunctionEventInvokeConfigInput) Validate() error {
10405	invalidParams := request.ErrInvalidParams{Context: "GetFunctionEventInvokeConfigInput"}
10406	if s.FunctionName == nil {
10407		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
10408	}
10409	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
10410		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
10411	}
10412	if s.Qualifier != nil && len(*s.Qualifier) < 1 {
10413		invalidParams.Add(request.NewErrParamMinLen("Qualifier", 1))
10414	}
10415
10416	if invalidParams.Len() > 0 {
10417		return invalidParams
10418	}
10419	return nil
10420}
10421
10422// SetFunctionName sets the FunctionName field's value.
10423func (s *GetFunctionEventInvokeConfigInput) SetFunctionName(v string) *GetFunctionEventInvokeConfigInput {
10424	s.FunctionName = &v
10425	return s
10426}
10427
10428// SetQualifier sets the Qualifier field's value.
10429func (s *GetFunctionEventInvokeConfigInput) SetQualifier(v string) *GetFunctionEventInvokeConfigInput {
10430	s.Qualifier = &v
10431	return s
10432}
10433
10434type GetFunctionEventInvokeConfigOutput struct {
10435	_ struct{} `type:"structure"`
10436
10437	// A destination for events after they have been sent to a function for processing.
10438	//
10439	// Destinations
10440	//
10441	//    * Function - The Amazon Resource Name (ARN) of a Lambda function.
10442	//
10443	//    * Queue - The ARN of an SQS queue.
10444	//
10445	//    * Topic - The ARN of an SNS topic.
10446	//
10447	//    * Event Bus - The ARN of an Amazon EventBridge event bus.
10448	DestinationConfig *DestinationConfig `type:"structure"`
10449
10450	// The Amazon Resource Name (ARN) of the function.
10451	FunctionArn *string `type:"string"`
10452
10453	// The date and time that the configuration was last updated.
10454	LastModified *time.Time `type:"timestamp"`
10455
10456	// The maximum age of a request that Lambda sends to a function for processing.
10457	MaximumEventAgeInSeconds *int64 `min:"60" type:"integer"`
10458
10459	// The maximum number of times to retry when the function returns an error.
10460	MaximumRetryAttempts *int64 `type:"integer"`
10461}
10462
10463// String returns the string representation
10464func (s GetFunctionEventInvokeConfigOutput) String() string {
10465	return awsutil.Prettify(s)
10466}
10467
10468// GoString returns the string representation
10469func (s GetFunctionEventInvokeConfigOutput) GoString() string {
10470	return s.String()
10471}
10472
10473// SetDestinationConfig sets the DestinationConfig field's value.
10474func (s *GetFunctionEventInvokeConfigOutput) SetDestinationConfig(v *DestinationConfig) *GetFunctionEventInvokeConfigOutput {
10475	s.DestinationConfig = v
10476	return s
10477}
10478
10479// SetFunctionArn sets the FunctionArn field's value.
10480func (s *GetFunctionEventInvokeConfigOutput) SetFunctionArn(v string) *GetFunctionEventInvokeConfigOutput {
10481	s.FunctionArn = &v
10482	return s
10483}
10484
10485// SetLastModified sets the LastModified field's value.
10486func (s *GetFunctionEventInvokeConfigOutput) SetLastModified(v time.Time) *GetFunctionEventInvokeConfigOutput {
10487	s.LastModified = &v
10488	return s
10489}
10490
10491// SetMaximumEventAgeInSeconds sets the MaximumEventAgeInSeconds field's value.
10492func (s *GetFunctionEventInvokeConfigOutput) SetMaximumEventAgeInSeconds(v int64) *GetFunctionEventInvokeConfigOutput {
10493	s.MaximumEventAgeInSeconds = &v
10494	return s
10495}
10496
10497// SetMaximumRetryAttempts sets the MaximumRetryAttempts field's value.
10498func (s *GetFunctionEventInvokeConfigOutput) SetMaximumRetryAttempts(v int64) *GetFunctionEventInvokeConfigOutput {
10499	s.MaximumRetryAttempts = &v
10500	return s
10501}
10502
10503type GetFunctionInput struct {
10504	_ struct{} `type:"structure"`
10505
10506	// The name of the Lambda function, version, or alias.
10507	//
10508	// Name formats
10509	//
10510	//    * Function name - my-function (name-only), my-function:v1 (with alias).
10511	//
10512	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
10513	//
10514	//    * Partial ARN - 123456789012:function:my-function.
10515	//
10516	// You can append a version number or alias to any of the formats. The length
10517	// constraint applies only to the full ARN. If you specify only the function
10518	// name, it is limited to 64 characters in length.
10519	//
10520	// FunctionName is a required field
10521	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
10522
10523	// Specify a version or alias to get details about a published version of the
10524	// function.
10525	Qualifier *string `location:"querystring" locationName:"Qualifier" min:"1" type:"string"`
10526}
10527
10528// String returns the string representation
10529func (s GetFunctionInput) String() string {
10530	return awsutil.Prettify(s)
10531}
10532
10533// GoString returns the string representation
10534func (s GetFunctionInput) GoString() string {
10535	return s.String()
10536}
10537
10538// Validate inspects the fields of the type to determine if they are valid.
10539func (s *GetFunctionInput) Validate() error {
10540	invalidParams := request.ErrInvalidParams{Context: "GetFunctionInput"}
10541	if s.FunctionName == nil {
10542		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
10543	}
10544	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
10545		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
10546	}
10547	if s.Qualifier != nil && len(*s.Qualifier) < 1 {
10548		invalidParams.Add(request.NewErrParamMinLen("Qualifier", 1))
10549	}
10550
10551	if invalidParams.Len() > 0 {
10552		return invalidParams
10553	}
10554	return nil
10555}
10556
10557// SetFunctionName sets the FunctionName field's value.
10558func (s *GetFunctionInput) SetFunctionName(v string) *GetFunctionInput {
10559	s.FunctionName = &v
10560	return s
10561}
10562
10563// SetQualifier sets the Qualifier field's value.
10564func (s *GetFunctionInput) SetQualifier(v string) *GetFunctionInput {
10565	s.Qualifier = &v
10566	return s
10567}
10568
10569type GetFunctionOutput struct {
10570	_ struct{} `type:"structure"`
10571
10572	// The deployment package of the function or version.
10573	Code *FunctionCodeLocation `type:"structure"`
10574
10575	// The function's reserved concurrency (https://docs.aws.amazon.com/lambda/latest/dg/concurrent-executions.html).
10576	Concurrency *PutFunctionConcurrencyOutput `type:"structure"`
10577
10578	// The configuration of the function or version.
10579	Configuration *FunctionConfiguration `type:"structure"`
10580
10581	// The function's tags (https://docs.aws.amazon.com/lambda/latest/dg/tagging.html).
10582	Tags map[string]*string `type:"map"`
10583}
10584
10585// String returns the string representation
10586func (s GetFunctionOutput) String() string {
10587	return awsutil.Prettify(s)
10588}
10589
10590// GoString returns the string representation
10591func (s GetFunctionOutput) GoString() string {
10592	return s.String()
10593}
10594
10595// SetCode sets the Code field's value.
10596func (s *GetFunctionOutput) SetCode(v *FunctionCodeLocation) *GetFunctionOutput {
10597	s.Code = v
10598	return s
10599}
10600
10601// SetConcurrency sets the Concurrency field's value.
10602func (s *GetFunctionOutput) SetConcurrency(v *PutFunctionConcurrencyOutput) *GetFunctionOutput {
10603	s.Concurrency = v
10604	return s
10605}
10606
10607// SetConfiguration sets the Configuration field's value.
10608func (s *GetFunctionOutput) SetConfiguration(v *FunctionConfiguration) *GetFunctionOutput {
10609	s.Configuration = v
10610	return s
10611}
10612
10613// SetTags sets the Tags field's value.
10614func (s *GetFunctionOutput) SetTags(v map[string]*string) *GetFunctionOutput {
10615	s.Tags = v
10616	return s
10617}
10618
10619type GetLayerVersionByArnInput struct {
10620	_ struct{} `type:"structure"`
10621
10622	// The ARN of the layer version.
10623	//
10624	// Arn is a required field
10625	Arn *string `location:"querystring" locationName:"Arn" min:"1" type:"string" required:"true"`
10626}
10627
10628// String returns the string representation
10629func (s GetLayerVersionByArnInput) String() string {
10630	return awsutil.Prettify(s)
10631}
10632
10633// GoString returns the string representation
10634func (s GetLayerVersionByArnInput) GoString() string {
10635	return s.String()
10636}
10637
10638// Validate inspects the fields of the type to determine if they are valid.
10639func (s *GetLayerVersionByArnInput) Validate() error {
10640	invalidParams := request.ErrInvalidParams{Context: "GetLayerVersionByArnInput"}
10641	if s.Arn == nil {
10642		invalidParams.Add(request.NewErrParamRequired("Arn"))
10643	}
10644	if s.Arn != nil && len(*s.Arn) < 1 {
10645		invalidParams.Add(request.NewErrParamMinLen("Arn", 1))
10646	}
10647
10648	if invalidParams.Len() > 0 {
10649		return invalidParams
10650	}
10651	return nil
10652}
10653
10654// SetArn sets the Arn field's value.
10655func (s *GetLayerVersionByArnInput) SetArn(v string) *GetLayerVersionByArnInput {
10656	s.Arn = &v
10657	return s
10658}
10659
10660type GetLayerVersionByArnOutput struct {
10661	_ struct{} `type:"structure"`
10662
10663	// The layer's compatible runtimes.
10664	CompatibleRuntimes []*string `type:"list"`
10665
10666	// Details about the layer version.
10667	Content *LayerVersionContentOutput `type:"structure"`
10668
10669	// The date that the layer version was created, in ISO-8601 format (https://www.w3.org/TR/NOTE-datetime)
10670	// (YYYY-MM-DDThh:mm:ss.sTZD).
10671	CreatedDate *string `type:"string"`
10672
10673	// The description of the version.
10674	Description *string `type:"string"`
10675
10676	// The ARN of the layer.
10677	LayerArn *string `min:"1" type:"string"`
10678
10679	// The ARN of the layer version.
10680	LayerVersionArn *string `min:"1" type:"string"`
10681
10682	// The layer's software license.
10683	LicenseInfo *string `type:"string"`
10684
10685	// The version number.
10686	Version *int64 `type:"long"`
10687}
10688
10689// String returns the string representation
10690func (s GetLayerVersionByArnOutput) String() string {
10691	return awsutil.Prettify(s)
10692}
10693
10694// GoString returns the string representation
10695func (s GetLayerVersionByArnOutput) GoString() string {
10696	return s.String()
10697}
10698
10699// SetCompatibleRuntimes sets the CompatibleRuntimes field's value.
10700func (s *GetLayerVersionByArnOutput) SetCompatibleRuntimes(v []*string) *GetLayerVersionByArnOutput {
10701	s.CompatibleRuntimes = v
10702	return s
10703}
10704
10705// SetContent sets the Content field's value.
10706func (s *GetLayerVersionByArnOutput) SetContent(v *LayerVersionContentOutput) *GetLayerVersionByArnOutput {
10707	s.Content = v
10708	return s
10709}
10710
10711// SetCreatedDate sets the CreatedDate field's value.
10712func (s *GetLayerVersionByArnOutput) SetCreatedDate(v string) *GetLayerVersionByArnOutput {
10713	s.CreatedDate = &v
10714	return s
10715}
10716
10717// SetDescription sets the Description field's value.
10718func (s *GetLayerVersionByArnOutput) SetDescription(v string) *GetLayerVersionByArnOutput {
10719	s.Description = &v
10720	return s
10721}
10722
10723// SetLayerArn sets the LayerArn field's value.
10724func (s *GetLayerVersionByArnOutput) SetLayerArn(v string) *GetLayerVersionByArnOutput {
10725	s.LayerArn = &v
10726	return s
10727}
10728
10729// SetLayerVersionArn sets the LayerVersionArn field's value.
10730func (s *GetLayerVersionByArnOutput) SetLayerVersionArn(v string) *GetLayerVersionByArnOutput {
10731	s.LayerVersionArn = &v
10732	return s
10733}
10734
10735// SetLicenseInfo sets the LicenseInfo field's value.
10736func (s *GetLayerVersionByArnOutput) SetLicenseInfo(v string) *GetLayerVersionByArnOutput {
10737	s.LicenseInfo = &v
10738	return s
10739}
10740
10741// SetVersion sets the Version field's value.
10742func (s *GetLayerVersionByArnOutput) SetVersion(v int64) *GetLayerVersionByArnOutput {
10743	s.Version = &v
10744	return s
10745}
10746
10747type GetLayerVersionInput struct {
10748	_ struct{} `type:"structure"`
10749
10750	// The name or Amazon Resource Name (ARN) of the layer.
10751	//
10752	// LayerName is a required field
10753	LayerName *string `location:"uri" locationName:"LayerName" min:"1" type:"string" required:"true"`
10754
10755	// The version number.
10756	//
10757	// VersionNumber is a required field
10758	VersionNumber *int64 `location:"uri" locationName:"VersionNumber" type:"long" required:"true"`
10759}
10760
10761// String returns the string representation
10762func (s GetLayerVersionInput) String() string {
10763	return awsutil.Prettify(s)
10764}
10765
10766// GoString returns the string representation
10767func (s GetLayerVersionInput) GoString() string {
10768	return s.String()
10769}
10770
10771// Validate inspects the fields of the type to determine if they are valid.
10772func (s *GetLayerVersionInput) Validate() error {
10773	invalidParams := request.ErrInvalidParams{Context: "GetLayerVersionInput"}
10774	if s.LayerName == nil {
10775		invalidParams.Add(request.NewErrParamRequired("LayerName"))
10776	}
10777	if s.LayerName != nil && len(*s.LayerName) < 1 {
10778		invalidParams.Add(request.NewErrParamMinLen("LayerName", 1))
10779	}
10780	if s.VersionNumber == nil {
10781		invalidParams.Add(request.NewErrParamRequired("VersionNumber"))
10782	}
10783
10784	if invalidParams.Len() > 0 {
10785		return invalidParams
10786	}
10787	return nil
10788}
10789
10790// SetLayerName sets the LayerName field's value.
10791func (s *GetLayerVersionInput) SetLayerName(v string) *GetLayerVersionInput {
10792	s.LayerName = &v
10793	return s
10794}
10795
10796// SetVersionNumber sets the VersionNumber field's value.
10797func (s *GetLayerVersionInput) SetVersionNumber(v int64) *GetLayerVersionInput {
10798	s.VersionNumber = &v
10799	return s
10800}
10801
10802type GetLayerVersionOutput struct {
10803	_ struct{} `type:"structure"`
10804
10805	// The layer's compatible runtimes.
10806	CompatibleRuntimes []*string `type:"list"`
10807
10808	// Details about the layer version.
10809	Content *LayerVersionContentOutput `type:"structure"`
10810
10811	// The date that the layer version was created, in ISO-8601 format (https://www.w3.org/TR/NOTE-datetime)
10812	// (YYYY-MM-DDThh:mm:ss.sTZD).
10813	CreatedDate *string `type:"string"`
10814
10815	// The description of the version.
10816	Description *string `type:"string"`
10817
10818	// The ARN of the layer.
10819	LayerArn *string `min:"1" type:"string"`
10820
10821	// The ARN of the layer version.
10822	LayerVersionArn *string `min:"1" type:"string"`
10823
10824	// The layer's software license.
10825	LicenseInfo *string `type:"string"`
10826
10827	// The version number.
10828	Version *int64 `type:"long"`
10829}
10830
10831// String returns the string representation
10832func (s GetLayerVersionOutput) String() string {
10833	return awsutil.Prettify(s)
10834}
10835
10836// GoString returns the string representation
10837func (s GetLayerVersionOutput) GoString() string {
10838	return s.String()
10839}
10840
10841// SetCompatibleRuntimes sets the CompatibleRuntimes field's value.
10842func (s *GetLayerVersionOutput) SetCompatibleRuntimes(v []*string) *GetLayerVersionOutput {
10843	s.CompatibleRuntimes = v
10844	return s
10845}
10846
10847// SetContent sets the Content field's value.
10848func (s *GetLayerVersionOutput) SetContent(v *LayerVersionContentOutput) *GetLayerVersionOutput {
10849	s.Content = v
10850	return s
10851}
10852
10853// SetCreatedDate sets the CreatedDate field's value.
10854func (s *GetLayerVersionOutput) SetCreatedDate(v string) *GetLayerVersionOutput {
10855	s.CreatedDate = &v
10856	return s
10857}
10858
10859// SetDescription sets the Description field's value.
10860func (s *GetLayerVersionOutput) SetDescription(v string) *GetLayerVersionOutput {
10861	s.Description = &v
10862	return s
10863}
10864
10865// SetLayerArn sets the LayerArn field's value.
10866func (s *GetLayerVersionOutput) SetLayerArn(v string) *GetLayerVersionOutput {
10867	s.LayerArn = &v
10868	return s
10869}
10870
10871// SetLayerVersionArn sets the LayerVersionArn field's value.
10872func (s *GetLayerVersionOutput) SetLayerVersionArn(v string) *GetLayerVersionOutput {
10873	s.LayerVersionArn = &v
10874	return s
10875}
10876
10877// SetLicenseInfo sets the LicenseInfo field's value.
10878func (s *GetLayerVersionOutput) SetLicenseInfo(v string) *GetLayerVersionOutput {
10879	s.LicenseInfo = &v
10880	return s
10881}
10882
10883// SetVersion sets the Version field's value.
10884func (s *GetLayerVersionOutput) SetVersion(v int64) *GetLayerVersionOutput {
10885	s.Version = &v
10886	return s
10887}
10888
10889type GetLayerVersionPolicyInput struct {
10890	_ struct{} `type:"structure"`
10891
10892	// The name or Amazon Resource Name (ARN) of the layer.
10893	//
10894	// LayerName is a required field
10895	LayerName *string `location:"uri" locationName:"LayerName" min:"1" type:"string" required:"true"`
10896
10897	// The version number.
10898	//
10899	// VersionNumber is a required field
10900	VersionNumber *int64 `location:"uri" locationName:"VersionNumber" type:"long" required:"true"`
10901}
10902
10903// String returns the string representation
10904func (s GetLayerVersionPolicyInput) String() string {
10905	return awsutil.Prettify(s)
10906}
10907
10908// GoString returns the string representation
10909func (s GetLayerVersionPolicyInput) GoString() string {
10910	return s.String()
10911}
10912
10913// Validate inspects the fields of the type to determine if they are valid.
10914func (s *GetLayerVersionPolicyInput) Validate() error {
10915	invalidParams := request.ErrInvalidParams{Context: "GetLayerVersionPolicyInput"}
10916	if s.LayerName == nil {
10917		invalidParams.Add(request.NewErrParamRequired("LayerName"))
10918	}
10919	if s.LayerName != nil && len(*s.LayerName) < 1 {
10920		invalidParams.Add(request.NewErrParamMinLen("LayerName", 1))
10921	}
10922	if s.VersionNumber == nil {
10923		invalidParams.Add(request.NewErrParamRequired("VersionNumber"))
10924	}
10925
10926	if invalidParams.Len() > 0 {
10927		return invalidParams
10928	}
10929	return nil
10930}
10931
10932// SetLayerName sets the LayerName field's value.
10933func (s *GetLayerVersionPolicyInput) SetLayerName(v string) *GetLayerVersionPolicyInput {
10934	s.LayerName = &v
10935	return s
10936}
10937
10938// SetVersionNumber sets the VersionNumber field's value.
10939func (s *GetLayerVersionPolicyInput) SetVersionNumber(v int64) *GetLayerVersionPolicyInput {
10940	s.VersionNumber = &v
10941	return s
10942}
10943
10944type GetLayerVersionPolicyOutput struct {
10945	_ struct{} `type:"structure"`
10946
10947	// The policy document.
10948	Policy *string `type:"string"`
10949
10950	// A unique identifier for the current revision of the policy.
10951	RevisionId *string `type:"string"`
10952}
10953
10954// String returns the string representation
10955func (s GetLayerVersionPolicyOutput) String() string {
10956	return awsutil.Prettify(s)
10957}
10958
10959// GoString returns the string representation
10960func (s GetLayerVersionPolicyOutput) GoString() string {
10961	return s.String()
10962}
10963
10964// SetPolicy sets the Policy field's value.
10965func (s *GetLayerVersionPolicyOutput) SetPolicy(v string) *GetLayerVersionPolicyOutput {
10966	s.Policy = &v
10967	return s
10968}
10969
10970// SetRevisionId sets the RevisionId field's value.
10971func (s *GetLayerVersionPolicyOutput) SetRevisionId(v string) *GetLayerVersionPolicyOutput {
10972	s.RevisionId = &v
10973	return s
10974}
10975
10976type GetPolicyInput struct {
10977	_ struct{} `type:"structure"`
10978
10979	// The name of the Lambda function, version, or alias.
10980	//
10981	// Name formats
10982	//
10983	//    * Function name - my-function (name-only), my-function:v1 (with alias).
10984	//
10985	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
10986	//
10987	//    * Partial ARN - 123456789012:function:my-function.
10988	//
10989	// You can append a version number or alias to any of the formats. The length
10990	// constraint applies only to the full ARN. If you specify only the function
10991	// name, it is limited to 64 characters in length.
10992	//
10993	// FunctionName is a required field
10994	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
10995
10996	// Specify a version or alias to get the policy for that resource.
10997	Qualifier *string `location:"querystring" locationName:"Qualifier" min:"1" type:"string"`
10998}
10999
11000// String returns the string representation
11001func (s GetPolicyInput) String() string {
11002	return awsutil.Prettify(s)
11003}
11004
11005// GoString returns the string representation
11006func (s GetPolicyInput) GoString() string {
11007	return s.String()
11008}
11009
11010// Validate inspects the fields of the type to determine if they are valid.
11011func (s *GetPolicyInput) Validate() error {
11012	invalidParams := request.ErrInvalidParams{Context: "GetPolicyInput"}
11013	if s.FunctionName == nil {
11014		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
11015	}
11016	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
11017		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
11018	}
11019	if s.Qualifier != nil && len(*s.Qualifier) < 1 {
11020		invalidParams.Add(request.NewErrParamMinLen("Qualifier", 1))
11021	}
11022
11023	if invalidParams.Len() > 0 {
11024		return invalidParams
11025	}
11026	return nil
11027}
11028
11029// SetFunctionName sets the FunctionName field's value.
11030func (s *GetPolicyInput) SetFunctionName(v string) *GetPolicyInput {
11031	s.FunctionName = &v
11032	return s
11033}
11034
11035// SetQualifier sets the Qualifier field's value.
11036func (s *GetPolicyInput) SetQualifier(v string) *GetPolicyInput {
11037	s.Qualifier = &v
11038	return s
11039}
11040
11041type GetPolicyOutput struct {
11042	_ struct{} `type:"structure"`
11043
11044	// The resource-based policy.
11045	Policy *string `type:"string"`
11046
11047	// A unique identifier for the current revision of the policy.
11048	RevisionId *string `type:"string"`
11049}
11050
11051// String returns the string representation
11052func (s GetPolicyOutput) String() string {
11053	return awsutil.Prettify(s)
11054}
11055
11056// GoString returns the string representation
11057func (s GetPolicyOutput) GoString() string {
11058	return s.String()
11059}
11060
11061// SetPolicy sets the Policy field's value.
11062func (s *GetPolicyOutput) SetPolicy(v string) *GetPolicyOutput {
11063	s.Policy = &v
11064	return s
11065}
11066
11067// SetRevisionId sets the RevisionId field's value.
11068func (s *GetPolicyOutput) SetRevisionId(v string) *GetPolicyOutput {
11069	s.RevisionId = &v
11070	return s
11071}
11072
11073type GetProvisionedConcurrencyConfigInput struct {
11074	_ struct{} `type:"structure"`
11075
11076	// The name of the Lambda function.
11077	//
11078	// Name formats
11079	//
11080	//    * Function name - my-function.
11081	//
11082	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
11083	//
11084	//    * Partial ARN - 123456789012:function:my-function.
11085	//
11086	// The length constraint applies only to the full ARN. If you specify only the
11087	// function name, it is limited to 64 characters in length.
11088	//
11089	// FunctionName is a required field
11090	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
11091
11092	// The version number or alias name.
11093	//
11094	// Qualifier is a required field
11095	Qualifier *string `location:"querystring" locationName:"Qualifier" min:"1" type:"string" required:"true"`
11096}
11097
11098// String returns the string representation
11099func (s GetProvisionedConcurrencyConfigInput) String() string {
11100	return awsutil.Prettify(s)
11101}
11102
11103// GoString returns the string representation
11104func (s GetProvisionedConcurrencyConfigInput) GoString() string {
11105	return s.String()
11106}
11107
11108// Validate inspects the fields of the type to determine if they are valid.
11109func (s *GetProvisionedConcurrencyConfigInput) Validate() error {
11110	invalidParams := request.ErrInvalidParams{Context: "GetProvisionedConcurrencyConfigInput"}
11111	if s.FunctionName == nil {
11112		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
11113	}
11114	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
11115		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
11116	}
11117	if s.Qualifier == nil {
11118		invalidParams.Add(request.NewErrParamRequired("Qualifier"))
11119	}
11120	if s.Qualifier != nil && len(*s.Qualifier) < 1 {
11121		invalidParams.Add(request.NewErrParamMinLen("Qualifier", 1))
11122	}
11123
11124	if invalidParams.Len() > 0 {
11125		return invalidParams
11126	}
11127	return nil
11128}
11129
11130// SetFunctionName sets the FunctionName field's value.
11131func (s *GetProvisionedConcurrencyConfigInput) SetFunctionName(v string) *GetProvisionedConcurrencyConfigInput {
11132	s.FunctionName = &v
11133	return s
11134}
11135
11136// SetQualifier sets the Qualifier field's value.
11137func (s *GetProvisionedConcurrencyConfigInput) SetQualifier(v string) *GetProvisionedConcurrencyConfigInput {
11138	s.Qualifier = &v
11139	return s
11140}
11141
11142type GetProvisionedConcurrencyConfigOutput struct {
11143	_ struct{} `type:"structure"`
11144
11145	// The amount of provisioned concurrency allocated.
11146	AllocatedProvisionedConcurrentExecutions *int64 `type:"integer"`
11147
11148	// The amount of provisioned concurrency available.
11149	AvailableProvisionedConcurrentExecutions *int64 `type:"integer"`
11150
11151	// The date and time that a user last updated the configuration, in ISO 8601
11152	// format (https://www.iso.org/iso-8601-date-and-time-format.html).
11153	LastModified *string `type:"string"`
11154
11155	// The amount of provisioned concurrency requested.
11156	RequestedProvisionedConcurrentExecutions *int64 `min:"1" type:"integer"`
11157
11158	// The status of the allocation process.
11159	Status *string `type:"string" enum:"ProvisionedConcurrencyStatusEnum"`
11160
11161	// For failed allocations, the reason that provisioned concurrency could not
11162	// be allocated.
11163	StatusReason *string `type:"string"`
11164}
11165
11166// String returns the string representation
11167func (s GetProvisionedConcurrencyConfigOutput) String() string {
11168	return awsutil.Prettify(s)
11169}
11170
11171// GoString returns the string representation
11172func (s GetProvisionedConcurrencyConfigOutput) GoString() string {
11173	return s.String()
11174}
11175
11176// SetAllocatedProvisionedConcurrentExecutions sets the AllocatedProvisionedConcurrentExecutions field's value.
11177func (s *GetProvisionedConcurrencyConfigOutput) SetAllocatedProvisionedConcurrentExecutions(v int64) *GetProvisionedConcurrencyConfigOutput {
11178	s.AllocatedProvisionedConcurrentExecutions = &v
11179	return s
11180}
11181
11182// SetAvailableProvisionedConcurrentExecutions sets the AvailableProvisionedConcurrentExecutions field's value.
11183func (s *GetProvisionedConcurrencyConfigOutput) SetAvailableProvisionedConcurrentExecutions(v int64) *GetProvisionedConcurrencyConfigOutput {
11184	s.AvailableProvisionedConcurrentExecutions = &v
11185	return s
11186}
11187
11188// SetLastModified sets the LastModified field's value.
11189func (s *GetProvisionedConcurrencyConfigOutput) SetLastModified(v string) *GetProvisionedConcurrencyConfigOutput {
11190	s.LastModified = &v
11191	return s
11192}
11193
11194// SetRequestedProvisionedConcurrentExecutions sets the RequestedProvisionedConcurrentExecutions field's value.
11195func (s *GetProvisionedConcurrencyConfigOutput) SetRequestedProvisionedConcurrentExecutions(v int64) *GetProvisionedConcurrencyConfigOutput {
11196	s.RequestedProvisionedConcurrentExecutions = &v
11197	return s
11198}
11199
11200// SetStatus sets the Status field's value.
11201func (s *GetProvisionedConcurrencyConfigOutput) SetStatus(v string) *GetProvisionedConcurrencyConfigOutput {
11202	s.Status = &v
11203	return s
11204}
11205
11206// SetStatusReason sets the StatusReason field's value.
11207func (s *GetProvisionedConcurrencyConfigOutput) SetStatusReason(v string) *GetProvisionedConcurrencyConfigOutput {
11208	s.StatusReason = &v
11209	return s
11210}
11211
11212// Configuration values that override the container image Dockerfile settings.
11213// See Container settings (https://docs.aws.amazon.com/lambda/latest/dg/images-create.html#images-parms).
11214type ImageConfig struct {
11215	_ struct{} `type:"structure"`
11216
11217	// Specifies parameters that you want to pass in with ENTRYPOINT.
11218	Command []*string `type:"list"`
11219
11220	// Specifies the entry point to their application, which is typically the location
11221	// of the runtime executable.
11222	EntryPoint []*string `type:"list"`
11223
11224	// Specifies the working directory.
11225	WorkingDirectory *string `type:"string"`
11226}
11227
11228// String returns the string representation
11229func (s ImageConfig) String() string {
11230	return awsutil.Prettify(s)
11231}
11232
11233// GoString returns the string representation
11234func (s ImageConfig) GoString() string {
11235	return s.String()
11236}
11237
11238// SetCommand sets the Command field's value.
11239func (s *ImageConfig) SetCommand(v []*string) *ImageConfig {
11240	s.Command = v
11241	return s
11242}
11243
11244// SetEntryPoint sets the EntryPoint field's value.
11245func (s *ImageConfig) SetEntryPoint(v []*string) *ImageConfig {
11246	s.EntryPoint = v
11247	return s
11248}
11249
11250// SetWorkingDirectory sets the WorkingDirectory field's value.
11251func (s *ImageConfig) SetWorkingDirectory(v string) *ImageConfig {
11252	s.WorkingDirectory = &v
11253	return s
11254}
11255
11256// Error response to GetFunctionConfiguration.
11257type ImageConfigError struct {
11258	_ struct{} `type:"structure"`
11259
11260	// Error code.
11261	ErrorCode *string `type:"string"`
11262
11263	// Error message.
11264	Message *string `type:"string" sensitive:"true"`
11265}
11266
11267// String returns the string representation
11268func (s ImageConfigError) String() string {
11269	return awsutil.Prettify(s)
11270}
11271
11272// GoString returns the string representation
11273func (s ImageConfigError) GoString() string {
11274	return s.String()
11275}
11276
11277// SetErrorCode sets the ErrorCode field's value.
11278func (s *ImageConfigError) SetErrorCode(v string) *ImageConfigError {
11279	s.ErrorCode = &v
11280	return s
11281}
11282
11283// SetMessage sets the Message field's value.
11284func (s *ImageConfigError) SetMessage(v string) *ImageConfigError {
11285	s.Message = &v
11286	return s
11287}
11288
11289// Response to GetFunctionConfiguration request.
11290type ImageConfigResponse struct {
11291	_ struct{} `type:"structure"`
11292
11293	// Error response to GetFunctionConfiguration.
11294	Error *ImageConfigError `type:"structure"`
11295
11296	// Configuration values that override the container image Dockerfile.
11297	ImageConfig *ImageConfig `type:"structure"`
11298}
11299
11300// String returns the string representation
11301func (s ImageConfigResponse) String() string {
11302	return awsutil.Prettify(s)
11303}
11304
11305// GoString returns the string representation
11306func (s ImageConfigResponse) GoString() string {
11307	return s.String()
11308}
11309
11310// SetError sets the Error field's value.
11311func (s *ImageConfigResponse) SetError(v *ImageConfigError) *ImageConfigResponse {
11312	s.Error = v
11313	return s
11314}
11315
11316// SetImageConfig sets the ImageConfig field's value.
11317func (s *ImageConfigResponse) SetImageConfig(v *ImageConfig) *ImageConfigResponse {
11318	s.ImageConfig = v
11319	return s
11320}
11321
11322// The code signature failed the integrity check. Lambda always blocks deployment
11323// if the integrity check fails, even if code signing policy is set to WARN.
11324type InvalidCodeSignatureException struct {
11325	_            struct{}                  `type:"structure"`
11326	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
11327
11328	Message_ *string `locationName:"Message" type:"string"`
11329
11330	Type *string `type:"string"`
11331}
11332
11333// String returns the string representation
11334func (s InvalidCodeSignatureException) String() string {
11335	return awsutil.Prettify(s)
11336}
11337
11338// GoString returns the string representation
11339func (s InvalidCodeSignatureException) GoString() string {
11340	return s.String()
11341}
11342
11343func newErrorInvalidCodeSignatureException(v protocol.ResponseMetadata) error {
11344	return &InvalidCodeSignatureException{
11345		RespMetadata: v,
11346	}
11347}
11348
11349// Code returns the exception type name.
11350func (s *InvalidCodeSignatureException) Code() string {
11351	return "InvalidCodeSignatureException"
11352}
11353
11354// Message returns the exception's message.
11355func (s *InvalidCodeSignatureException) Message() string {
11356	if s.Message_ != nil {
11357		return *s.Message_
11358	}
11359	return ""
11360}
11361
11362// OrigErr always returns nil, satisfies awserr.Error interface.
11363func (s *InvalidCodeSignatureException) OrigErr() error {
11364	return nil
11365}
11366
11367func (s *InvalidCodeSignatureException) Error() string {
11368	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
11369}
11370
11371// Status code returns the HTTP status code for the request's response error.
11372func (s *InvalidCodeSignatureException) StatusCode() int {
11373	return s.RespMetadata.StatusCode
11374}
11375
11376// RequestID returns the service's response RequestID for request.
11377func (s *InvalidCodeSignatureException) RequestID() string {
11378	return s.RespMetadata.RequestID
11379}
11380
11381// One of the parameters in the request is invalid.
11382type InvalidParameterValueException struct {
11383	_            struct{}                  `type:"structure"`
11384	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
11385
11386	// The exception message.
11387	Message_ *string `locationName:"message" type:"string"`
11388
11389	// The exception type.
11390	Type *string `type:"string"`
11391}
11392
11393// String returns the string representation
11394func (s InvalidParameterValueException) String() string {
11395	return awsutil.Prettify(s)
11396}
11397
11398// GoString returns the string representation
11399func (s InvalidParameterValueException) GoString() string {
11400	return s.String()
11401}
11402
11403func newErrorInvalidParameterValueException(v protocol.ResponseMetadata) error {
11404	return &InvalidParameterValueException{
11405		RespMetadata: v,
11406	}
11407}
11408
11409// Code returns the exception type name.
11410func (s *InvalidParameterValueException) Code() string {
11411	return "InvalidParameterValueException"
11412}
11413
11414// Message returns the exception's message.
11415func (s *InvalidParameterValueException) Message() string {
11416	if s.Message_ != nil {
11417		return *s.Message_
11418	}
11419	return ""
11420}
11421
11422// OrigErr always returns nil, satisfies awserr.Error interface.
11423func (s *InvalidParameterValueException) OrigErr() error {
11424	return nil
11425}
11426
11427func (s *InvalidParameterValueException) Error() string {
11428	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
11429}
11430
11431// Status code returns the HTTP status code for the request's response error.
11432func (s *InvalidParameterValueException) StatusCode() int {
11433	return s.RespMetadata.StatusCode
11434}
11435
11436// RequestID returns the service's response RequestID for request.
11437func (s *InvalidParameterValueException) RequestID() string {
11438	return s.RespMetadata.RequestID
11439}
11440
11441// The request body could not be parsed as JSON.
11442type InvalidRequestContentException struct {
11443	_            struct{}                  `type:"structure"`
11444	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
11445
11446	// The exception message.
11447	Message_ *string `locationName:"message" type:"string"`
11448
11449	// The exception type.
11450	Type *string `type:"string"`
11451}
11452
11453// String returns the string representation
11454func (s InvalidRequestContentException) String() string {
11455	return awsutil.Prettify(s)
11456}
11457
11458// GoString returns the string representation
11459func (s InvalidRequestContentException) GoString() string {
11460	return s.String()
11461}
11462
11463func newErrorInvalidRequestContentException(v protocol.ResponseMetadata) error {
11464	return &InvalidRequestContentException{
11465		RespMetadata: v,
11466	}
11467}
11468
11469// Code returns the exception type name.
11470func (s *InvalidRequestContentException) Code() string {
11471	return "InvalidRequestContentException"
11472}
11473
11474// Message returns the exception's message.
11475func (s *InvalidRequestContentException) Message() string {
11476	if s.Message_ != nil {
11477		return *s.Message_
11478	}
11479	return ""
11480}
11481
11482// OrigErr always returns nil, satisfies awserr.Error interface.
11483func (s *InvalidRequestContentException) OrigErr() error {
11484	return nil
11485}
11486
11487func (s *InvalidRequestContentException) Error() string {
11488	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
11489}
11490
11491// Status code returns the HTTP status code for the request's response error.
11492func (s *InvalidRequestContentException) StatusCode() int {
11493	return s.RespMetadata.StatusCode
11494}
11495
11496// RequestID returns the service's response RequestID for request.
11497func (s *InvalidRequestContentException) RequestID() string {
11498	return s.RespMetadata.RequestID
11499}
11500
11501// The runtime or runtime version specified is not supported.
11502type InvalidRuntimeException struct {
11503	_            struct{}                  `type:"structure"`
11504	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
11505
11506	Message_ *string `locationName:"Message" type:"string"`
11507
11508	Type *string `type:"string"`
11509}
11510
11511// String returns the string representation
11512func (s InvalidRuntimeException) String() string {
11513	return awsutil.Prettify(s)
11514}
11515
11516// GoString returns the string representation
11517func (s InvalidRuntimeException) GoString() string {
11518	return s.String()
11519}
11520
11521func newErrorInvalidRuntimeException(v protocol.ResponseMetadata) error {
11522	return &InvalidRuntimeException{
11523		RespMetadata: v,
11524	}
11525}
11526
11527// Code returns the exception type name.
11528func (s *InvalidRuntimeException) Code() string {
11529	return "InvalidRuntimeException"
11530}
11531
11532// Message returns the exception's message.
11533func (s *InvalidRuntimeException) Message() string {
11534	if s.Message_ != nil {
11535		return *s.Message_
11536	}
11537	return ""
11538}
11539
11540// OrigErr always returns nil, satisfies awserr.Error interface.
11541func (s *InvalidRuntimeException) OrigErr() error {
11542	return nil
11543}
11544
11545func (s *InvalidRuntimeException) Error() string {
11546	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
11547}
11548
11549// Status code returns the HTTP status code for the request's response error.
11550func (s *InvalidRuntimeException) StatusCode() int {
11551	return s.RespMetadata.StatusCode
11552}
11553
11554// RequestID returns the service's response RequestID for request.
11555func (s *InvalidRuntimeException) RequestID() string {
11556	return s.RespMetadata.RequestID
11557}
11558
11559// The Security Group ID provided in the Lambda function VPC configuration is
11560// invalid.
11561type InvalidSecurityGroupIDException struct {
11562	_            struct{}                  `type:"structure"`
11563	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
11564
11565	Message_ *string `locationName:"Message" type:"string"`
11566
11567	Type *string `type:"string"`
11568}
11569
11570// String returns the string representation
11571func (s InvalidSecurityGroupIDException) String() string {
11572	return awsutil.Prettify(s)
11573}
11574
11575// GoString returns the string representation
11576func (s InvalidSecurityGroupIDException) GoString() string {
11577	return s.String()
11578}
11579
11580func newErrorInvalidSecurityGroupIDException(v protocol.ResponseMetadata) error {
11581	return &InvalidSecurityGroupIDException{
11582		RespMetadata: v,
11583	}
11584}
11585
11586// Code returns the exception type name.
11587func (s *InvalidSecurityGroupIDException) Code() string {
11588	return "InvalidSecurityGroupIDException"
11589}
11590
11591// Message returns the exception's message.
11592func (s *InvalidSecurityGroupIDException) Message() string {
11593	if s.Message_ != nil {
11594		return *s.Message_
11595	}
11596	return ""
11597}
11598
11599// OrigErr always returns nil, satisfies awserr.Error interface.
11600func (s *InvalidSecurityGroupIDException) OrigErr() error {
11601	return nil
11602}
11603
11604func (s *InvalidSecurityGroupIDException) Error() string {
11605	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
11606}
11607
11608// Status code returns the HTTP status code for the request's response error.
11609func (s *InvalidSecurityGroupIDException) StatusCode() int {
11610	return s.RespMetadata.StatusCode
11611}
11612
11613// RequestID returns the service's response RequestID for request.
11614func (s *InvalidSecurityGroupIDException) RequestID() string {
11615	return s.RespMetadata.RequestID
11616}
11617
11618// The Subnet ID provided in the Lambda function VPC configuration is invalid.
11619type InvalidSubnetIDException struct {
11620	_            struct{}                  `type:"structure"`
11621	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
11622
11623	Message_ *string `locationName:"Message" type:"string"`
11624
11625	Type *string `type:"string"`
11626}
11627
11628// String returns the string representation
11629func (s InvalidSubnetIDException) String() string {
11630	return awsutil.Prettify(s)
11631}
11632
11633// GoString returns the string representation
11634func (s InvalidSubnetIDException) GoString() string {
11635	return s.String()
11636}
11637
11638func newErrorInvalidSubnetIDException(v protocol.ResponseMetadata) error {
11639	return &InvalidSubnetIDException{
11640		RespMetadata: v,
11641	}
11642}
11643
11644// Code returns the exception type name.
11645func (s *InvalidSubnetIDException) Code() string {
11646	return "InvalidSubnetIDException"
11647}
11648
11649// Message returns the exception's message.
11650func (s *InvalidSubnetIDException) Message() string {
11651	if s.Message_ != nil {
11652		return *s.Message_
11653	}
11654	return ""
11655}
11656
11657// OrigErr always returns nil, satisfies awserr.Error interface.
11658func (s *InvalidSubnetIDException) OrigErr() error {
11659	return nil
11660}
11661
11662func (s *InvalidSubnetIDException) Error() string {
11663	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
11664}
11665
11666// Status code returns the HTTP status code for the request's response error.
11667func (s *InvalidSubnetIDException) StatusCode() int {
11668	return s.RespMetadata.StatusCode
11669}
11670
11671// RequestID returns the service's response RequestID for request.
11672func (s *InvalidSubnetIDException) RequestID() string {
11673	return s.RespMetadata.RequestID
11674}
11675
11676// Lambda could not unzip the deployment package.
11677type InvalidZipFileException struct {
11678	_            struct{}                  `type:"structure"`
11679	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
11680
11681	Message_ *string `locationName:"Message" type:"string"`
11682
11683	Type *string `type:"string"`
11684}
11685
11686// String returns the string representation
11687func (s InvalidZipFileException) String() string {
11688	return awsutil.Prettify(s)
11689}
11690
11691// GoString returns the string representation
11692func (s InvalidZipFileException) GoString() string {
11693	return s.String()
11694}
11695
11696func newErrorInvalidZipFileException(v protocol.ResponseMetadata) error {
11697	return &InvalidZipFileException{
11698		RespMetadata: v,
11699	}
11700}
11701
11702// Code returns the exception type name.
11703func (s *InvalidZipFileException) Code() string {
11704	return "InvalidZipFileException"
11705}
11706
11707// Message returns the exception's message.
11708func (s *InvalidZipFileException) Message() string {
11709	if s.Message_ != nil {
11710		return *s.Message_
11711	}
11712	return ""
11713}
11714
11715// OrigErr always returns nil, satisfies awserr.Error interface.
11716func (s *InvalidZipFileException) OrigErr() error {
11717	return nil
11718}
11719
11720func (s *InvalidZipFileException) Error() string {
11721	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
11722}
11723
11724// Status code returns the HTTP status code for the request's response error.
11725func (s *InvalidZipFileException) StatusCode() int {
11726	return s.RespMetadata.StatusCode
11727}
11728
11729// RequestID returns the service's response RequestID for request.
11730func (s *InvalidZipFileException) RequestID() string {
11731	return s.RespMetadata.RequestID
11732}
11733
11734// Deprecated: InvokeAsyncInput has been deprecated
11735type InvokeAsyncInput struct {
11736	_ struct{} `deprecated:"true" type:"structure" payload:"InvokeArgs"`
11737
11738	// The name of the Lambda function.
11739	//
11740	// Name formats
11741	//
11742	//    * Function name - my-function.
11743	//
11744	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
11745	//
11746	//    * Partial ARN - 123456789012:function:my-function.
11747	//
11748	// The length constraint applies only to the full ARN. If you specify only the
11749	// function name, it is limited to 64 characters in length.
11750	//
11751	// FunctionName is a required field
11752	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
11753
11754	// The JSON that you want to provide to your Lambda function as input.
11755	//
11756	// InvokeArgs is a required field
11757	InvokeArgs io.ReadSeeker `type:"blob" required:"true"`
11758}
11759
11760// String returns the string representation
11761func (s InvokeAsyncInput) String() string {
11762	return awsutil.Prettify(s)
11763}
11764
11765// GoString returns the string representation
11766func (s InvokeAsyncInput) GoString() string {
11767	return s.String()
11768}
11769
11770// Validate inspects the fields of the type to determine if they are valid.
11771func (s *InvokeAsyncInput) Validate() error {
11772	invalidParams := request.ErrInvalidParams{Context: "InvokeAsyncInput"}
11773	if s.FunctionName == nil {
11774		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
11775	}
11776	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
11777		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
11778	}
11779	if s.InvokeArgs == nil {
11780		invalidParams.Add(request.NewErrParamRequired("InvokeArgs"))
11781	}
11782
11783	if invalidParams.Len() > 0 {
11784		return invalidParams
11785	}
11786	return nil
11787}
11788
11789// SetFunctionName sets the FunctionName field's value.
11790func (s *InvokeAsyncInput) SetFunctionName(v string) *InvokeAsyncInput {
11791	s.FunctionName = &v
11792	return s
11793}
11794
11795// SetInvokeArgs sets the InvokeArgs field's value.
11796func (s *InvokeAsyncInput) SetInvokeArgs(v io.ReadSeeker) *InvokeAsyncInput {
11797	s.InvokeArgs = v
11798	return s
11799}
11800
11801// A success response (202 Accepted) indicates that the request is queued for
11802// invocation.
11803//
11804// Deprecated: InvokeAsyncOutput has been deprecated
11805type InvokeAsyncOutput struct {
11806	_ struct{} `deprecated:"true" type:"structure"`
11807
11808	// The status code.
11809	Status *int64 `location:"statusCode" type:"integer"`
11810}
11811
11812// String returns the string representation
11813func (s InvokeAsyncOutput) String() string {
11814	return awsutil.Prettify(s)
11815}
11816
11817// GoString returns the string representation
11818func (s InvokeAsyncOutput) GoString() string {
11819	return s.String()
11820}
11821
11822// SetStatus sets the Status field's value.
11823func (s *InvokeAsyncOutput) SetStatus(v int64) *InvokeAsyncOutput {
11824	s.Status = &v
11825	return s
11826}
11827
11828type InvokeInput struct {
11829	_ struct{} `type:"structure" payload:"Payload"`
11830
11831	// Up to 3583 bytes of base64-encoded data about the invoking client to pass
11832	// to the function in the context object.
11833	ClientContext *string `location:"header" locationName:"X-Amz-Client-Context" type:"string"`
11834
11835	// The name of the Lambda function, version, or alias.
11836	//
11837	// Name formats
11838	//
11839	//    * Function name - my-function (name-only), my-function:v1 (with alias).
11840	//
11841	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
11842	//
11843	//    * Partial ARN - 123456789012:function:my-function.
11844	//
11845	// You can append a version number or alias to any of the formats. The length
11846	// constraint applies only to the full ARN. If you specify only the function
11847	// name, it is limited to 64 characters in length.
11848	//
11849	// FunctionName is a required field
11850	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
11851
11852	// Choose from the following options.
11853	//
11854	//    * RequestResponse (default) - Invoke the function synchronously. Keep
11855	//    the connection open until the function returns a response or times out.
11856	//    The API response includes the function response and additional data.
11857	//
11858	//    * Event - Invoke the function asynchronously. Send events that fail multiple
11859	//    times to the function's dead-letter queue (if it's configured). The API
11860	//    response only includes a status code.
11861	//
11862	//    * DryRun - Validate parameter values and verify that the user or role
11863	//    has permission to invoke the function.
11864	InvocationType *string `location:"header" locationName:"X-Amz-Invocation-Type" type:"string" enum:"InvocationType"`
11865
11866	// Set to Tail to include the execution log in the response.
11867	LogType *string `location:"header" locationName:"X-Amz-Log-Type" type:"string" enum:"LogType"`
11868
11869	// The JSON that you want to provide to your Lambda function as input.
11870	Payload []byte `type:"blob" sensitive:"true"`
11871
11872	// Specify a version or alias to invoke a published version of the function.
11873	Qualifier *string `location:"querystring" locationName:"Qualifier" min:"1" type:"string"`
11874}
11875
11876// String returns the string representation
11877func (s InvokeInput) String() string {
11878	return awsutil.Prettify(s)
11879}
11880
11881// GoString returns the string representation
11882func (s InvokeInput) GoString() string {
11883	return s.String()
11884}
11885
11886// Validate inspects the fields of the type to determine if they are valid.
11887func (s *InvokeInput) Validate() error {
11888	invalidParams := request.ErrInvalidParams{Context: "InvokeInput"}
11889	if s.FunctionName == nil {
11890		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
11891	}
11892	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
11893		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
11894	}
11895	if s.Qualifier != nil && len(*s.Qualifier) < 1 {
11896		invalidParams.Add(request.NewErrParamMinLen("Qualifier", 1))
11897	}
11898
11899	if invalidParams.Len() > 0 {
11900		return invalidParams
11901	}
11902	return nil
11903}
11904
11905// SetClientContext sets the ClientContext field's value.
11906func (s *InvokeInput) SetClientContext(v string) *InvokeInput {
11907	s.ClientContext = &v
11908	return s
11909}
11910
11911// SetFunctionName sets the FunctionName field's value.
11912func (s *InvokeInput) SetFunctionName(v string) *InvokeInput {
11913	s.FunctionName = &v
11914	return s
11915}
11916
11917// SetInvocationType sets the InvocationType field's value.
11918func (s *InvokeInput) SetInvocationType(v string) *InvokeInput {
11919	s.InvocationType = &v
11920	return s
11921}
11922
11923// SetLogType sets the LogType field's value.
11924func (s *InvokeInput) SetLogType(v string) *InvokeInput {
11925	s.LogType = &v
11926	return s
11927}
11928
11929// SetPayload sets the Payload field's value.
11930func (s *InvokeInput) SetPayload(v []byte) *InvokeInput {
11931	s.Payload = v
11932	return s
11933}
11934
11935// SetQualifier sets the Qualifier field's value.
11936func (s *InvokeInput) SetQualifier(v string) *InvokeInput {
11937	s.Qualifier = &v
11938	return s
11939}
11940
11941type InvokeOutput struct {
11942	_ struct{} `type:"structure" payload:"Payload"`
11943
11944	// The version of the function that executed. When you invoke a function with
11945	// an alias, this indicates which version the alias resolved to.
11946	ExecutedVersion *string `location:"header" locationName:"X-Amz-Executed-Version" min:"1" type:"string"`
11947
11948	// If present, indicates that an error occurred during function execution. Details
11949	// about the error are included in the response payload.
11950	FunctionError *string `location:"header" locationName:"X-Amz-Function-Error" type:"string"`
11951
11952	// The last 4 KB of the execution log, which is base64 encoded.
11953	LogResult *string `location:"header" locationName:"X-Amz-Log-Result" type:"string"`
11954
11955	// The response from the function, or an error object.
11956	Payload []byte `type:"blob" sensitive:"true"`
11957
11958	// The HTTP status code is in the 200 range for a successful request. For the
11959	// RequestResponse invocation type, this status code is 200. For the Event invocation
11960	// type, this status code is 202. For the DryRun invocation type, the status
11961	// code is 204.
11962	StatusCode *int64 `location:"statusCode" type:"integer"`
11963}
11964
11965// String returns the string representation
11966func (s InvokeOutput) String() string {
11967	return awsutil.Prettify(s)
11968}
11969
11970// GoString returns the string representation
11971func (s InvokeOutput) GoString() string {
11972	return s.String()
11973}
11974
11975// SetExecutedVersion sets the ExecutedVersion field's value.
11976func (s *InvokeOutput) SetExecutedVersion(v string) *InvokeOutput {
11977	s.ExecutedVersion = &v
11978	return s
11979}
11980
11981// SetFunctionError sets the FunctionError field's value.
11982func (s *InvokeOutput) SetFunctionError(v string) *InvokeOutput {
11983	s.FunctionError = &v
11984	return s
11985}
11986
11987// SetLogResult sets the LogResult field's value.
11988func (s *InvokeOutput) SetLogResult(v string) *InvokeOutput {
11989	s.LogResult = &v
11990	return s
11991}
11992
11993// SetPayload sets the Payload field's value.
11994func (s *InvokeOutput) SetPayload(v []byte) *InvokeOutput {
11995	s.Payload = v
11996	return s
11997}
11998
11999// SetStatusCode sets the StatusCode field's value.
12000func (s *InvokeOutput) SetStatusCode(v int64) *InvokeOutput {
12001	s.StatusCode = &v
12002	return s
12003}
12004
12005// Lambda was unable to decrypt the environment variables because KMS access
12006// was denied. Check the Lambda function's KMS permissions.
12007type KMSAccessDeniedException struct {
12008	_            struct{}                  `type:"structure"`
12009	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
12010
12011	Message_ *string `locationName:"Message" type:"string"`
12012
12013	Type *string `type:"string"`
12014}
12015
12016// String returns the string representation
12017func (s KMSAccessDeniedException) String() string {
12018	return awsutil.Prettify(s)
12019}
12020
12021// GoString returns the string representation
12022func (s KMSAccessDeniedException) GoString() string {
12023	return s.String()
12024}
12025
12026func newErrorKMSAccessDeniedException(v protocol.ResponseMetadata) error {
12027	return &KMSAccessDeniedException{
12028		RespMetadata: v,
12029	}
12030}
12031
12032// Code returns the exception type name.
12033func (s *KMSAccessDeniedException) Code() string {
12034	return "KMSAccessDeniedException"
12035}
12036
12037// Message returns the exception's message.
12038func (s *KMSAccessDeniedException) Message() string {
12039	if s.Message_ != nil {
12040		return *s.Message_
12041	}
12042	return ""
12043}
12044
12045// OrigErr always returns nil, satisfies awserr.Error interface.
12046func (s *KMSAccessDeniedException) OrigErr() error {
12047	return nil
12048}
12049
12050func (s *KMSAccessDeniedException) Error() string {
12051	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
12052}
12053
12054// Status code returns the HTTP status code for the request's response error.
12055func (s *KMSAccessDeniedException) StatusCode() int {
12056	return s.RespMetadata.StatusCode
12057}
12058
12059// RequestID returns the service's response RequestID for request.
12060func (s *KMSAccessDeniedException) RequestID() string {
12061	return s.RespMetadata.RequestID
12062}
12063
12064// Lambda was unable to decrypt the environment variables because the KMS key
12065// used is disabled. Check the Lambda function's KMS key settings.
12066type KMSDisabledException struct {
12067	_            struct{}                  `type:"structure"`
12068	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
12069
12070	Message_ *string `locationName:"Message" type:"string"`
12071
12072	Type *string `type:"string"`
12073}
12074
12075// String returns the string representation
12076func (s KMSDisabledException) String() string {
12077	return awsutil.Prettify(s)
12078}
12079
12080// GoString returns the string representation
12081func (s KMSDisabledException) GoString() string {
12082	return s.String()
12083}
12084
12085func newErrorKMSDisabledException(v protocol.ResponseMetadata) error {
12086	return &KMSDisabledException{
12087		RespMetadata: v,
12088	}
12089}
12090
12091// Code returns the exception type name.
12092func (s *KMSDisabledException) Code() string {
12093	return "KMSDisabledException"
12094}
12095
12096// Message returns the exception's message.
12097func (s *KMSDisabledException) Message() string {
12098	if s.Message_ != nil {
12099		return *s.Message_
12100	}
12101	return ""
12102}
12103
12104// OrigErr always returns nil, satisfies awserr.Error interface.
12105func (s *KMSDisabledException) OrigErr() error {
12106	return nil
12107}
12108
12109func (s *KMSDisabledException) Error() string {
12110	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
12111}
12112
12113// Status code returns the HTTP status code for the request's response error.
12114func (s *KMSDisabledException) StatusCode() int {
12115	return s.RespMetadata.StatusCode
12116}
12117
12118// RequestID returns the service's response RequestID for request.
12119func (s *KMSDisabledException) RequestID() string {
12120	return s.RespMetadata.RequestID
12121}
12122
12123// Lambda was unable to decrypt the environment variables because the KMS key
12124// used is in an invalid state for Decrypt. Check the function's KMS key settings.
12125type KMSInvalidStateException struct {
12126	_            struct{}                  `type:"structure"`
12127	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
12128
12129	Message_ *string `locationName:"Message" type:"string"`
12130
12131	Type *string `type:"string"`
12132}
12133
12134// String returns the string representation
12135func (s KMSInvalidStateException) String() string {
12136	return awsutil.Prettify(s)
12137}
12138
12139// GoString returns the string representation
12140func (s KMSInvalidStateException) GoString() string {
12141	return s.String()
12142}
12143
12144func newErrorKMSInvalidStateException(v protocol.ResponseMetadata) error {
12145	return &KMSInvalidStateException{
12146		RespMetadata: v,
12147	}
12148}
12149
12150// Code returns the exception type name.
12151func (s *KMSInvalidStateException) Code() string {
12152	return "KMSInvalidStateException"
12153}
12154
12155// Message returns the exception's message.
12156func (s *KMSInvalidStateException) Message() string {
12157	if s.Message_ != nil {
12158		return *s.Message_
12159	}
12160	return ""
12161}
12162
12163// OrigErr always returns nil, satisfies awserr.Error interface.
12164func (s *KMSInvalidStateException) OrigErr() error {
12165	return nil
12166}
12167
12168func (s *KMSInvalidStateException) Error() string {
12169	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
12170}
12171
12172// Status code returns the HTTP status code for the request's response error.
12173func (s *KMSInvalidStateException) StatusCode() int {
12174	return s.RespMetadata.StatusCode
12175}
12176
12177// RequestID returns the service's response RequestID for request.
12178func (s *KMSInvalidStateException) RequestID() string {
12179	return s.RespMetadata.RequestID
12180}
12181
12182// Lambda was unable to decrypt the environment variables because the KMS key
12183// was not found. Check the function's KMS key settings.
12184type KMSNotFoundException struct {
12185	_            struct{}                  `type:"structure"`
12186	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
12187
12188	Message_ *string `locationName:"Message" type:"string"`
12189
12190	Type *string `type:"string"`
12191}
12192
12193// String returns the string representation
12194func (s KMSNotFoundException) String() string {
12195	return awsutil.Prettify(s)
12196}
12197
12198// GoString returns the string representation
12199func (s KMSNotFoundException) GoString() string {
12200	return s.String()
12201}
12202
12203func newErrorKMSNotFoundException(v protocol.ResponseMetadata) error {
12204	return &KMSNotFoundException{
12205		RespMetadata: v,
12206	}
12207}
12208
12209// Code returns the exception type name.
12210func (s *KMSNotFoundException) Code() string {
12211	return "KMSNotFoundException"
12212}
12213
12214// Message returns the exception's message.
12215func (s *KMSNotFoundException) Message() string {
12216	if s.Message_ != nil {
12217		return *s.Message_
12218	}
12219	return ""
12220}
12221
12222// OrigErr always returns nil, satisfies awserr.Error interface.
12223func (s *KMSNotFoundException) OrigErr() error {
12224	return nil
12225}
12226
12227func (s *KMSNotFoundException) Error() string {
12228	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
12229}
12230
12231// Status code returns the HTTP status code for the request's response error.
12232func (s *KMSNotFoundException) StatusCode() int {
12233	return s.RespMetadata.StatusCode
12234}
12235
12236// RequestID returns the service's response RequestID for request.
12237func (s *KMSNotFoundException) RequestID() string {
12238	return s.RespMetadata.RequestID
12239}
12240
12241// An Lambda layer (https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html).
12242type Layer struct {
12243	_ struct{} `type:"structure"`
12244
12245	// The Amazon Resource Name (ARN) of the function layer.
12246	Arn *string `min:"1" type:"string"`
12247
12248	// The size of the layer archive in bytes.
12249	CodeSize *int64 `type:"long"`
12250
12251	// The Amazon Resource Name (ARN) of a signing job.
12252	SigningJobArn *string `type:"string"`
12253
12254	// The Amazon Resource Name (ARN) for a signing profile version.
12255	SigningProfileVersionArn *string `type:"string"`
12256}
12257
12258// String returns the string representation
12259func (s Layer) String() string {
12260	return awsutil.Prettify(s)
12261}
12262
12263// GoString returns the string representation
12264func (s Layer) GoString() string {
12265	return s.String()
12266}
12267
12268// SetArn sets the Arn field's value.
12269func (s *Layer) SetArn(v string) *Layer {
12270	s.Arn = &v
12271	return s
12272}
12273
12274// SetCodeSize sets the CodeSize field's value.
12275func (s *Layer) SetCodeSize(v int64) *Layer {
12276	s.CodeSize = &v
12277	return s
12278}
12279
12280// SetSigningJobArn sets the SigningJobArn field's value.
12281func (s *Layer) SetSigningJobArn(v string) *Layer {
12282	s.SigningJobArn = &v
12283	return s
12284}
12285
12286// SetSigningProfileVersionArn sets the SigningProfileVersionArn field's value.
12287func (s *Layer) SetSigningProfileVersionArn(v string) *Layer {
12288	s.SigningProfileVersionArn = &v
12289	return s
12290}
12291
12292// A ZIP archive that contains the contents of an Lambda layer (https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html).
12293// You can specify either an Amazon S3 location, or upload a layer archive directly.
12294type LayerVersionContentInput struct {
12295	_ struct{} `type:"structure"`
12296
12297	// The Amazon S3 bucket of the layer archive.
12298	S3Bucket *string `min:"3" type:"string"`
12299
12300	// The Amazon S3 key of the layer archive.
12301	S3Key *string `min:"1" type:"string"`
12302
12303	// For versioned objects, the version of the layer archive object to use.
12304	S3ObjectVersion *string `min:"1" type:"string"`
12305
12306	// The base64-encoded contents of the layer archive. Amazon Web Services SDK
12307	// and Amazon Web Services CLI clients handle the encoding for you.
12308	//
12309	// ZipFile is automatically base64 encoded/decoded by the SDK.
12310	ZipFile []byte `type:"blob" sensitive:"true"`
12311}
12312
12313// String returns the string representation
12314func (s LayerVersionContentInput) String() string {
12315	return awsutil.Prettify(s)
12316}
12317
12318// GoString returns the string representation
12319func (s LayerVersionContentInput) GoString() string {
12320	return s.String()
12321}
12322
12323// Validate inspects the fields of the type to determine if they are valid.
12324func (s *LayerVersionContentInput) Validate() error {
12325	invalidParams := request.ErrInvalidParams{Context: "LayerVersionContentInput"}
12326	if s.S3Bucket != nil && len(*s.S3Bucket) < 3 {
12327		invalidParams.Add(request.NewErrParamMinLen("S3Bucket", 3))
12328	}
12329	if s.S3Key != nil && len(*s.S3Key) < 1 {
12330		invalidParams.Add(request.NewErrParamMinLen("S3Key", 1))
12331	}
12332	if s.S3ObjectVersion != nil && len(*s.S3ObjectVersion) < 1 {
12333		invalidParams.Add(request.NewErrParamMinLen("S3ObjectVersion", 1))
12334	}
12335
12336	if invalidParams.Len() > 0 {
12337		return invalidParams
12338	}
12339	return nil
12340}
12341
12342// SetS3Bucket sets the S3Bucket field's value.
12343func (s *LayerVersionContentInput) SetS3Bucket(v string) *LayerVersionContentInput {
12344	s.S3Bucket = &v
12345	return s
12346}
12347
12348// SetS3Key sets the S3Key field's value.
12349func (s *LayerVersionContentInput) SetS3Key(v string) *LayerVersionContentInput {
12350	s.S3Key = &v
12351	return s
12352}
12353
12354// SetS3ObjectVersion sets the S3ObjectVersion field's value.
12355func (s *LayerVersionContentInput) SetS3ObjectVersion(v string) *LayerVersionContentInput {
12356	s.S3ObjectVersion = &v
12357	return s
12358}
12359
12360// SetZipFile sets the ZipFile field's value.
12361func (s *LayerVersionContentInput) SetZipFile(v []byte) *LayerVersionContentInput {
12362	s.ZipFile = v
12363	return s
12364}
12365
12366// Details about a version of an Lambda layer (https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html).
12367type LayerVersionContentOutput struct {
12368	_ struct{} `type:"structure"`
12369
12370	// The SHA-256 hash of the layer archive.
12371	CodeSha256 *string `type:"string"`
12372
12373	// The size of the layer archive in bytes.
12374	CodeSize *int64 `type:"long"`
12375
12376	// A link to the layer archive in Amazon S3 that is valid for 10 minutes.
12377	Location *string `type:"string"`
12378
12379	// The Amazon Resource Name (ARN) of a signing job.
12380	SigningJobArn *string `type:"string"`
12381
12382	// The Amazon Resource Name (ARN) for a signing profile version.
12383	SigningProfileVersionArn *string `type:"string"`
12384}
12385
12386// String returns the string representation
12387func (s LayerVersionContentOutput) String() string {
12388	return awsutil.Prettify(s)
12389}
12390
12391// GoString returns the string representation
12392func (s LayerVersionContentOutput) GoString() string {
12393	return s.String()
12394}
12395
12396// SetCodeSha256 sets the CodeSha256 field's value.
12397func (s *LayerVersionContentOutput) SetCodeSha256(v string) *LayerVersionContentOutput {
12398	s.CodeSha256 = &v
12399	return s
12400}
12401
12402// SetCodeSize sets the CodeSize field's value.
12403func (s *LayerVersionContentOutput) SetCodeSize(v int64) *LayerVersionContentOutput {
12404	s.CodeSize = &v
12405	return s
12406}
12407
12408// SetLocation sets the Location field's value.
12409func (s *LayerVersionContentOutput) SetLocation(v string) *LayerVersionContentOutput {
12410	s.Location = &v
12411	return s
12412}
12413
12414// SetSigningJobArn sets the SigningJobArn field's value.
12415func (s *LayerVersionContentOutput) SetSigningJobArn(v string) *LayerVersionContentOutput {
12416	s.SigningJobArn = &v
12417	return s
12418}
12419
12420// SetSigningProfileVersionArn sets the SigningProfileVersionArn field's value.
12421func (s *LayerVersionContentOutput) SetSigningProfileVersionArn(v string) *LayerVersionContentOutput {
12422	s.SigningProfileVersionArn = &v
12423	return s
12424}
12425
12426// Details about a version of an Lambda layer (https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html).
12427type LayerVersionsListItem struct {
12428	_ struct{} `type:"structure"`
12429
12430	// The layer's compatible runtimes.
12431	CompatibleRuntimes []*string `type:"list"`
12432
12433	// The date that the version was created, in ISO 8601 format. For example, 2018-11-27T15:10:45.123+0000.
12434	CreatedDate *string `type:"string"`
12435
12436	// The description of the version.
12437	Description *string `type:"string"`
12438
12439	// The ARN of the layer version.
12440	LayerVersionArn *string `min:"1" type:"string"`
12441
12442	// The layer's open-source license.
12443	LicenseInfo *string `type:"string"`
12444
12445	// The version number.
12446	Version *int64 `type:"long"`
12447}
12448
12449// String returns the string representation
12450func (s LayerVersionsListItem) String() string {
12451	return awsutil.Prettify(s)
12452}
12453
12454// GoString returns the string representation
12455func (s LayerVersionsListItem) GoString() string {
12456	return s.String()
12457}
12458
12459// SetCompatibleRuntimes sets the CompatibleRuntimes field's value.
12460func (s *LayerVersionsListItem) SetCompatibleRuntimes(v []*string) *LayerVersionsListItem {
12461	s.CompatibleRuntimes = v
12462	return s
12463}
12464
12465// SetCreatedDate sets the CreatedDate field's value.
12466func (s *LayerVersionsListItem) SetCreatedDate(v string) *LayerVersionsListItem {
12467	s.CreatedDate = &v
12468	return s
12469}
12470
12471// SetDescription sets the Description field's value.
12472func (s *LayerVersionsListItem) SetDescription(v string) *LayerVersionsListItem {
12473	s.Description = &v
12474	return s
12475}
12476
12477// SetLayerVersionArn sets the LayerVersionArn field's value.
12478func (s *LayerVersionsListItem) SetLayerVersionArn(v string) *LayerVersionsListItem {
12479	s.LayerVersionArn = &v
12480	return s
12481}
12482
12483// SetLicenseInfo sets the LicenseInfo field's value.
12484func (s *LayerVersionsListItem) SetLicenseInfo(v string) *LayerVersionsListItem {
12485	s.LicenseInfo = &v
12486	return s
12487}
12488
12489// SetVersion sets the Version field's value.
12490func (s *LayerVersionsListItem) SetVersion(v int64) *LayerVersionsListItem {
12491	s.Version = &v
12492	return s
12493}
12494
12495// Details about an Lambda layer (https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html).
12496type LayersListItem struct {
12497	_ struct{} `type:"structure"`
12498
12499	// The newest version of the layer.
12500	LatestMatchingVersion *LayerVersionsListItem `type:"structure"`
12501
12502	// The Amazon Resource Name (ARN) of the function layer.
12503	LayerArn *string `min:"1" type:"string"`
12504
12505	// The name of the layer.
12506	LayerName *string `min:"1" type:"string"`
12507}
12508
12509// String returns the string representation
12510func (s LayersListItem) String() string {
12511	return awsutil.Prettify(s)
12512}
12513
12514// GoString returns the string representation
12515func (s LayersListItem) GoString() string {
12516	return s.String()
12517}
12518
12519// SetLatestMatchingVersion sets the LatestMatchingVersion field's value.
12520func (s *LayersListItem) SetLatestMatchingVersion(v *LayerVersionsListItem) *LayersListItem {
12521	s.LatestMatchingVersion = v
12522	return s
12523}
12524
12525// SetLayerArn sets the LayerArn field's value.
12526func (s *LayersListItem) SetLayerArn(v string) *LayersListItem {
12527	s.LayerArn = &v
12528	return s
12529}
12530
12531// SetLayerName sets the LayerName field's value.
12532func (s *LayersListItem) SetLayerName(v string) *LayersListItem {
12533	s.LayerName = &v
12534	return s
12535}
12536
12537type ListAliasesInput struct {
12538	_ struct{} `type:"structure"`
12539
12540	// The name of the Lambda function.
12541	//
12542	// Name formats
12543	//
12544	//    * Function name - MyFunction.
12545	//
12546	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.
12547	//
12548	//    * Partial ARN - 123456789012:function:MyFunction.
12549	//
12550	// The length constraint applies only to the full ARN. If you specify only the
12551	// function name, it is limited to 64 characters in length.
12552	//
12553	// FunctionName is a required field
12554	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
12555
12556	// Specify a function version to only list aliases that invoke that version.
12557	FunctionVersion *string `location:"querystring" locationName:"FunctionVersion" min:"1" type:"string"`
12558
12559	// Specify the pagination token that's returned by a previous request to retrieve
12560	// the next page of results.
12561	Marker *string `location:"querystring" locationName:"Marker" type:"string"`
12562
12563	// Limit the number of aliases returned.
12564	MaxItems *int64 `location:"querystring" locationName:"MaxItems" min:"1" type:"integer"`
12565}
12566
12567// String returns the string representation
12568func (s ListAliasesInput) String() string {
12569	return awsutil.Prettify(s)
12570}
12571
12572// GoString returns the string representation
12573func (s ListAliasesInput) GoString() string {
12574	return s.String()
12575}
12576
12577// Validate inspects the fields of the type to determine if they are valid.
12578func (s *ListAliasesInput) Validate() error {
12579	invalidParams := request.ErrInvalidParams{Context: "ListAliasesInput"}
12580	if s.FunctionName == nil {
12581		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
12582	}
12583	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
12584		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
12585	}
12586	if s.FunctionVersion != nil && len(*s.FunctionVersion) < 1 {
12587		invalidParams.Add(request.NewErrParamMinLen("FunctionVersion", 1))
12588	}
12589	if s.MaxItems != nil && *s.MaxItems < 1 {
12590		invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1))
12591	}
12592
12593	if invalidParams.Len() > 0 {
12594		return invalidParams
12595	}
12596	return nil
12597}
12598
12599// SetFunctionName sets the FunctionName field's value.
12600func (s *ListAliasesInput) SetFunctionName(v string) *ListAliasesInput {
12601	s.FunctionName = &v
12602	return s
12603}
12604
12605// SetFunctionVersion sets the FunctionVersion field's value.
12606func (s *ListAliasesInput) SetFunctionVersion(v string) *ListAliasesInput {
12607	s.FunctionVersion = &v
12608	return s
12609}
12610
12611// SetMarker sets the Marker field's value.
12612func (s *ListAliasesInput) SetMarker(v string) *ListAliasesInput {
12613	s.Marker = &v
12614	return s
12615}
12616
12617// SetMaxItems sets the MaxItems field's value.
12618func (s *ListAliasesInput) SetMaxItems(v int64) *ListAliasesInput {
12619	s.MaxItems = &v
12620	return s
12621}
12622
12623type ListAliasesOutput struct {
12624	_ struct{} `type:"structure"`
12625
12626	// A list of aliases.
12627	Aliases []*AliasConfiguration `type:"list"`
12628
12629	// The pagination token that's included if more results are available.
12630	NextMarker *string `type:"string"`
12631}
12632
12633// String returns the string representation
12634func (s ListAliasesOutput) String() string {
12635	return awsutil.Prettify(s)
12636}
12637
12638// GoString returns the string representation
12639func (s ListAliasesOutput) GoString() string {
12640	return s.String()
12641}
12642
12643// SetAliases sets the Aliases field's value.
12644func (s *ListAliasesOutput) SetAliases(v []*AliasConfiguration) *ListAliasesOutput {
12645	s.Aliases = v
12646	return s
12647}
12648
12649// SetNextMarker sets the NextMarker field's value.
12650func (s *ListAliasesOutput) SetNextMarker(v string) *ListAliasesOutput {
12651	s.NextMarker = &v
12652	return s
12653}
12654
12655type ListCodeSigningConfigsInput struct {
12656	_ struct{} `type:"structure"`
12657
12658	// Specify the pagination token that's returned by a previous request to retrieve
12659	// the next page of results.
12660	Marker *string `location:"querystring" locationName:"Marker" type:"string"`
12661
12662	// Maximum number of items to return.
12663	MaxItems *int64 `location:"querystring" locationName:"MaxItems" min:"1" type:"integer"`
12664}
12665
12666// String returns the string representation
12667func (s ListCodeSigningConfigsInput) String() string {
12668	return awsutil.Prettify(s)
12669}
12670
12671// GoString returns the string representation
12672func (s ListCodeSigningConfigsInput) GoString() string {
12673	return s.String()
12674}
12675
12676// Validate inspects the fields of the type to determine if they are valid.
12677func (s *ListCodeSigningConfigsInput) Validate() error {
12678	invalidParams := request.ErrInvalidParams{Context: "ListCodeSigningConfigsInput"}
12679	if s.MaxItems != nil && *s.MaxItems < 1 {
12680		invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1))
12681	}
12682
12683	if invalidParams.Len() > 0 {
12684		return invalidParams
12685	}
12686	return nil
12687}
12688
12689// SetMarker sets the Marker field's value.
12690func (s *ListCodeSigningConfigsInput) SetMarker(v string) *ListCodeSigningConfigsInput {
12691	s.Marker = &v
12692	return s
12693}
12694
12695// SetMaxItems sets the MaxItems field's value.
12696func (s *ListCodeSigningConfigsInput) SetMaxItems(v int64) *ListCodeSigningConfigsInput {
12697	s.MaxItems = &v
12698	return s
12699}
12700
12701type ListCodeSigningConfigsOutput struct {
12702	_ struct{} `type:"structure"`
12703
12704	// The code signing configurations
12705	CodeSigningConfigs []*CodeSigningConfig `type:"list"`
12706
12707	// The pagination token that's included if more results are available.
12708	NextMarker *string `type:"string"`
12709}
12710
12711// String returns the string representation
12712func (s ListCodeSigningConfigsOutput) String() string {
12713	return awsutil.Prettify(s)
12714}
12715
12716// GoString returns the string representation
12717func (s ListCodeSigningConfigsOutput) GoString() string {
12718	return s.String()
12719}
12720
12721// SetCodeSigningConfigs sets the CodeSigningConfigs field's value.
12722func (s *ListCodeSigningConfigsOutput) SetCodeSigningConfigs(v []*CodeSigningConfig) *ListCodeSigningConfigsOutput {
12723	s.CodeSigningConfigs = v
12724	return s
12725}
12726
12727// SetNextMarker sets the NextMarker field's value.
12728func (s *ListCodeSigningConfigsOutput) SetNextMarker(v string) *ListCodeSigningConfigsOutput {
12729	s.NextMarker = &v
12730	return s
12731}
12732
12733type ListEventSourceMappingsInput struct {
12734	_ struct{} `type:"structure"`
12735
12736	// The Amazon Resource Name (ARN) of the event source.
12737	//
12738	//    * Amazon Kinesis - The ARN of the data stream or a stream consumer.
12739	//
12740	//    * Amazon DynamoDB Streams - The ARN of the stream.
12741	//
12742	//    * Amazon Simple Queue Service - The ARN of the queue.
12743	//
12744	//    * Amazon Managed Streaming for Apache Kafka - The ARN of the cluster.
12745	EventSourceArn *string `location:"querystring" locationName:"EventSourceArn" type:"string"`
12746
12747	// The name of the Lambda function.
12748	//
12749	// Name formats
12750	//
12751	//    * Function name - MyFunction.
12752	//
12753	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.
12754	//
12755	//    * Version or Alias ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction:PROD.
12756	//
12757	//    * Partial ARN - 123456789012:function:MyFunction.
12758	//
12759	// The length constraint applies only to the full ARN. If you specify only the
12760	// function name, it's limited to 64 characters in length.
12761	FunctionName *string `location:"querystring" locationName:"FunctionName" min:"1" type:"string"`
12762
12763	// A pagination token returned by a previous call.
12764	Marker *string `location:"querystring" locationName:"Marker" type:"string"`
12765
12766	// The maximum number of event source mappings to return. Note that ListEventSourceMappings
12767	// returns a maximum of 100 items in each response, even if you set the number
12768	// higher.
12769	MaxItems *int64 `location:"querystring" locationName:"MaxItems" min:"1" type:"integer"`
12770}
12771
12772// String returns the string representation
12773func (s ListEventSourceMappingsInput) String() string {
12774	return awsutil.Prettify(s)
12775}
12776
12777// GoString returns the string representation
12778func (s ListEventSourceMappingsInput) GoString() string {
12779	return s.String()
12780}
12781
12782// Validate inspects the fields of the type to determine if they are valid.
12783func (s *ListEventSourceMappingsInput) Validate() error {
12784	invalidParams := request.ErrInvalidParams{Context: "ListEventSourceMappingsInput"}
12785	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
12786		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
12787	}
12788	if s.MaxItems != nil && *s.MaxItems < 1 {
12789		invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1))
12790	}
12791
12792	if invalidParams.Len() > 0 {
12793		return invalidParams
12794	}
12795	return nil
12796}
12797
12798// SetEventSourceArn sets the EventSourceArn field's value.
12799func (s *ListEventSourceMappingsInput) SetEventSourceArn(v string) *ListEventSourceMappingsInput {
12800	s.EventSourceArn = &v
12801	return s
12802}
12803
12804// SetFunctionName sets the FunctionName field's value.
12805func (s *ListEventSourceMappingsInput) SetFunctionName(v string) *ListEventSourceMappingsInput {
12806	s.FunctionName = &v
12807	return s
12808}
12809
12810// SetMarker sets the Marker field's value.
12811func (s *ListEventSourceMappingsInput) SetMarker(v string) *ListEventSourceMappingsInput {
12812	s.Marker = &v
12813	return s
12814}
12815
12816// SetMaxItems sets the MaxItems field's value.
12817func (s *ListEventSourceMappingsInput) SetMaxItems(v int64) *ListEventSourceMappingsInput {
12818	s.MaxItems = &v
12819	return s
12820}
12821
12822type ListEventSourceMappingsOutput struct {
12823	_ struct{} `type:"structure"`
12824
12825	// A list of event source mappings.
12826	EventSourceMappings []*EventSourceMappingConfiguration `type:"list"`
12827
12828	// A pagination token that's returned when the response doesn't contain all
12829	// event source mappings.
12830	NextMarker *string `type:"string"`
12831}
12832
12833// String returns the string representation
12834func (s ListEventSourceMappingsOutput) String() string {
12835	return awsutil.Prettify(s)
12836}
12837
12838// GoString returns the string representation
12839func (s ListEventSourceMappingsOutput) GoString() string {
12840	return s.String()
12841}
12842
12843// SetEventSourceMappings sets the EventSourceMappings field's value.
12844func (s *ListEventSourceMappingsOutput) SetEventSourceMappings(v []*EventSourceMappingConfiguration) *ListEventSourceMappingsOutput {
12845	s.EventSourceMappings = v
12846	return s
12847}
12848
12849// SetNextMarker sets the NextMarker field's value.
12850func (s *ListEventSourceMappingsOutput) SetNextMarker(v string) *ListEventSourceMappingsOutput {
12851	s.NextMarker = &v
12852	return s
12853}
12854
12855type ListFunctionEventInvokeConfigsInput struct {
12856	_ struct{} `type:"structure"`
12857
12858	// The name of the Lambda function.
12859	//
12860	// Name formats
12861	//
12862	//    * Function name - my-function.
12863	//
12864	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
12865	//
12866	//    * Partial ARN - 123456789012:function:my-function.
12867	//
12868	// The length constraint applies only to the full ARN. If you specify only the
12869	// function name, it is limited to 64 characters in length.
12870	//
12871	// FunctionName is a required field
12872	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
12873
12874	// Specify the pagination token that's returned by a previous request to retrieve
12875	// the next page of results.
12876	Marker *string `location:"querystring" locationName:"Marker" type:"string"`
12877
12878	// The maximum number of configurations to return.
12879	MaxItems *int64 `location:"querystring" locationName:"MaxItems" min:"1" type:"integer"`
12880}
12881
12882// String returns the string representation
12883func (s ListFunctionEventInvokeConfigsInput) String() string {
12884	return awsutil.Prettify(s)
12885}
12886
12887// GoString returns the string representation
12888func (s ListFunctionEventInvokeConfigsInput) GoString() string {
12889	return s.String()
12890}
12891
12892// Validate inspects the fields of the type to determine if they are valid.
12893func (s *ListFunctionEventInvokeConfigsInput) Validate() error {
12894	invalidParams := request.ErrInvalidParams{Context: "ListFunctionEventInvokeConfigsInput"}
12895	if s.FunctionName == nil {
12896		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
12897	}
12898	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
12899		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
12900	}
12901	if s.MaxItems != nil && *s.MaxItems < 1 {
12902		invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1))
12903	}
12904
12905	if invalidParams.Len() > 0 {
12906		return invalidParams
12907	}
12908	return nil
12909}
12910
12911// SetFunctionName sets the FunctionName field's value.
12912func (s *ListFunctionEventInvokeConfigsInput) SetFunctionName(v string) *ListFunctionEventInvokeConfigsInput {
12913	s.FunctionName = &v
12914	return s
12915}
12916
12917// SetMarker sets the Marker field's value.
12918func (s *ListFunctionEventInvokeConfigsInput) SetMarker(v string) *ListFunctionEventInvokeConfigsInput {
12919	s.Marker = &v
12920	return s
12921}
12922
12923// SetMaxItems sets the MaxItems field's value.
12924func (s *ListFunctionEventInvokeConfigsInput) SetMaxItems(v int64) *ListFunctionEventInvokeConfigsInput {
12925	s.MaxItems = &v
12926	return s
12927}
12928
12929type ListFunctionEventInvokeConfigsOutput struct {
12930	_ struct{} `type:"structure"`
12931
12932	// A list of configurations.
12933	FunctionEventInvokeConfigs []*FunctionEventInvokeConfig `type:"list"`
12934
12935	// The pagination token that's included if more results are available.
12936	NextMarker *string `type:"string"`
12937}
12938
12939// String returns the string representation
12940func (s ListFunctionEventInvokeConfigsOutput) String() string {
12941	return awsutil.Prettify(s)
12942}
12943
12944// GoString returns the string representation
12945func (s ListFunctionEventInvokeConfigsOutput) GoString() string {
12946	return s.String()
12947}
12948
12949// SetFunctionEventInvokeConfigs sets the FunctionEventInvokeConfigs field's value.
12950func (s *ListFunctionEventInvokeConfigsOutput) SetFunctionEventInvokeConfigs(v []*FunctionEventInvokeConfig) *ListFunctionEventInvokeConfigsOutput {
12951	s.FunctionEventInvokeConfigs = v
12952	return s
12953}
12954
12955// SetNextMarker sets the NextMarker field's value.
12956func (s *ListFunctionEventInvokeConfigsOutput) SetNextMarker(v string) *ListFunctionEventInvokeConfigsOutput {
12957	s.NextMarker = &v
12958	return s
12959}
12960
12961type ListFunctionsByCodeSigningConfigInput struct {
12962	_ struct{} `type:"structure"`
12963
12964	// The The Amazon Resource Name (ARN) of the code signing configuration.
12965	//
12966	// CodeSigningConfigArn is a required field
12967	CodeSigningConfigArn *string `location:"uri" locationName:"CodeSigningConfigArn" type:"string" required:"true"`
12968
12969	// Specify the pagination token that's returned by a previous request to retrieve
12970	// the next page of results.
12971	Marker *string `location:"querystring" locationName:"Marker" type:"string"`
12972
12973	// Maximum number of items to return.
12974	MaxItems *int64 `location:"querystring" locationName:"MaxItems" min:"1" type:"integer"`
12975}
12976
12977// String returns the string representation
12978func (s ListFunctionsByCodeSigningConfigInput) String() string {
12979	return awsutil.Prettify(s)
12980}
12981
12982// GoString returns the string representation
12983func (s ListFunctionsByCodeSigningConfigInput) GoString() string {
12984	return s.String()
12985}
12986
12987// Validate inspects the fields of the type to determine if they are valid.
12988func (s *ListFunctionsByCodeSigningConfigInput) Validate() error {
12989	invalidParams := request.ErrInvalidParams{Context: "ListFunctionsByCodeSigningConfigInput"}
12990	if s.CodeSigningConfigArn == nil {
12991		invalidParams.Add(request.NewErrParamRequired("CodeSigningConfigArn"))
12992	}
12993	if s.CodeSigningConfigArn != nil && len(*s.CodeSigningConfigArn) < 1 {
12994		invalidParams.Add(request.NewErrParamMinLen("CodeSigningConfigArn", 1))
12995	}
12996	if s.MaxItems != nil && *s.MaxItems < 1 {
12997		invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1))
12998	}
12999
13000	if invalidParams.Len() > 0 {
13001		return invalidParams
13002	}
13003	return nil
13004}
13005
13006// SetCodeSigningConfigArn sets the CodeSigningConfigArn field's value.
13007func (s *ListFunctionsByCodeSigningConfigInput) SetCodeSigningConfigArn(v string) *ListFunctionsByCodeSigningConfigInput {
13008	s.CodeSigningConfigArn = &v
13009	return s
13010}
13011
13012// SetMarker sets the Marker field's value.
13013func (s *ListFunctionsByCodeSigningConfigInput) SetMarker(v string) *ListFunctionsByCodeSigningConfigInput {
13014	s.Marker = &v
13015	return s
13016}
13017
13018// SetMaxItems sets the MaxItems field's value.
13019func (s *ListFunctionsByCodeSigningConfigInput) SetMaxItems(v int64) *ListFunctionsByCodeSigningConfigInput {
13020	s.MaxItems = &v
13021	return s
13022}
13023
13024type ListFunctionsByCodeSigningConfigOutput struct {
13025	_ struct{} `type:"structure"`
13026
13027	// The function ARNs.
13028	FunctionArns []*string `type:"list"`
13029
13030	// The pagination token that's included if more results are available.
13031	NextMarker *string `type:"string"`
13032}
13033
13034// String returns the string representation
13035func (s ListFunctionsByCodeSigningConfigOutput) String() string {
13036	return awsutil.Prettify(s)
13037}
13038
13039// GoString returns the string representation
13040func (s ListFunctionsByCodeSigningConfigOutput) GoString() string {
13041	return s.String()
13042}
13043
13044// SetFunctionArns sets the FunctionArns field's value.
13045func (s *ListFunctionsByCodeSigningConfigOutput) SetFunctionArns(v []*string) *ListFunctionsByCodeSigningConfigOutput {
13046	s.FunctionArns = v
13047	return s
13048}
13049
13050// SetNextMarker sets the NextMarker field's value.
13051func (s *ListFunctionsByCodeSigningConfigOutput) SetNextMarker(v string) *ListFunctionsByCodeSigningConfigOutput {
13052	s.NextMarker = &v
13053	return s
13054}
13055
13056type ListFunctionsInput struct {
13057	_ struct{} `type:"structure"`
13058
13059	// Set to ALL to include entries for all published versions of each function.
13060	FunctionVersion *string `location:"querystring" locationName:"FunctionVersion" type:"string" enum:"FunctionVersion"`
13061
13062	// Specify the pagination token that's returned by a previous request to retrieve
13063	// the next page of results.
13064	Marker *string `location:"querystring" locationName:"Marker" type:"string"`
13065
13066	// For Lambda@Edge functions, the Amazon Web Services Region of the master function.
13067	// For example, us-east-1 filters the list of functions to only include Lambda@Edge
13068	// functions replicated from a master function in US East (N. Virginia). If
13069	// specified, you must set FunctionVersion to ALL.
13070	MasterRegion *string `location:"querystring" locationName:"MasterRegion" type:"string"`
13071
13072	// The maximum number of functions to return in the response. Note that ListFunctions
13073	// returns a maximum of 50 items in each response, even if you set the number
13074	// higher.
13075	MaxItems *int64 `location:"querystring" locationName:"MaxItems" min:"1" type:"integer"`
13076}
13077
13078// String returns the string representation
13079func (s ListFunctionsInput) String() string {
13080	return awsutil.Prettify(s)
13081}
13082
13083// GoString returns the string representation
13084func (s ListFunctionsInput) GoString() string {
13085	return s.String()
13086}
13087
13088// Validate inspects the fields of the type to determine if they are valid.
13089func (s *ListFunctionsInput) Validate() error {
13090	invalidParams := request.ErrInvalidParams{Context: "ListFunctionsInput"}
13091	if s.MaxItems != nil && *s.MaxItems < 1 {
13092		invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1))
13093	}
13094
13095	if invalidParams.Len() > 0 {
13096		return invalidParams
13097	}
13098	return nil
13099}
13100
13101// SetFunctionVersion sets the FunctionVersion field's value.
13102func (s *ListFunctionsInput) SetFunctionVersion(v string) *ListFunctionsInput {
13103	s.FunctionVersion = &v
13104	return s
13105}
13106
13107// SetMarker sets the Marker field's value.
13108func (s *ListFunctionsInput) SetMarker(v string) *ListFunctionsInput {
13109	s.Marker = &v
13110	return s
13111}
13112
13113// SetMasterRegion sets the MasterRegion field's value.
13114func (s *ListFunctionsInput) SetMasterRegion(v string) *ListFunctionsInput {
13115	s.MasterRegion = &v
13116	return s
13117}
13118
13119// SetMaxItems sets the MaxItems field's value.
13120func (s *ListFunctionsInput) SetMaxItems(v int64) *ListFunctionsInput {
13121	s.MaxItems = &v
13122	return s
13123}
13124
13125// A list of Lambda functions.
13126type ListFunctionsOutput struct {
13127	_ struct{} `type:"structure"`
13128
13129	// A list of Lambda functions.
13130	Functions []*FunctionConfiguration `type:"list"`
13131
13132	// The pagination token that's included if more results are available.
13133	NextMarker *string `type:"string"`
13134}
13135
13136// String returns the string representation
13137func (s ListFunctionsOutput) String() string {
13138	return awsutil.Prettify(s)
13139}
13140
13141// GoString returns the string representation
13142func (s ListFunctionsOutput) GoString() string {
13143	return s.String()
13144}
13145
13146// SetFunctions sets the Functions field's value.
13147func (s *ListFunctionsOutput) SetFunctions(v []*FunctionConfiguration) *ListFunctionsOutput {
13148	s.Functions = v
13149	return s
13150}
13151
13152// SetNextMarker sets the NextMarker field's value.
13153func (s *ListFunctionsOutput) SetNextMarker(v string) *ListFunctionsOutput {
13154	s.NextMarker = &v
13155	return s
13156}
13157
13158type ListLayerVersionsInput struct {
13159	_ struct{} `type:"structure"`
13160
13161	// A runtime identifier. For example, go1.x.
13162	CompatibleRuntime *string `location:"querystring" locationName:"CompatibleRuntime" type:"string" enum:"Runtime"`
13163
13164	// The name or Amazon Resource Name (ARN) of the layer.
13165	//
13166	// LayerName is a required field
13167	LayerName *string `location:"uri" locationName:"LayerName" min:"1" type:"string" required:"true"`
13168
13169	// A pagination token returned by a previous call.
13170	Marker *string `location:"querystring" locationName:"Marker" type:"string"`
13171
13172	// The maximum number of versions to return.
13173	MaxItems *int64 `location:"querystring" locationName:"MaxItems" min:"1" type:"integer"`
13174}
13175
13176// String returns the string representation
13177func (s ListLayerVersionsInput) String() string {
13178	return awsutil.Prettify(s)
13179}
13180
13181// GoString returns the string representation
13182func (s ListLayerVersionsInput) GoString() string {
13183	return s.String()
13184}
13185
13186// Validate inspects the fields of the type to determine if they are valid.
13187func (s *ListLayerVersionsInput) Validate() error {
13188	invalidParams := request.ErrInvalidParams{Context: "ListLayerVersionsInput"}
13189	if s.LayerName == nil {
13190		invalidParams.Add(request.NewErrParamRequired("LayerName"))
13191	}
13192	if s.LayerName != nil && len(*s.LayerName) < 1 {
13193		invalidParams.Add(request.NewErrParamMinLen("LayerName", 1))
13194	}
13195	if s.MaxItems != nil && *s.MaxItems < 1 {
13196		invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1))
13197	}
13198
13199	if invalidParams.Len() > 0 {
13200		return invalidParams
13201	}
13202	return nil
13203}
13204
13205// SetCompatibleRuntime sets the CompatibleRuntime field's value.
13206func (s *ListLayerVersionsInput) SetCompatibleRuntime(v string) *ListLayerVersionsInput {
13207	s.CompatibleRuntime = &v
13208	return s
13209}
13210
13211// SetLayerName sets the LayerName field's value.
13212func (s *ListLayerVersionsInput) SetLayerName(v string) *ListLayerVersionsInput {
13213	s.LayerName = &v
13214	return s
13215}
13216
13217// SetMarker sets the Marker field's value.
13218func (s *ListLayerVersionsInput) SetMarker(v string) *ListLayerVersionsInput {
13219	s.Marker = &v
13220	return s
13221}
13222
13223// SetMaxItems sets the MaxItems field's value.
13224func (s *ListLayerVersionsInput) SetMaxItems(v int64) *ListLayerVersionsInput {
13225	s.MaxItems = &v
13226	return s
13227}
13228
13229type ListLayerVersionsOutput struct {
13230	_ struct{} `type:"structure"`
13231
13232	// A list of versions.
13233	LayerVersions []*LayerVersionsListItem `type:"list"`
13234
13235	// A pagination token returned when the response doesn't contain all versions.
13236	NextMarker *string `type:"string"`
13237}
13238
13239// String returns the string representation
13240func (s ListLayerVersionsOutput) String() string {
13241	return awsutil.Prettify(s)
13242}
13243
13244// GoString returns the string representation
13245func (s ListLayerVersionsOutput) GoString() string {
13246	return s.String()
13247}
13248
13249// SetLayerVersions sets the LayerVersions field's value.
13250func (s *ListLayerVersionsOutput) SetLayerVersions(v []*LayerVersionsListItem) *ListLayerVersionsOutput {
13251	s.LayerVersions = v
13252	return s
13253}
13254
13255// SetNextMarker sets the NextMarker field's value.
13256func (s *ListLayerVersionsOutput) SetNextMarker(v string) *ListLayerVersionsOutput {
13257	s.NextMarker = &v
13258	return s
13259}
13260
13261type ListLayersInput struct {
13262	_ struct{} `type:"structure"`
13263
13264	// A runtime identifier. For example, go1.x.
13265	CompatibleRuntime *string `location:"querystring" locationName:"CompatibleRuntime" type:"string" enum:"Runtime"`
13266
13267	// A pagination token returned by a previous call.
13268	Marker *string `location:"querystring" locationName:"Marker" type:"string"`
13269
13270	// The maximum number of layers to return.
13271	MaxItems *int64 `location:"querystring" locationName:"MaxItems" min:"1" type:"integer"`
13272}
13273
13274// String returns the string representation
13275func (s ListLayersInput) String() string {
13276	return awsutil.Prettify(s)
13277}
13278
13279// GoString returns the string representation
13280func (s ListLayersInput) GoString() string {
13281	return s.String()
13282}
13283
13284// Validate inspects the fields of the type to determine if they are valid.
13285func (s *ListLayersInput) Validate() error {
13286	invalidParams := request.ErrInvalidParams{Context: "ListLayersInput"}
13287	if s.MaxItems != nil && *s.MaxItems < 1 {
13288		invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1))
13289	}
13290
13291	if invalidParams.Len() > 0 {
13292		return invalidParams
13293	}
13294	return nil
13295}
13296
13297// SetCompatibleRuntime sets the CompatibleRuntime field's value.
13298func (s *ListLayersInput) SetCompatibleRuntime(v string) *ListLayersInput {
13299	s.CompatibleRuntime = &v
13300	return s
13301}
13302
13303// SetMarker sets the Marker field's value.
13304func (s *ListLayersInput) SetMarker(v string) *ListLayersInput {
13305	s.Marker = &v
13306	return s
13307}
13308
13309// SetMaxItems sets the MaxItems field's value.
13310func (s *ListLayersInput) SetMaxItems(v int64) *ListLayersInput {
13311	s.MaxItems = &v
13312	return s
13313}
13314
13315type ListLayersOutput struct {
13316	_ struct{} `type:"structure"`
13317
13318	// A list of function layers.
13319	Layers []*LayersListItem `type:"list"`
13320
13321	// A pagination token returned when the response doesn't contain all layers.
13322	NextMarker *string `type:"string"`
13323}
13324
13325// String returns the string representation
13326func (s ListLayersOutput) String() string {
13327	return awsutil.Prettify(s)
13328}
13329
13330// GoString returns the string representation
13331func (s ListLayersOutput) GoString() string {
13332	return s.String()
13333}
13334
13335// SetLayers sets the Layers field's value.
13336func (s *ListLayersOutput) SetLayers(v []*LayersListItem) *ListLayersOutput {
13337	s.Layers = v
13338	return s
13339}
13340
13341// SetNextMarker sets the NextMarker field's value.
13342func (s *ListLayersOutput) SetNextMarker(v string) *ListLayersOutput {
13343	s.NextMarker = &v
13344	return s
13345}
13346
13347type ListProvisionedConcurrencyConfigsInput struct {
13348	_ struct{} `type:"structure"`
13349
13350	// The name of the Lambda function.
13351	//
13352	// Name formats
13353	//
13354	//    * Function name - my-function.
13355	//
13356	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
13357	//
13358	//    * Partial ARN - 123456789012:function:my-function.
13359	//
13360	// The length constraint applies only to the full ARN. If you specify only the
13361	// function name, it is limited to 64 characters in length.
13362	//
13363	// FunctionName is a required field
13364	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
13365
13366	// Specify the pagination token that's returned by a previous request to retrieve
13367	// the next page of results.
13368	Marker *string `location:"querystring" locationName:"Marker" type:"string"`
13369
13370	// Specify a number to limit the number of configurations returned.
13371	MaxItems *int64 `location:"querystring" locationName:"MaxItems" min:"1" type:"integer"`
13372}
13373
13374// String returns the string representation
13375func (s ListProvisionedConcurrencyConfigsInput) String() string {
13376	return awsutil.Prettify(s)
13377}
13378
13379// GoString returns the string representation
13380func (s ListProvisionedConcurrencyConfigsInput) GoString() string {
13381	return s.String()
13382}
13383
13384// Validate inspects the fields of the type to determine if they are valid.
13385func (s *ListProvisionedConcurrencyConfigsInput) Validate() error {
13386	invalidParams := request.ErrInvalidParams{Context: "ListProvisionedConcurrencyConfigsInput"}
13387	if s.FunctionName == nil {
13388		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
13389	}
13390	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
13391		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
13392	}
13393	if s.MaxItems != nil && *s.MaxItems < 1 {
13394		invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1))
13395	}
13396
13397	if invalidParams.Len() > 0 {
13398		return invalidParams
13399	}
13400	return nil
13401}
13402
13403// SetFunctionName sets the FunctionName field's value.
13404func (s *ListProvisionedConcurrencyConfigsInput) SetFunctionName(v string) *ListProvisionedConcurrencyConfigsInput {
13405	s.FunctionName = &v
13406	return s
13407}
13408
13409// SetMarker sets the Marker field's value.
13410func (s *ListProvisionedConcurrencyConfigsInput) SetMarker(v string) *ListProvisionedConcurrencyConfigsInput {
13411	s.Marker = &v
13412	return s
13413}
13414
13415// SetMaxItems sets the MaxItems field's value.
13416func (s *ListProvisionedConcurrencyConfigsInput) SetMaxItems(v int64) *ListProvisionedConcurrencyConfigsInput {
13417	s.MaxItems = &v
13418	return s
13419}
13420
13421type ListProvisionedConcurrencyConfigsOutput struct {
13422	_ struct{} `type:"structure"`
13423
13424	// The pagination token that's included if more results are available.
13425	NextMarker *string `type:"string"`
13426
13427	// A list of provisioned concurrency configurations.
13428	ProvisionedConcurrencyConfigs []*ProvisionedConcurrencyConfigListItem `type:"list"`
13429}
13430
13431// String returns the string representation
13432func (s ListProvisionedConcurrencyConfigsOutput) String() string {
13433	return awsutil.Prettify(s)
13434}
13435
13436// GoString returns the string representation
13437func (s ListProvisionedConcurrencyConfigsOutput) GoString() string {
13438	return s.String()
13439}
13440
13441// SetNextMarker sets the NextMarker field's value.
13442func (s *ListProvisionedConcurrencyConfigsOutput) SetNextMarker(v string) *ListProvisionedConcurrencyConfigsOutput {
13443	s.NextMarker = &v
13444	return s
13445}
13446
13447// SetProvisionedConcurrencyConfigs sets the ProvisionedConcurrencyConfigs field's value.
13448func (s *ListProvisionedConcurrencyConfigsOutput) SetProvisionedConcurrencyConfigs(v []*ProvisionedConcurrencyConfigListItem) *ListProvisionedConcurrencyConfigsOutput {
13449	s.ProvisionedConcurrencyConfigs = v
13450	return s
13451}
13452
13453type ListTagsInput struct {
13454	_ struct{} `type:"structure"`
13455
13456	// The function's Amazon Resource Name (ARN).
13457	//
13458	// Resource is a required field
13459	Resource *string `location:"uri" locationName:"ARN" type:"string" required:"true"`
13460}
13461
13462// String returns the string representation
13463func (s ListTagsInput) String() string {
13464	return awsutil.Prettify(s)
13465}
13466
13467// GoString returns the string representation
13468func (s ListTagsInput) GoString() string {
13469	return s.String()
13470}
13471
13472// Validate inspects the fields of the type to determine if they are valid.
13473func (s *ListTagsInput) Validate() error {
13474	invalidParams := request.ErrInvalidParams{Context: "ListTagsInput"}
13475	if s.Resource == nil {
13476		invalidParams.Add(request.NewErrParamRequired("Resource"))
13477	}
13478	if s.Resource != nil && len(*s.Resource) < 1 {
13479		invalidParams.Add(request.NewErrParamMinLen("Resource", 1))
13480	}
13481
13482	if invalidParams.Len() > 0 {
13483		return invalidParams
13484	}
13485	return nil
13486}
13487
13488// SetResource sets the Resource field's value.
13489func (s *ListTagsInput) SetResource(v string) *ListTagsInput {
13490	s.Resource = &v
13491	return s
13492}
13493
13494type ListTagsOutput struct {
13495	_ struct{} `type:"structure"`
13496
13497	// The function's tags.
13498	Tags map[string]*string `type:"map"`
13499}
13500
13501// String returns the string representation
13502func (s ListTagsOutput) String() string {
13503	return awsutil.Prettify(s)
13504}
13505
13506// GoString returns the string representation
13507func (s ListTagsOutput) GoString() string {
13508	return s.String()
13509}
13510
13511// SetTags sets the Tags field's value.
13512func (s *ListTagsOutput) SetTags(v map[string]*string) *ListTagsOutput {
13513	s.Tags = v
13514	return s
13515}
13516
13517type ListVersionsByFunctionInput struct {
13518	_ struct{} `type:"structure"`
13519
13520	// The name of the Lambda function.
13521	//
13522	// Name formats
13523	//
13524	//    * Function name - MyFunction.
13525	//
13526	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.
13527	//
13528	//    * Partial ARN - 123456789012:function:MyFunction.
13529	//
13530	// The length constraint applies only to the full ARN. If you specify only the
13531	// function name, it is limited to 64 characters in length.
13532	//
13533	// FunctionName is a required field
13534	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
13535
13536	// Specify the pagination token that's returned by a previous request to retrieve
13537	// the next page of results.
13538	Marker *string `location:"querystring" locationName:"Marker" type:"string"`
13539
13540	// The maximum number of versions to return. Note that ListVersionsByFunction
13541	// returns a maximum of 50 items in each response, even if you set the number
13542	// higher.
13543	MaxItems *int64 `location:"querystring" locationName:"MaxItems" min:"1" type:"integer"`
13544}
13545
13546// String returns the string representation
13547func (s ListVersionsByFunctionInput) String() string {
13548	return awsutil.Prettify(s)
13549}
13550
13551// GoString returns the string representation
13552func (s ListVersionsByFunctionInput) GoString() string {
13553	return s.String()
13554}
13555
13556// Validate inspects the fields of the type to determine if they are valid.
13557func (s *ListVersionsByFunctionInput) Validate() error {
13558	invalidParams := request.ErrInvalidParams{Context: "ListVersionsByFunctionInput"}
13559	if s.FunctionName == nil {
13560		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
13561	}
13562	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
13563		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
13564	}
13565	if s.MaxItems != nil && *s.MaxItems < 1 {
13566		invalidParams.Add(request.NewErrParamMinValue("MaxItems", 1))
13567	}
13568
13569	if invalidParams.Len() > 0 {
13570		return invalidParams
13571	}
13572	return nil
13573}
13574
13575// SetFunctionName sets the FunctionName field's value.
13576func (s *ListVersionsByFunctionInput) SetFunctionName(v string) *ListVersionsByFunctionInput {
13577	s.FunctionName = &v
13578	return s
13579}
13580
13581// SetMarker sets the Marker field's value.
13582func (s *ListVersionsByFunctionInput) SetMarker(v string) *ListVersionsByFunctionInput {
13583	s.Marker = &v
13584	return s
13585}
13586
13587// SetMaxItems sets the MaxItems field's value.
13588func (s *ListVersionsByFunctionInput) SetMaxItems(v int64) *ListVersionsByFunctionInput {
13589	s.MaxItems = &v
13590	return s
13591}
13592
13593type ListVersionsByFunctionOutput struct {
13594	_ struct{} `type:"structure"`
13595
13596	// The pagination token that's included if more results are available.
13597	NextMarker *string `type:"string"`
13598
13599	// A list of Lambda function versions.
13600	Versions []*FunctionConfiguration `type:"list"`
13601}
13602
13603// String returns the string representation
13604func (s ListVersionsByFunctionOutput) String() string {
13605	return awsutil.Prettify(s)
13606}
13607
13608// GoString returns the string representation
13609func (s ListVersionsByFunctionOutput) GoString() string {
13610	return s.String()
13611}
13612
13613// SetNextMarker sets the NextMarker field's value.
13614func (s *ListVersionsByFunctionOutput) SetNextMarker(v string) *ListVersionsByFunctionOutput {
13615	s.NextMarker = &v
13616	return s
13617}
13618
13619// SetVersions sets the Versions field's value.
13620func (s *ListVersionsByFunctionOutput) SetVersions(v []*FunctionConfiguration) *ListVersionsByFunctionOutput {
13621	s.Versions = v
13622	return s
13623}
13624
13625// A destination for events that failed processing.
13626type OnFailure struct {
13627	_ struct{} `type:"structure"`
13628
13629	// The Amazon Resource Name (ARN) of the destination resource.
13630	Destination *string `type:"string"`
13631}
13632
13633// String returns the string representation
13634func (s OnFailure) String() string {
13635	return awsutil.Prettify(s)
13636}
13637
13638// GoString returns the string representation
13639func (s OnFailure) GoString() string {
13640	return s.String()
13641}
13642
13643// SetDestination sets the Destination field's value.
13644func (s *OnFailure) SetDestination(v string) *OnFailure {
13645	s.Destination = &v
13646	return s
13647}
13648
13649// A destination for events that were processed successfully.
13650type OnSuccess struct {
13651	_ struct{} `type:"structure"`
13652
13653	// The Amazon Resource Name (ARN) of the destination resource.
13654	Destination *string `type:"string"`
13655}
13656
13657// String returns the string representation
13658func (s OnSuccess) String() string {
13659	return awsutil.Prettify(s)
13660}
13661
13662// GoString returns the string representation
13663func (s OnSuccess) GoString() string {
13664	return s.String()
13665}
13666
13667// SetDestination sets the Destination field's value.
13668func (s *OnSuccess) SetDestination(v string) *OnSuccess {
13669	s.Destination = &v
13670	return s
13671}
13672
13673// The permissions policy for the resource is too large. Learn more (https://docs.aws.amazon.com/lambda/latest/dg/limits.html)
13674type PolicyLengthExceededException struct {
13675	_            struct{}                  `type:"structure"`
13676	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
13677
13678	Message_ *string `locationName:"message" type:"string"`
13679
13680	Type *string `type:"string"`
13681}
13682
13683// String returns the string representation
13684func (s PolicyLengthExceededException) String() string {
13685	return awsutil.Prettify(s)
13686}
13687
13688// GoString returns the string representation
13689func (s PolicyLengthExceededException) GoString() string {
13690	return s.String()
13691}
13692
13693func newErrorPolicyLengthExceededException(v protocol.ResponseMetadata) error {
13694	return &PolicyLengthExceededException{
13695		RespMetadata: v,
13696	}
13697}
13698
13699// Code returns the exception type name.
13700func (s *PolicyLengthExceededException) Code() string {
13701	return "PolicyLengthExceededException"
13702}
13703
13704// Message returns the exception's message.
13705func (s *PolicyLengthExceededException) Message() string {
13706	if s.Message_ != nil {
13707		return *s.Message_
13708	}
13709	return ""
13710}
13711
13712// OrigErr always returns nil, satisfies awserr.Error interface.
13713func (s *PolicyLengthExceededException) OrigErr() error {
13714	return nil
13715}
13716
13717func (s *PolicyLengthExceededException) Error() string {
13718	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
13719}
13720
13721// Status code returns the HTTP status code for the request's response error.
13722func (s *PolicyLengthExceededException) StatusCode() int {
13723	return s.RespMetadata.StatusCode
13724}
13725
13726// RequestID returns the service's response RequestID for request.
13727func (s *PolicyLengthExceededException) RequestID() string {
13728	return s.RespMetadata.RequestID
13729}
13730
13731// The RevisionId provided does not match the latest RevisionId for the Lambda
13732// function or alias. Call the GetFunction or the GetAlias API to retrieve the
13733// latest RevisionId for your resource.
13734type PreconditionFailedException struct {
13735	_            struct{}                  `type:"structure"`
13736	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
13737
13738	// The exception message.
13739	Message_ *string `locationName:"message" type:"string"`
13740
13741	// The exception type.
13742	Type *string `type:"string"`
13743}
13744
13745// String returns the string representation
13746func (s PreconditionFailedException) String() string {
13747	return awsutil.Prettify(s)
13748}
13749
13750// GoString returns the string representation
13751func (s PreconditionFailedException) GoString() string {
13752	return s.String()
13753}
13754
13755func newErrorPreconditionFailedException(v protocol.ResponseMetadata) error {
13756	return &PreconditionFailedException{
13757		RespMetadata: v,
13758	}
13759}
13760
13761// Code returns the exception type name.
13762func (s *PreconditionFailedException) Code() string {
13763	return "PreconditionFailedException"
13764}
13765
13766// Message returns the exception's message.
13767func (s *PreconditionFailedException) Message() string {
13768	if s.Message_ != nil {
13769		return *s.Message_
13770	}
13771	return ""
13772}
13773
13774// OrigErr always returns nil, satisfies awserr.Error interface.
13775func (s *PreconditionFailedException) OrigErr() error {
13776	return nil
13777}
13778
13779func (s *PreconditionFailedException) Error() string {
13780	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
13781}
13782
13783// Status code returns the HTTP status code for the request's response error.
13784func (s *PreconditionFailedException) StatusCode() int {
13785	return s.RespMetadata.StatusCode
13786}
13787
13788// RequestID returns the service's response RequestID for request.
13789func (s *PreconditionFailedException) RequestID() string {
13790	return s.RespMetadata.RequestID
13791}
13792
13793// Details about the provisioned concurrency configuration for a function alias
13794// or version.
13795type ProvisionedConcurrencyConfigListItem struct {
13796	_ struct{} `type:"structure"`
13797
13798	// The amount of provisioned concurrency allocated.
13799	AllocatedProvisionedConcurrentExecutions *int64 `type:"integer"`
13800
13801	// The amount of provisioned concurrency available.
13802	AvailableProvisionedConcurrentExecutions *int64 `type:"integer"`
13803
13804	// The Amazon Resource Name (ARN) of the alias or version.
13805	FunctionArn *string `type:"string"`
13806
13807	// The date and time that a user last updated the configuration, in ISO 8601
13808	// format (https://www.iso.org/iso-8601-date-and-time-format.html).
13809	LastModified *string `type:"string"`
13810
13811	// The amount of provisioned concurrency requested.
13812	RequestedProvisionedConcurrentExecutions *int64 `min:"1" type:"integer"`
13813
13814	// The status of the allocation process.
13815	Status *string `type:"string" enum:"ProvisionedConcurrencyStatusEnum"`
13816
13817	// For failed allocations, the reason that provisioned concurrency could not
13818	// be allocated.
13819	StatusReason *string `type:"string"`
13820}
13821
13822// String returns the string representation
13823func (s ProvisionedConcurrencyConfigListItem) String() string {
13824	return awsutil.Prettify(s)
13825}
13826
13827// GoString returns the string representation
13828func (s ProvisionedConcurrencyConfigListItem) GoString() string {
13829	return s.String()
13830}
13831
13832// SetAllocatedProvisionedConcurrentExecutions sets the AllocatedProvisionedConcurrentExecutions field's value.
13833func (s *ProvisionedConcurrencyConfigListItem) SetAllocatedProvisionedConcurrentExecutions(v int64) *ProvisionedConcurrencyConfigListItem {
13834	s.AllocatedProvisionedConcurrentExecutions = &v
13835	return s
13836}
13837
13838// SetAvailableProvisionedConcurrentExecutions sets the AvailableProvisionedConcurrentExecutions field's value.
13839func (s *ProvisionedConcurrencyConfigListItem) SetAvailableProvisionedConcurrentExecutions(v int64) *ProvisionedConcurrencyConfigListItem {
13840	s.AvailableProvisionedConcurrentExecutions = &v
13841	return s
13842}
13843
13844// SetFunctionArn sets the FunctionArn field's value.
13845func (s *ProvisionedConcurrencyConfigListItem) SetFunctionArn(v string) *ProvisionedConcurrencyConfigListItem {
13846	s.FunctionArn = &v
13847	return s
13848}
13849
13850// SetLastModified sets the LastModified field's value.
13851func (s *ProvisionedConcurrencyConfigListItem) SetLastModified(v string) *ProvisionedConcurrencyConfigListItem {
13852	s.LastModified = &v
13853	return s
13854}
13855
13856// SetRequestedProvisionedConcurrentExecutions sets the RequestedProvisionedConcurrentExecutions field's value.
13857func (s *ProvisionedConcurrencyConfigListItem) SetRequestedProvisionedConcurrentExecutions(v int64) *ProvisionedConcurrencyConfigListItem {
13858	s.RequestedProvisionedConcurrentExecutions = &v
13859	return s
13860}
13861
13862// SetStatus sets the Status field's value.
13863func (s *ProvisionedConcurrencyConfigListItem) SetStatus(v string) *ProvisionedConcurrencyConfigListItem {
13864	s.Status = &v
13865	return s
13866}
13867
13868// SetStatusReason sets the StatusReason field's value.
13869func (s *ProvisionedConcurrencyConfigListItem) SetStatusReason(v string) *ProvisionedConcurrencyConfigListItem {
13870	s.StatusReason = &v
13871	return s
13872}
13873
13874// The specified configuration does not exist.
13875type ProvisionedConcurrencyConfigNotFoundException struct {
13876	_            struct{}                  `type:"structure"`
13877	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
13878
13879	Message_ *string `locationName:"message" type:"string"`
13880
13881	Type *string `type:"string"`
13882}
13883
13884// String returns the string representation
13885func (s ProvisionedConcurrencyConfigNotFoundException) String() string {
13886	return awsutil.Prettify(s)
13887}
13888
13889// GoString returns the string representation
13890func (s ProvisionedConcurrencyConfigNotFoundException) GoString() string {
13891	return s.String()
13892}
13893
13894func newErrorProvisionedConcurrencyConfigNotFoundException(v protocol.ResponseMetadata) error {
13895	return &ProvisionedConcurrencyConfigNotFoundException{
13896		RespMetadata: v,
13897	}
13898}
13899
13900// Code returns the exception type name.
13901func (s *ProvisionedConcurrencyConfigNotFoundException) Code() string {
13902	return "ProvisionedConcurrencyConfigNotFoundException"
13903}
13904
13905// Message returns the exception's message.
13906func (s *ProvisionedConcurrencyConfigNotFoundException) Message() string {
13907	if s.Message_ != nil {
13908		return *s.Message_
13909	}
13910	return ""
13911}
13912
13913// OrigErr always returns nil, satisfies awserr.Error interface.
13914func (s *ProvisionedConcurrencyConfigNotFoundException) OrigErr() error {
13915	return nil
13916}
13917
13918func (s *ProvisionedConcurrencyConfigNotFoundException) Error() string {
13919	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
13920}
13921
13922// Status code returns the HTTP status code for the request's response error.
13923func (s *ProvisionedConcurrencyConfigNotFoundException) StatusCode() int {
13924	return s.RespMetadata.StatusCode
13925}
13926
13927// RequestID returns the service's response RequestID for request.
13928func (s *ProvisionedConcurrencyConfigNotFoundException) RequestID() string {
13929	return s.RespMetadata.RequestID
13930}
13931
13932type PublishLayerVersionInput struct {
13933	_ struct{} `type:"structure"`
13934
13935	// A list of compatible function runtimes (https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html).
13936	// Used for filtering with ListLayers and ListLayerVersions.
13937	CompatibleRuntimes []*string `type:"list"`
13938
13939	// The function layer archive.
13940	//
13941	// Content is a required field
13942	Content *LayerVersionContentInput `type:"structure" required:"true"`
13943
13944	// The description of the version.
13945	Description *string `type:"string"`
13946
13947	// The name or Amazon Resource Name (ARN) of the layer.
13948	//
13949	// LayerName is a required field
13950	LayerName *string `location:"uri" locationName:"LayerName" min:"1" type:"string" required:"true"`
13951
13952	// The layer's software license. It can be any of the following:
13953	//
13954	//    * An SPDX license identifier (https://spdx.org/licenses/). For example,
13955	//    MIT.
13956	//
13957	//    * The URL of a license hosted on the internet. For example, https://opensource.org/licenses/MIT.
13958	//
13959	//    * The full text of the license.
13960	LicenseInfo *string `type:"string"`
13961}
13962
13963// String returns the string representation
13964func (s PublishLayerVersionInput) String() string {
13965	return awsutil.Prettify(s)
13966}
13967
13968// GoString returns the string representation
13969func (s PublishLayerVersionInput) GoString() string {
13970	return s.String()
13971}
13972
13973// Validate inspects the fields of the type to determine if they are valid.
13974func (s *PublishLayerVersionInput) Validate() error {
13975	invalidParams := request.ErrInvalidParams{Context: "PublishLayerVersionInput"}
13976	if s.Content == nil {
13977		invalidParams.Add(request.NewErrParamRequired("Content"))
13978	}
13979	if s.LayerName == nil {
13980		invalidParams.Add(request.NewErrParamRequired("LayerName"))
13981	}
13982	if s.LayerName != nil && len(*s.LayerName) < 1 {
13983		invalidParams.Add(request.NewErrParamMinLen("LayerName", 1))
13984	}
13985	if s.Content != nil {
13986		if err := s.Content.Validate(); err != nil {
13987			invalidParams.AddNested("Content", err.(request.ErrInvalidParams))
13988		}
13989	}
13990
13991	if invalidParams.Len() > 0 {
13992		return invalidParams
13993	}
13994	return nil
13995}
13996
13997// SetCompatibleRuntimes sets the CompatibleRuntimes field's value.
13998func (s *PublishLayerVersionInput) SetCompatibleRuntimes(v []*string) *PublishLayerVersionInput {
13999	s.CompatibleRuntimes = v
14000	return s
14001}
14002
14003// SetContent sets the Content field's value.
14004func (s *PublishLayerVersionInput) SetContent(v *LayerVersionContentInput) *PublishLayerVersionInput {
14005	s.Content = v
14006	return s
14007}
14008
14009// SetDescription sets the Description field's value.
14010func (s *PublishLayerVersionInput) SetDescription(v string) *PublishLayerVersionInput {
14011	s.Description = &v
14012	return s
14013}
14014
14015// SetLayerName sets the LayerName field's value.
14016func (s *PublishLayerVersionInput) SetLayerName(v string) *PublishLayerVersionInput {
14017	s.LayerName = &v
14018	return s
14019}
14020
14021// SetLicenseInfo sets the LicenseInfo field's value.
14022func (s *PublishLayerVersionInput) SetLicenseInfo(v string) *PublishLayerVersionInput {
14023	s.LicenseInfo = &v
14024	return s
14025}
14026
14027type PublishLayerVersionOutput struct {
14028	_ struct{} `type:"structure"`
14029
14030	// The layer's compatible runtimes.
14031	CompatibleRuntimes []*string `type:"list"`
14032
14033	// Details about the layer version.
14034	Content *LayerVersionContentOutput `type:"structure"`
14035
14036	// The date that the layer version was created, in ISO-8601 format (https://www.w3.org/TR/NOTE-datetime)
14037	// (YYYY-MM-DDThh:mm:ss.sTZD).
14038	CreatedDate *string `type:"string"`
14039
14040	// The description of the version.
14041	Description *string `type:"string"`
14042
14043	// The ARN of the layer.
14044	LayerArn *string `min:"1" type:"string"`
14045
14046	// The ARN of the layer version.
14047	LayerVersionArn *string `min:"1" type:"string"`
14048
14049	// The layer's software license.
14050	LicenseInfo *string `type:"string"`
14051
14052	// The version number.
14053	Version *int64 `type:"long"`
14054}
14055
14056// String returns the string representation
14057func (s PublishLayerVersionOutput) String() string {
14058	return awsutil.Prettify(s)
14059}
14060
14061// GoString returns the string representation
14062func (s PublishLayerVersionOutput) GoString() string {
14063	return s.String()
14064}
14065
14066// SetCompatibleRuntimes sets the CompatibleRuntimes field's value.
14067func (s *PublishLayerVersionOutput) SetCompatibleRuntimes(v []*string) *PublishLayerVersionOutput {
14068	s.CompatibleRuntimes = v
14069	return s
14070}
14071
14072// SetContent sets the Content field's value.
14073func (s *PublishLayerVersionOutput) SetContent(v *LayerVersionContentOutput) *PublishLayerVersionOutput {
14074	s.Content = v
14075	return s
14076}
14077
14078// SetCreatedDate sets the CreatedDate field's value.
14079func (s *PublishLayerVersionOutput) SetCreatedDate(v string) *PublishLayerVersionOutput {
14080	s.CreatedDate = &v
14081	return s
14082}
14083
14084// SetDescription sets the Description field's value.
14085func (s *PublishLayerVersionOutput) SetDescription(v string) *PublishLayerVersionOutput {
14086	s.Description = &v
14087	return s
14088}
14089
14090// SetLayerArn sets the LayerArn field's value.
14091func (s *PublishLayerVersionOutput) SetLayerArn(v string) *PublishLayerVersionOutput {
14092	s.LayerArn = &v
14093	return s
14094}
14095
14096// SetLayerVersionArn sets the LayerVersionArn field's value.
14097func (s *PublishLayerVersionOutput) SetLayerVersionArn(v string) *PublishLayerVersionOutput {
14098	s.LayerVersionArn = &v
14099	return s
14100}
14101
14102// SetLicenseInfo sets the LicenseInfo field's value.
14103func (s *PublishLayerVersionOutput) SetLicenseInfo(v string) *PublishLayerVersionOutput {
14104	s.LicenseInfo = &v
14105	return s
14106}
14107
14108// SetVersion sets the Version field's value.
14109func (s *PublishLayerVersionOutput) SetVersion(v int64) *PublishLayerVersionOutput {
14110	s.Version = &v
14111	return s
14112}
14113
14114type PublishVersionInput struct {
14115	_ struct{} `type:"structure"`
14116
14117	// Only publish a version if the hash value matches the value that's specified.
14118	// Use this option to avoid publishing a version if the function code has changed
14119	// since you last updated it. You can get the hash for the version that you
14120	// uploaded from the output of UpdateFunctionCode.
14121	CodeSha256 *string `type:"string"`
14122
14123	// A description for the version to override the description in the function
14124	// configuration.
14125	Description *string `type:"string"`
14126
14127	// The name of the Lambda function.
14128	//
14129	// Name formats
14130	//
14131	//    * Function name - MyFunction.
14132	//
14133	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.
14134	//
14135	//    * Partial ARN - 123456789012:function:MyFunction.
14136	//
14137	// The length constraint applies only to the full ARN. If you specify only the
14138	// function name, it is limited to 64 characters in length.
14139	//
14140	// FunctionName is a required field
14141	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
14142
14143	// Only update the function if the revision ID matches the ID that's specified.
14144	// Use this option to avoid publishing a version if the function configuration
14145	// has changed since you last updated it.
14146	RevisionId *string `type:"string"`
14147}
14148
14149// String returns the string representation
14150func (s PublishVersionInput) String() string {
14151	return awsutil.Prettify(s)
14152}
14153
14154// GoString returns the string representation
14155func (s PublishVersionInput) GoString() string {
14156	return s.String()
14157}
14158
14159// Validate inspects the fields of the type to determine if they are valid.
14160func (s *PublishVersionInput) Validate() error {
14161	invalidParams := request.ErrInvalidParams{Context: "PublishVersionInput"}
14162	if s.FunctionName == nil {
14163		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
14164	}
14165	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
14166		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
14167	}
14168
14169	if invalidParams.Len() > 0 {
14170		return invalidParams
14171	}
14172	return nil
14173}
14174
14175// SetCodeSha256 sets the CodeSha256 field's value.
14176func (s *PublishVersionInput) SetCodeSha256(v string) *PublishVersionInput {
14177	s.CodeSha256 = &v
14178	return s
14179}
14180
14181// SetDescription sets the Description field's value.
14182func (s *PublishVersionInput) SetDescription(v string) *PublishVersionInput {
14183	s.Description = &v
14184	return s
14185}
14186
14187// SetFunctionName sets the FunctionName field's value.
14188func (s *PublishVersionInput) SetFunctionName(v string) *PublishVersionInput {
14189	s.FunctionName = &v
14190	return s
14191}
14192
14193// SetRevisionId sets the RevisionId field's value.
14194func (s *PublishVersionInput) SetRevisionId(v string) *PublishVersionInput {
14195	s.RevisionId = &v
14196	return s
14197}
14198
14199type PutFunctionCodeSigningConfigInput struct {
14200	_ struct{} `type:"structure"`
14201
14202	// The The Amazon Resource Name (ARN) of the code signing configuration.
14203	//
14204	// CodeSigningConfigArn is a required field
14205	CodeSigningConfigArn *string `type:"string" required:"true"`
14206
14207	// The name of the Lambda function.
14208	//
14209	// Name formats
14210	//
14211	//    * Function name - MyFunction.
14212	//
14213	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.
14214	//
14215	//    * Partial ARN - 123456789012:function:MyFunction.
14216	//
14217	// The length constraint applies only to the full ARN. If you specify only the
14218	// function name, it is limited to 64 characters in length.
14219	//
14220	// FunctionName is a required field
14221	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
14222}
14223
14224// String returns the string representation
14225func (s PutFunctionCodeSigningConfigInput) String() string {
14226	return awsutil.Prettify(s)
14227}
14228
14229// GoString returns the string representation
14230func (s PutFunctionCodeSigningConfigInput) GoString() string {
14231	return s.String()
14232}
14233
14234// Validate inspects the fields of the type to determine if they are valid.
14235func (s *PutFunctionCodeSigningConfigInput) Validate() error {
14236	invalidParams := request.ErrInvalidParams{Context: "PutFunctionCodeSigningConfigInput"}
14237	if s.CodeSigningConfigArn == nil {
14238		invalidParams.Add(request.NewErrParamRequired("CodeSigningConfigArn"))
14239	}
14240	if s.FunctionName == nil {
14241		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
14242	}
14243	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
14244		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
14245	}
14246
14247	if invalidParams.Len() > 0 {
14248		return invalidParams
14249	}
14250	return nil
14251}
14252
14253// SetCodeSigningConfigArn sets the CodeSigningConfigArn field's value.
14254func (s *PutFunctionCodeSigningConfigInput) SetCodeSigningConfigArn(v string) *PutFunctionCodeSigningConfigInput {
14255	s.CodeSigningConfigArn = &v
14256	return s
14257}
14258
14259// SetFunctionName sets the FunctionName field's value.
14260func (s *PutFunctionCodeSigningConfigInput) SetFunctionName(v string) *PutFunctionCodeSigningConfigInput {
14261	s.FunctionName = &v
14262	return s
14263}
14264
14265type PutFunctionCodeSigningConfigOutput struct {
14266	_ struct{} `type:"structure"`
14267
14268	// The The Amazon Resource Name (ARN) of the code signing configuration.
14269	//
14270	// CodeSigningConfigArn is a required field
14271	CodeSigningConfigArn *string `type:"string" required:"true"`
14272
14273	// The name of the Lambda function.
14274	//
14275	// Name formats
14276	//
14277	//    * Function name - MyFunction.
14278	//
14279	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.
14280	//
14281	//    * Partial ARN - 123456789012:function:MyFunction.
14282	//
14283	// The length constraint applies only to the full ARN. If you specify only the
14284	// function name, it is limited to 64 characters in length.
14285	//
14286	// FunctionName is a required field
14287	FunctionName *string `min:"1" type:"string" required:"true"`
14288}
14289
14290// String returns the string representation
14291func (s PutFunctionCodeSigningConfigOutput) String() string {
14292	return awsutil.Prettify(s)
14293}
14294
14295// GoString returns the string representation
14296func (s PutFunctionCodeSigningConfigOutput) GoString() string {
14297	return s.String()
14298}
14299
14300// SetCodeSigningConfigArn sets the CodeSigningConfigArn field's value.
14301func (s *PutFunctionCodeSigningConfigOutput) SetCodeSigningConfigArn(v string) *PutFunctionCodeSigningConfigOutput {
14302	s.CodeSigningConfigArn = &v
14303	return s
14304}
14305
14306// SetFunctionName sets the FunctionName field's value.
14307func (s *PutFunctionCodeSigningConfigOutput) SetFunctionName(v string) *PutFunctionCodeSigningConfigOutput {
14308	s.FunctionName = &v
14309	return s
14310}
14311
14312type PutFunctionConcurrencyInput struct {
14313	_ struct{} `type:"structure"`
14314
14315	// The name of the Lambda function.
14316	//
14317	// Name formats
14318	//
14319	//    * Function name - my-function.
14320	//
14321	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
14322	//
14323	//    * Partial ARN - 123456789012:function:my-function.
14324	//
14325	// The length constraint applies only to the full ARN. If you specify only the
14326	// function name, it is limited to 64 characters in length.
14327	//
14328	// FunctionName is a required field
14329	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
14330
14331	// The number of simultaneous executions to reserve for the function.
14332	//
14333	// ReservedConcurrentExecutions is a required field
14334	ReservedConcurrentExecutions *int64 `type:"integer" required:"true"`
14335}
14336
14337// String returns the string representation
14338func (s PutFunctionConcurrencyInput) String() string {
14339	return awsutil.Prettify(s)
14340}
14341
14342// GoString returns the string representation
14343func (s PutFunctionConcurrencyInput) GoString() string {
14344	return s.String()
14345}
14346
14347// Validate inspects the fields of the type to determine if they are valid.
14348func (s *PutFunctionConcurrencyInput) Validate() error {
14349	invalidParams := request.ErrInvalidParams{Context: "PutFunctionConcurrencyInput"}
14350	if s.FunctionName == nil {
14351		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
14352	}
14353	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
14354		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
14355	}
14356	if s.ReservedConcurrentExecutions == nil {
14357		invalidParams.Add(request.NewErrParamRequired("ReservedConcurrentExecutions"))
14358	}
14359
14360	if invalidParams.Len() > 0 {
14361		return invalidParams
14362	}
14363	return nil
14364}
14365
14366// SetFunctionName sets the FunctionName field's value.
14367func (s *PutFunctionConcurrencyInput) SetFunctionName(v string) *PutFunctionConcurrencyInput {
14368	s.FunctionName = &v
14369	return s
14370}
14371
14372// SetReservedConcurrentExecutions sets the ReservedConcurrentExecutions field's value.
14373func (s *PutFunctionConcurrencyInput) SetReservedConcurrentExecutions(v int64) *PutFunctionConcurrencyInput {
14374	s.ReservedConcurrentExecutions = &v
14375	return s
14376}
14377
14378type PutFunctionConcurrencyOutput struct {
14379	_ struct{} `type:"structure"`
14380
14381	// The number of concurrent executions that are reserved for this function.
14382	// For more information, see Managing Concurrency (https://docs.aws.amazon.com/lambda/latest/dg/concurrent-executions.html).
14383	ReservedConcurrentExecutions *int64 `type:"integer"`
14384}
14385
14386// String returns the string representation
14387func (s PutFunctionConcurrencyOutput) String() string {
14388	return awsutil.Prettify(s)
14389}
14390
14391// GoString returns the string representation
14392func (s PutFunctionConcurrencyOutput) GoString() string {
14393	return s.String()
14394}
14395
14396// SetReservedConcurrentExecutions sets the ReservedConcurrentExecutions field's value.
14397func (s *PutFunctionConcurrencyOutput) SetReservedConcurrentExecutions(v int64) *PutFunctionConcurrencyOutput {
14398	s.ReservedConcurrentExecutions = &v
14399	return s
14400}
14401
14402type PutFunctionEventInvokeConfigInput struct {
14403	_ struct{} `type:"structure"`
14404
14405	// A destination for events after they have been sent to a function for processing.
14406	//
14407	// Destinations
14408	//
14409	//    * Function - The Amazon Resource Name (ARN) of a Lambda function.
14410	//
14411	//    * Queue - The ARN of an SQS queue.
14412	//
14413	//    * Topic - The ARN of an SNS topic.
14414	//
14415	//    * Event Bus - The ARN of an Amazon EventBridge event bus.
14416	DestinationConfig *DestinationConfig `type:"structure"`
14417
14418	// The name of the Lambda function, version, or alias.
14419	//
14420	// Name formats
14421	//
14422	//    * Function name - my-function (name-only), my-function:v1 (with alias).
14423	//
14424	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
14425	//
14426	//    * Partial ARN - 123456789012:function:my-function.
14427	//
14428	// You can append a version number or alias to any of the formats. The length
14429	// constraint applies only to the full ARN. If you specify only the function
14430	// name, it is limited to 64 characters in length.
14431	//
14432	// FunctionName is a required field
14433	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
14434
14435	// The maximum age of a request that Lambda sends to a function for processing.
14436	MaximumEventAgeInSeconds *int64 `min:"60" type:"integer"`
14437
14438	// The maximum number of times to retry when the function returns an error.
14439	MaximumRetryAttempts *int64 `type:"integer"`
14440
14441	// A version number or alias name.
14442	Qualifier *string `location:"querystring" locationName:"Qualifier" min:"1" type:"string"`
14443}
14444
14445// String returns the string representation
14446func (s PutFunctionEventInvokeConfigInput) String() string {
14447	return awsutil.Prettify(s)
14448}
14449
14450// GoString returns the string representation
14451func (s PutFunctionEventInvokeConfigInput) GoString() string {
14452	return s.String()
14453}
14454
14455// Validate inspects the fields of the type to determine if they are valid.
14456func (s *PutFunctionEventInvokeConfigInput) Validate() error {
14457	invalidParams := request.ErrInvalidParams{Context: "PutFunctionEventInvokeConfigInput"}
14458	if s.FunctionName == nil {
14459		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
14460	}
14461	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
14462		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
14463	}
14464	if s.MaximumEventAgeInSeconds != nil && *s.MaximumEventAgeInSeconds < 60 {
14465		invalidParams.Add(request.NewErrParamMinValue("MaximumEventAgeInSeconds", 60))
14466	}
14467	if s.Qualifier != nil && len(*s.Qualifier) < 1 {
14468		invalidParams.Add(request.NewErrParamMinLen("Qualifier", 1))
14469	}
14470
14471	if invalidParams.Len() > 0 {
14472		return invalidParams
14473	}
14474	return nil
14475}
14476
14477// SetDestinationConfig sets the DestinationConfig field's value.
14478func (s *PutFunctionEventInvokeConfigInput) SetDestinationConfig(v *DestinationConfig) *PutFunctionEventInvokeConfigInput {
14479	s.DestinationConfig = v
14480	return s
14481}
14482
14483// SetFunctionName sets the FunctionName field's value.
14484func (s *PutFunctionEventInvokeConfigInput) SetFunctionName(v string) *PutFunctionEventInvokeConfigInput {
14485	s.FunctionName = &v
14486	return s
14487}
14488
14489// SetMaximumEventAgeInSeconds sets the MaximumEventAgeInSeconds field's value.
14490func (s *PutFunctionEventInvokeConfigInput) SetMaximumEventAgeInSeconds(v int64) *PutFunctionEventInvokeConfigInput {
14491	s.MaximumEventAgeInSeconds = &v
14492	return s
14493}
14494
14495// SetMaximumRetryAttempts sets the MaximumRetryAttempts field's value.
14496func (s *PutFunctionEventInvokeConfigInput) SetMaximumRetryAttempts(v int64) *PutFunctionEventInvokeConfigInput {
14497	s.MaximumRetryAttempts = &v
14498	return s
14499}
14500
14501// SetQualifier sets the Qualifier field's value.
14502func (s *PutFunctionEventInvokeConfigInput) SetQualifier(v string) *PutFunctionEventInvokeConfigInput {
14503	s.Qualifier = &v
14504	return s
14505}
14506
14507type PutFunctionEventInvokeConfigOutput struct {
14508	_ struct{} `type:"structure"`
14509
14510	// A destination for events after they have been sent to a function for processing.
14511	//
14512	// Destinations
14513	//
14514	//    * Function - The Amazon Resource Name (ARN) of a Lambda function.
14515	//
14516	//    * Queue - The ARN of an SQS queue.
14517	//
14518	//    * Topic - The ARN of an SNS topic.
14519	//
14520	//    * Event Bus - The ARN of an Amazon EventBridge event bus.
14521	DestinationConfig *DestinationConfig `type:"structure"`
14522
14523	// The Amazon Resource Name (ARN) of the function.
14524	FunctionArn *string `type:"string"`
14525
14526	// The date and time that the configuration was last updated.
14527	LastModified *time.Time `type:"timestamp"`
14528
14529	// The maximum age of a request that Lambda sends to a function for processing.
14530	MaximumEventAgeInSeconds *int64 `min:"60" type:"integer"`
14531
14532	// The maximum number of times to retry when the function returns an error.
14533	MaximumRetryAttempts *int64 `type:"integer"`
14534}
14535
14536// String returns the string representation
14537func (s PutFunctionEventInvokeConfigOutput) String() string {
14538	return awsutil.Prettify(s)
14539}
14540
14541// GoString returns the string representation
14542func (s PutFunctionEventInvokeConfigOutput) GoString() string {
14543	return s.String()
14544}
14545
14546// SetDestinationConfig sets the DestinationConfig field's value.
14547func (s *PutFunctionEventInvokeConfigOutput) SetDestinationConfig(v *DestinationConfig) *PutFunctionEventInvokeConfigOutput {
14548	s.DestinationConfig = v
14549	return s
14550}
14551
14552// SetFunctionArn sets the FunctionArn field's value.
14553func (s *PutFunctionEventInvokeConfigOutput) SetFunctionArn(v string) *PutFunctionEventInvokeConfigOutput {
14554	s.FunctionArn = &v
14555	return s
14556}
14557
14558// SetLastModified sets the LastModified field's value.
14559func (s *PutFunctionEventInvokeConfigOutput) SetLastModified(v time.Time) *PutFunctionEventInvokeConfigOutput {
14560	s.LastModified = &v
14561	return s
14562}
14563
14564// SetMaximumEventAgeInSeconds sets the MaximumEventAgeInSeconds field's value.
14565func (s *PutFunctionEventInvokeConfigOutput) SetMaximumEventAgeInSeconds(v int64) *PutFunctionEventInvokeConfigOutput {
14566	s.MaximumEventAgeInSeconds = &v
14567	return s
14568}
14569
14570// SetMaximumRetryAttempts sets the MaximumRetryAttempts field's value.
14571func (s *PutFunctionEventInvokeConfigOutput) SetMaximumRetryAttempts(v int64) *PutFunctionEventInvokeConfigOutput {
14572	s.MaximumRetryAttempts = &v
14573	return s
14574}
14575
14576type PutProvisionedConcurrencyConfigInput struct {
14577	_ struct{} `type:"structure"`
14578
14579	// The name of the Lambda function.
14580	//
14581	// Name formats
14582	//
14583	//    * Function name - my-function.
14584	//
14585	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
14586	//
14587	//    * Partial ARN - 123456789012:function:my-function.
14588	//
14589	// The length constraint applies only to the full ARN. If you specify only the
14590	// function name, it is limited to 64 characters in length.
14591	//
14592	// FunctionName is a required field
14593	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
14594
14595	// The amount of provisioned concurrency to allocate for the version or alias.
14596	//
14597	// ProvisionedConcurrentExecutions is a required field
14598	ProvisionedConcurrentExecutions *int64 `min:"1" type:"integer" required:"true"`
14599
14600	// The version number or alias name.
14601	//
14602	// Qualifier is a required field
14603	Qualifier *string `location:"querystring" locationName:"Qualifier" min:"1" type:"string" required:"true"`
14604}
14605
14606// String returns the string representation
14607func (s PutProvisionedConcurrencyConfigInput) String() string {
14608	return awsutil.Prettify(s)
14609}
14610
14611// GoString returns the string representation
14612func (s PutProvisionedConcurrencyConfigInput) GoString() string {
14613	return s.String()
14614}
14615
14616// Validate inspects the fields of the type to determine if they are valid.
14617func (s *PutProvisionedConcurrencyConfigInput) Validate() error {
14618	invalidParams := request.ErrInvalidParams{Context: "PutProvisionedConcurrencyConfigInput"}
14619	if s.FunctionName == nil {
14620		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
14621	}
14622	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
14623		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
14624	}
14625	if s.ProvisionedConcurrentExecutions == nil {
14626		invalidParams.Add(request.NewErrParamRequired("ProvisionedConcurrentExecutions"))
14627	}
14628	if s.ProvisionedConcurrentExecutions != nil && *s.ProvisionedConcurrentExecutions < 1 {
14629		invalidParams.Add(request.NewErrParamMinValue("ProvisionedConcurrentExecutions", 1))
14630	}
14631	if s.Qualifier == nil {
14632		invalidParams.Add(request.NewErrParamRequired("Qualifier"))
14633	}
14634	if s.Qualifier != nil && len(*s.Qualifier) < 1 {
14635		invalidParams.Add(request.NewErrParamMinLen("Qualifier", 1))
14636	}
14637
14638	if invalidParams.Len() > 0 {
14639		return invalidParams
14640	}
14641	return nil
14642}
14643
14644// SetFunctionName sets the FunctionName field's value.
14645func (s *PutProvisionedConcurrencyConfigInput) SetFunctionName(v string) *PutProvisionedConcurrencyConfigInput {
14646	s.FunctionName = &v
14647	return s
14648}
14649
14650// SetProvisionedConcurrentExecutions sets the ProvisionedConcurrentExecutions field's value.
14651func (s *PutProvisionedConcurrencyConfigInput) SetProvisionedConcurrentExecutions(v int64) *PutProvisionedConcurrencyConfigInput {
14652	s.ProvisionedConcurrentExecutions = &v
14653	return s
14654}
14655
14656// SetQualifier sets the Qualifier field's value.
14657func (s *PutProvisionedConcurrencyConfigInput) SetQualifier(v string) *PutProvisionedConcurrencyConfigInput {
14658	s.Qualifier = &v
14659	return s
14660}
14661
14662type PutProvisionedConcurrencyConfigOutput struct {
14663	_ struct{} `type:"structure"`
14664
14665	// The amount of provisioned concurrency allocated.
14666	AllocatedProvisionedConcurrentExecutions *int64 `type:"integer"`
14667
14668	// The amount of provisioned concurrency available.
14669	AvailableProvisionedConcurrentExecutions *int64 `type:"integer"`
14670
14671	// The date and time that a user last updated the configuration, in ISO 8601
14672	// format (https://www.iso.org/iso-8601-date-and-time-format.html).
14673	LastModified *string `type:"string"`
14674
14675	// The amount of provisioned concurrency requested.
14676	RequestedProvisionedConcurrentExecutions *int64 `min:"1" type:"integer"`
14677
14678	// The status of the allocation process.
14679	Status *string `type:"string" enum:"ProvisionedConcurrencyStatusEnum"`
14680
14681	// For failed allocations, the reason that provisioned concurrency could not
14682	// be allocated.
14683	StatusReason *string `type:"string"`
14684}
14685
14686// String returns the string representation
14687func (s PutProvisionedConcurrencyConfigOutput) String() string {
14688	return awsutil.Prettify(s)
14689}
14690
14691// GoString returns the string representation
14692func (s PutProvisionedConcurrencyConfigOutput) GoString() string {
14693	return s.String()
14694}
14695
14696// SetAllocatedProvisionedConcurrentExecutions sets the AllocatedProvisionedConcurrentExecutions field's value.
14697func (s *PutProvisionedConcurrencyConfigOutput) SetAllocatedProvisionedConcurrentExecutions(v int64) *PutProvisionedConcurrencyConfigOutput {
14698	s.AllocatedProvisionedConcurrentExecutions = &v
14699	return s
14700}
14701
14702// SetAvailableProvisionedConcurrentExecutions sets the AvailableProvisionedConcurrentExecutions field's value.
14703func (s *PutProvisionedConcurrencyConfigOutput) SetAvailableProvisionedConcurrentExecutions(v int64) *PutProvisionedConcurrencyConfigOutput {
14704	s.AvailableProvisionedConcurrentExecutions = &v
14705	return s
14706}
14707
14708// SetLastModified sets the LastModified field's value.
14709func (s *PutProvisionedConcurrencyConfigOutput) SetLastModified(v string) *PutProvisionedConcurrencyConfigOutput {
14710	s.LastModified = &v
14711	return s
14712}
14713
14714// SetRequestedProvisionedConcurrentExecutions sets the RequestedProvisionedConcurrentExecutions field's value.
14715func (s *PutProvisionedConcurrencyConfigOutput) SetRequestedProvisionedConcurrentExecutions(v int64) *PutProvisionedConcurrencyConfigOutput {
14716	s.RequestedProvisionedConcurrentExecutions = &v
14717	return s
14718}
14719
14720// SetStatus sets the Status field's value.
14721func (s *PutProvisionedConcurrencyConfigOutput) SetStatus(v string) *PutProvisionedConcurrencyConfigOutput {
14722	s.Status = &v
14723	return s
14724}
14725
14726// SetStatusReason sets the StatusReason field's value.
14727func (s *PutProvisionedConcurrencyConfigOutput) SetStatusReason(v string) *PutProvisionedConcurrencyConfigOutput {
14728	s.StatusReason = &v
14729	return s
14730}
14731
14732type RemoveLayerVersionPermissionInput struct {
14733	_ struct{} `type:"structure"`
14734
14735	// The name or Amazon Resource Name (ARN) of the layer.
14736	//
14737	// LayerName is a required field
14738	LayerName *string `location:"uri" locationName:"LayerName" min:"1" type:"string" required:"true"`
14739
14740	// Only update the policy if the revision ID matches the ID specified. Use this
14741	// option to avoid modifying a policy that has changed since you last read it.
14742	RevisionId *string `location:"querystring" locationName:"RevisionId" type:"string"`
14743
14744	// The identifier that was specified when the statement was added.
14745	//
14746	// StatementId is a required field
14747	StatementId *string `location:"uri" locationName:"StatementId" min:"1" type:"string" required:"true"`
14748
14749	// The version number.
14750	//
14751	// VersionNumber is a required field
14752	VersionNumber *int64 `location:"uri" locationName:"VersionNumber" type:"long" required:"true"`
14753}
14754
14755// String returns the string representation
14756func (s RemoveLayerVersionPermissionInput) String() string {
14757	return awsutil.Prettify(s)
14758}
14759
14760// GoString returns the string representation
14761func (s RemoveLayerVersionPermissionInput) GoString() string {
14762	return s.String()
14763}
14764
14765// Validate inspects the fields of the type to determine if they are valid.
14766func (s *RemoveLayerVersionPermissionInput) Validate() error {
14767	invalidParams := request.ErrInvalidParams{Context: "RemoveLayerVersionPermissionInput"}
14768	if s.LayerName == nil {
14769		invalidParams.Add(request.NewErrParamRequired("LayerName"))
14770	}
14771	if s.LayerName != nil && len(*s.LayerName) < 1 {
14772		invalidParams.Add(request.NewErrParamMinLen("LayerName", 1))
14773	}
14774	if s.StatementId == nil {
14775		invalidParams.Add(request.NewErrParamRequired("StatementId"))
14776	}
14777	if s.StatementId != nil && len(*s.StatementId) < 1 {
14778		invalidParams.Add(request.NewErrParamMinLen("StatementId", 1))
14779	}
14780	if s.VersionNumber == nil {
14781		invalidParams.Add(request.NewErrParamRequired("VersionNumber"))
14782	}
14783
14784	if invalidParams.Len() > 0 {
14785		return invalidParams
14786	}
14787	return nil
14788}
14789
14790// SetLayerName sets the LayerName field's value.
14791func (s *RemoveLayerVersionPermissionInput) SetLayerName(v string) *RemoveLayerVersionPermissionInput {
14792	s.LayerName = &v
14793	return s
14794}
14795
14796// SetRevisionId sets the RevisionId field's value.
14797func (s *RemoveLayerVersionPermissionInput) SetRevisionId(v string) *RemoveLayerVersionPermissionInput {
14798	s.RevisionId = &v
14799	return s
14800}
14801
14802// SetStatementId sets the StatementId field's value.
14803func (s *RemoveLayerVersionPermissionInput) SetStatementId(v string) *RemoveLayerVersionPermissionInput {
14804	s.StatementId = &v
14805	return s
14806}
14807
14808// SetVersionNumber sets the VersionNumber field's value.
14809func (s *RemoveLayerVersionPermissionInput) SetVersionNumber(v int64) *RemoveLayerVersionPermissionInput {
14810	s.VersionNumber = &v
14811	return s
14812}
14813
14814type RemoveLayerVersionPermissionOutput struct {
14815	_ struct{} `type:"structure"`
14816}
14817
14818// String returns the string representation
14819func (s RemoveLayerVersionPermissionOutput) String() string {
14820	return awsutil.Prettify(s)
14821}
14822
14823// GoString returns the string representation
14824func (s RemoveLayerVersionPermissionOutput) GoString() string {
14825	return s.String()
14826}
14827
14828type RemovePermissionInput struct {
14829	_ struct{} `type:"structure"`
14830
14831	// The name of the Lambda function, version, or alias.
14832	//
14833	// Name formats
14834	//
14835	//    * Function name - my-function (name-only), my-function:v1 (with alias).
14836	//
14837	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
14838	//
14839	//    * Partial ARN - 123456789012:function:my-function.
14840	//
14841	// You can append a version number or alias to any of the formats. The length
14842	// constraint applies only to the full ARN. If you specify only the function
14843	// name, it is limited to 64 characters in length.
14844	//
14845	// FunctionName is a required field
14846	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
14847
14848	// Specify a version or alias to remove permissions from a published version
14849	// of the function.
14850	Qualifier *string `location:"querystring" locationName:"Qualifier" min:"1" type:"string"`
14851
14852	// Only update the policy if the revision ID matches the ID that's specified.
14853	// Use this option to avoid modifying a policy that has changed since you last
14854	// read it.
14855	RevisionId *string `location:"querystring" locationName:"RevisionId" type:"string"`
14856
14857	// Statement ID of the permission to remove.
14858	//
14859	// StatementId is a required field
14860	StatementId *string `location:"uri" locationName:"StatementId" min:"1" type:"string" required:"true"`
14861}
14862
14863// String returns the string representation
14864func (s RemovePermissionInput) String() string {
14865	return awsutil.Prettify(s)
14866}
14867
14868// GoString returns the string representation
14869func (s RemovePermissionInput) GoString() string {
14870	return s.String()
14871}
14872
14873// Validate inspects the fields of the type to determine if they are valid.
14874func (s *RemovePermissionInput) Validate() error {
14875	invalidParams := request.ErrInvalidParams{Context: "RemovePermissionInput"}
14876	if s.FunctionName == nil {
14877		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
14878	}
14879	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
14880		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
14881	}
14882	if s.Qualifier != nil && len(*s.Qualifier) < 1 {
14883		invalidParams.Add(request.NewErrParamMinLen("Qualifier", 1))
14884	}
14885	if s.StatementId == nil {
14886		invalidParams.Add(request.NewErrParamRequired("StatementId"))
14887	}
14888	if s.StatementId != nil && len(*s.StatementId) < 1 {
14889		invalidParams.Add(request.NewErrParamMinLen("StatementId", 1))
14890	}
14891
14892	if invalidParams.Len() > 0 {
14893		return invalidParams
14894	}
14895	return nil
14896}
14897
14898// SetFunctionName sets the FunctionName field's value.
14899func (s *RemovePermissionInput) SetFunctionName(v string) *RemovePermissionInput {
14900	s.FunctionName = &v
14901	return s
14902}
14903
14904// SetQualifier sets the Qualifier field's value.
14905func (s *RemovePermissionInput) SetQualifier(v string) *RemovePermissionInput {
14906	s.Qualifier = &v
14907	return s
14908}
14909
14910// SetRevisionId sets the RevisionId field's value.
14911func (s *RemovePermissionInput) SetRevisionId(v string) *RemovePermissionInput {
14912	s.RevisionId = &v
14913	return s
14914}
14915
14916// SetStatementId sets the StatementId field's value.
14917func (s *RemovePermissionInput) SetStatementId(v string) *RemovePermissionInput {
14918	s.StatementId = &v
14919	return s
14920}
14921
14922type RemovePermissionOutput struct {
14923	_ struct{} `type:"structure"`
14924}
14925
14926// String returns the string representation
14927func (s RemovePermissionOutput) String() string {
14928	return awsutil.Prettify(s)
14929}
14930
14931// GoString returns the string representation
14932func (s RemovePermissionOutput) GoString() string {
14933	return s.String()
14934}
14935
14936// The request payload exceeded the Invoke request body JSON input limit. For
14937// more information, see Limits (https://docs.aws.amazon.com/lambda/latest/dg/limits.html).
14938type RequestTooLargeException struct {
14939	_            struct{}                  `type:"structure"`
14940	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
14941
14942	Message_ *string `locationName:"message" type:"string"`
14943
14944	Type *string `type:"string"`
14945}
14946
14947// String returns the string representation
14948func (s RequestTooLargeException) String() string {
14949	return awsutil.Prettify(s)
14950}
14951
14952// GoString returns the string representation
14953func (s RequestTooLargeException) GoString() string {
14954	return s.String()
14955}
14956
14957func newErrorRequestTooLargeException(v protocol.ResponseMetadata) error {
14958	return &RequestTooLargeException{
14959		RespMetadata: v,
14960	}
14961}
14962
14963// Code returns the exception type name.
14964func (s *RequestTooLargeException) Code() string {
14965	return "RequestTooLargeException"
14966}
14967
14968// Message returns the exception's message.
14969func (s *RequestTooLargeException) Message() string {
14970	if s.Message_ != nil {
14971		return *s.Message_
14972	}
14973	return ""
14974}
14975
14976// OrigErr always returns nil, satisfies awserr.Error interface.
14977func (s *RequestTooLargeException) OrigErr() error {
14978	return nil
14979}
14980
14981func (s *RequestTooLargeException) Error() string {
14982	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
14983}
14984
14985// Status code returns the HTTP status code for the request's response error.
14986func (s *RequestTooLargeException) StatusCode() int {
14987	return s.RespMetadata.StatusCode
14988}
14989
14990// RequestID returns the service's response RequestID for request.
14991func (s *RequestTooLargeException) RequestID() string {
14992	return s.RespMetadata.RequestID
14993}
14994
14995// The resource already exists, or another operation is in progress.
14996type ResourceConflictException struct {
14997	_            struct{}                  `type:"structure"`
14998	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
14999
15000	// The exception message.
15001	Message_ *string `locationName:"message" type:"string"`
15002
15003	// The exception type.
15004	Type *string `type:"string"`
15005}
15006
15007// String returns the string representation
15008func (s ResourceConflictException) String() string {
15009	return awsutil.Prettify(s)
15010}
15011
15012// GoString returns the string representation
15013func (s ResourceConflictException) GoString() string {
15014	return s.String()
15015}
15016
15017func newErrorResourceConflictException(v protocol.ResponseMetadata) error {
15018	return &ResourceConflictException{
15019		RespMetadata: v,
15020	}
15021}
15022
15023// Code returns the exception type name.
15024func (s *ResourceConflictException) Code() string {
15025	return "ResourceConflictException"
15026}
15027
15028// Message returns the exception's message.
15029func (s *ResourceConflictException) Message() string {
15030	if s.Message_ != nil {
15031		return *s.Message_
15032	}
15033	return ""
15034}
15035
15036// OrigErr always returns nil, satisfies awserr.Error interface.
15037func (s *ResourceConflictException) OrigErr() error {
15038	return nil
15039}
15040
15041func (s *ResourceConflictException) Error() string {
15042	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
15043}
15044
15045// Status code returns the HTTP status code for the request's response error.
15046func (s *ResourceConflictException) StatusCode() int {
15047	return s.RespMetadata.StatusCode
15048}
15049
15050// RequestID returns the service's response RequestID for request.
15051func (s *ResourceConflictException) RequestID() string {
15052	return s.RespMetadata.RequestID
15053}
15054
15055// The operation conflicts with the resource's availability. For example, you
15056// attempted to update an EventSource Mapping in CREATING, or tried to delete
15057// a EventSource mapping currently in the UPDATING state.
15058type ResourceInUseException struct {
15059	_            struct{}                  `type:"structure"`
15060	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
15061
15062	Message_ *string `locationName:"Message" type:"string"`
15063
15064	Type *string `type:"string"`
15065}
15066
15067// String returns the string representation
15068func (s ResourceInUseException) String() string {
15069	return awsutil.Prettify(s)
15070}
15071
15072// GoString returns the string representation
15073func (s ResourceInUseException) GoString() string {
15074	return s.String()
15075}
15076
15077func newErrorResourceInUseException(v protocol.ResponseMetadata) error {
15078	return &ResourceInUseException{
15079		RespMetadata: v,
15080	}
15081}
15082
15083// Code returns the exception type name.
15084func (s *ResourceInUseException) Code() string {
15085	return "ResourceInUseException"
15086}
15087
15088// Message returns the exception's message.
15089func (s *ResourceInUseException) Message() string {
15090	if s.Message_ != nil {
15091		return *s.Message_
15092	}
15093	return ""
15094}
15095
15096// OrigErr always returns nil, satisfies awserr.Error interface.
15097func (s *ResourceInUseException) OrigErr() error {
15098	return nil
15099}
15100
15101func (s *ResourceInUseException) Error() string {
15102	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
15103}
15104
15105// Status code returns the HTTP status code for the request's response error.
15106func (s *ResourceInUseException) StatusCode() int {
15107	return s.RespMetadata.StatusCode
15108}
15109
15110// RequestID returns the service's response RequestID for request.
15111func (s *ResourceInUseException) RequestID() string {
15112	return s.RespMetadata.RequestID
15113}
15114
15115// The resource specified in the request does not exist.
15116type ResourceNotFoundException struct {
15117	_            struct{}                  `type:"structure"`
15118	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
15119
15120	Message_ *string `locationName:"Message" type:"string"`
15121
15122	Type *string `type:"string"`
15123}
15124
15125// String returns the string representation
15126func (s ResourceNotFoundException) String() string {
15127	return awsutil.Prettify(s)
15128}
15129
15130// GoString returns the string representation
15131func (s ResourceNotFoundException) GoString() string {
15132	return s.String()
15133}
15134
15135func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error {
15136	return &ResourceNotFoundException{
15137		RespMetadata: v,
15138	}
15139}
15140
15141// Code returns the exception type name.
15142func (s *ResourceNotFoundException) Code() string {
15143	return "ResourceNotFoundException"
15144}
15145
15146// Message returns the exception's message.
15147func (s *ResourceNotFoundException) Message() string {
15148	if s.Message_ != nil {
15149		return *s.Message_
15150	}
15151	return ""
15152}
15153
15154// OrigErr always returns nil, satisfies awserr.Error interface.
15155func (s *ResourceNotFoundException) OrigErr() error {
15156	return nil
15157}
15158
15159func (s *ResourceNotFoundException) Error() string {
15160	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
15161}
15162
15163// Status code returns the HTTP status code for the request's response error.
15164func (s *ResourceNotFoundException) StatusCode() int {
15165	return s.RespMetadata.StatusCode
15166}
15167
15168// RequestID returns the service's response RequestID for request.
15169func (s *ResourceNotFoundException) RequestID() string {
15170	return s.RespMetadata.RequestID
15171}
15172
15173// The function is inactive and its VPC connection is no longer available. Wait
15174// for the VPC connection to reestablish and try again.
15175type ResourceNotReadyException struct {
15176	_            struct{}                  `type:"structure"`
15177	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
15178
15179	// The exception message.
15180	Message_ *string `locationName:"message" type:"string"`
15181
15182	// The exception type.
15183	Type *string `type:"string"`
15184}
15185
15186// String returns the string representation
15187func (s ResourceNotReadyException) String() string {
15188	return awsutil.Prettify(s)
15189}
15190
15191// GoString returns the string representation
15192func (s ResourceNotReadyException) GoString() string {
15193	return s.String()
15194}
15195
15196func newErrorResourceNotReadyException(v protocol.ResponseMetadata) error {
15197	return &ResourceNotReadyException{
15198		RespMetadata: v,
15199	}
15200}
15201
15202// Code returns the exception type name.
15203func (s *ResourceNotReadyException) Code() string {
15204	return "ResourceNotReadyException"
15205}
15206
15207// Message returns the exception's message.
15208func (s *ResourceNotReadyException) Message() string {
15209	if s.Message_ != nil {
15210		return *s.Message_
15211	}
15212	return ""
15213}
15214
15215// OrigErr always returns nil, satisfies awserr.Error interface.
15216func (s *ResourceNotReadyException) OrigErr() error {
15217	return nil
15218}
15219
15220func (s *ResourceNotReadyException) Error() string {
15221	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
15222}
15223
15224// Status code returns the HTTP status code for the request's response error.
15225func (s *ResourceNotReadyException) StatusCode() int {
15226	return s.RespMetadata.StatusCode
15227}
15228
15229// RequestID returns the service's response RequestID for request.
15230func (s *ResourceNotReadyException) RequestID() string {
15231	return s.RespMetadata.RequestID
15232}
15233
15234// The self-managed Apache Kafka cluster for your event source.
15235type SelfManagedEventSource struct {
15236	_ struct{} `type:"structure"`
15237
15238	// The list of bootstrap servers for your Kafka brokers in the following format:
15239	// "KAFKA_BOOTSTRAP_SERVERS": ["abc.xyz.com:xxxx","abc2.xyz.com:xxxx"].
15240	Endpoints map[string][]*string `min:"1" type:"map"`
15241}
15242
15243// String returns the string representation
15244func (s SelfManagedEventSource) String() string {
15245	return awsutil.Prettify(s)
15246}
15247
15248// GoString returns the string representation
15249func (s SelfManagedEventSource) GoString() string {
15250	return s.String()
15251}
15252
15253// Validate inspects the fields of the type to determine if they are valid.
15254func (s *SelfManagedEventSource) Validate() error {
15255	invalidParams := request.ErrInvalidParams{Context: "SelfManagedEventSource"}
15256	if s.Endpoints != nil && len(s.Endpoints) < 1 {
15257		invalidParams.Add(request.NewErrParamMinLen("Endpoints", 1))
15258	}
15259
15260	if invalidParams.Len() > 0 {
15261		return invalidParams
15262	}
15263	return nil
15264}
15265
15266// SetEndpoints sets the Endpoints field's value.
15267func (s *SelfManagedEventSource) SetEndpoints(v map[string][]*string) *SelfManagedEventSource {
15268	s.Endpoints = v
15269	return s
15270}
15271
15272// The Lambda service encountered an internal error.
15273type ServiceException struct {
15274	_            struct{}                  `type:"structure"`
15275	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
15276
15277	Message_ *string `locationName:"Message" type:"string"`
15278
15279	Type *string `type:"string"`
15280}
15281
15282// String returns the string representation
15283func (s ServiceException) String() string {
15284	return awsutil.Prettify(s)
15285}
15286
15287// GoString returns the string representation
15288func (s ServiceException) GoString() string {
15289	return s.String()
15290}
15291
15292func newErrorServiceException(v protocol.ResponseMetadata) error {
15293	return &ServiceException{
15294		RespMetadata: v,
15295	}
15296}
15297
15298// Code returns the exception type name.
15299func (s *ServiceException) Code() string {
15300	return "ServiceException"
15301}
15302
15303// Message returns the exception's message.
15304func (s *ServiceException) Message() string {
15305	if s.Message_ != nil {
15306		return *s.Message_
15307	}
15308	return ""
15309}
15310
15311// OrigErr always returns nil, satisfies awserr.Error interface.
15312func (s *ServiceException) OrigErr() error {
15313	return nil
15314}
15315
15316func (s *ServiceException) Error() string {
15317	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
15318}
15319
15320// Status code returns the HTTP status code for the request's response error.
15321func (s *ServiceException) StatusCode() int {
15322	return s.RespMetadata.StatusCode
15323}
15324
15325// RequestID returns the service's response RequestID for request.
15326func (s *ServiceException) RequestID() string {
15327	return s.RespMetadata.RequestID
15328}
15329
15330// To secure and define access to your event source, you can specify the authentication
15331// protocol, VPC components, or virtual host.
15332type SourceAccessConfiguration struct {
15333	_ struct{} `type:"structure"`
15334
15335	// The type of authentication protocol, VPC components, or virtual host for
15336	// your event source. For example: "Type":"SASL_SCRAM_512_AUTH".
15337	//
15338	//    * BASIC_AUTH - (Amazon MQ) The Secrets Manager secret that stores your
15339	//    broker credentials.
15340	//
15341	//    * BASIC_AUTH - (Self-managed Apache Kafka) The Secrets Manager ARN of
15342	//    your secret key used for SASL/PLAIN authentication of your Apache Kafka
15343	//    brokers.
15344	//
15345	//    * VPC_SUBNET - The subnets associated with your VPC. Lambda connects to
15346	//    these subnets to fetch data from your self-managed Apache Kafka cluster.
15347	//
15348	//    * VPC_SECURITY_GROUP - The VPC security group used to manage access to
15349	//    your self-managed Apache Kafka brokers.
15350	//
15351	//    * SASL_SCRAM_256_AUTH - The Secrets Manager ARN of your secret key used
15352	//    for SASL SCRAM-256 authentication of your self-managed Apache Kafka brokers.
15353	//
15354	//    * SASL_SCRAM_512_AUTH - The Secrets Manager ARN of your secret key used
15355	//    for SASL SCRAM-512 authentication of your self-managed Apache Kafka brokers.
15356	//
15357	//    * VIRTUAL_HOST - (Amazon MQ) The name of the virtual host in your RabbitMQ
15358	//    broker. Lambda uses this RabbitMQ host as the event source.
15359	Type *string `type:"string" enum:"SourceAccessType"`
15360
15361	// The value for your chosen configuration in Type. For example: "URI": "arn:aws:secretsmanager:us-east-1:01234567890:secret:MyBrokerSecretName".
15362	URI *string `min:"1" type:"string"`
15363}
15364
15365// String returns the string representation
15366func (s SourceAccessConfiguration) String() string {
15367	return awsutil.Prettify(s)
15368}
15369
15370// GoString returns the string representation
15371func (s SourceAccessConfiguration) GoString() string {
15372	return s.String()
15373}
15374
15375// Validate inspects the fields of the type to determine if they are valid.
15376func (s *SourceAccessConfiguration) Validate() error {
15377	invalidParams := request.ErrInvalidParams{Context: "SourceAccessConfiguration"}
15378	if s.URI != nil && len(*s.URI) < 1 {
15379		invalidParams.Add(request.NewErrParamMinLen("URI", 1))
15380	}
15381
15382	if invalidParams.Len() > 0 {
15383		return invalidParams
15384	}
15385	return nil
15386}
15387
15388// SetType sets the Type field's value.
15389func (s *SourceAccessConfiguration) SetType(v string) *SourceAccessConfiguration {
15390	s.Type = &v
15391	return s
15392}
15393
15394// SetURI sets the URI field's value.
15395func (s *SourceAccessConfiguration) SetURI(v string) *SourceAccessConfiguration {
15396	s.URI = &v
15397	return s
15398}
15399
15400// Lambda was not able to set up VPC access for the Lambda function because
15401// one or more configured subnets has no available IP addresses.
15402type SubnetIPAddressLimitReachedException struct {
15403	_            struct{}                  `type:"structure"`
15404	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
15405
15406	Message_ *string `locationName:"Message" type:"string"`
15407
15408	Type *string `type:"string"`
15409}
15410
15411// String returns the string representation
15412func (s SubnetIPAddressLimitReachedException) String() string {
15413	return awsutil.Prettify(s)
15414}
15415
15416// GoString returns the string representation
15417func (s SubnetIPAddressLimitReachedException) GoString() string {
15418	return s.String()
15419}
15420
15421func newErrorSubnetIPAddressLimitReachedException(v protocol.ResponseMetadata) error {
15422	return &SubnetIPAddressLimitReachedException{
15423		RespMetadata: v,
15424	}
15425}
15426
15427// Code returns the exception type name.
15428func (s *SubnetIPAddressLimitReachedException) Code() string {
15429	return "SubnetIPAddressLimitReachedException"
15430}
15431
15432// Message returns the exception's message.
15433func (s *SubnetIPAddressLimitReachedException) Message() string {
15434	if s.Message_ != nil {
15435		return *s.Message_
15436	}
15437	return ""
15438}
15439
15440// OrigErr always returns nil, satisfies awserr.Error interface.
15441func (s *SubnetIPAddressLimitReachedException) OrigErr() error {
15442	return nil
15443}
15444
15445func (s *SubnetIPAddressLimitReachedException) Error() string {
15446	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
15447}
15448
15449// Status code returns the HTTP status code for the request's response error.
15450func (s *SubnetIPAddressLimitReachedException) StatusCode() int {
15451	return s.RespMetadata.StatusCode
15452}
15453
15454// RequestID returns the service's response RequestID for request.
15455func (s *SubnetIPAddressLimitReachedException) RequestID() string {
15456	return s.RespMetadata.RequestID
15457}
15458
15459type TagResourceInput struct {
15460	_ struct{} `type:"structure"`
15461
15462	// The function's Amazon Resource Name (ARN).
15463	//
15464	// Resource is a required field
15465	Resource *string `location:"uri" locationName:"ARN" type:"string" required:"true"`
15466
15467	// A list of tags to apply to the function.
15468	//
15469	// Tags is a required field
15470	Tags map[string]*string `type:"map" required:"true"`
15471}
15472
15473// String returns the string representation
15474func (s TagResourceInput) String() string {
15475	return awsutil.Prettify(s)
15476}
15477
15478// GoString returns the string representation
15479func (s TagResourceInput) GoString() string {
15480	return s.String()
15481}
15482
15483// Validate inspects the fields of the type to determine if they are valid.
15484func (s *TagResourceInput) Validate() error {
15485	invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"}
15486	if s.Resource == nil {
15487		invalidParams.Add(request.NewErrParamRequired("Resource"))
15488	}
15489	if s.Resource != nil && len(*s.Resource) < 1 {
15490		invalidParams.Add(request.NewErrParamMinLen("Resource", 1))
15491	}
15492	if s.Tags == nil {
15493		invalidParams.Add(request.NewErrParamRequired("Tags"))
15494	}
15495
15496	if invalidParams.Len() > 0 {
15497		return invalidParams
15498	}
15499	return nil
15500}
15501
15502// SetResource sets the Resource field's value.
15503func (s *TagResourceInput) SetResource(v string) *TagResourceInput {
15504	s.Resource = &v
15505	return s
15506}
15507
15508// SetTags sets the Tags field's value.
15509func (s *TagResourceInput) SetTags(v map[string]*string) *TagResourceInput {
15510	s.Tags = v
15511	return s
15512}
15513
15514type TagResourceOutput struct {
15515	_ struct{} `type:"structure"`
15516}
15517
15518// String returns the string representation
15519func (s TagResourceOutput) String() string {
15520	return awsutil.Prettify(s)
15521}
15522
15523// GoString returns the string representation
15524func (s TagResourceOutput) GoString() string {
15525	return s.String()
15526}
15527
15528// The request throughput limit was exceeded.
15529type TooManyRequestsException struct {
15530	_            struct{}                  `type:"structure"`
15531	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
15532
15533	Message_ *string `locationName:"message" type:"string"`
15534
15535	Reason *string `type:"string" enum:"ThrottleReason"`
15536
15537	// The number of seconds the caller should wait before retrying.
15538	RetryAfterSeconds *string `location:"header" locationName:"Retry-After" type:"string"`
15539
15540	Type *string `type:"string"`
15541}
15542
15543// String returns the string representation
15544func (s TooManyRequestsException) String() string {
15545	return awsutil.Prettify(s)
15546}
15547
15548// GoString returns the string representation
15549func (s TooManyRequestsException) GoString() string {
15550	return s.String()
15551}
15552
15553func newErrorTooManyRequestsException(v protocol.ResponseMetadata) error {
15554	return &TooManyRequestsException{
15555		RespMetadata: v,
15556	}
15557}
15558
15559// Code returns the exception type name.
15560func (s *TooManyRequestsException) Code() string {
15561	return "TooManyRequestsException"
15562}
15563
15564// Message returns the exception's message.
15565func (s *TooManyRequestsException) Message() string {
15566	if s.Message_ != nil {
15567		return *s.Message_
15568	}
15569	return ""
15570}
15571
15572// OrigErr always returns nil, satisfies awserr.Error interface.
15573func (s *TooManyRequestsException) OrigErr() error {
15574	return nil
15575}
15576
15577func (s *TooManyRequestsException) Error() string {
15578	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
15579}
15580
15581// Status code returns the HTTP status code for the request's response error.
15582func (s *TooManyRequestsException) StatusCode() int {
15583	return s.RespMetadata.StatusCode
15584}
15585
15586// RequestID returns the service's response RequestID for request.
15587func (s *TooManyRequestsException) RequestID() string {
15588	return s.RespMetadata.RequestID
15589}
15590
15591// The function's X-Ray (https://docs.aws.amazon.com/lambda/latest/dg/services-xray.html)
15592// tracing configuration. To sample and record incoming requests, set Mode to
15593// Active.
15594type TracingConfig struct {
15595	_ struct{} `type:"structure"`
15596
15597	// The tracing mode.
15598	Mode *string `type:"string" enum:"TracingMode"`
15599}
15600
15601// String returns the string representation
15602func (s TracingConfig) String() string {
15603	return awsutil.Prettify(s)
15604}
15605
15606// GoString returns the string representation
15607func (s TracingConfig) GoString() string {
15608	return s.String()
15609}
15610
15611// SetMode sets the Mode field's value.
15612func (s *TracingConfig) SetMode(v string) *TracingConfig {
15613	s.Mode = &v
15614	return s
15615}
15616
15617// The function's X-Ray tracing configuration.
15618type TracingConfigResponse struct {
15619	_ struct{} `type:"structure"`
15620
15621	// The tracing mode.
15622	Mode *string `type:"string" enum:"TracingMode"`
15623}
15624
15625// String returns the string representation
15626func (s TracingConfigResponse) String() string {
15627	return awsutil.Prettify(s)
15628}
15629
15630// GoString returns the string representation
15631func (s TracingConfigResponse) GoString() string {
15632	return s.String()
15633}
15634
15635// SetMode sets the Mode field's value.
15636func (s *TracingConfigResponse) SetMode(v string) *TracingConfigResponse {
15637	s.Mode = &v
15638	return s
15639}
15640
15641// The content type of the Invoke request body is not JSON.
15642type UnsupportedMediaTypeException struct {
15643	_            struct{}                  `type:"structure"`
15644	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
15645
15646	Message_ *string `locationName:"message" type:"string"`
15647
15648	Type *string `type:"string"`
15649}
15650
15651// String returns the string representation
15652func (s UnsupportedMediaTypeException) String() string {
15653	return awsutil.Prettify(s)
15654}
15655
15656// GoString returns the string representation
15657func (s UnsupportedMediaTypeException) GoString() string {
15658	return s.String()
15659}
15660
15661func newErrorUnsupportedMediaTypeException(v protocol.ResponseMetadata) error {
15662	return &UnsupportedMediaTypeException{
15663		RespMetadata: v,
15664	}
15665}
15666
15667// Code returns the exception type name.
15668func (s *UnsupportedMediaTypeException) Code() string {
15669	return "UnsupportedMediaTypeException"
15670}
15671
15672// Message returns the exception's message.
15673func (s *UnsupportedMediaTypeException) Message() string {
15674	if s.Message_ != nil {
15675		return *s.Message_
15676	}
15677	return ""
15678}
15679
15680// OrigErr always returns nil, satisfies awserr.Error interface.
15681func (s *UnsupportedMediaTypeException) OrigErr() error {
15682	return nil
15683}
15684
15685func (s *UnsupportedMediaTypeException) Error() string {
15686	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
15687}
15688
15689// Status code returns the HTTP status code for the request's response error.
15690func (s *UnsupportedMediaTypeException) StatusCode() int {
15691	return s.RespMetadata.StatusCode
15692}
15693
15694// RequestID returns the service's response RequestID for request.
15695func (s *UnsupportedMediaTypeException) RequestID() string {
15696	return s.RespMetadata.RequestID
15697}
15698
15699type UntagResourceInput struct {
15700	_ struct{} `type:"structure"`
15701
15702	// The function's Amazon Resource Name (ARN).
15703	//
15704	// Resource is a required field
15705	Resource *string `location:"uri" locationName:"ARN" type:"string" required:"true"`
15706
15707	// A list of tag keys to remove from the function.
15708	//
15709	// TagKeys is a required field
15710	TagKeys []*string `location:"querystring" locationName:"tagKeys" type:"list" required:"true"`
15711}
15712
15713// String returns the string representation
15714func (s UntagResourceInput) String() string {
15715	return awsutil.Prettify(s)
15716}
15717
15718// GoString returns the string representation
15719func (s UntagResourceInput) GoString() string {
15720	return s.String()
15721}
15722
15723// Validate inspects the fields of the type to determine if they are valid.
15724func (s *UntagResourceInput) Validate() error {
15725	invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"}
15726	if s.Resource == nil {
15727		invalidParams.Add(request.NewErrParamRequired("Resource"))
15728	}
15729	if s.Resource != nil && len(*s.Resource) < 1 {
15730		invalidParams.Add(request.NewErrParamMinLen("Resource", 1))
15731	}
15732	if s.TagKeys == nil {
15733		invalidParams.Add(request.NewErrParamRequired("TagKeys"))
15734	}
15735
15736	if invalidParams.Len() > 0 {
15737		return invalidParams
15738	}
15739	return nil
15740}
15741
15742// SetResource sets the Resource field's value.
15743func (s *UntagResourceInput) SetResource(v string) *UntagResourceInput {
15744	s.Resource = &v
15745	return s
15746}
15747
15748// SetTagKeys sets the TagKeys field's value.
15749func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput {
15750	s.TagKeys = v
15751	return s
15752}
15753
15754type UntagResourceOutput struct {
15755	_ struct{} `type:"structure"`
15756}
15757
15758// String returns the string representation
15759func (s UntagResourceOutput) String() string {
15760	return awsutil.Prettify(s)
15761}
15762
15763// GoString returns the string representation
15764func (s UntagResourceOutput) GoString() string {
15765	return s.String()
15766}
15767
15768type UpdateAliasInput struct {
15769	_ struct{} `type:"structure"`
15770
15771	// A description of the alias.
15772	Description *string `type:"string"`
15773
15774	// The name of the Lambda function.
15775	//
15776	// Name formats
15777	//
15778	//    * Function name - MyFunction.
15779	//
15780	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.
15781	//
15782	//    * Partial ARN - 123456789012:function:MyFunction.
15783	//
15784	// The length constraint applies only to the full ARN. If you specify only the
15785	// function name, it is limited to 64 characters in length.
15786	//
15787	// FunctionName is a required field
15788	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
15789
15790	// The function version that the alias invokes.
15791	FunctionVersion *string `min:"1" type:"string"`
15792
15793	// The name of the alias.
15794	//
15795	// Name is a required field
15796	Name *string `location:"uri" locationName:"Name" min:"1" type:"string" required:"true"`
15797
15798	// Only update the alias if the revision ID matches the ID that's specified.
15799	// Use this option to avoid modifying an alias that has changed since you last
15800	// read it.
15801	RevisionId *string `type:"string"`
15802
15803	// The routing configuration (https://docs.aws.amazon.com/lambda/latest/dg/configuration-aliases.html#configuring-alias-routing)
15804	// of the alias.
15805	RoutingConfig *AliasRoutingConfiguration `type:"structure"`
15806}
15807
15808// String returns the string representation
15809func (s UpdateAliasInput) String() string {
15810	return awsutil.Prettify(s)
15811}
15812
15813// GoString returns the string representation
15814func (s UpdateAliasInput) GoString() string {
15815	return s.String()
15816}
15817
15818// Validate inspects the fields of the type to determine if they are valid.
15819func (s *UpdateAliasInput) Validate() error {
15820	invalidParams := request.ErrInvalidParams{Context: "UpdateAliasInput"}
15821	if s.FunctionName == nil {
15822		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
15823	}
15824	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
15825		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
15826	}
15827	if s.FunctionVersion != nil && len(*s.FunctionVersion) < 1 {
15828		invalidParams.Add(request.NewErrParamMinLen("FunctionVersion", 1))
15829	}
15830	if s.Name == nil {
15831		invalidParams.Add(request.NewErrParamRequired("Name"))
15832	}
15833	if s.Name != nil && len(*s.Name) < 1 {
15834		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
15835	}
15836
15837	if invalidParams.Len() > 0 {
15838		return invalidParams
15839	}
15840	return nil
15841}
15842
15843// SetDescription sets the Description field's value.
15844func (s *UpdateAliasInput) SetDescription(v string) *UpdateAliasInput {
15845	s.Description = &v
15846	return s
15847}
15848
15849// SetFunctionName sets the FunctionName field's value.
15850func (s *UpdateAliasInput) SetFunctionName(v string) *UpdateAliasInput {
15851	s.FunctionName = &v
15852	return s
15853}
15854
15855// SetFunctionVersion sets the FunctionVersion field's value.
15856func (s *UpdateAliasInput) SetFunctionVersion(v string) *UpdateAliasInput {
15857	s.FunctionVersion = &v
15858	return s
15859}
15860
15861// SetName sets the Name field's value.
15862func (s *UpdateAliasInput) SetName(v string) *UpdateAliasInput {
15863	s.Name = &v
15864	return s
15865}
15866
15867// SetRevisionId sets the RevisionId field's value.
15868func (s *UpdateAliasInput) SetRevisionId(v string) *UpdateAliasInput {
15869	s.RevisionId = &v
15870	return s
15871}
15872
15873// SetRoutingConfig sets the RoutingConfig field's value.
15874func (s *UpdateAliasInput) SetRoutingConfig(v *AliasRoutingConfiguration) *UpdateAliasInput {
15875	s.RoutingConfig = v
15876	return s
15877}
15878
15879type UpdateCodeSigningConfigInput struct {
15880	_ struct{} `type:"structure"`
15881
15882	// Signing profiles for this code signing configuration.
15883	AllowedPublishers *AllowedPublishers `type:"structure"`
15884
15885	// The The Amazon Resource Name (ARN) of the code signing configuration.
15886	//
15887	// CodeSigningConfigArn is a required field
15888	CodeSigningConfigArn *string `location:"uri" locationName:"CodeSigningConfigArn" type:"string" required:"true"`
15889
15890	// The code signing policy.
15891	CodeSigningPolicies *CodeSigningPolicies `type:"structure"`
15892
15893	// Descriptive name for this code signing configuration.
15894	Description *string `type:"string"`
15895}
15896
15897// String returns the string representation
15898func (s UpdateCodeSigningConfigInput) String() string {
15899	return awsutil.Prettify(s)
15900}
15901
15902// GoString returns the string representation
15903func (s UpdateCodeSigningConfigInput) GoString() string {
15904	return s.String()
15905}
15906
15907// Validate inspects the fields of the type to determine if they are valid.
15908func (s *UpdateCodeSigningConfigInput) Validate() error {
15909	invalidParams := request.ErrInvalidParams{Context: "UpdateCodeSigningConfigInput"}
15910	if s.CodeSigningConfigArn == nil {
15911		invalidParams.Add(request.NewErrParamRequired("CodeSigningConfigArn"))
15912	}
15913	if s.CodeSigningConfigArn != nil && len(*s.CodeSigningConfigArn) < 1 {
15914		invalidParams.Add(request.NewErrParamMinLen("CodeSigningConfigArn", 1))
15915	}
15916	if s.AllowedPublishers != nil {
15917		if err := s.AllowedPublishers.Validate(); err != nil {
15918			invalidParams.AddNested("AllowedPublishers", err.(request.ErrInvalidParams))
15919		}
15920	}
15921
15922	if invalidParams.Len() > 0 {
15923		return invalidParams
15924	}
15925	return nil
15926}
15927
15928// SetAllowedPublishers sets the AllowedPublishers field's value.
15929func (s *UpdateCodeSigningConfigInput) SetAllowedPublishers(v *AllowedPublishers) *UpdateCodeSigningConfigInput {
15930	s.AllowedPublishers = v
15931	return s
15932}
15933
15934// SetCodeSigningConfigArn sets the CodeSigningConfigArn field's value.
15935func (s *UpdateCodeSigningConfigInput) SetCodeSigningConfigArn(v string) *UpdateCodeSigningConfigInput {
15936	s.CodeSigningConfigArn = &v
15937	return s
15938}
15939
15940// SetCodeSigningPolicies sets the CodeSigningPolicies field's value.
15941func (s *UpdateCodeSigningConfigInput) SetCodeSigningPolicies(v *CodeSigningPolicies) *UpdateCodeSigningConfigInput {
15942	s.CodeSigningPolicies = v
15943	return s
15944}
15945
15946// SetDescription sets the Description field's value.
15947func (s *UpdateCodeSigningConfigInput) SetDescription(v string) *UpdateCodeSigningConfigInput {
15948	s.Description = &v
15949	return s
15950}
15951
15952type UpdateCodeSigningConfigOutput struct {
15953	_ struct{} `type:"structure"`
15954
15955	// The code signing configuration
15956	//
15957	// CodeSigningConfig is a required field
15958	CodeSigningConfig *CodeSigningConfig `type:"structure" required:"true"`
15959}
15960
15961// String returns the string representation
15962func (s UpdateCodeSigningConfigOutput) String() string {
15963	return awsutil.Prettify(s)
15964}
15965
15966// GoString returns the string representation
15967func (s UpdateCodeSigningConfigOutput) GoString() string {
15968	return s.String()
15969}
15970
15971// SetCodeSigningConfig sets the CodeSigningConfig field's value.
15972func (s *UpdateCodeSigningConfigOutput) SetCodeSigningConfig(v *CodeSigningConfig) *UpdateCodeSigningConfigOutput {
15973	s.CodeSigningConfig = v
15974	return s
15975}
15976
15977type UpdateEventSourceMappingInput struct {
15978	_ struct{} `type:"structure"`
15979
15980	// The maximum number of items to retrieve in a single batch.
15981	//
15982	//    * Amazon Kinesis - Default 100. Max 10,000.
15983	//
15984	//    * Amazon DynamoDB Streams - Default 100. Max 1,000.
15985	//
15986	//    * Amazon Simple Queue Service - Default 10. For standard queues the max
15987	//    is 10,000. For FIFO queues the max is 10.
15988	//
15989	//    * Amazon Managed Streaming for Apache Kafka - Default 100. Max 10,000.
15990	//
15991	//    * Self-Managed Apache Kafka - Default 100. Max 10,000.
15992	BatchSize *int64 `min:"1" type:"integer"`
15993
15994	// (Streams only) If the function returns an error, split the batch in two and
15995	// retry.
15996	BisectBatchOnFunctionError *bool `type:"boolean"`
15997
15998	// (Streams only) An Amazon SQS queue or Amazon SNS topic destination for discarded
15999	// records.
16000	DestinationConfig *DestinationConfig `type:"structure"`
16001
16002	// If true, the event source mapping is active. Set to false to pause polling
16003	// and invocation.
16004	Enabled *bool `type:"boolean"`
16005
16006	// The name of the Lambda function.
16007	//
16008	// Name formats
16009	//
16010	//    * Function name - MyFunction.
16011	//
16012	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.
16013	//
16014	//    * Version or Alias ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction:PROD.
16015	//
16016	//    * Partial ARN - 123456789012:function:MyFunction.
16017	//
16018	// The length constraint applies only to the full ARN. If you specify only the
16019	// function name, it's limited to 64 characters in length.
16020	FunctionName *string `min:"1" type:"string"`
16021
16022	// (Streams only) A list of current response type enums applied to the event
16023	// source mapping.
16024	FunctionResponseTypes []*string `type:"list"`
16025
16026	// (Streams and SQS standard queues) The maximum amount of time to gather records
16027	// before invoking the function, in seconds.
16028	MaximumBatchingWindowInSeconds *int64 `type:"integer"`
16029
16030	// (Streams only) Discard records older than the specified age. The default
16031	// value is infinite (-1).
16032	MaximumRecordAgeInSeconds *int64 `type:"integer"`
16033
16034	// (Streams only) Discard records after the specified number of retries. The
16035	// default value is infinite (-1). When set to infinite (-1), failed records
16036	// will be retried until the record expires.
16037	MaximumRetryAttempts *int64 `type:"integer"`
16038
16039	// (Streams only) The number of batches to process from each shard concurrently.
16040	ParallelizationFactor *int64 `min:"1" type:"integer"`
16041
16042	// An array of authentication protocols or VPC components required to secure
16043	// your event source.
16044	SourceAccessConfigurations []*SourceAccessConfiguration `type:"list"`
16045
16046	// (Streams only) The duration in seconds of a processing window. The range
16047	// is between 1 second up to 900 seconds.
16048	TumblingWindowInSeconds *int64 `type:"integer"`
16049
16050	// The identifier of the event source mapping.
16051	//
16052	// UUID is a required field
16053	UUID *string `location:"uri" locationName:"UUID" type:"string" required:"true"`
16054}
16055
16056// String returns the string representation
16057func (s UpdateEventSourceMappingInput) String() string {
16058	return awsutil.Prettify(s)
16059}
16060
16061// GoString returns the string representation
16062func (s UpdateEventSourceMappingInput) GoString() string {
16063	return s.String()
16064}
16065
16066// Validate inspects the fields of the type to determine if they are valid.
16067func (s *UpdateEventSourceMappingInput) Validate() error {
16068	invalidParams := request.ErrInvalidParams{Context: "UpdateEventSourceMappingInput"}
16069	if s.BatchSize != nil && *s.BatchSize < 1 {
16070		invalidParams.Add(request.NewErrParamMinValue("BatchSize", 1))
16071	}
16072	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
16073		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
16074	}
16075	if s.MaximumRecordAgeInSeconds != nil && *s.MaximumRecordAgeInSeconds < -1 {
16076		invalidParams.Add(request.NewErrParamMinValue("MaximumRecordAgeInSeconds", -1))
16077	}
16078	if s.MaximumRetryAttempts != nil && *s.MaximumRetryAttempts < -1 {
16079		invalidParams.Add(request.NewErrParamMinValue("MaximumRetryAttempts", -1))
16080	}
16081	if s.ParallelizationFactor != nil && *s.ParallelizationFactor < 1 {
16082		invalidParams.Add(request.NewErrParamMinValue("ParallelizationFactor", 1))
16083	}
16084	if s.UUID == nil {
16085		invalidParams.Add(request.NewErrParamRequired("UUID"))
16086	}
16087	if s.UUID != nil && len(*s.UUID) < 1 {
16088		invalidParams.Add(request.NewErrParamMinLen("UUID", 1))
16089	}
16090	if s.SourceAccessConfigurations != nil {
16091		for i, v := range s.SourceAccessConfigurations {
16092			if v == nil {
16093				continue
16094			}
16095			if err := v.Validate(); err != nil {
16096				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SourceAccessConfigurations", i), err.(request.ErrInvalidParams))
16097			}
16098		}
16099	}
16100
16101	if invalidParams.Len() > 0 {
16102		return invalidParams
16103	}
16104	return nil
16105}
16106
16107// SetBatchSize sets the BatchSize field's value.
16108func (s *UpdateEventSourceMappingInput) SetBatchSize(v int64) *UpdateEventSourceMappingInput {
16109	s.BatchSize = &v
16110	return s
16111}
16112
16113// SetBisectBatchOnFunctionError sets the BisectBatchOnFunctionError field's value.
16114func (s *UpdateEventSourceMappingInput) SetBisectBatchOnFunctionError(v bool) *UpdateEventSourceMappingInput {
16115	s.BisectBatchOnFunctionError = &v
16116	return s
16117}
16118
16119// SetDestinationConfig sets the DestinationConfig field's value.
16120func (s *UpdateEventSourceMappingInput) SetDestinationConfig(v *DestinationConfig) *UpdateEventSourceMappingInput {
16121	s.DestinationConfig = v
16122	return s
16123}
16124
16125// SetEnabled sets the Enabled field's value.
16126func (s *UpdateEventSourceMappingInput) SetEnabled(v bool) *UpdateEventSourceMappingInput {
16127	s.Enabled = &v
16128	return s
16129}
16130
16131// SetFunctionName sets the FunctionName field's value.
16132func (s *UpdateEventSourceMappingInput) SetFunctionName(v string) *UpdateEventSourceMappingInput {
16133	s.FunctionName = &v
16134	return s
16135}
16136
16137// SetFunctionResponseTypes sets the FunctionResponseTypes field's value.
16138func (s *UpdateEventSourceMappingInput) SetFunctionResponseTypes(v []*string) *UpdateEventSourceMappingInput {
16139	s.FunctionResponseTypes = v
16140	return s
16141}
16142
16143// SetMaximumBatchingWindowInSeconds sets the MaximumBatchingWindowInSeconds field's value.
16144func (s *UpdateEventSourceMappingInput) SetMaximumBatchingWindowInSeconds(v int64) *UpdateEventSourceMappingInput {
16145	s.MaximumBatchingWindowInSeconds = &v
16146	return s
16147}
16148
16149// SetMaximumRecordAgeInSeconds sets the MaximumRecordAgeInSeconds field's value.
16150func (s *UpdateEventSourceMappingInput) SetMaximumRecordAgeInSeconds(v int64) *UpdateEventSourceMappingInput {
16151	s.MaximumRecordAgeInSeconds = &v
16152	return s
16153}
16154
16155// SetMaximumRetryAttempts sets the MaximumRetryAttempts field's value.
16156func (s *UpdateEventSourceMappingInput) SetMaximumRetryAttempts(v int64) *UpdateEventSourceMappingInput {
16157	s.MaximumRetryAttempts = &v
16158	return s
16159}
16160
16161// SetParallelizationFactor sets the ParallelizationFactor field's value.
16162func (s *UpdateEventSourceMappingInput) SetParallelizationFactor(v int64) *UpdateEventSourceMappingInput {
16163	s.ParallelizationFactor = &v
16164	return s
16165}
16166
16167// SetSourceAccessConfigurations sets the SourceAccessConfigurations field's value.
16168func (s *UpdateEventSourceMappingInput) SetSourceAccessConfigurations(v []*SourceAccessConfiguration) *UpdateEventSourceMappingInput {
16169	s.SourceAccessConfigurations = v
16170	return s
16171}
16172
16173// SetTumblingWindowInSeconds sets the TumblingWindowInSeconds field's value.
16174func (s *UpdateEventSourceMappingInput) SetTumblingWindowInSeconds(v int64) *UpdateEventSourceMappingInput {
16175	s.TumblingWindowInSeconds = &v
16176	return s
16177}
16178
16179// SetUUID sets the UUID field's value.
16180func (s *UpdateEventSourceMappingInput) SetUUID(v string) *UpdateEventSourceMappingInput {
16181	s.UUID = &v
16182	return s
16183}
16184
16185type UpdateFunctionCodeInput struct {
16186	_ struct{} `type:"structure"`
16187
16188	// Set to true to validate the request parameters and access permissions without
16189	// modifying the function code.
16190	DryRun *bool `type:"boolean"`
16191
16192	// The name of the Lambda function.
16193	//
16194	// Name formats
16195	//
16196	//    * Function name - my-function.
16197	//
16198	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
16199	//
16200	//    * Partial ARN - 123456789012:function:my-function.
16201	//
16202	// The length constraint applies only to the full ARN. If you specify only the
16203	// function name, it is limited to 64 characters in length.
16204	//
16205	// FunctionName is a required field
16206	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
16207
16208	// URI of a container image in the Amazon ECR registry.
16209	ImageUri *string `type:"string"`
16210
16211	// Set to true to publish a new version of the function after updating the code.
16212	// This has the same effect as calling PublishVersion separately.
16213	Publish *bool `type:"boolean"`
16214
16215	// Only update the function if the revision ID matches the ID that's specified.
16216	// Use this option to avoid modifying a function that has changed since you
16217	// last read it.
16218	RevisionId *string `type:"string"`
16219
16220	// An Amazon S3 bucket in the same Amazon Web Services Region as your function.
16221	// The bucket can be in a different Amazon Web Services account.
16222	S3Bucket *string `min:"3" type:"string"`
16223
16224	// The Amazon S3 key of the deployment package.
16225	S3Key *string `min:"1" type:"string"`
16226
16227	// For versioned objects, the version of the deployment package object to use.
16228	S3ObjectVersion *string `min:"1" type:"string"`
16229
16230	// The base64-encoded contents of the deployment package. Amazon Web Services
16231	// SDK and Amazon Web Services CLI clients handle the encoding for you.
16232	//
16233	// ZipFile is automatically base64 encoded/decoded by the SDK.
16234	ZipFile []byte `type:"blob" sensitive:"true"`
16235}
16236
16237// String returns the string representation
16238func (s UpdateFunctionCodeInput) String() string {
16239	return awsutil.Prettify(s)
16240}
16241
16242// GoString returns the string representation
16243func (s UpdateFunctionCodeInput) GoString() string {
16244	return s.String()
16245}
16246
16247// Validate inspects the fields of the type to determine if they are valid.
16248func (s *UpdateFunctionCodeInput) Validate() error {
16249	invalidParams := request.ErrInvalidParams{Context: "UpdateFunctionCodeInput"}
16250	if s.FunctionName == nil {
16251		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
16252	}
16253	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
16254		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
16255	}
16256	if s.S3Bucket != nil && len(*s.S3Bucket) < 3 {
16257		invalidParams.Add(request.NewErrParamMinLen("S3Bucket", 3))
16258	}
16259	if s.S3Key != nil && len(*s.S3Key) < 1 {
16260		invalidParams.Add(request.NewErrParamMinLen("S3Key", 1))
16261	}
16262	if s.S3ObjectVersion != nil && len(*s.S3ObjectVersion) < 1 {
16263		invalidParams.Add(request.NewErrParamMinLen("S3ObjectVersion", 1))
16264	}
16265
16266	if invalidParams.Len() > 0 {
16267		return invalidParams
16268	}
16269	return nil
16270}
16271
16272// SetDryRun sets the DryRun field's value.
16273func (s *UpdateFunctionCodeInput) SetDryRun(v bool) *UpdateFunctionCodeInput {
16274	s.DryRun = &v
16275	return s
16276}
16277
16278// SetFunctionName sets the FunctionName field's value.
16279func (s *UpdateFunctionCodeInput) SetFunctionName(v string) *UpdateFunctionCodeInput {
16280	s.FunctionName = &v
16281	return s
16282}
16283
16284// SetImageUri sets the ImageUri field's value.
16285func (s *UpdateFunctionCodeInput) SetImageUri(v string) *UpdateFunctionCodeInput {
16286	s.ImageUri = &v
16287	return s
16288}
16289
16290// SetPublish sets the Publish field's value.
16291func (s *UpdateFunctionCodeInput) SetPublish(v bool) *UpdateFunctionCodeInput {
16292	s.Publish = &v
16293	return s
16294}
16295
16296// SetRevisionId sets the RevisionId field's value.
16297func (s *UpdateFunctionCodeInput) SetRevisionId(v string) *UpdateFunctionCodeInput {
16298	s.RevisionId = &v
16299	return s
16300}
16301
16302// SetS3Bucket sets the S3Bucket field's value.
16303func (s *UpdateFunctionCodeInput) SetS3Bucket(v string) *UpdateFunctionCodeInput {
16304	s.S3Bucket = &v
16305	return s
16306}
16307
16308// SetS3Key sets the S3Key field's value.
16309func (s *UpdateFunctionCodeInput) SetS3Key(v string) *UpdateFunctionCodeInput {
16310	s.S3Key = &v
16311	return s
16312}
16313
16314// SetS3ObjectVersion sets the S3ObjectVersion field's value.
16315func (s *UpdateFunctionCodeInput) SetS3ObjectVersion(v string) *UpdateFunctionCodeInput {
16316	s.S3ObjectVersion = &v
16317	return s
16318}
16319
16320// SetZipFile sets the ZipFile field's value.
16321func (s *UpdateFunctionCodeInput) SetZipFile(v []byte) *UpdateFunctionCodeInput {
16322	s.ZipFile = v
16323	return s
16324}
16325
16326type UpdateFunctionConfigurationInput struct {
16327	_ struct{} `type:"structure"`
16328
16329	// A dead letter queue configuration that specifies the queue or topic where
16330	// Lambda sends asynchronous events when they fail processing. For more information,
16331	// see Dead Letter Queues (https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html#dlq).
16332	DeadLetterConfig *DeadLetterConfig `type:"structure"`
16333
16334	// A description of the function.
16335	Description *string `type:"string"`
16336
16337	// Environment variables that are accessible from function code during execution.
16338	Environment *Environment `type:"structure"`
16339
16340	// Connection settings for an Amazon EFS file system.
16341	FileSystemConfigs []*FileSystemConfig `type:"list"`
16342
16343	// The name of the Lambda function.
16344	//
16345	// Name formats
16346	//
16347	//    * Function name - my-function.
16348	//
16349	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
16350	//
16351	//    * Partial ARN - 123456789012:function:my-function.
16352	//
16353	// The length constraint applies only to the full ARN. If you specify only the
16354	// function name, it is limited to 64 characters in length.
16355	//
16356	// FunctionName is a required field
16357	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
16358
16359	// The name of the method within your code that Lambda calls to execute your
16360	// function. The format includes the file name. It can also include namespaces
16361	// and other qualifiers, depending on the runtime. For more information, see
16362	// Programming Model (https://docs.aws.amazon.com/lambda/latest/dg/programming-model-v2.html).
16363	Handler *string `type:"string"`
16364
16365	// Container image configuration values (https://docs.aws.amazon.com/lambda/latest/dg/images-parms.html)
16366	// that override the values in the container image Dockerfile.
16367	ImageConfig *ImageConfig `type:"structure"`
16368
16369	// The ARN of the Amazon Web Services Key Management Service (KMS) key that's
16370	// used to encrypt your function's environment variables. If it's not provided,
16371	// Lambda uses a default service key.
16372	KMSKeyArn *string `type:"string"`
16373
16374	// A list of function layers (https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html)
16375	// to add to the function's execution environment. Specify each layer by its
16376	// ARN, including the version.
16377	Layers []*string `type:"list"`
16378
16379	// The amount of memory available to the function (https://docs.aws.amazon.com/lambda/latest/dg/configuration-memory.html)
16380	// at runtime. Increasing the function memory also increases its CPU allocation.
16381	// The default value is 128 MB. The value can be any multiple of 1 MB.
16382	MemorySize *int64 `min:"128" type:"integer"`
16383
16384	// Only update the function if the revision ID matches the ID that's specified.
16385	// Use this option to avoid modifying a function that has changed since you
16386	// last read it.
16387	RevisionId *string `type:"string"`
16388
16389	// The Amazon Resource Name (ARN) of the function's execution role.
16390	Role *string `type:"string"`
16391
16392	// The identifier of the function's runtime (https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html).
16393	Runtime *string `type:"string" enum:"Runtime"`
16394
16395	// The amount of time that Lambda allows a function to run before stopping it.
16396	// The default is 3 seconds. The maximum allowed value is 900 seconds. For additional
16397	// information, see Lambda execution environment (https://docs.aws.amazon.com/lambda/latest/dg/runtimes-context.html).
16398	Timeout *int64 `min:"1" type:"integer"`
16399
16400	// Set Mode to Active to sample and trace a subset of incoming requests with
16401	// X-Ray (https://docs.aws.amazon.com/lambda/latest/dg/services-xray.html).
16402	TracingConfig *TracingConfig `type:"structure"`
16403
16404	// For network connectivity to Amazon Web Services resources in a VPC, specify
16405	// a list of security groups and subnets in the VPC. When you connect a function
16406	// to a VPC, it can only access resources and the internet through that VPC.
16407	// For more information, see VPC Settings (https://docs.aws.amazon.com/lambda/latest/dg/configuration-vpc.html).
16408	VpcConfig *VpcConfig `type:"structure"`
16409}
16410
16411// String returns the string representation
16412func (s UpdateFunctionConfigurationInput) String() string {
16413	return awsutil.Prettify(s)
16414}
16415
16416// GoString returns the string representation
16417func (s UpdateFunctionConfigurationInput) GoString() string {
16418	return s.String()
16419}
16420
16421// Validate inspects the fields of the type to determine if they are valid.
16422func (s *UpdateFunctionConfigurationInput) Validate() error {
16423	invalidParams := request.ErrInvalidParams{Context: "UpdateFunctionConfigurationInput"}
16424	if s.FunctionName == nil {
16425		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
16426	}
16427	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
16428		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
16429	}
16430	if s.MemorySize != nil && *s.MemorySize < 128 {
16431		invalidParams.Add(request.NewErrParamMinValue("MemorySize", 128))
16432	}
16433	if s.Timeout != nil && *s.Timeout < 1 {
16434		invalidParams.Add(request.NewErrParamMinValue("Timeout", 1))
16435	}
16436	if s.FileSystemConfigs != nil {
16437		for i, v := range s.FileSystemConfigs {
16438			if v == nil {
16439				continue
16440			}
16441			if err := v.Validate(); err != nil {
16442				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "FileSystemConfigs", i), err.(request.ErrInvalidParams))
16443			}
16444		}
16445	}
16446
16447	if invalidParams.Len() > 0 {
16448		return invalidParams
16449	}
16450	return nil
16451}
16452
16453// SetDeadLetterConfig sets the DeadLetterConfig field's value.
16454func (s *UpdateFunctionConfigurationInput) SetDeadLetterConfig(v *DeadLetterConfig) *UpdateFunctionConfigurationInput {
16455	s.DeadLetterConfig = v
16456	return s
16457}
16458
16459// SetDescription sets the Description field's value.
16460func (s *UpdateFunctionConfigurationInput) SetDescription(v string) *UpdateFunctionConfigurationInput {
16461	s.Description = &v
16462	return s
16463}
16464
16465// SetEnvironment sets the Environment field's value.
16466func (s *UpdateFunctionConfigurationInput) SetEnvironment(v *Environment) *UpdateFunctionConfigurationInput {
16467	s.Environment = v
16468	return s
16469}
16470
16471// SetFileSystemConfigs sets the FileSystemConfigs field's value.
16472func (s *UpdateFunctionConfigurationInput) SetFileSystemConfigs(v []*FileSystemConfig) *UpdateFunctionConfigurationInput {
16473	s.FileSystemConfigs = v
16474	return s
16475}
16476
16477// SetFunctionName sets the FunctionName field's value.
16478func (s *UpdateFunctionConfigurationInput) SetFunctionName(v string) *UpdateFunctionConfigurationInput {
16479	s.FunctionName = &v
16480	return s
16481}
16482
16483// SetHandler sets the Handler field's value.
16484func (s *UpdateFunctionConfigurationInput) SetHandler(v string) *UpdateFunctionConfigurationInput {
16485	s.Handler = &v
16486	return s
16487}
16488
16489// SetImageConfig sets the ImageConfig field's value.
16490func (s *UpdateFunctionConfigurationInput) SetImageConfig(v *ImageConfig) *UpdateFunctionConfigurationInput {
16491	s.ImageConfig = v
16492	return s
16493}
16494
16495// SetKMSKeyArn sets the KMSKeyArn field's value.
16496func (s *UpdateFunctionConfigurationInput) SetKMSKeyArn(v string) *UpdateFunctionConfigurationInput {
16497	s.KMSKeyArn = &v
16498	return s
16499}
16500
16501// SetLayers sets the Layers field's value.
16502func (s *UpdateFunctionConfigurationInput) SetLayers(v []*string) *UpdateFunctionConfigurationInput {
16503	s.Layers = v
16504	return s
16505}
16506
16507// SetMemorySize sets the MemorySize field's value.
16508func (s *UpdateFunctionConfigurationInput) SetMemorySize(v int64) *UpdateFunctionConfigurationInput {
16509	s.MemorySize = &v
16510	return s
16511}
16512
16513// SetRevisionId sets the RevisionId field's value.
16514func (s *UpdateFunctionConfigurationInput) SetRevisionId(v string) *UpdateFunctionConfigurationInput {
16515	s.RevisionId = &v
16516	return s
16517}
16518
16519// SetRole sets the Role field's value.
16520func (s *UpdateFunctionConfigurationInput) SetRole(v string) *UpdateFunctionConfigurationInput {
16521	s.Role = &v
16522	return s
16523}
16524
16525// SetRuntime sets the Runtime field's value.
16526func (s *UpdateFunctionConfigurationInput) SetRuntime(v string) *UpdateFunctionConfigurationInput {
16527	s.Runtime = &v
16528	return s
16529}
16530
16531// SetTimeout sets the Timeout field's value.
16532func (s *UpdateFunctionConfigurationInput) SetTimeout(v int64) *UpdateFunctionConfigurationInput {
16533	s.Timeout = &v
16534	return s
16535}
16536
16537// SetTracingConfig sets the TracingConfig field's value.
16538func (s *UpdateFunctionConfigurationInput) SetTracingConfig(v *TracingConfig) *UpdateFunctionConfigurationInput {
16539	s.TracingConfig = v
16540	return s
16541}
16542
16543// SetVpcConfig sets the VpcConfig field's value.
16544func (s *UpdateFunctionConfigurationInput) SetVpcConfig(v *VpcConfig) *UpdateFunctionConfigurationInput {
16545	s.VpcConfig = v
16546	return s
16547}
16548
16549type UpdateFunctionEventInvokeConfigInput struct {
16550	_ struct{} `type:"structure"`
16551
16552	// A destination for events after they have been sent to a function for processing.
16553	//
16554	// Destinations
16555	//
16556	//    * Function - The Amazon Resource Name (ARN) of a Lambda function.
16557	//
16558	//    * Queue - The ARN of an SQS queue.
16559	//
16560	//    * Topic - The ARN of an SNS topic.
16561	//
16562	//    * Event Bus - The ARN of an Amazon EventBridge event bus.
16563	DestinationConfig *DestinationConfig `type:"structure"`
16564
16565	// The name of the Lambda function, version, or alias.
16566	//
16567	// Name formats
16568	//
16569	//    * Function name - my-function (name-only), my-function:v1 (with alias).
16570	//
16571	//    * Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
16572	//
16573	//    * Partial ARN - 123456789012:function:my-function.
16574	//
16575	// You can append a version number or alias to any of the formats. The length
16576	// constraint applies only to the full ARN. If you specify only the function
16577	// name, it is limited to 64 characters in length.
16578	//
16579	// FunctionName is a required field
16580	FunctionName *string `location:"uri" locationName:"FunctionName" min:"1" type:"string" required:"true"`
16581
16582	// The maximum age of a request that Lambda sends to a function for processing.
16583	MaximumEventAgeInSeconds *int64 `min:"60" type:"integer"`
16584
16585	// The maximum number of times to retry when the function returns an error.
16586	MaximumRetryAttempts *int64 `type:"integer"`
16587
16588	// A version number or alias name.
16589	Qualifier *string `location:"querystring" locationName:"Qualifier" min:"1" type:"string"`
16590}
16591
16592// String returns the string representation
16593func (s UpdateFunctionEventInvokeConfigInput) String() string {
16594	return awsutil.Prettify(s)
16595}
16596
16597// GoString returns the string representation
16598func (s UpdateFunctionEventInvokeConfigInput) GoString() string {
16599	return s.String()
16600}
16601
16602// Validate inspects the fields of the type to determine if they are valid.
16603func (s *UpdateFunctionEventInvokeConfigInput) Validate() error {
16604	invalidParams := request.ErrInvalidParams{Context: "UpdateFunctionEventInvokeConfigInput"}
16605	if s.FunctionName == nil {
16606		invalidParams.Add(request.NewErrParamRequired("FunctionName"))
16607	}
16608	if s.FunctionName != nil && len(*s.FunctionName) < 1 {
16609		invalidParams.Add(request.NewErrParamMinLen("FunctionName", 1))
16610	}
16611	if s.MaximumEventAgeInSeconds != nil && *s.MaximumEventAgeInSeconds < 60 {
16612		invalidParams.Add(request.NewErrParamMinValue("MaximumEventAgeInSeconds", 60))
16613	}
16614	if s.Qualifier != nil && len(*s.Qualifier) < 1 {
16615		invalidParams.Add(request.NewErrParamMinLen("Qualifier", 1))
16616	}
16617
16618	if invalidParams.Len() > 0 {
16619		return invalidParams
16620	}
16621	return nil
16622}
16623
16624// SetDestinationConfig sets the DestinationConfig field's value.
16625func (s *UpdateFunctionEventInvokeConfigInput) SetDestinationConfig(v *DestinationConfig) *UpdateFunctionEventInvokeConfigInput {
16626	s.DestinationConfig = v
16627	return s
16628}
16629
16630// SetFunctionName sets the FunctionName field's value.
16631func (s *UpdateFunctionEventInvokeConfigInput) SetFunctionName(v string) *UpdateFunctionEventInvokeConfigInput {
16632	s.FunctionName = &v
16633	return s
16634}
16635
16636// SetMaximumEventAgeInSeconds sets the MaximumEventAgeInSeconds field's value.
16637func (s *UpdateFunctionEventInvokeConfigInput) SetMaximumEventAgeInSeconds(v int64) *UpdateFunctionEventInvokeConfigInput {
16638	s.MaximumEventAgeInSeconds = &v
16639	return s
16640}
16641
16642// SetMaximumRetryAttempts sets the MaximumRetryAttempts field's value.
16643func (s *UpdateFunctionEventInvokeConfigInput) SetMaximumRetryAttempts(v int64) *UpdateFunctionEventInvokeConfigInput {
16644	s.MaximumRetryAttempts = &v
16645	return s
16646}
16647
16648// SetQualifier sets the Qualifier field's value.
16649func (s *UpdateFunctionEventInvokeConfigInput) SetQualifier(v string) *UpdateFunctionEventInvokeConfigInput {
16650	s.Qualifier = &v
16651	return s
16652}
16653
16654type UpdateFunctionEventInvokeConfigOutput struct {
16655	_ struct{} `type:"structure"`
16656
16657	// A destination for events after they have been sent to a function for processing.
16658	//
16659	// Destinations
16660	//
16661	//    * Function - The Amazon Resource Name (ARN) of a Lambda function.
16662	//
16663	//    * Queue - The ARN of an SQS queue.
16664	//
16665	//    * Topic - The ARN of an SNS topic.
16666	//
16667	//    * Event Bus - The ARN of an Amazon EventBridge event bus.
16668	DestinationConfig *DestinationConfig `type:"structure"`
16669
16670	// The Amazon Resource Name (ARN) of the function.
16671	FunctionArn *string `type:"string"`
16672
16673	// The date and time that the configuration was last updated.
16674	LastModified *time.Time `type:"timestamp"`
16675
16676	// The maximum age of a request that Lambda sends to a function for processing.
16677	MaximumEventAgeInSeconds *int64 `min:"60" type:"integer"`
16678
16679	// The maximum number of times to retry when the function returns an error.
16680	MaximumRetryAttempts *int64 `type:"integer"`
16681}
16682
16683// String returns the string representation
16684func (s UpdateFunctionEventInvokeConfigOutput) String() string {
16685	return awsutil.Prettify(s)
16686}
16687
16688// GoString returns the string representation
16689func (s UpdateFunctionEventInvokeConfigOutput) GoString() string {
16690	return s.String()
16691}
16692
16693// SetDestinationConfig sets the DestinationConfig field's value.
16694func (s *UpdateFunctionEventInvokeConfigOutput) SetDestinationConfig(v *DestinationConfig) *UpdateFunctionEventInvokeConfigOutput {
16695	s.DestinationConfig = v
16696	return s
16697}
16698
16699// SetFunctionArn sets the FunctionArn field's value.
16700func (s *UpdateFunctionEventInvokeConfigOutput) SetFunctionArn(v string) *UpdateFunctionEventInvokeConfigOutput {
16701	s.FunctionArn = &v
16702	return s
16703}
16704
16705// SetLastModified sets the LastModified field's value.
16706func (s *UpdateFunctionEventInvokeConfigOutput) SetLastModified(v time.Time) *UpdateFunctionEventInvokeConfigOutput {
16707	s.LastModified = &v
16708	return s
16709}
16710
16711// SetMaximumEventAgeInSeconds sets the MaximumEventAgeInSeconds field's value.
16712func (s *UpdateFunctionEventInvokeConfigOutput) SetMaximumEventAgeInSeconds(v int64) *UpdateFunctionEventInvokeConfigOutput {
16713	s.MaximumEventAgeInSeconds = &v
16714	return s
16715}
16716
16717// SetMaximumRetryAttempts sets the MaximumRetryAttempts field's value.
16718func (s *UpdateFunctionEventInvokeConfigOutput) SetMaximumRetryAttempts(v int64) *UpdateFunctionEventInvokeConfigOutput {
16719	s.MaximumRetryAttempts = &v
16720	return s
16721}
16722
16723// The VPC security groups and subnets that are attached to a Lambda function.
16724// For more information, see VPC Settings (https://docs.aws.amazon.com/lambda/latest/dg/configuration-vpc.html).
16725type VpcConfig struct {
16726	_ struct{} `type:"structure"`
16727
16728	// A list of VPC security groups IDs.
16729	SecurityGroupIds []*string `type:"list"`
16730
16731	// A list of VPC subnet IDs.
16732	SubnetIds []*string `type:"list"`
16733}
16734
16735// String returns the string representation
16736func (s VpcConfig) String() string {
16737	return awsutil.Prettify(s)
16738}
16739
16740// GoString returns the string representation
16741func (s VpcConfig) GoString() string {
16742	return s.String()
16743}
16744
16745// SetSecurityGroupIds sets the SecurityGroupIds field's value.
16746func (s *VpcConfig) SetSecurityGroupIds(v []*string) *VpcConfig {
16747	s.SecurityGroupIds = v
16748	return s
16749}
16750
16751// SetSubnetIds sets the SubnetIds field's value.
16752func (s *VpcConfig) SetSubnetIds(v []*string) *VpcConfig {
16753	s.SubnetIds = v
16754	return s
16755}
16756
16757// The VPC security groups and subnets that are attached to a Lambda function.
16758type VpcConfigResponse struct {
16759	_ struct{} `type:"structure"`
16760
16761	// A list of VPC security groups IDs.
16762	SecurityGroupIds []*string `type:"list"`
16763
16764	// A list of VPC subnet IDs.
16765	SubnetIds []*string `type:"list"`
16766
16767	// The ID of the VPC.
16768	VpcId *string `type:"string"`
16769}
16770
16771// String returns the string representation
16772func (s VpcConfigResponse) String() string {
16773	return awsutil.Prettify(s)
16774}
16775
16776// GoString returns the string representation
16777func (s VpcConfigResponse) GoString() string {
16778	return s.String()
16779}
16780
16781// SetSecurityGroupIds sets the SecurityGroupIds field's value.
16782func (s *VpcConfigResponse) SetSecurityGroupIds(v []*string) *VpcConfigResponse {
16783	s.SecurityGroupIds = v
16784	return s
16785}
16786
16787// SetSubnetIds sets the SubnetIds field's value.
16788func (s *VpcConfigResponse) SetSubnetIds(v []*string) *VpcConfigResponse {
16789	s.SubnetIds = v
16790	return s
16791}
16792
16793// SetVpcId sets the VpcId field's value.
16794func (s *VpcConfigResponse) SetVpcId(v string) *VpcConfigResponse {
16795	s.VpcId = &v
16796	return s
16797}
16798
16799const (
16800	// CodeSigningPolicyWarn is a CodeSigningPolicy enum value
16801	CodeSigningPolicyWarn = "Warn"
16802
16803	// CodeSigningPolicyEnforce is a CodeSigningPolicy enum value
16804	CodeSigningPolicyEnforce = "Enforce"
16805)
16806
16807// CodeSigningPolicy_Values returns all elements of the CodeSigningPolicy enum
16808func CodeSigningPolicy_Values() []string {
16809	return []string{
16810		CodeSigningPolicyWarn,
16811		CodeSigningPolicyEnforce,
16812	}
16813}
16814
16815const (
16816	// EndPointTypeKafkaBootstrapServers is a EndPointType enum value
16817	EndPointTypeKafkaBootstrapServers = "KAFKA_BOOTSTRAP_SERVERS"
16818)
16819
16820// EndPointType_Values returns all elements of the EndPointType enum
16821func EndPointType_Values() []string {
16822	return []string{
16823		EndPointTypeKafkaBootstrapServers,
16824	}
16825}
16826
16827const (
16828	// EventSourcePositionTrimHorizon is a EventSourcePosition enum value
16829	EventSourcePositionTrimHorizon = "TRIM_HORIZON"
16830
16831	// EventSourcePositionLatest is a EventSourcePosition enum value
16832	EventSourcePositionLatest = "LATEST"
16833
16834	// EventSourcePositionAtTimestamp is a EventSourcePosition enum value
16835	EventSourcePositionAtTimestamp = "AT_TIMESTAMP"
16836)
16837
16838// EventSourcePosition_Values returns all elements of the EventSourcePosition enum
16839func EventSourcePosition_Values() []string {
16840	return []string{
16841		EventSourcePositionTrimHorizon,
16842		EventSourcePositionLatest,
16843		EventSourcePositionAtTimestamp,
16844	}
16845}
16846
16847const (
16848	// FunctionResponseTypeReportBatchItemFailures is a FunctionResponseType enum value
16849	FunctionResponseTypeReportBatchItemFailures = "ReportBatchItemFailures"
16850)
16851
16852// FunctionResponseType_Values returns all elements of the FunctionResponseType enum
16853func FunctionResponseType_Values() []string {
16854	return []string{
16855		FunctionResponseTypeReportBatchItemFailures,
16856	}
16857}
16858
16859const (
16860	// FunctionVersionAll is a FunctionVersion enum value
16861	FunctionVersionAll = "ALL"
16862)
16863
16864// FunctionVersion_Values returns all elements of the FunctionVersion enum
16865func FunctionVersion_Values() []string {
16866	return []string{
16867		FunctionVersionAll,
16868	}
16869}
16870
16871const (
16872	// InvocationTypeEvent is a InvocationType enum value
16873	InvocationTypeEvent = "Event"
16874
16875	// InvocationTypeRequestResponse is a InvocationType enum value
16876	InvocationTypeRequestResponse = "RequestResponse"
16877
16878	// InvocationTypeDryRun is a InvocationType enum value
16879	InvocationTypeDryRun = "DryRun"
16880)
16881
16882// InvocationType_Values returns all elements of the InvocationType enum
16883func InvocationType_Values() []string {
16884	return []string{
16885		InvocationTypeEvent,
16886		InvocationTypeRequestResponse,
16887		InvocationTypeDryRun,
16888	}
16889}
16890
16891const (
16892	// LastUpdateStatusSuccessful is a LastUpdateStatus enum value
16893	LastUpdateStatusSuccessful = "Successful"
16894
16895	// LastUpdateStatusFailed is a LastUpdateStatus enum value
16896	LastUpdateStatusFailed = "Failed"
16897
16898	// LastUpdateStatusInProgress is a LastUpdateStatus enum value
16899	LastUpdateStatusInProgress = "InProgress"
16900)
16901
16902// LastUpdateStatus_Values returns all elements of the LastUpdateStatus enum
16903func LastUpdateStatus_Values() []string {
16904	return []string{
16905		LastUpdateStatusSuccessful,
16906		LastUpdateStatusFailed,
16907		LastUpdateStatusInProgress,
16908	}
16909}
16910
16911const (
16912	// LastUpdateStatusReasonCodeEniLimitExceeded is a LastUpdateStatusReasonCode enum value
16913	LastUpdateStatusReasonCodeEniLimitExceeded = "EniLimitExceeded"
16914
16915	// LastUpdateStatusReasonCodeInsufficientRolePermissions is a LastUpdateStatusReasonCode enum value
16916	LastUpdateStatusReasonCodeInsufficientRolePermissions = "InsufficientRolePermissions"
16917
16918	// LastUpdateStatusReasonCodeInvalidConfiguration is a LastUpdateStatusReasonCode enum value
16919	LastUpdateStatusReasonCodeInvalidConfiguration = "InvalidConfiguration"
16920
16921	// LastUpdateStatusReasonCodeInternalError is a LastUpdateStatusReasonCode enum value
16922	LastUpdateStatusReasonCodeInternalError = "InternalError"
16923
16924	// LastUpdateStatusReasonCodeSubnetOutOfIpaddresses is a LastUpdateStatusReasonCode enum value
16925	LastUpdateStatusReasonCodeSubnetOutOfIpaddresses = "SubnetOutOfIPAddresses"
16926
16927	// LastUpdateStatusReasonCodeInvalidSubnet is a LastUpdateStatusReasonCode enum value
16928	LastUpdateStatusReasonCodeInvalidSubnet = "InvalidSubnet"
16929
16930	// LastUpdateStatusReasonCodeInvalidSecurityGroup is a LastUpdateStatusReasonCode enum value
16931	LastUpdateStatusReasonCodeInvalidSecurityGroup = "InvalidSecurityGroup"
16932
16933	// LastUpdateStatusReasonCodeImageDeleted is a LastUpdateStatusReasonCode enum value
16934	LastUpdateStatusReasonCodeImageDeleted = "ImageDeleted"
16935
16936	// LastUpdateStatusReasonCodeImageAccessDenied is a LastUpdateStatusReasonCode enum value
16937	LastUpdateStatusReasonCodeImageAccessDenied = "ImageAccessDenied"
16938
16939	// LastUpdateStatusReasonCodeInvalidImage is a LastUpdateStatusReasonCode enum value
16940	LastUpdateStatusReasonCodeInvalidImage = "InvalidImage"
16941)
16942
16943// LastUpdateStatusReasonCode_Values returns all elements of the LastUpdateStatusReasonCode enum
16944func LastUpdateStatusReasonCode_Values() []string {
16945	return []string{
16946		LastUpdateStatusReasonCodeEniLimitExceeded,
16947		LastUpdateStatusReasonCodeInsufficientRolePermissions,
16948		LastUpdateStatusReasonCodeInvalidConfiguration,
16949		LastUpdateStatusReasonCodeInternalError,
16950		LastUpdateStatusReasonCodeSubnetOutOfIpaddresses,
16951		LastUpdateStatusReasonCodeInvalidSubnet,
16952		LastUpdateStatusReasonCodeInvalidSecurityGroup,
16953		LastUpdateStatusReasonCodeImageDeleted,
16954		LastUpdateStatusReasonCodeImageAccessDenied,
16955		LastUpdateStatusReasonCodeInvalidImage,
16956	}
16957}
16958
16959const (
16960	// LogTypeNone is a LogType enum value
16961	LogTypeNone = "None"
16962
16963	// LogTypeTail is a LogType enum value
16964	LogTypeTail = "Tail"
16965)
16966
16967// LogType_Values returns all elements of the LogType enum
16968func LogType_Values() []string {
16969	return []string{
16970		LogTypeNone,
16971		LogTypeTail,
16972	}
16973}
16974
16975const (
16976	// PackageTypeZip is a PackageType enum value
16977	PackageTypeZip = "Zip"
16978
16979	// PackageTypeImage is a PackageType enum value
16980	PackageTypeImage = "Image"
16981)
16982
16983// PackageType_Values returns all elements of the PackageType enum
16984func PackageType_Values() []string {
16985	return []string{
16986		PackageTypeZip,
16987		PackageTypeImage,
16988	}
16989}
16990
16991const (
16992	// ProvisionedConcurrencyStatusEnumInProgress is a ProvisionedConcurrencyStatusEnum enum value
16993	ProvisionedConcurrencyStatusEnumInProgress = "IN_PROGRESS"
16994
16995	// ProvisionedConcurrencyStatusEnumReady is a ProvisionedConcurrencyStatusEnum enum value
16996	ProvisionedConcurrencyStatusEnumReady = "READY"
16997
16998	// ProvisionedConcurrencyStatusEnumFailed is a ProvisionedConcurrencyStatusEnum enum value
16999	ProvisionedConcurrencyStatusEnumFailed = "FAILED"
17000)
17001
17002// ProvisionedConcurrencyStatusEnum_Values returns all elements of the ProvisionedConcurrencyStatusEnum enum
17003func ProvisionedConcurrencyStatusEnum_Values() []string {
17004	return []string{
17005		ProvisionedConcurrencyStatusEnumInProgress,
17006		ProvisionedConcurrencyStatusEnumReady,
17007		ProvisionedConcurrencyStatusEnumFailed,
17008	}
17009}
17010
17011const (
17012	// RuntimeNodejs is a Runtime enum value
17013	RuntimeNodejs = "nodejs"
17014
17015	// RuntimeNodejs43 is a Runtime enum value
17016	RuntimeNodejs43 = "nodejs4.3"
17017
17018	// RuntimeNodejs610 is a Runtime enum value
17019	RuntimeNodejs610 = "nodejs6.10"
17020
17021	// RuntimeNodejs810 is a Runtime enum value
17022	RuntimeNodejs810 = "nodejs8.10"
17023
17024	// RuntimeNodejs10X is a Runtime enum value
17025	RuntimeNodejs10X = "nodejs10.x"
17026
17027	// RuntimeNodejs12X is a Runtime enum value
17028	RuntimeNodejs12X = "nodejs12.x"
17029
17030	// RuntimeNodejs14X is a Runtime enum value
17031	RuntimeNodejs14X = "nodejs14.x"
17032
17033	// RuntimeJava8 is a Runtime enum value
17034	RuntimeJava8 = "java8"
17035
17036	// RuntimeJava8Al2 is a Runtime enum value
17037	RuntimeJava8Al2 = "java8.al2"
17038
17039	// RuntimeJava11 is a Runtime enum value
17040	RuntimeJava11 = "java11"
17041
17042	// RuntimePython27 is a Runtime enum value
17043	RuntimePython27 = "python2.7"
17044
17045	// RuntimePython36 is a Runtime enum value
17046	RuntimePython36 = "python3.6"
17047
17048	// RuntimePython37 is a Runtime enum value
17049	RuntimePython37 = "python3.7"
17050
17051	// RuntimePython38 is a Runtime enum value
17052	RuntimePython38 = "python3.8"
17053
17054	// RuntimePython39 is a Runtime enum value
17055	RuntimePython39 = "python3.9"
17056
17057	// RuntimeDotnetcore10 is a Runtime enum value
17058	RuntimeDotnetcore10 = "dotnetcore1.0"
17059
17060	// RuntimeDotnetcore20 is a Runtime enum value
17061	RuntimeDotnetcore20 = "dotnetcore2.0"
17062
17063	// RuntimeDotnetcore21 is a Runtime enum value
17064	RuntimeDotnetcore21 = "dotnetcore2.1"
17065
17066	// RuntimeDotnetcore31 is a Runtime enum value
17067	RuntimeDotnetcore31 = "dotnetcore3.1"
17068
17069	// RuntimeNodejs43Edge is a Runtime enum value
17070	RuntimeNodejs43Edge = "nodejs4.3-edge"
17071
17072	// RuntimeGo1X is a Runtime enum value
17073	RuntimeGo1X = "go1.x"
17074
17075	// RuntimeRuby25 is a Runtime enum value
17076	RuntimeRuby25 = "ruby2.5"
17077
17078	// RuntimeRuby27 is a Runtime enum value
17079	RuntimeRuby27 = "ruby2.7"
17080
17081	// RuntimeProvided is a Runtime enum value
17082	RuntimeProvided = "provided"
17083
17084	// RuntimeProvidedAl2 is a Runtime enum value
17085	RuntimeProvidedAl2 = "provided.al2"
17086)
17087
17088// Runtime_Values returns all elements of the Runtime enum
17089func Runtime_Values() []string {
17090	return []string{
17091		RuntimeNodejs,
17092		RuntimeNodejs43,
17093		RuntimeNodejs610,
17094		RuntimeNodejs810,
17095		RuntimeNodejs10X,
17096		RuntimeNodejs12X,
17097		RuntimeNodejs14X,
17098		RuntimeJava8,
17099		RuntimeJava8Al2,
17100		RuntimeJava11,
17101		RuntimePython27,
17102		RuntimePython36,
17103		RuntimePython37,
17104		RuntimePython38,
17105		RuntimePython39,
17106		RuntimeDotnetcore10,
17107		RuntimeDotnetcore20,
17108		RuntimeDotnetcore21,
17109		RuntimeDotnetcore31,
17110		RuntimeNodejs43Edge,
17111		RuntimeGo1X,
17112		RuntimeRuby25,
17113		RuntimeRuby27,
17114		RuntimeProvided,
17115		RuntimeProvidedAl2,
17116	}
17117}
17118
17119const (
17120	// SourceAccessTypeBasicAuth is a SourceAccessType enum value
17121	SourceAccessTypeBasicAuth = "BASIC_AUTH"
17122
17123	// SourceAccessTypeVpcSubnet is a SourceAccessType enum value
17124	SourceAccessTypeVpcSubnet = "VPC_SUBNET"
17125
17126	// SourceAccessTypeVpcSecurityGroup is a SourceAccessType enum value
17127	SourceAccessTypeVpcSecurityGroup = "VPC_SECURITY_GROUP"
17128
17129	// SourceAccessTypeSaslScram512Auth is a SourceAccessType enum value
17130	SourceAccessTypeSaslScram512Auth = "SASL_SCRAM_512_AUTH"
17131
17132	// SourceAccessTypeSaslScram256Auth is a SourceAccessType enum value
17133	SourceAccessTypeSaslScram256Auth = "SASL_SCRAM_256_AUTH"
17134
17135	// SourceAccessTypeVirtualHost is a SourceAccessType enum value
17136	SourceAccessTypeVirtualHost = "VIRTUAL_HOST"
17137)
17138
17139// SourceAccessType_Values returns all elements of the SourceAccessType enum
17140func SourceAccessType_Values() []string {
17141	return []string{
17142		SourceAccessTypeBasicAuth,
17143		SourceAccessTypeVpcSubnet,
17144		SourceAccessTypeVpcSecurityGroup,
17145		SourceAccessTypeSaslScram512Auth,
17146		SourceAccessTypeSaslScram256Auth,
17147		SourceAccessTypeVirtualHost,
17148	}
17149}
17150
17151const (
17152	// StatePending is a State enum value
17153	StatePending = "Pending"
17154
17155	// StateActive is a State enum value
17156	StateActive = "Active"
17157
17158	// StateInactive is a State enum value
17159	StateInactive = "Inactive"
17160
17161	// StateFailed is a State enum value
17162	StateFailed = "Failed"
17163)
17164
17165// State_Values returns all elements of the State enum
17166func State_Values() []string {
17167	return []string{
17168		StatePending,
17169		StateActive,
17170		StateInactive,
17171		StateFailed,
17172	}
17173}
17174
17175const (
17176	// StateReasonCodeIdle is a StateReasonCode enum value
17177	StateReasonCodeIdle = "Idle"
17178
17179	// StateReasonCodeCreating is a StateReasonCode enum value
17180	StateReasonCodeCreating = "Creating"
17181
17182	// StateReasonCodeRestoring is a StateReasonCode enum value
17183	StateReasonCodeRestoring = "Restoring"
17184
17185	// StateReasonCodeEniLimitExceeded is a StateReasonCode enum value
17186	StateReasonCodeEniLimitExceeded = "EniLimitExceeded"
17187
17188	// StateReasonCodeInsufficientRolePermissions is a StateReasonCode enum value
17189	StateReasonCodeInsufficientRolePermissions = "InsufficientRolePermissions"
17190
17191	// StateReasonCodeInvalidConfiguration is a StateReasonCode enum value
17192	StateReasonCodeInvalidConfiguration = "InvalidConfiguration"
17193
17194	// StateReasonCodeInternalError is a StateReasonCode enum value
17195	StateReasonCodeInternalError = "InternalError"
17196
17197	// StateReasonCodeSubnetOutOfIpaddresses is a StateReasonCode enum value
17198	StateReasonCodeSubnetOutOfIpaddresses = "SubnetOutOfIPAddresses"
17199
17200	// StateReasonCodeInvalidSubnet is a StateReasonCode enum value
17201	StateReasonCodeInvalidSubnet = "InvalidSubnet"
17202
17203	// StateReasonCodeInvalidSecurityGroup is a StateReasonCode enum value
17204	StateReasonCodeInvalidSecurityGroup = "InvalidSecurityGroup"
17205
17206	// StateReasonCodeImageDeleted is a StateReasonCode enum value
17207	StateReasonCodeImageDeleted = "ImageDeleted"
17208
17209	// StateReasonCodeImageAccessDenied is a StateReasonCode enum value
17210	StateReasonCodeImageAccessDenied = "ImageAccessDenied"
17211
17212	// StateReasonCodeInvalidImage is a StateReasonCode enum value
17213	StateReasonCodeInvalidImage = "InvalidImage"
17214)
17215
17216// StateReasonCode_Values returns all elements of the StateReasonCode enum
17217func StateReasonCode_Values() []string {
17218	return []string{
17219		StateReasonCodeIdle,
17220		StateReasonCodeCreating,
17221		StateReasonCodeRestoring,
17222		StateReasonCodeEniLimitExceeded,
17223		StateReasonCodeInsufficientRolePermissions,
17224		StateReasonCodeInvalidConfiguration,
17225		StateReasonCodeInternalError,
17226		StateReasonCodeSubnetOutOfIpaddresses,
17227		StateReasonCodeInvalidSubnet,
17228		StateReasonCodeInvalidSecurityGroup,
17229		StateReasonCodeImageDeleted,
17230		StateReasonCodeImageAccessDenied,
17231		StateReasonCodeInvalidImage,
17232	}
17233}
17234
17235const (
17236	// ThrottleReasonConcurrentInvocationLimitExceeded is a ThrottleReason enum value
17237	ThrottleReasonConcurrentInvocationLimitExceeded = "ConcurrentInvocationLimitExceeded"
17238
17239	// ThrottleReasonFunctionInvocationRateLimitExceeded is a ThrottleReason enum value
17240	ThrottleReasonFunctionInvocationRateLimitExceeded = "FunctionInvocationRateLimitExceeded"
17241
17242	// ThrottleReasonReservedFunctionConcurrentInvocationLimitExceeded is a ThrottleReason enum value
17243	ThrottleReasonReservedFunctionConcurrentInvocationLimitExceeded = "ReservedFunctionConcurrentInvocationLimitExceeded"
17244
17245	// ThrottleReasonReservedFunctionInvocationRateLimitExceeded is a ThrottleReason enum value
17246	ThrottleReasonReservedFunctionInvocationRateLimitExceeded = "ReservedFunctionInvocationRateLimitExceeded"
17247
17248	// ThrottleReasonCallerRateLimitExceeded is a ThrottleReason enum value
17249	ThrottleReasonCallerRateLimitExceeded = "CallerRateLimitExceeded"
17250)
17251
17252// ThrottleReason_Values returns all elements of the ThrottleReason enum
17253func ThrottleReason_Values() []string {
17254	return []string{
17255		ThrottleReasonConcurrentInvocationLimitExceeded,
17256		ThrottleReasonFunctionInvocationRateLimitExceeded,
17257		ThrottleReasonReservedFunctionConcurrentInvocationLimitExceeded,
17258		ThrottleReasonReservedFunctionInvocationRateLimitExceeded,
17259		ThrottleReasonCallerRateLimitExceeded,
17260	}
17261}
17262
17263const (
17264	// TracingModeActive is a TracingMode enum value
17265	TracingModeActive = "Active"
17266
17267	// TracingModePassThrough is a TracingMode enum value
17268	TracingModePassThrough = "PassThrough"
17269)
17270
17271// TracingMode_Values returns all elements of the TracingMode enum
17272func TracingMode_Values() []string {
17273	return []string{
17274		TracingModeActive,
17275		TracingModePassThrough,
17276	}
17277}
17278