All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amazonaws.services.lambda.AWSLambda Maven / Gradle / Ivy

/*
 * Copyright 2012-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved.
 * 
 * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
 * the License. A copy of the License is located at
 * 
 * http://aws.amazon.com/apache2.0
 * 
 * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
 * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
 * and limitations under the License.
 */
package com.amazonaws.services.lambda;

import javax.annotation.Generated;

import com.amazonaws.*;
import com.amazonaws.regions.*;

import com.amazonaws.services.lambda.model.*;

/**
 * Interface for accessing AWS Lambda.
 * 

* Note: Do not directly implement this interface, new methods are added to it regularly. Extend from * {@link com.amazonaws.services.lambda.AbstractAWSLambda} instead. *

*

* AWS Lambda *

* Overview *

*

* This is the AWS Lambda API Reference. The AWS Lambda Developer Guide provides additional information. For the * service overview, see What is AWS Lambda, and * for information about how the service works, see AWS Lambda: How it Works in the * AWS Lambda Developer Guide. *

*/ @Generated("com.amazonaws:aws-java-sdk-code-generator") public interface AWSLambda { /** * The region metadata service name for computing region endpoints. You can use this value to retrieve metadata * (such as supported regions) of the service. * * @see RegionUtils#getRegionsForService(String) */ String ENDPOINT_PREFIX = "lambda"; /** * Overrides the default endpoint for this client ("lambda.us-east-1.amazonaws.com"). Callers can use this method to * control which AWS region they want to work with. *

* Callers can pass in just the endpoint (ex: "lambda.us-east-1.amazonaws.com") or a full URL, including the * protocol (ex: "lambda.us-east-1.amazonaws.com"). If the protocol is not specified here, the default protocol from * this client's {@link ClientConfiguration} will be used, which by default is HTTPS. *

* For more information on using AWS regions with the AWS SDK for Java, and a complete list of all available * endpoints for all AWS services, see: * http://developer.amazonwebservices.com/connect/entry.jspa?externalID=3912 *

* This method is not threadsafe. An endpoint should be configured when the client is created and before any * service requests are made. Changing it afterwards creates inevitable race conditions for any service requests in * transit or retrying. * * @param endpoint * The endpoint (ex: "lambda.us-east-1.amazonaws.com") or a full URL, including the protocol (ex: * "lambda.us-east-1.amazonaws.com") of the region specific AWS endpoint this client will communicate with. * @deprecated use {@link AwsClientBuilder#setEndpointConfiguration(AwsClientBuilder.EndpointConfiguration)} for * example: * {@code builder.setEndpointConfiguration(new EndpointConfiguration(endpoint, signingRegion));} */ @Deprecated void setEndpoint(String endpoint); /** * An alternative to {@link AWSLambda#setEndpoint(String)}, sets the regional endpoint for this client's service * calls. Callers can use this method to control which AWS region they want to work with. *

* By default, all service endpoints in all regions use the https protocol. To use http instead, specify it in the * {@link ClientConfiguration} supplied at construction. *

* This method is not threadsafe. A region should be configured when the client is created and before any service * requests are made. Changing it afterwards creates inevitable race conditions for any service requests in transit * or retrying. * * @param region * The region this client will communicate with. See {@link Region#getRegion(com.amazonaws.regions.Regions)} * for accessing a given region. Must not be null and must be a region where the service is available. * * @see Region#getRegion(com.amazonaws.regions.Regions) * @see Region#createClient(Class, com.amazonaws.auth.AWSCredentialsProvider, ClientConfiguration) * @see Region#isServiceSupported(String) * @deprecated use {@link AwsClientBuilder#setRegion(String)} */ @Deprecated void setRegion(Region region); /** *

* Adds a permission to the resource policy associated with the specified AWS Lambda function. You use resource * policies to grant permissions to event sources that use push model. In a push model, event sources * (such as Amazon S3 and custom applications) invoke your Lambda function. Each permission you add to the resource * policy allows an event source, permission to invoke the Lambda function. *

*

* For information about the push model, see AWS Lambda: How it Works. *

*

* If you are using versioning, the permissions you add are specific to the Lambda function version or alias you * specify in the AddPermission request via the Qualifier parameter. For more information * about versioning, see AWS Lambda * Function Versioning and Aliases. *

*

* This operation requires permission for the lambda:AddPermission action. *

* * @param addPermissionRequest * @return Result of the AddPermission operation returned by the service. * @throws ServiceException * The AWS Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource (for example, a Lambda function or access policy statement) specified in the request does * not exist. * @throws ResourceConflictException * The resource already exists. * @throws InvalidParameterValueException * One of the parameters in the request is invalid. For example, if you provided an IAM role for AWS Lambda * to assume in the CreateFunction or the UpdateFunctionConfiguration API, that * AWS Lambda is unable to assume you will get this exception. You will also get this exception if you have * selected a deprecated runtime, such as Node v0.10.42. * @throws PolicyLengthExceededException * Lambda function access policy is limited to 20 KB. * @throws TooManyRequestsException * @sample AWSLambda.AddPermission * @see AWS API * Documentation */ AddPermissionResult addPermission(AddPermissionRequest addPermissionRequest); /** *

* Creates an alias that points to the specified Lambda function version. For more information, see Introduction to AWS Lambda Aliases. *

*

* Alias names are unique for a given function. This requires permission for the lambda:CreateAlias action. *

* * @param createAliasRequest * @return Result of the CreateAlias operation returned by the service. * @throws ServiceException * The AWS Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource (for example, a Lambda function or access policy statement) specified in the request does * not exist. * @throws ResourceConflictException * The resource already exists. * @throws InvalidParameterValueException * One of the parameters in the request is invalid. For example, if you provided an IAM role for AWS Lambda * to assume in the CreateFunction or the UpdateFunctionConfiguration API, that * AWS Lambda is unable to assume you will get this exception. You will also get this exception if you have * selected a deprecated runtime, such as Node v0.10.42. * @throws TooManyRequestsException * @sample AWSLambda.CreateAlias * @see AWS API * Documentation */ CreateAliasResult createAlias(CreateAliasRequest createAliasRequest); /** *

* Identifies a stream as an event source for a Lambda function. It can be either an Amazon Kinesis stream or an * Amazon DynamoDB stream. AWS Lambda invokes the specified function when records are posted to the stream. *

*

* This association between a stream source and a Lambda function is called the event source mapping. *

* *

* This event source mapping is relevant only in the AWS Lambda pull model, where AWS Lambda invokes the function. * For more information, see AWS * Lambda: How it Works in the AWS Lambda Developer Guide. *

*
*

* You provide mapping information (for example, which stream to read from and which Lambda function to invoke) in * the request body. *

*

* Each event source, such as an Amazon Kinesis or a DynamoDB stream, can be associated with multiple AWS Lambda * function. A given Lambda function can be associated with multiple AWS event sources. *

*

* If you are using versioning, you can specify a specific function version or an alias via the function name * parameter. For more information about versioning, see AWS Lambda Function Versioning and * Aliases. *

*

* This operation requires permission for the lambda:CreateEventSourceMapping action. *

* * @param createEventSourceMappingRequest * @return Result of the CreateEventSourceMapping operation returned by the service. * @throws ServiceException * The AWS Lambda service encountered an internal error. * @throws InvalidParameterValueException * One of the parameters in the request is invalid. For example, if you provided an IAM role for AWS Lambda * to assume in the CreateFunction or the UpdateFunctionConfiguration API, that * AWS Lambda is unable to assume you will get this exception. You will also get this exception if you have * selected a deprecated runtime, such as Node v0.10.42. * @throws ResourceConflictException * The resource already exists. * @throws TooManyRequestsException * @throws ResourceNotFoundException * The resource (for example, a Lambda function or access policy statement) specified in the request does * not exist. * @sample AWSLambda.CreateEventSourceMapping * @see AWS API Documentation */ CreateEventSourceMappingResult createEventSourceMapping(CreateEventSourceMappingRequest createEventSourceMappingRequest); /** *

* Creates a new Lambda function. The function metadata is created from the request parameters, and the code for the * function is provided by a .zip file in the request body. If the function name already exists, the operation will * fail. Note that the function name is case-sensitive. *

*

* If you are using versioning, you can also publish a version of the Lambda function you are creating using the * Publish parameter. For more information about versioning, see AWS Lambda Function Versioning and * Aliases. *

*

* This operation requires permission for the lambda:CreateFunction action. *

* * @param createFunctionRequest * @return Result of the CreateFunction operation returned by the service. * @throws ServiceException * The AWS Lambda service encountered an internal error. * @throws InvalidParameterValueException * One of the parameters in the request is invalid. For example, if you provided an IAM role for AWS Lambda * to assume in the CreateFunction or the UpdateFunctionConfiguration API, that * AWS Lambda is unable to assume you will get this exception. You will also get this exception if you have * selected a deprecated runtime, such as Node v0.10.42. * @throws ResourceNotFoundException * The resource (for example, a Lambda function or access policy statement) specified in the request does * not exist. * @throws ResourceConflictException * The resource already exists. * @throws TooManyRequestsException * @throws CodeStorageExceededException * You have exceeded your maximum total code size per account. Limits * @sample AWSLambda.CreateFunction * @see AWS API * Documentation */ CreateFunctionResult createFunction(CreateFunctionRequest createFunctionRequest); /** *

* Deletes the specified Lambda function alias. For more information, see Introduction to AWS Lambda Aliases. *

*

* This requires permission for the lambda:DeleteAlias action. *

* * @param deleteAliasRequest * @return Result of the DeleteAlias operation returned by the service. * @throws ServiceException * The AWS Lambda service encountered an internal error. * @throws InvalidParameterValueException * One of the parameters in the request is invalid. For example, if you provided an IAM role for AWS Lambda * to assume in the CreateFunction or the UpdateFunctionConfiguration API, that * AWS Lambda is unable to assume you will get this exception. You will also get this exception if you have * selected a deprecated runtime, such as Node v0.10.42. * @throws TooManyRequestsException * @sample AWSLambda.DeleteAlias * @see AWS API * Documentation */ DeleteAliasResult deleteAlias(DeleteAliasRequest deleteAliasRequest); /** *

* Removes an event source mapping. This means AWS Lambda will no longer invoke the function for events in the * associated source. *

*

* This operation requires permission for the lambda:DeleteEventSourceMapping action. *

* * @param deleteEventSourceMappingRequest * @return Result of the DeleteEventSourceMapping operation returned by the service. * @throws ServiceException * The AWS Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource (for example, a Lambda function or access policy statement) specified in the request does * not exist. * @throws InvalidParameterValueException * One of the parameters in the request is invalid. For example, if you provided an IAM role for AWS Lambda * to assume in the CreateFunction or the UpdateFunctionConfiguration API, that * AWS Lambda is unable to assume you will get this exception. You will also get this exception if you have * selected a deprecated runtime, such as Node v0.10.42. * @throws TooManyRequestsException * @sample AWSLambda.DeleteEventSourceMapping * @see AWS API Documentation */ DeleteEventSourceMappingResult deleteEventSourceMapping(DeleteEventSourceMappingRequest deleteEventSourceMappingRequest); /** *

* Deletes the specified Lambda function code and configuration. *

*

* If you are using the versioning feature and you don't specify a function version in your * DeleteFunction request, AWS Lambda will delete the function, including all its versions, and any * aliases pointing to the function versions. To delete a specific function version, you must provide the function * version via the Qualifier parameter. For information about function versioning, see AWS Lambda Function Versioning and * Aliases. *

*

* When you delete a function the associated resource policy is also deleted. You will need to delete the event * source mappings explicitly. *

*

* This operation requires permission for the lambda:DeleteFunction action. *

* * @param deleteFunctionRequest * @return Result of the DeleteFunction operation returned by the service. * @throws ServiceException * The AWS Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource (for example, a Lambda function or access policy statement) specified in the request does * not exist. * @throws TooManyRequestsException * @throws InvalidParameterValueException * One of the parameters in the request is invalid. For example, if you provided an IAM role for AWS Lambda * to assume in the CreateFunction or the UpdateFunctionConfiguration API, that * AWS Lambda is unable to assume you will get this exception. You will also get this exception if you have * selected a deprecated runtime, such as Node v0.10.42. * @throws ResourceConflictException * The resource already exists. * @sample AWSLambda.DeleteFunction * @see AWS API * Documentation */ DeleteFunctionResult deleteFunction(DeleteFunctionRequest deleteFunctionRequest); /** *

* Returns a customer's account settings. *

*

* You can use this operation to retrieve Lambda limits information, such as code size and concurrency limits. For * more information about limits, see AWS Lambda * Limits. You can also retrieve resource usage statistics, such as code storage usage and function count. *

* * @param getAccountSettingsRequest * @return Result of the GetAccountSettings operation returned by the service. * @throws TooManyRequestsException * @throws ServiceException * The AWS Lambda service encountered an internal error. * @sample AWSLambda.GetAccountSettings * @see AWS API * Documentation */ GetAccountSettingsResult getAccountSettings(GetAccountSettingsRequest getAccountSettingsRequest); /** *

* Returns the specified alias information such as the alias ARN, description, and function version it is pointing * to. For more information, see Introduction to AWS Lambda Aliases. *

*

* This requires permission for the lambda:GetAlias action. *

* * @param getAliasRequest * @return Result of the GetAlias operation returned by the service. * @throws ServiceException * The AWS Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource (for example, a Lambda function or access policy statement) specified in the request does * not exist. * @throws InvalidParameterValueException * One of the parameters in the request is invalid. For example, if you provided an IAM role for AWS Lambda * to assume in the CreateFunction or the UpdateFunctionConfiguration API, that * AWS Lambda is unable to assume you will get this exception. You will also get this exception if you have * selected a deprecated runtime, such as Node v0.10.42. * @throws TooManyRequestsException * @sample AWSLambda.GetAlias * @see AWS API * Documentation */ GetAliasResult getAlias(GetAliasRequest getAliasRequest); /** *

* Returns configuration information for the specified event source mapping (see CreateEventSourceMapping). *

*

* This operation requires permission for the lambda:GetEventSourceMapping action. *

* * @param getEventSourceMappingRequest * @return Result of the GetEventSourceMapping operation returned by the service. * @throws ServiceException * The AWS Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource (for example, a Lambda function or access policy statement) specified in the request does * not exist. * @throws InvalidParameterValueException * One of the parameters in the request is invalid. For example, if you provided an IAM role for AWS Lambda * to assume in the CreateFunction or the UpdateFunctionConfiguration API, that * AWS Lambda is unable to assume you will get this exception. You will also get this exception if you have * selected a deprecated runtime, such as Node v0.10.42. * @throws TooManyRequestsException * @sample AWSLambda.GetEventSourceMapping * @see AWS * API Documentation */ GetEventSourceMappingResult getEventSourceMapping(GetEventSourceMappingRequest getEventSourceMappingRequest); /** *

* Returns the configuration information of the Lambda function and a presigned URL link to the .zip file you * uploaded with CreateFunction so you can download the .zip file. Note that the URL is valid for up to 10 * minutes. The configuration information is the same information you provided as parameters when uploading the * function. *

*

* Using the optional Qualifier parameter, you can specify a specific function version for which you * want this information. If you don't specify this parameter, the API uses unqualified function ARN which return * information about the $LATEST version of the Lambda function. For more information, see AWS Lambda Function Versioning and * Aliases. *

*

* This operation requires permission for the lambda:GetFunction action. *

* * @param getFunctionRequest * @return Result of the GetFunction operation returned by the service. * @throws ServiceException * The AWS Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource (for example, a Lambda function or access policy statement) specified in the request does * not exist. * @throws TooManyRequestsException * @throws InvalidParameterValueException * One of the parameters in the request is invalid. For example, if you provided an IAM role for AWS Lambda * to assume in the CreateFunction or the UpdateFunctionConfiguration API, that * AWS Lambda is unable to assume you will get this exception. You will also get this exception if you have * selected a deprecated runtime, such as Node v0.10.42. * @sample AWSLambda.GetFunction * @see AWS API * Documentation */ GetFunctionResult getFunction(GetFunctionRequest getFunctionRequest); /** *

* Returns the configuration information of the Lambda function. This the same information you provided as * parameters when uploading the function by using CreateFunction. *

*

* If you are using the versioning feature, you can retrieve this information for a specific function version by * using the optional Qualifier parameter and specifying the function version or alias that points to * it. If you don't provide it, the API returns information about the $LATEST version of the function. For more * information about versioning, see AWS Lambda Function Versioning and * Aliases. *

*

* This operation requires permission for the lambda:GetFunctionConfiguration operation. *

* * @param getFunctionConfigurationRequest * @return Result of the GetFunctionConfiguration operation returned by the service. * @throws ServiceException * The AWS Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource (for example, a Lambda function or access policy statement) specified in the request does * not exist. * @throws TooManyRequestsException * @throws InvalidParameterValueException * One of the parameters in the request is invalid. For example, if you provided an IAM role for AWS Lambda * to assume in the CreateFunction or the UpdateFunctionConfiguration API, that * AWS Lambda is unable to assume you will get this exception. You will also get this exception if you have * selected a deprecated runtime, such as Node v0.10.42. * @sample AWSLambda.GetFunctionConfiguration * @see AWS API Documentation */ GetFunctionConfigurationResult getFunctionConfiguration(GetFunctionConfigurationRequest getFunctionConfigurationRequest); /** *

* Returns the resource policy associated with the specified Lambda function. *

*

* If you are using the versioning feature, you can get the resource policy associated with the specific Lambda * function version or alias by specifying the version or alias name using the Qualifier parameter. For * more information about versioning, see AWS Lambda Function Versioning and * Aliases. *

*

* You need permission for the lambda:GetPolicy action. *

* * @param getPolicyRequest * @return Result of the GetPolicy operation returned by the service. * @throws ServiceException * The AWS Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource (for example, a Lambda function or access policy statement) specified in the request does * not exist. * @throws TooManyRequestsException * @throws InvalidParameterValueException * One of the parameters in the request is invalid. For example, if you provided an IAM role for AWS Lambda * to assume in the CreateFunction or the UpdateFunctionConfiguration API, that * AWS Lambda is unable to assume you will get this exception. You will also get this exception if you have * selected a deprecated runtime, such as Node v0.10.42. * @sample AWSLambda.GetPolicy * @see AWS API * Documentation */ GetPolicyResult getPolicy(GetPolicyRequest getPolicyRequest); /** *

* Invokes a specific Lambda function. For an example, see Create the Lambda Function and Test It Manually. *

*

* If you are using the versioning feature, you can invoke the specific function version by providing function * version or alias name that is pointing to the function version using the Qualifier parameter in the * request. If you don't provide the Qualifier parameter, the $LATEST version of the * Lambda function is invoked. Invocations occur at least once in response to an event and functions must be * idempotent to handle this. For information about the versioning feature, see AWS Lambda Function Versioning and * Aliases. *

*

* This operation requires permission for the lambda:InvokeFunction action. *

* * @param invokeRequest * @return Result of the Invoke operation returned by the service. * @throws ServiceException * The AWS Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource (for example, a Lambda function or access policy statement) specified in the request does * not exist. * @throws InvalidRequestContentException * The request body could not be parsed as JSON. * @throws RequestTooLargeException * The request payload exceeded the Invoke request body JSON input limit. For more information, * see Limits. * @throws UnsupportedMediaTypeException * The content type of the Invoke request body is not JSON. * @throws TooManyRequestsException * @throws InvalidParameterValueException * One of the parameters in the request is invalid. For example, if you provided an IAM role for AWS Lambda * to assume in the CreateFunction or the UpdateFunctionConfiguration API, that * AWS Lambda is unable to assume you will get this exception. You will also get this exception if you have * selected a deprecated runtime, such as Node v0.10.42. * @throws EC2UnexpectedException * AWS Lambda received an unexpected EC2 client exception while setting up for the Lambda function. * @throws SubnetIPAddressLimitReachedException * AWS Lambda was not able to set up VPC access for the Lambda function because one or more configured * subnets has no available IP addresses. * @throws ENILimitReachedException * AWS Lambda was not able to create an Elastic Network Interface (ENI) in the VPC, specified as part of * Lambda function configuration, because the limit for network interfaces has been reached. * @throws EC2ThrottledException * AWS Lambda was throttled by Amazon EC2 during Lambda function initialization using the execution role * provided for the Lambda function. * @throws EC2AccessDeniedException * @throws InvalidSubnetIDException * The Subnet ID provided in the Lambda function VPC configuration is invalid. * @throws InvalidSecurityGroupIDException * The Security Group ID provided in the Lambda function VPC configuration is invalid. * @throws InvalidZipFileException * AWS Lambda could not unzip the function zip file. * @throws KMSDisabledException * Lambda was unable to decrypt the environment variables because the KMS key used is disabled. Check the * Lambda function's KMS key settings. * @throws KMSInvalidStateException * Lambda was unable to decrypt the environment variables because the KMS key used is in an invalid state * for Decrypt. Check the function's KMS key settings. * @throws KMSAccessDeniedException * Lambda was unable to decrypt the environment variables because KMS access was denied. Check the Lambda * function's KMS permissions. * @throws KMSNotFoundException * Lambda was unable to decrypt the environment variables because the KMS key was not found. Check the * function's KMS key settings. * @throws InvalidRuntimeException * The runtime or runtime version specified is not supported. * @sample AWSLambda.Invoke * @see AWS API * Documentation */ InvokeResult invoke(InvokeRequest invokeRequest); /** * *

* This API is deprecated. We recommend you use Invoke API (see Invoke). *

*
*

* Submits an invocation request to AWS Lambda. Upon receiving the request, Lambda executes the specified function * asynchronously. To see the logs generated by the Lambda function execution, see the CloudWatch Logs console. *

*

* This operation requires permission for the lambda:InvokeFunction action. *

* * @param invokeAsyncRequest * @return Result of the InvokeAsync operation returned by the service. * @throws ServiceException * The AWS Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource (for example, a Lambda function or access policy statement) specified in the request does * not exist. * @throws InvalidRequestContentException * The request body could not be parsed as JSON. * @throws InvalidRuntimeException * The runtime or runtime version specified is not supported. * @sample AWSLambda.InvokeAsync * @see AWS API * Documentation */ @Deprecated InvokeAsyncResult invokeAsync(InvokeAsyncRequest invokeAsyncRequest); /** *

* Returns list of aliases created for a Lambda function. For each alias, the response includes information such as * the alias ARN, description, alias name, and the function version to which it points. For more information, see Introduction to AWS Lambda Aliases. *

*

* This requires permission for the lambda:ListAliases action. *

* * @param listAliasesRequest * @return Result of the ListAliases operation returned by the service. * @throws ServiceException * The AWS Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource (for example, a Lambda function or access policy statement) specified in the request does * not exist. * @throws InvalidParameterValueException * One of the parameters in the request is invalid. For example, if you provided an IAM role for AWS Lambda * to assume in the CreateFunction or the UpdateFunctionConfiguration API, that * AWS Lambda is unable to assume you will get this exception. You will also get this exception if you have * selected a deprecated runtime, such as Node v0.10.42. * @throws TooManyRequestsException * @sample AWSLambda.ListAliases * @see AWS API * Documentation */ ListAliasesResult listAliases(ListAliasesRequest listAliasesRequest); /** *

* Returns a list of event source mappings you created using the CreateEventSourceMapping (see * CreateEventSourceMapping). *

*

* For each mapping, the API returns configuration information. You can optionally specify filters to retrieve * specific event source mappings. *

*

* If you are using the versioning feature, you can get list of event source mappings for a specific Lambda function * version or an alias as described in the FunctionName parameter. For information about the versioning * feature, see AWS Lambda Function * Versioning and Aliases. *

*

* This operation requires permission for the lambda:ListEventSourceMappings action. *

* * @param listEventSourceMappingsRequest * @return Result of the ListEventSourceMappings operation returned by the service. * @throws ServiceException * The AWS Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource (for example, a Lambda function or access policy statement) specified in the request does * not exist. * @throws InvalidParameterValueException * One of the parameters in the request is invalid. For example, if you provided an IAM role for AWS Lambda * to assume in the CreateFunction or the UpdateFunctionConfiguration API, that * AWS Lambda is unable to assume you will get this exception. You will also get this exception if you have * selected a deprecated runtime, such as Node v0.10.42. * @throws TooManyRequestsException * @sample AWSLambda.ListEventSourceMappings * @see AWS * API Documentation */ ListEventSourceMappingsResult listEventSourceMappings(ListEventSourceMappingsRequest listEventSourceMappingsRequest); /** * Simplified method form for invoking the ListEventSourceMappings operation. * * @see #listEventSourceMappings(ListEventSourceMappingsRequest) */ ListEventSourceMappingsResult listEventSourceMappings(); /** *

* Returns a list of your Lambda functions. For each function, the response includes the function configuration * information. You must use GetFunction to retrieve the code for your function. *

*

* This operation requires permission for the lambda:ListFunctions action. *

*

* If you are using the versioning feature, you can list all of your functions or only $LATEST * versions. For information about the versioning feature, see AWS Lambda Function Versioning and * Aliases. *

* * @param listFunctionsRequest * @return Result of the ListFunctions operation returned by the service. * @throws ServiceException * The AWS Lambda service encountered an internal error. * @throws TooManyRequestsException * @throws InvalidParameterValueException * One of the parameters in the request is invalid. For example, if you provided an IAM role for AWS Lambda * to assume in the CreateFunction or the UpdateFunctionConfiguration API, that * AWS Lambda is unable to assume you will get this exception. You will also get this exception if you have * selected a deprecated runtime, such as Node v0.10.42. * @sample AWSLambda.ListFunctions * @see AWS API * Documentation */ ListFunctionsResult listFunctions(ListFunctionsRequest listFunctionsRequest); /** * Simplified method form for invoking the ListFunctions operation. * * @see #listFunctions(ListFunctionsRequest) */ ListFunctionsResult listFunctions(); /** *

* Returns a list of tags assigned to a function when supplied the function ARN (Amazon Resource Name). *

* * @param listTagsRequest * @return Result of the ListTags operation returned by the service. * @throws ServiceException * The AWS Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource (for example, a Lambda function or access policy statement) specified in the request does * not exist. * @throws InvalidParameterValueException * One of the parameters in the request is invalid. For example, if you provided an IAM role for AWS Lambda * to assume in the CreateFunction or the UpdateFunctionConfiguration API, that * AWS Lambda is unable to assume you will get this exception. You will also get this exception if you have * selected a deprecated runtime, such as Node v0.10.42. * @throws TooManyRequestsException * @sample AWSLambda.ListTags * @see AWS API * Documentation */ ListTagsResult listTags(ListTagsRequest listTagsRequest); /** *

* List all versions of a function. For information about the versioning feature, see AWS Lambda Function Versioning and * Aliases. *

* * @param listVersionsByFunctionRequest * @return Result of the ListVersionsByFunction operation returned by the service. * @throws ServiceException * The AWS Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource (for example, a Lambda function or access policy statement) specified in the request does * not exist. * @throws InvalidParameterValueException * One of the parameters in the request is invalid. For example, if you provided an IAM role for AWS Lambda * to assume in the CreateFunction or the UpdateFunctionConfiguration API, that * AWS Lambda is unable to assume you will get this exception. You will also get this exception if you have * selected a deprecated runtime, such as Node v0.10.42. * @throws TooManyRequestsException * @sample AWSLambda.ListVersionsByFunction * @see AWS * API Documentation */ ListVersionsByFunctionResult listVersionsByFunction(ListVersionsByFunctionRequest listVersionsByFunctionRequest); /** *

* Publishes a version of your function from the current snapshot of $LATEST. That is, AWS Lambda takes a snapshot * of the function code and configuration information from $LATEST and publishes a new version. The code and * configuration cannot be modified after publication. For information about the versioning feature, see AWS Lambda Function Versioning and * Aliases. *

* * @param publishVersionRequest * @return Result of the PublishVersion operation returned by the service. * @throws ServiceException * The AWS Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource (for example, a Lambda function or access policy statement) specified in the request does * not exist. * @throws InvalidParameterValueException * One of the parameters in the request is invalid. For example, if you provided an IAM role for AWS Lambda * to assume in the CreateFunction or the UpdateFunctionConfiguration API, that * AWS Lambda is unable to assume you will get this exception. You will also get this exception if you have * selected a deprecated runtime, such as Node v0.10.42. * @throws TooManyRequestsException * @throws CodeStorageExceededException * You have exceeded your maximum total code size per account. Limits * @sample AWSLambda.PublishVersion * @see AWS API * Documentation */ PublishVersionResult publishVersion(PublishVersionRequest publishVersionRequest); /** *

* You can remove individual permissions from an resource policy associated with a Lambda function by providing a * statement ID that you provided when you added the permission. *

*

* If you are using versioning, the permissions you remove are specific to the Lambda function version or alias you * specify in the AddPermission request via the Qualifier parameter. For more information * about versioning, see AWS Lambda * Function Versioning and Aliases. *

*

* Note that removal of a permission will cause an active event source to lose permission to the function. *

*

* You need permission for the lambda:RemovePermission action. *

* * @param removePermissionRequest * @return Result of the RemovePermission operation returned by the service. * @throws ServiceException * The AWS Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource (for example, a Lambda function or access policy statement) specified in the request does * not exist. * @throws InvalidParameterValueException * One of the parameters in the request is invalid. For example, if you provided an IAM role for AWS Lambda * to assume in the CreateFunction or the UpdateFunctionConfiguration API, that * AWS Lambda is unable to assume you will get this exception. You will also get this exception if you have * selected a deprecated runtime, such as Node v0.10.42. * @throws TooManyRequestsException * @sample AWSLambda.RemovePermission * @see AWS API * Documentation */ RemovePermissionResult removePermission(RemovePermissionRequest removePermissionRequest); /** *

* Creates a list of tags (key-value pairs) on the Lambda function. Requires the Lambda function ARN (Amazon * Resource Name). If a key is specified without a value, Lambda creates a tag with the specified key and a value of * null. *

* * @param tagResourceRequest * @return Result of the TagResource operation returned by the service. * @throws ServiceException * The AWS Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource (for example, a Lambda function or access policy statement) specified in the request does * not exist. * @throws InvalidParameterValueException * One of the parameters in the request is invalid. For example, if you provided an IAM role for AWS Lambda * to assume in the CreateFunction or the UpdateFunctionConfiguration API, that * AWS Lambda is unable to assume you will get this exception. You will also get this exception if you have * selected a deprecated runtime, such as Node v0.10.42. * @throws TooManyRequestsException * @sample AWSLambda.TagResource * @see AWS API * Documentation */ TagResourceResult tagResource(TagResourceRequest tagResourceRequest); /** *

* Removes tags from a Lambda function. Requires the function ARN (Amazon Resource Name). *

* * @param untagResourceRequest * @return Result of the UntagResource operation returned by the service. * @throws ServiceException * The AWS Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource (for example, a Lambda function or access policy statement) specified in the request does * not exist. * @throws InvalidParameterValueException * One of the parameters in the request is invalid. For example, if you provided an IAM role for AWS Lambda * to assume in the CreateFunction or the UpdateFunctionConfiguration API, that * AWS Lambda is unable to assume you will get this exception. You will also get this exception if you have * selected a deprecated runtime, such as Node v0.10.42. * @throws TooManyRequestsException * @sample AWSLambda.UntagResource * @see AWS API * Documentation */ UntagResourceResult untagResource(UntagResourceRequest untagResourceRequest); /** *

* Using this API you can update the function version to which the alias points and the alias description. For more * information, see Introduction to AWS * Lambda Aliases. *

*

* This requires permission for the lambda:UpdateAlias action. *

* * @param updateAliasRequest * @return Result of the UpdateAlias operation returned by the service. * @throws ServiceException * The AWS Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource (for example, a Lambda function or access policy statement) specified in the request does * not exist. * @throws InvalidParameterValueException * One of the parameters in the request is invalid. For example, if you provided an IAM role for AWS Lambda * to assume in the CreateFunction or the UpdateFunctionConfiguration API, that * AWS Lambda is unable to assume you will get this exception. You will also get this exception if you have * selected a deprecated runtime, such as Node v0.10.42. * @throws TooManyRequestsException * @sample AWSLambda.UpdateAlias * @see AWS API * Documentation */ UpdateAliasResult updateAlias(UpdateAliasRequest updateAliasRequest); /** *

* You can update an event source mapping. This is useful if you want to change the parameters of the existing * mapping without losing your position in the stream. You can change which function will receive the stream * records, but to change the stream itself, you must create a new mapping. *

*

* If you are using the versioning feature, you can update the event source mapping to map to a specific Lambda * function version or alias as described in the FunctionName parameter. For information about the * versioning feature, see AWS Lambda * Function Versioning and Aliases. *

*

* If you disable the event source mapping, AWS Lambda stops polling. If you enable again, it will resume polling * from the time it had stopped polling, so you don't lose processing of any records. However, if you delete event * source mapping and create it again, it will reset. *

*

* This operation requires permission for the lambda:UpdateEventSourceMapping action. *

* * @param updateEventSourceMappingRequest * @return Result of the UpdateEventSourceMapping operation returned by the service. * @throws ServiceException * The AWS Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource (for example, a Lambda function or access policy statement) specified in the request does * not exist. * @throws InvalidParameterValueException * One of the parameters in the request is invalid. For example, if you provided an IAM role for AWS Lambda * to assume in the CreateFunction or the UpdateFunctionConfiguration API, that * AWS Lambda is unable to assume you will get this exception. You will also get this exception if you have * selected a deprecated runtime, such as Node v0.10.42. * @throws TooManyRequestsException * @throws ResourceConflictException * The resource already exists. * @sample AWSLambda.UpdateEventSourceMapping * @see AWS API Documentation */ UpdateEventSourceMappingResult updateEventSourceMapping(UpdateEventSourceMappingRequest updateEventSourceMappingRequest); /** *

* Updates the code for the specified Lambda function. This operation must only be used on an existing Lambda * function and cannot be used to update the function configuration. *

*

* If you are using the versioning feature, note this API will always update the $LATEST version of your Lambda * function. For information about the versioning feature, see AWS Lambda Function Versioning and * Aliases. *

*

* This operation requires permission for the lambda:UpdateFunctionCode action. *

* * @param updateFunctionCodeRequest * @return Result of the UpdateFunctionCode operation returned by the service. * @throws ServiceException * The AWS Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource (for example, a Lambda function or access policy statement) specified in the request does * not exist. * @throws InvalidParameterValueException * One of the parameters in the request is invalid. For example, if you provided an IAM role for AWS Lambda * to assume in the CreateFunction or the UpdateFunctionConfiguration API, that * AWS Lambda is unable to assume you will get this exception. You will also get this exception if you have * selected a deprecated runtime, such as Node v0.10.42. * @throws TooManyRequestsException * @throws CodeStorageExceededException * You have exceeded your maximum total code size per account. Limits * @sample AWSLambda.UpdateFunctionCode * @see AWS API * Documentation */ UpdateFunctionCodeResult updateFunctionCode(UpdateFunctionCodeRequest updateFunctionCodeRequest); /** *

* Updates the configuration parameters for the specified Lambda function by using the values provided in the * request. You provide only the parameters you want to change. This operation must only be used on an existing * Lambda function and cannot be used to update the function's code. *

*

* If you are using the versioning feature, note this API will always update the $LATEST version of your Lambda * function. For information about the versioning feature, see AWS Lambda Function Versioning and * Aliases. *

*

* This operation requires permission for the lambda:UpdateFunctionConfiguration action. *

* * @param updateFunctionConfigurationRequest * @return Result of the UpdateFunctionConfiguration operation returned by the service. * @throws ServiceException * The AWS Lambda service encountered an internal error. * @throws ResourceNotFoundException * The resource (for example, a Lambda function or access policy statement) specified in the request does * not exist. * @throws InvalidParameterValueException * One of the parameters in the request is invalid. For example, if you provided an IAM role for AWS Lambda * to assume in the CreateFunction or the UpdateFunctionConfiguration API, that * AWS Lambda is unable to assume you will get this exception. You will also get this exception if you have * selected a deprecated runtime, such as Node v0.10.42. * @throws TooManyRequestsException * @throws ResourceConflictException * The resource already exists. * @sample AWSLambda.UpdateFunctionConfiguration * @see AWS API Documentation */ UpdateFunctionConfigurationResult updateFunctionConfiguration(UpdateFunctionConfigurationRequest updateFunctionConfigurationRequest); /** * Shuts down this client object, releasing any resources that might be held open. This is an optional method, and * callers are not expected to call it, but can if they want to explicitly release any open resources. Once a client * has been shutdown, it should not be used to make any more requests. */ void shutdown(); /** * Returns additional metadata for a previously executed successful request, typically used for debugging issues * where a service isn't acting as expected. This data isn't considered part of the result data returned by an * operation, so it's available through this separate, diagnostic interface. *

* Response metadata is only cached for a limited period of time, so if you need to access this extra diagnostic * information for an executed request, you should use this method to retrieve it as soon as possible after * executing a request. * * @param request * The originally executed request. * * @return The response metadata for the specified request, or null if none is available. */ ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request); }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy