@Override
    public EmailCommunicationResult send(final EmailMessageRequest emailRequest) {
        val recipients = emailRequest.getRecipients();

        val destinationBuilder = Destination.builder();
        destinationBuilder.toAddresses(recipients);

        val emailProperties = emailRequest.getEmailProperties();
        destinationBuilder.ccAddresses(emailProperties.getCc());
        destinationBuilder.bccAddresses(emailProperties.getBcc());

        val subject = Content.builder().data(determineEmailSubject(emailRequest, messageSource)).build();
        val body = Body.builder().text(Content.builder().data(emailRequest.getBody()).build()).build();
        val message = Message.builder().body(body).subject(subject).build();

        val emailRequestBuilder = SendEmailRequest
            .builder()
            .destination(destinationBuilder.build())
            .source(emailProperties.getFrom())
            .sourceArn(casProperties.getEmailProvider().getSes().getSourceArn())
            .configurationSetName(casProperties.getEmailProvider().getSes().getConfigurationSetName())
            .message(message);

        FunctionUtils.doIfNotBlank(emailProperties.getReplyTo(),
            __ -> emailRequestBuilder.replyToAddresses(emailProperties.getReplyTo()));

        val sendEmailResult = sesClient.sendEmail(emailRequestBuilder.build());
        return EmailCommunicationResult.builder()
            .success(sendEmailResult.sdkHttpResponse().isSuccessful())
            .to(recipients)
            .body(emailRequest.getBody())
            .details(Map.of("messageId", sendEmailResult.messageId()))
            .build();
    }
This is {@link AmazonSimpleEmailServiceEmailSender}.

@author Misagh Moayyed
@since 7.1.0
support/cas-server-support-aws-ses/src/main/java/org/apereo/cas/mail/AmazonSimpleEmailServiceEmailSender.java