From e0045bb212eb9528a03c00bf6e5160b1dca439d7 Mon Sep 17 00:00:00 2001 From: Tim Chamberlain Date: Thu, 6 Mar 2025 16:28:51 -0600 Subject: [PATCH] updated ses sender to consider adding label to from if provided --- .../metadata/messaging/ses/SendSESAction.java | 31 ++++++++++++++++--- 1 file changed, 27 insertions(+), 4 deletions(-) diff --git a/qqq-backend-core/src/main/java/com/kingsrook/qqq/backend/core/model/metadata/messaging/ses/SendSESAction.java b/qqq-backend-core/src/main/java/com/kingsrook/qqq/backend/core/model/metadata/messaging/ses/SendSESAction.java index 53e13f54..f3b3e2de 100644 --- a/qqq-backend-core/src/main/java/com/kingsrook/qqq/backend/core/model/metadata/messaging/ses/SendSESAction.java +++ b/qqq-backend-core/src/main/java/com/kingsrook/qqq/backend/core/model/metadata/messaging/ses/SendSESAction.java @@ -216,11 +216,16 @@ public class SendSESAction { LOG.warn("More than one FROM value was found, will send using the first one found [" + partyList.get(0).getAddress() + "]."); } + Party fromParty = partyList.get(0); + if(fromParty.getAddress() == null) + { + throw (new QException("Cannot send SES message because a FROM address was not provided.")); + } ///////////////////////////// // return the from address // ///////////////////////////// - return (partyList.get(0).getAddress()); + return (getFullEmailAddress(fromParty)); } @@ -267,15 +272,15 @@ public class SendSESAction { if(EmailPartyRole.CC.equals(party.getRole())) { - ccList.add(party.getAddress()); + ccList.add(getFullEmailAddress(party)); } else if(EmailPartyRole.BCC.equals(party.getRole())) { - bccList.add(party.getAddress()); + bccList.add(getFullEmailAddress(party)); } else if(party.getRole() == null || PartyRole.Default.DEFAULT.equals(party.getRole()) || EmailPartyRole.TO.equals(party.getRole())) { - toList.add(party.getAddress()); + toList.add(getFullEmailAddress(party)); } else { @@ -332,4 +337,22 @@ public class SendSESAction return amazonSES; } + + + + /******************************************************************************* + ** + *******************************************************************************/ + private String getFullEmailAddress(Party party) + { + if(party.getLabel() != null) + { + return (party.getLabel() + " <" + party.getAddress() + ">"); + } + + ///////////////////////////// + // return the from address // + ///////////////////////////// + return (party.getAddress()); + } }