Author: veithen
Date: Mon Oct  6 12:11:51 2008
New Revision: 702228

URL: http://svn.apache.org/viewvc?rev=702228&view=rev
Log:
MailTransportSender: Simplified the way BCC addresses are added to the message. 
The change should also avoid the bug described in GERONIMO-4339.

Modified:
    
webservices/commons/trunk/modules/transport/modules/mail/src/main/java/org/apache/axis2/transport/mail/MailTransportSender.java

Modified: 
webservices/commons/trunk/modules/transport/modules/mail/src/main/java/org/apache/axis2/transport/mail/MailTransportSender.java
URL: 
http://svn.apache.org/viewvc/webservices/commons/trunk/modules/transport/modules/mail/src/main/java/org/apache/axis2/transport/mail/MailTransportSender.java?rev=702228&r1=702227&r2=702228&view=diff
==============================================================================
--- 
webservices/commons/trunk/modules/transport/modules/mail/src/main/java/org/apache/axis2/transport/mail/MailTransportSender.java
 (original)
+++ 
webservices/commons/trunk/modules/transport/modules/mail/src/main/java/org/apache/axis2/transport/mail/MailTransportSender.java
 Mon Oct  6 12:11:51 2008
@@ -336,30 +336,21 @@
 
         // set Bcc address/es to any custom addresses set at the transport 
sender level + any
         // custom transport header
-        InternetAddress[] trpBccArr = null;
         if (trpHeaders != null && 
trpHeaders.containsKey(MailConstants.MAIL_HEADER_BCC)) {
-            trpBccArr = InternetAddress.parse((String) 
trpHeaders.get(MailConstants.MAIL_HEADER_BCC));
+            InternetAddress[] bcc =
+                InternetAddress.parse((String) 
trpHeaders.get(MailConstants.MAIL_HEADER_BCC));
             if (log.isDebugEnabled()) {
-                log.debug("Adding Bcc header values " + 
InternetAddress.toString(trpBccArr) +
+                log.debug("Adding Bcc header values " + 
InternetAddress.toString(bcc) +
                         " from transport headers");
             }
-        }
-
-        InternetAddress[] mergedBcc = new InternetAddress[
-            (trpBccArr != null ? trpBccArr.length : 0) +
-            (smtpBccAddresses != null ? smtpBccAddresses.length : 0)];
-        if (trpBccArr != null) {
-            System.arraycopy(trpBccArr, 0, mergedBcc, 0, trpBccArr.length);
+            message.addRecipients(Message.RecipientType.BCC, bcc);
         }
         if (smtpBccAddresses != null) {
             if (log.isDebugEnabled()) {
                 log.debug("Adding Bcc header values " + 
InternetAddress.toString(smtpBccAddresses) +
                         " from transport configuration");
             }
-            System.arraycopy(smtpBccAddresses, 0, mergedBcc, mergedBcc.length, 
smtpBccAddresses.length);
-        }
-        if (mergedBcc != null) {
-            message.setRecipients(Message.RecipientType.BCC, mergedBcc);
+            message.addRecipients(Message.RecipientType.BCC, smtpBccAddresses);
         }
 
         // set subject


Reply via email to