Skip to content
This repository was archived by the owner on Jul 28, 2023. It is now read-only.

Commit 26cb743

Browse files
authored
DKIM fix for sendEmailWithAttachment. (#111)
* Add the the From:, Reply-to, and To: headers to sendEmailWithAttachment. The lack of a From: header breaks DKIM. * Added a null check for sourceEmail in sendEmailWithAttachment, and removed the 'to' param from the test as it was null and isn't necessary for that test to do what it needs to.
1 parent 4234465 commit 26cb743

File tree

2 files changed

+11
-1
lines changed

2 files changed

+11
-1
lines changed

groovy-aws-sdk-ses/src/main/groovy/com/agorapulse/awssdk/ses/AwsSesMailer.groovy

+11
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ import javax.activation.DataHandler
2020
import javax.activation.DataSource
2121
import javax.mail.BodyPart
2222
import javax.mail.Session
23+
import javax.mail.internet.InternetAddress
2324
import javax.mail.internet.MimeBodyPart
2425
import javax.mail.internet.MimeMessage
2526
import javax.mail.internet.MimeMultipart
@@ -76,6 +77,16 @@ class AwsSesMailer {
7677

7778
Session session = Session.getInstance(new Properties())
7879
MimeMessage mimeMessage = new MimeMessage(session)
80+
if (transactionalEmail.sourceEmail) {
81+
mimeMessage.setFrom(new InternetAddress(transactionalEmail.sourceEmail))
82+
}
83+
if (transactionalEmail.replyToEmail) {
84+
InternetAddress[] replyToArray = [new InternetAddress(transactionalEmail.replyToEmail)]
85+
mimeMessage.setReplyTo(replyToArray)
86+
}
87+
transactionalEmail.recipients.each { recipient ->
88+
mimeMessage.addRecipients(javax.mail.Message.RecipientType.TO, new InternetAddress(recipient))
89+
}
7990
def subject = transactionalEmail.subject
8091
mimeMessage.setSubject(subject)
8192
MimeMultipart mimeMultipart = new MimeMultipart()

groovy-aws-sdk-ses/src/test/groovy/com/agorapulse/awssdk/ses/AwsSesMailerSpec.groovy

-1
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,6 @@ class AwsSesMailerSpec extends Specification {
7777
awsSesMailer.mailWithAttachment {
7878
subject subjectStr
7979
htmlBody '<p>This is an example body</p>'
80-
to System.getProperty('TEST_INBOX_EMAIL')
8180
from System.getProperty('TEST_FROM_EMAIL')
8281
attachment {
8382
filepath '/temp/virus.exe'

0 commit comments

Comments
 (0)