internal class LambdaFunction()

in playground/Lambda/ToUpperLambdaFunctionExecutable/LambdaFunction.cs [11:29]


internal class LambdaFunction(TracerProvider traceProvider) : BackgroundService
{
    protected override async Task ExecuteAsync(CancellationToken stoppingToken)
    {
        await LambdaBootstrapBuilder.Create<string, string>(TracingLambdaHandler, new DefaultLambdaJsonSerializer())
            .Build()
            .RunAsync(stoppingToken);
    }

    private string TracingLambdaHandler(string input, ILambdaContext context)
            => AWSLambdaWrapper.Trace(traceProvider, LambdaHandler, input, context);

    private string LambdaHandler(string input, ILambdaContext context)
    {
        context.Logger.LogDebug("Performing ToUpper for {input}", input);

        return input.ToUpper();
    }
}