You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ha...@apache.org on 2010/10/06 05:53:23 UTC
svn commit: r1004889 - in /camel/trunk/components/camel-mail/src:
main/java/org/apache/camel/component/mail/MailBinding.java
test/java/org/apache/camel/component/mail/MailMultipleRecipientsTest.java
Author: hadrian
Date: Wed Oct 6 03:53:22 2010
New Revision: 1004889
URL: http://svn.apache.org/viewvc?rev=1004889&view=rev
Log:
CAMEL-3199. Patch applied with thanks to Tracy Snell
Modified:
camel/trunk/components/camel-mail/src/main/java/org/apache/camel/component/mail/MailBinding.java
camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailMultipleRecipientsTest.java
Modified: camel/trunk/components/camel-mail/src/main/java/org/apache/camel/component/mail/MailBinding.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-mail/src/main/java/org/apache/camel/component/mail/MailBinding.java?rev=1004889&r1=1004888&r2=1004889&view=diff
==============================================================================
--- camel/trunk/components/camel-mail/src/main/java/org/apache/camel/component/mail/MailBinding.java (original)
+++ camel/trunk/components/camel-mail/src/main/java/org/apache/camel/component/mail/MailBinding.java Wed Oct 6 03:53:22 2010
@@ -554,7 +554,8 @@ public class MailBinding {
throws MessagingException {
// we support that multi recipient can be given as a string separated by comma or semicolon
- String[] lines = recipient.split("[,;]");
+ // regex ignores comma and semicolon inside of double quotes
+ String[] lines = recipient.split("[,;]++(?=(?:(?:[^\\\"]*+\\\"){2})*+[^\\\"]*+$)");
for (String line : lines) {
line = line.trim();
mimeMessage.addRecipients(asRecipientType(type), line);
Modified: camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailMultipleRecipientsTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailMultipleRecipientsTest.java?rev=1004889&r1=1004888&r2=1004889&view=diff
==============================================================================
--- camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailMultipleRecipientsTest.java (original)
+++ camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailMultipleRecipientsTest.java Wed Oct 6 03:53:22 2010
@@ -37,12 +37,13 @@ public class MailMultipleRecipientsTest
// START SNIPPET: e1
Map<String, Object> headers = new HashMap<String, Object>();
// test with both comma and semi colon as Camel supports both kind of separators
- headers.put("to", "claus@localhost, willem@localhost ; hadrian@localhost");
+ headers.put("to", "claus@localhost, willem@localhost ; hadrian@localhost, \"Snell, Tracy\" <tr...@localhost>");
headers.put("cc", "james@localhost");
assertMailbox("claus");
assertMailbox("willem");
assertMailbox("hadrian");
+ assertMailbox("tracy");
template.sendBodyAndHeaders("smtp://localhost", "Hello World", headers);
// END SNIPPET: e1
@@ -81,6 +82,8 @@ public class MailMultipleRecipientsTest
from("pop3://willem@localhost?consumer.delay=1000").to("mock:willem");
from("pop3://hadrian@localhost?consumer.delay=1000").to("mock:hadrian");
+
+ from("pop3://tracy@localhost?consumer.delay=1000").to("mock:tracy");
}
};
}