Namespace LambdaSharp
Classes
ALambdaFunction
ALambdaFunction is the abstract base class for all AWS Lambda functions. This class takes care of initializing the function from environment variables, before invoking ProcessMessageStreamAsync(Stream).
ALambdaFunction<TRequest, TResponse>
The ALambdaFunction<TRequest, TResponse> builds on the ALambdaFunction by adding request and response types which are automatically deserialized and serialized, respectively.
AwsConverters
The static AwsConverters class provides convenience methods for converting Amazon Resource Name (ARN) into an alternative representation more suitable for their respective clients.
LambdaConfig
The LambdaConfig class is used by the Lambda function to read
its configuration settings. LambdaConfig provides hiearachical
access to scoped module values using the
Item[String] operator.
Individual values can be retrieved using the basic
Read<T>(String, Func<String, T>, Func<String, T>, Action<T>) method
or one of the Read*
methods.
LambdaFunctionDependencyProvider
The LambdaFunctionDependencyProvider class provides all the default, runtime dependencies for ALambdaFunction instances. Classes derived from ALambdaFunction that require additional dependencies should create their own Dependency Provider interface, derived from ILambdaFunctionDependencyProvider with a companion implementation class derived from LambdaFunctionDependencyProvider.
This separation of concerns makes it simple to create isolated unit tests to validate the behavior of the Lambda function implementation. For convenience sake, classes derived from ALambdaFunction should provide both an empty constructor that instantiate the default implementation and a constructor with that takes an instance implementing the required Dependency Provider interface.
Structs
ALambdaFunction.FunctionInfo
The ALambdaFunction.FunctionInfo struct exposes the function initialization settings.
Interfaces
ILambdaFunctionDependencyProvider
The ILambdaFunctionDependencyProvider interface provides all the required dependencies for ALambdaFunction instances. This interface follows the Dependency Provider pattern where all side-effecting methods and properties must be provided by an outside implementation.
Enums
ALambdaFunction.FailedMessageOrigin
The ALambdaFunction.FailedMessageOrigin describes the origin of the failed message. The origin determines how the failed message will be retried.