The ALambdaFinalizerFunction is the abstract base class for implementing a LambdaSharp module Finalizer. The Finalizer is a CloudFormation custom resource that is created after all other resources in the LambdaSharp module have been created. The Finalizer is used to perform custom logic when deploying, creating, or tearing down a LambdaSharp module.
The FinalizerAttributes class describes the attributes of the LambdaSharp Finalizer resource. This class is always empty since the finalizer is the last CloudFormation resource to be created, no other resources can depend on it.
The FinalizerProperties class describes the LambdaSharp Finalizer resource properties. These properties are automatically set by the LambdaSharp compiler.
The ILambdaFinalizerDependencyProvider interface provides all the required dependencies for ALambdaFinalizerFunction instances. This interface follows the Dependency Provider pattern where all side-effecting methods and properties must be provided by an outside implementation.