You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2010/02/18 07:55:47 UTC
svn commit: r911265 - in /camel/trunk/components/camel-mail/src:
main/java/org/apache/camel/component/mail/
test/java/org/apache/camel/component/mail/
Author: davsclaus
Date: Thu Feb 18 06:55:46 2010
New Revision: 911265
URL: http://svn.apache.org/viewvc?rev=911265&view=rev
Log:
CAMEL-2467: Applied patch 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/main/java/org/apache/camel/component/mail/MailConfiguration.java
camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/FromFileSendMailTest.java
camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailComponentTest.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=911265&r1=911264&r2=911265&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 Thu Feb 18 06:55:46 2010
@@ -87,6 +87,13 @@
throw new IllegalArgumentException("The mail message does not have any recipients set.");
}
+ // set the subject if it was passed in as an option in the uri. Note: if it is in both the URI
+ // and headers the headers win.
+ String subject = endpoint.getConfiguration().getSubject();
+ if (subject != null) {
+ mimeMessage.setHeader("Subject", subject);
+ }
+
// append the rest of the headers (no recipients) that could be subject, reply-to etc.
appendHeadersFromCamelMessage(mimeMessage, endpoint.getConfiguration(), exchange);
Modified: camel/trunk/components/camel-mail/src/main/java/org/apache/camel/component/mail/MailConfiguration.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-mail/src/main/java/org/apache/camel/component/mail/MailConfiguration.java?rev=911265&r1=911264&r2=911265&view=diff
==============================================================================
--- camel/trunk/components/camel-mail/src/main/java/org/apache/camel/component/mail/MailConfiguration.java (original)
+++ camel/trunk/components/camel-mail/src/main/java/org/apache/camel/component/mail/MailConfiguration.java Thu Feb 18 06:55:46 2010
@@ -44,6 +44,7 @@
private int port = -1;
private String username;
private String password;
+ private String subject;
private Session session;
private String defaultEncoding;
private String from = MailConstants.MAIL_DEFAULT_FROM;
@@ -277,6 +278,14 @@
this.password = password;
}
+ public String getSubject() {
+ return subject;
+ }
+
+ public void setSubject(String subject) {
+ this.subject = subject;
+ }
+
public int getPort() {
return port;
}
Modified: camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/FromFileSendMailTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/FromFileSendMailTest.java?rev=911265&r1=911264&r2=911265&view=diff
==============================================================================
--- camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/FromFileSendMailTest.java (original)
+++ camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/FromFileSendMailTest.java Thu Feb 18 06:55:46 2010
@@ -45,6 +45,8 @@
assertEquals(1, mailbox.size());
Object body = mailbox.get(0).getContent();
assertEquals("Hi how are you", body);
+ Object subject = mailbox.get(0).getSubject();
+ assertEquals("Hello World", subject);
}
@Override
Modified: camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailComponentTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailComponentTest.java?rev=911265&r1=911264&r2=911265&view=diff
==============================================================================
--- camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailComponentTest.java (original)
+++ camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailComponentTest.java Thu Feb 18 06:55:46 2010
@@ -262,6 +262,17 @@
assertEquals(false, config.isDebugMode());
}
+ @Test
+ public void testSMTPEndpointWithSubjectOption() throws Exception {
+ MailEndpoint endpoint = resolveMandatoryEndpoint("smtp://myhost:25?subject=hello");
+ MailConfiguration config = endpoint.getConfiguration();
+ assertEquals("getProtocol()", "smtp", config.getProtocol());
+ assertEquals("getHost()", "myhost", config.getHost());
+ assertEquals("getPort()", 25, config.getPort());
+ assertEquals("getSubject()", "hello", config.getSubject());
+ assertEquals(false, config.isDebugMode());
+ }
+
@Override
protected MailEndpoint resolveMandatoryEndpoint(String uri) {
Endpoint endpoint = super.resolveMandatoryEndpoint(uri);