Show / Hide Table of Contents

Class ALambdaFinalizerFunction

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.

Inheritance
System.Object
ALambdaFunction
ALambdaCustomResourceFunction<FinalizerProperties, FinalizerAttributes>
ALambdaFinalizerFunction
Implements
ILambdaSharpLogger
Inherited Members
ALambdaCustomResourceFunction<FinalizerProperties, FinalizerAttributes>.LambdaSerializer
ALambdaCustomResourceFunction<FinalizerProperties, FinalizerAttributes>.ProcessCreateResourceAsync(Request<FinalizerProperties>, CancellationToken)
ALambdaCustomResourceFunction<FinalizerProperties, FinalizerAttributes>.ProcessUpdateResourceAsync(Request<FinalizerProperties>, CancellationToken)
ALambdaCustomResourceFunction<FinalizerProperties, FinalizerAttributes>.ProcessDeleteResourceAsync(Request<FinalizerProperties>, CancellationToken)
ALambdaCustomResourceFunction<FinalizerProperties, FinalizerAttributes>.ProcessMessageStreamAsync(Stream)
ALambdaCustomResourceFunction<FinalizerProperties, FinalizerAttributes>.Abort(String)
ALambdaCustomResourceFunction<FinalizerProperties, FinalizerAttributes>.HandleFailedInitializationAsync(Stream)
ALambdaFunction.UtcNow
ALambdaFunction.Info
ALambdaFunction.ErrorReportGenerator
ALambdaFunction.Logger
ALambdaFunction.CurrentContext
ALambdaFunction.HttpClient
ALambdaFunction.DebugLoggingEnabled
ALambdaFunction.InitializeAsync(LambdaConfig)
ALambdaFunction.ProcessMessageStreamAsync(Stream)
ALambdaFunction.FunctionHandlerAsync(Stream, ILambdaContext)
ALambdaFunction.InitializePrologueAsync(ILambdaConfigSource)
ALambdaFunction.InitializeEpilogueAsync()
ALambdaFunction.HandleFailedInitializationAsync(Stream)
ALambdaFunction.RecordFailedMessageAsync(LambdaLogLevel, ALambdaFunction.FailedMessageOrigin, String, Exception)
ALambdaFunction.DecryptSecretAsync(String, Dictionary<String, String>, CancellationToken)
ALambdaFunction.EncryptSecretAsync(String, String, Dictionary<String, String>, CancellationToken)
ALambdaFunction.AddPendingTask(Task)
ALambdaFunction.RunTask(Action, CancellationToken)
ALambdaFunction.RunTask(Func<Task>, CancellationToken)
ALambdaFunction.ForceLambdaColdStart(String)
ALambdaFunction.TerminateLambdaInstance(String)
ALambdaFunction.RecordErrorReport(LambdaErrorReport)
ALambdaFunction.RecordException(Exception)
ALambdaFunction.LogDebug(String, Object[])
ALambdaFunction.LogInfo(String, Object[])
ALambdaFunction.LogWarn(String, Object[])
ALambdaFunction.LogError(Exception)
ALambdaFunction.LogError(Exception, String, Object[])
ALambdaFunction.LogErrorAsInfo(Exception)
ALambdaFunction.LogErrorAsInfo(Exception, String, Object[])
ALambdaFunction.LogErrorAsWarning(Exception)
ALambdaFunction.LogErrorAsWarning(Exception, String, Object[])
ALambdaFunction.LogFatal(Exception, String, Object[])
ALambdaFunction.LogMetric(String, Double, LambdaMetricUnit)
ALambdaFunction.LogMetric(String, Double, LambdaMetricUnit, IEnumerable<String>, Dictionary<String, String>)
ALambdaFunction.LogMetric(IEnumerable<LambdaMetric>)
ALambdaFunction.LogMetric(IEnumerable<LambdaMetric>, IEnumerable<String>, Dictionary<String, String>)
ALambdaFunction.LogEvent<T>(T, IEnumerable<String>)
ALambdaFunction.LogEvent<T>(String, T, IEnumerable<String>)
ALambdaFunction.LogEvent<T>(String, String, T, IEnumerable<String>)
ALambdaFunction.ILambdaSharpLogger.DebugLoggingEnabled
ALambdaFunction.ILambdaSharpLogger.Info
ALambdaFunction.ILambdaSharpLogger.Log(LambdaLogLevel, Exception, String, Object[])
ALambdaFunction.ILambdaSharpLogger.LogRecord(ALambdaLogRecord)
Namespace: LambdaSharp.Finalizer
Assembly: LambdaSharp.Finalizer.dll
Syntax
public abstract class ALambdaFinalizerFunction : ALambdaCustomResourceFunction<FinalizerProperties, FinalizerAttributes>, ILambdaSharpLogger

Constructors

ALambdaFinalizerFunction()

Initializes a new ALambdaFinalizerFunction instance using the default implementation of ILambdaFunctionDependencyProvider.

Declaration
protected ALambdaFinalizerFunction()

ALambdaFinalizerFunction(ILambdaFinalizerDependencyProvider)

Initializes a new ALambdaFinalizerFunction instance using a custom implementation of ILambdaFunctionDependencyProvider.

Declaration
protected ALambdaFinalizerFunction(ILambdaFinalizerDependencyProvider provider)
Parameters
Type Name Description
ILambdaFinalizerDependencyProvider provider

Custom implementation of ILambdaFunctionDependencyProvider.

Properties

Provider

The ILambdaFinalizerDependencyProvider instance used by the Lambda function to satisfy its required dependencies.

Declaration
protected ILambdaFinalizerDependencyProvider Provider { get; }
Property Value
Type Description
ILambdaFinalizerDependencyProvider

