diff --git a/aws-lambda-java-events/README.md b/aws-lambda-java-events/README.md index 43c25d76..a7ce2c24 100644 --- a/aws-lambda-java-events/README.md +++ b/aws-lambda-java-events/README.md @@ -23,6 +23,7 @@ * `CognitoEvent` * `CognitoUserPoolCreateAuthChallengeEvent` * `CognitoUserPoolCustomMessageEvent` +* `CognitoUserPoolCustomSMSSenderEvent` * `CognitoUserPoolDefineAuthChallengeEvent` * `CognitoUserPoolEvent` * `CognitoUserPoolMigrateUserEvent` diff --git a/aws-lambda-java-events/src/main/java/com/amazonaws/services/lambda/runtime/events/CognitoUserPoolCustomSMSSenderEvent.java b/aws-lambda-java-events/src/main/java/com/amazonaws/services/lambda/runtime/events/CognitoUserPoolCustomSMSSenderEvent.java new file mode 100644 index 00000000..71d4df5d --- /dev/null +++ b/aws-lambda-java-events/src/main/java/com/amazonaws/services/lambda/runtime/events/CognitoUserPoolCustomSMSSenderEvent.java @@ -0,0 +1,77 @@ +/* Copyright 2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. */ + +package com.amazonaws.services.lambda.runtime.events; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.ToString; + +import java.util.Map; + +/** + * Represent the class for the Cognito User Pool Custom SMS Sender Lambda Trigger + * + * See Custom SMS Sender Lambda Trigger + * + * + * @author Saath Satheeshkumar + */ +@Data +@EqualsAndHashCode(callSuper = true) +@NoArgsConstructor +@ToString(callSuper = true) +public class CognitoUserPoolCustomSMSSenderEvent extends CognitoUserPoolEvent { + /** + * The request from the Amazon Cognito service. + */ + private Request request; + + /** + * The response from your Lambda trigger. + */ + private Response response; + + @Builder(setterPrefix = "with") + public CognitoUserPoolCustomSMSSenderEvent( + String version, + String triggerSource, + String region, + String userPoolId, + String userName, + CallerContext callerContext, + Request request, + Response response) { + super(version, triggerSource, region, userPoolId, userName, callerContext); + this.request = request; + this.response = response; + } + + @Data + @EqualsAndHashCode(callSuper = true) + @NoArgsConstructor + @ToString(callSuper = true) + public static class Request extends CognitoUserPoolEvent.Request { + + private String code; + private String type; + private Map clientMetadata; + + @Builder(setterPrefix = "with") + public Request(Map userAttributes, String code, String type, Map clientMetadata) { + super(userAttributes); + this.code = code; + this.type = type; + this.clientMetadata = clientMetadata; + } + } + + @Data + @AllArgsConstructor + @Builder(setterPrefix = "with") + @NoArgsConstructor + public static class Response { + } +}