public async Task FunctionHandler()

in Application/s3Trigger/Function.cs [50:90]


        public async Task FunctionHandler(S3Event evnt, ILambdaContext context)
        {
            var bucket = evnt.Records[0].S3.Bucket.Name;
            var key = WebUtility.UrlDecode(evnt.Records[0].S3.Object.Key);

            Console.WriteLine(bucket);
            Console.WriteLine(key);

            var photoData = key.Split("/").Reverse().Take(2).ToArray();

            var photoId = photoData[0];
            var userId = photoData[1];

            Console.WriteLine(photoId);

            var input = new
            {
                Bucket = bucket,
                SourceKey = key,
                PhotoId = photoId,
                UserId = userId,
                TablePhoto = Environment.GetEnvironmentVariable(PHOTO_TABLE)
            };

            var stepResponse = await _stepClient.StartExecutionAsync(new StartExecutionRequest
            {
                StateMachineArn = StateMachineArn,
                Name = $"{MakeSafeName(key, 80)}",
                Input = JsonConvert.SerializeObject(input)
            }).ConfigureAwait(false);

            var photo = new Photo
            {
                PhotoId = photoId,
                SfnExecutionArn = stepResponse.ExecutionArn,
                ProcessingStatus = ProcessingStatus.Running,
                UpdatedDate = DateTime.UtcNow
            };

            await _ddbContext.SaveAsync(photo).ConfigureAwait(false);
        }