The ILambdaFinalizerDependencyProvider instance.

Methods

CreateDeploymentAsync(FinalizerProperties, CancellationToken)

The CreateDeploymentAsync(FinalizerProperties, CancellationToken) method is invoked when the LambdaSharp module is first created.

Declaration
public virtual async Task CreateDeploymentAsync(FinalizerProperties request, CancellationToken cancellationToken)
Parameters
Type Name Description
FinalizerProperties request

The FinalizerProperties instance with the new deployment information.

System.Threading.CancellationToken cancellationToken

The token to monitor for cancellation requests.

Returns
Type Description
System.Threading.Tasks.Task

The task object representing the asynchronous operation.

DeleteDeploymentAsync(FinalizerProperties, CancellationToken)

The CreateDeploymentAsync(FinalizerProperties, CancellationToken) method is invoked when the LambdaSharp module is being torn down.

Declaration
public virtual async Task DeleteDeploymentAsync(FinalizerProperties current, CancellationToken cancellationToken)
Parameters
Type Name Description
FinalizerProperties current

The FinalizerProperties instance with the current deployment information.

System.Threading.CancellationToken cancellationToken

The token to monitor for cancellation requests.

Returns
Type Description
System.Threading.Tasks.Task

The task object representing the asynchronous operation.

ProcessCreateResourceAsync(Request<FinalizerProperties>, CancellationToken)

The ProcessCreateResourceAsync(Request<FinalizerProperties>, CancellationToken) method is invoked when AWS CloudFormation attempts to create a custom resource.

Declaration
public sealed override async Task<Response<FinalizerAttributes>> ProcessCreateResourceAsync(Request<FinalizerProperties> request, CancellationToken cancellationToken)
Parameters
Type Name Description
Request<FinalizerProperties> request

The CloudFormation request instance.

System.Threading.CancellationToken cancellationToken

The token to monitor for cancellation requests.

Returns
Type Description
System.Threading.Tasks.Task<Response<FinalizerAttributes>>

The task object representing the asynchronous operation.

Overrides
LambdaSharp.CustomResource.ALambdaCustomResourceFunction<LambdaSharp.Finalizer.FinalizerProperties, LambdaSharp.Finalizer.FinalizerAttributes>.ProcessCreateResourceAsync(LambdaSharp.CustomResource.Request<LambdaSharp.Finalizer.FinalizerProperties>, System.Threading.CancellationToken)
Remarks

This method cannot be overridden.

ProcessDeleteResourceAsync(Request<FinalizerProperties>, CancellationToken)

The ProcessDeleteResourceAsync(Request<FinalizerProperties>, CancellationToken) method is invoked when AWS CloudFormation attempts to delete a custom resource.

Declaration
public sealed override async Task<Response<FinalizerAttributes>> ProcessDeleteResourceAsync(Request<FinalizerProperties> request, CancellationToken cancellationToken)
Parameters
Type Name Description
Request<FinalizerProperties> request

The CloudFormation request instance.

System.Threading.CancellationToken cancellationToken

The token to monitor for cancellation requests.

Returns
Type Description
System.Threading.Tasks.Task<Response<FinalizerAttributes>>

The task object representing the asynchronous operation.

Overrides
LambdaSharp.CustomResource.ALambdaCustomResourceFunction<LambdaSharp.Finalizer.FinalizerProperties, LambdaSharp.Finalizer.FinalizerAttributes>.ProcessDeleteResourceAsync(LambdaSharp.CustomResource.Request<LambdaSharp.Finalizer.FinalizerProperties>, System.Threading.CancellationToken)
Remarks

This method cannot be overridden.

ProcessUpdateResourceAsync(Request<FinalizerProperties>, CancellationToken)

The ProcessUpdateResourceAsync(Request<FinalizerProperties>, CancellationToken) method is invoked when AWS CloudFormation attempts to update a custom resource.

Declaration
public sealed override async Task<Response<FinalizerAttributes>> ProcessUpdateResourceAsync(Request<FinalizerProperties> request, CancellationToken cancellationToken)
Parameters
Type Name Description
Request<FinalizerProperties> request

The CloudFormation request instance.

System.Threading.CancellationToken cancellationToken

The token to monitor for cancellation requests.

Returns
Type Description
System.Threading.Tasks.Task<Response<FinalizerAttributes>>

The task object representing the asynchronous operation.

Overrides
LambdaSharp.CustomResource.ALambdaCustomResourceFunction<LambdaSharp.Finalizer.FinalizerProperties, LambdaSharp.Finalizer.FinalizerAttributes>.ProcessUpdateResourceAsync(LambdaSharp.CustomResource.Request<LambdaSharp.Finalizer.FinalizerProperties>, System.Threading.CancellationToken)
Remarks

This method cannot be overridden.

UpdateDeploymentAsync(FinalizerProperties, FinalizerProperties, CancellationToken)

The CreateDeploymentAsync(FinalizerProperties, CancellationToken) method is invoked when the LambdaSharp module is being updated.

Declaration
public virtual async Task UpdateDeploymentAsync(FinalizerProperties current, FinalizerProperties previous, CancellationToken cancellationToken)
Parameters
Type Name Description
FinalizerProperties current

The FinalizerProperties instance with the next deployment information.

FinalizerProperties previous

The FinalizerProperties instance with the previous deployment information.

System.Threading.CancellationToken cancellationToken

The token to monitor for cancellation requests.

Returns
Type Description
System.Threading.Tasks.Task

The task object representing the asynchronous operation.

Implements

ILambdaSharpLogger
In This Article
Back to top Generated by DocFX