Author: davsclaus
Date: Thu May 8 21:56:58 2008
New Revision: 654684
URL: http://svn.apache.org/viewvc?rev=654684&view=rev
Log:
CAMEL-496
- Default MailConsumer delay is now 60 seconds instead of 500 millis.
- Updated unit tests to use different mailboxes to have a clean mailbox for
each test
Added:
activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailDefaultDelayForMailConsumeTest.java
(with props)
Modified:
activemq/camel/trunk/components/camel-mail/src/main/java/org/apache/camel/component/mail/MailConsumer.java
activemq/camel/trunk/components/camel-mail/src/main/java/org/apache/camel/component/mail/MailEndpoint.java
activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailAttachmentTest.java
activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailFetchSizeTest.java
activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailFetchSizeZeroTest.java
activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailMessageTest.java
activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailProcessOnlyUnseenMessagesTest.java
activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailRecipientsTest.java
activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailRouteTest.java
activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailSubjectTest.java
activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MimeMessageConsumeTest.java
Modified:
activemq/camel/trunk/components/camel-mail/src/main/java/org/apache/camel/component/mail/MailConsumer.java
URL:
http://svn.apache.org/viewvc/activemq/camel/trunk/components/camel-mail/src/main/java/org/apache/camel/component/mail/MailConsumer.java?rev=654684&r1=654683&r2=654684&view=diff
==============================================================================
---
activemq/camel/trunk/components/camel-mail/src/main/java/org/apache/camel/component/mail/MailConsumer.java
(original)
+++
activemq/camel/trunk/components/camel-mail/src/main/java/org/apache/camel/component/mail/MailConsumer.java
Thu May 8 21:56:58 2008
@@ -38,6 +38,8 @@
*/
public class MailConsumer extends ScheduledPollConsumer<MailExchange> {
private static final transient Log LOG =
LogFactory.getLog(MailConsumer.class);
+ public static final long DEFAULT_CONSUMER_DELAY = 60 * 1000L;
+
private final MailEndpoint endpoint;
private final JavaMailSenderImpl sender;
private Folder folder;
Modified:
activemq/camel/trunk/components/camel-mail/src/main/java/org/apache/camel/component/mail/MailEndpoint.java
URL:
http://svn.apache.org/viewvc/activemq/camel/trunk/components/camel-mail/src/main/java/org/apache/camel/component/mail/MailEndpoint.java?rev=654684&r1=654683&r2=654684&view=diff
==============================================================================
---
activemq/camel/trunk/components/camel-mail/src/main/java/org/apache/camel/component/mail/MailEndpoint.java
(original)
+++
activemq/camel/trunk/components/camel-mail/src/main/java/org/apache/camel/component/mail/MailEndpoint.java
Thu May 8 21:56:58 2008
@@ -67,7 +67,12 @@
*/
public Consumer<MailExchange> createConsumer(Processor processor,
JavaMailSenderImpl sender) throws Exception {
MailConsumer answer = new MailConsumer(this, processor, sender);
+
+ // ScheduledPollConsumer default delay is 500 millis and that is too
often for polling a mailbox,
+ // so we override with a new default value. End user can override this
value by providing a consumer.delay parameter
+ answer.setDelay(MailConsumer.DEFAULT_CONSUMER_DELAY);
configureConsumer(answer);
+
return answer;
}
Modified:
activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailAttachmentTest.java
URL:
http://svn.apache.org/viewvc/activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailAttachmentTest.java?rev=654684&r1=654683&r2=654684&view=diff
==============================================================================
---
activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailAttachmentTest.java
(original)
+++
activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailAttachmentTest.java
Thu May 8 21:56:58 2008
@@ -81,7 +81,7 @@
protected RouteBuilder createRouteBuilder() throws Exception {
return new RouteBuilder() {
public void configure() throws Exception {
- from("pop3://[EMAIL PROTECTED]").to("mock:result");
+ from("pop3://[EMAIL
PROTECTED]&consumer.delay=1000").to("mock:result");
}
};
}
Added:
activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailDefaultDelayForMailConsumeTest.java
URL:
http://svn.apache.org/viewvc/activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailDefaultDelayForMailConsumeTest.java?rev=654684&view=auto
==============================================================================
---
activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailDefaultDelayForMailConsumeTest.java
(added)
+++
activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailDefaultDelayForMailConsumeTest.java
Thu May 8 21:56:58 2008
@@ -0,0 +1,55 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.component.mail;
+
+import org.apache.camel.ContextTestSupport;
+import org.apache.camel.component.mock.MockEndpoint;
+import org.apache.camel.builder.RouteBuilder;
+
+/**
+ * Unit test for testing mail polling is happening according to the default
poll interval.
+ */
+public class MailDefaultDelayForMailConsumeTest extends ContextTestSupport {
+
+ public void testConsuming() throws Exception {
+ template.sendBody("smtp://[EMAIL PROTECTED]", "Hello London");
+ MockEndpoint mock = getMockEndpoint("mock:result");
+ mock.expectedBodiesReceived("Hello London");
+ // first poll should happend immediately
+ mock.setResultWaitTime(1000);
+ mock.assertIsSatisfied();
+
+ long start = System.currentTimeMillis();
+ mock.reset();
+ template.sendBody("smtp://[EMAIL PROTECTED]", "Hello Paris");
+ mock.expectedBodiesReceived("Hello Paris");
+ // poll next mail and that is should be done within the default delay
+ 2 sec slack
+ mock.setResultWaitTime(MailConsumer.DEFAULT_CONSUMER_DELAY + 2000L);
+ mock.assertIsSatisfied();
+ long delta = System.currentTimeMillis() - start;
+ assertTrue("Camel should not default poll the mailbox to often", delta
> MailConsumer.DEFAULT_CONSUMER_DELAY - 1000L);
+ }
+
+
+ protected RouteBuilder createRouteBuilder() throws Exception {
+ return new RouteBuilder() {
+ public void configure() throws Exception {
+ from("pop3://[EMAIL PROTECTED]").to("mock:result");
+ }
+ };
+ }
+}
Propchange:
activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailDefaultDelayForMailConsumeTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange:
activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailDefaultDelayForMailConsumeTest.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Modified:
activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailFetchSizeTest.java
URL:
http://svn.apache.org/viewvc/activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailFetchSizeTest.java?rev=654684&r1=654683&r2=654684&view=diff
==============================================================================
---
activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailFetchSizeTest.java
(original)
+++
activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailFetchSizeTest.java
Thu May 8 21:56:58 2008
@@ -34,7 +34,7 @@
public void testFetchSize() throws Exception {
prepareMailbox();
- Mailbox mailbox = Mailbox.get("[EMAIL PROTECTED]");
+ Mailbox mailbox = Mailbox.get("[EMAIL PROTECTED]");
assertEquals(5, mailbox.size());
MockEndpoint mock = getMockEndpoint("mock:result");
@@ -67,9 +67,10 @@
// connect to mailbox
JavaMailSenderImpl sender = new JavaMailSenderImpl();
Store store = sender.getSession().getStore("pop3");
- store.connect("localhost", 25, "james", "secret");
+ store.connect("localhost", 25, "jones", "secret");
Folder folder = store.getFolder("INBOX");
folder.open(Folder.READ_WRITE);
+ folder.expunge();
// inserts 5 new messages
Message[] messages = new Message[5];
@@ -84,7 +85,7 @@
protected RouteBuilder createRouteBuilder() throws Exception {
return new RouteBuilder() {
public void configure() throws Exception {
- from("pop3://[EMAIL
PROTECTED]&fetchSize=2&consumer.delay=5000").to("mock:result");
+ from("pop3://[EMAIL
PROTECTED]&fetchSize=2&consumer.delay=5000").to("mock:result");
}
};
}
Modified:
activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailFetchSizeZeroTest.java
URL:
http://svn.apache.org/viewvc/activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailFetchSizeZeroTest.java?rev=654684&r1=654683&r2=654684&view=diff
==============================================================================
---
activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailFetchSizeZeroTest.java
(original)
+++
activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailFetchSizeZeroTest.java
Thu May 8 21:56:58 2008
@@ -34,7 +34,7 @@
public void testFetchSize() throws Exception {
prepareMailbox();
- Mailbox mailbox = Mailbox.get("[EMAIL PROTECTED]");
+ Mailbox mailbox = Mailbox.get("[EMAIL PROTECTED]");
assertEquals(5, mailbox.size());
MockEndpoint mock = getMockEndpoint("mock:result");
@@ -51,9 +51,10 @@
// connect to mailbox
JavaMailSenderImpl sender = new JavaMailSenderImpl();
Store store = sender.getSession().getStore("pop3");
- store.connect("localhost", 25, "james", "secret");
+ store.connect("localhost", 25, "bill", "secret");
Folder folder = store.getFolder("INBOX");
folder.open(Folder.READ_WRITE);
+ folder.expunge();
// inserts 5 new messages
Message[] messages = new Message[5];
@@ -68,7 +69,7 @@
protected RouteBuilder createRouteBuilder() throws Exception {
return new RouteBuilder() {
public void configure() throws Exception {
- from("pop3://[EMAIL PROTECTED]&fetchSize=0").to("mock:result");
+ from("pop3://[EMAIL
PROTECTED]&fetchSize=0&consumer.delay=1000").to("mock:result");
}
};
}
Modified:
activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailMessageTest.java
URL:
http://svn.apache.org/viewvc/activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailMessageTest.java?rev=654684&r1=654683&r2=654684&view=diff
==============================================================================
---
activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailMessageTest.java
(original)
+++
activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailMessageTest.java
Thu May 8 21:56:58 2008
@@ -37,7 +37,7 @@
private String body = "Hello World!";
public void testMailMessageHandlesMultipleHeaders() throws Exception {
- mimeMessage.setRecipients(Message.RecipientType.TO, new Address[] {new
InternetAddress("[EMAIL PROTECTED]"), new InternetAddress("[EMAIL
PROTECTED]")});
+ mimeMessage.setRecipients(Message.RecipientType.TO, new Address[] {new
InternetAddress("[EMAIL PROTECTED]"), new InternetAddress("[EMAIL
PROTECTED]")});
MailExchange exchange = endpoint.createExchange(mimeMessage);
MailMessage in = exchange.getIn();
@@ -45,17 +45,17 @@
assertEquals("mail body", body, in.getBody());
String to = in.getHeader("TO", String.class);
- assertEquals("should have 2 receivers", "[EMAIL PROTECTED], [EMAIL
PROTECTED]", to);
+ assertEquals("should have 2 receivers", "[EMAIL PROTECTED], [EMAIL
PROTECTED]", to);
}
public void testMailMessageHandlesSingleHeader() throws Exception {
- mimeMessage.setRecipients(Message.RecipientType.TO, new Address[] {new
InternetAddress("[EMAIL PROTECTED]")});
+ mimeMessage.setRecipients(Message.RecipientType.TO, new Address[] {new
InternetAddress("[EMAIL PROTECTED]")});
MailExchange exchange = endpoint.createExchange(mimeMessage);
MailMessage in = exchange.getIn();
Object header = in.getHeader("TO");
String value = assertIsInstanceOf(String.class, header);
- assertEquals("value", "[EMAIL PROTECTED]", value);
+ assertEquals("value", "[EMAIL PROTECTED]", value);
assertEquals("body", body, in.getBody());
}
@@ -64,7 +64,7 @@
protected void setUp() throws Exception {
super.setUp();
- endpoint = resolveMandatoryEndpoint("pop3://[EMAIL
PROTECTED]:30/subject");
+ endpoint = resolveMandatoryEndpoint("pop3://[EMAIL
PROTECTED]:30/subject");
Properties properties = new Properties();
properties.put("mail.smtp.host", "localhost");
Modified:
activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailProcessOnlyUnseenMessagesTest.java
URL:
http://svn.apache.org/viewvc/activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailProcessOnlyUnseenMessagesTest.java?rev=654684&r1=654683&r2=654684&view=diff
==============================================================================
---
activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailProcessOnlyUnseenMessagesTest.java
(original)
+++
activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailProcessOnlyUnseenMessagesTest.java
Thu May 8 21:56:58 2008
@@ -59,6 +59,7 @@
store.connect("localhost", 25, "claus", "secret");
Folder folder = store.getFolder("INBOX");
folder.open(Folder.READ_WRITE);
+ folder.expunge();
// inserts two messages with the SEEN flag
Message[] msg = new Message[2];
@@ -77,7 +78,7 @@
public void configure() throws Exception {
from("direct:a").to("smtp://[EMAIL PROTECTED]");
-
from("imap://localhost?username=claus&password=secret&processOnlyUnseenMessages=true").to("mock:result");
+
from("imap://localhost?username=claus&password=secret&processOnlyUnseenMessages=true&consumer.delay=1000").to("mock:result");
}
};
}
Modified:
activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailRecipientsTest.java
URL:
http://svn.apache.org/viewvc/activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailRecipientsTest.java?rev=654684&r1=654683&r2=654684&view=diff
==============================================================================
---
activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailRecipientsTest.java
(original)
+++
activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailRecipientsTest.java
Thu May 8 21:56:58 2008
@@ -32,7 +32,7 @@
Mailbox inbox = Mailbox.get("[EMAIL PROTECTED]");
Message msg = inbox.get(0);
- assertEquals("[EMAIL PROTECTED]", msg.getFrom()[0].toString());
+ assertEquals("[EMAIL PROTECTED]", msg.getFrom()[0].toString());
assertEquals("[EMAIL PROTECTED]",
msg.getRecipients(Message.RecipientType.TO)[0].toString());
assertEquals("[EMAIL PROTECTED]",
msg.getRecipients(Message.RecipientType.TO)[1].toString());
assertEquals("[EMAIL PROTECTED]",
msg.getRecipients(Message.RecipientType.CC)[0].toString());
@@ -40,7 +40,7 @@
inbox = Mailbox.get("[EMAIL PROTECTED]");
msg = inbox.get(0);
- assertEquals("[EMAIL PROTECTED]", msg.getFrom()[0].toString());
+ assertEquals("[EMAIL PROTECTED]", msg.getFrom()[0].toString());
assertEquals("[EMAIL PROTECTED]",
msg.getRecipients(Message.RecipientType.TO)[0].toString());
assertEquals("[EMAIL PROTECTED]",
msg.getRecipients(Message.RecipientType.TO)[1].toString());
assertEquals("[EMAIL PROTECTED]",
msg.getRecipients(Message.RecipientType.CC)[0].toString());
@@ -48,7 +48,7 @@
inbox = Mailbox.get("[EMAIL PROTECTED]");
msg = inbox.get(0);
- assertEquals("[EMAIL PROTECTED]", msg.getFrom()[0].toString());
+ assertEquals("[EMAIL PROTECTED]", msg.getFrom()[0].toString());
assertEquals("[EMAIL PROTECTED]",
msg.getRecipients(Message.RecipientType.TO)[0].toString());
assertEquals("[EMAIL PROTECTED]",
msg.getRecipients(Message.RecipientType.TO)[1].toString());
assertEquals("[EMAIL PROTECTED]",
msg.getRecipients(Message.RecipientType.CC)[0].toString());
@@ -56,7 +56,7 @@
inbox = Mailbox.get("[EMAIL PROTECTED]");
msg = inbox.get(0);
- assertEquals("[EMAIL PROTECTED]", msg.getFrom()[0].toString());
+ assertEquals("[EMAIL PROTECTED]", msg.getFrom()[0].toString());
assertEquals("[EMAIL PROTECTED]",
msg.getRecipients(Message.RecipientType.TO)[0].toString());
assertEquals("[EMAIL PROTECTED]",
msg.getRecipients(Message.RecipientType.TO)[1].toString());
assertEquals("[EMAIL PROTECTED]",
msg.getRecipients(Message.RecipientType.CC)[0].toString());
@@ -73,7 +73,7 @@
// BCC: [EMAIL PROTECTED]
String recipients = "&[EMAIL PROTECTED],[EMAIL
PROTECTED]&[EMAIL PROTECTED]&[EMAIL PROTECTED]";
- from("direct:a").to("smtp://[EMAIL PROTECTED]&[EMAIL
PROTECTED]" + recipients);
+ from("direct:a").to("smtp://[EMAIL PROTECTED]&[EMAIL
PROTECTED]" + recipients);
// END SNIPPET: e1
}
};
Modified:
activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailRouteTest.java
URL:
http://svn.apache.org/viewvc/activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailRouteTest.java?rev=654684&r1=654683&r2=654684&view=diff
==============================================================================
---
activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailRouteTest.java
(original)
+++
activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailRouteTest.java
Thu May 8 21:56:58 2008
@@ -73,9 +73,9 @@
protected RouteBuilder createRouteBuilder() {
return new RouteBuilder() {
public void configure() {
- from("pop3://[EMAIL PROTECTED]").to("direct:a");
+ from("pop3://[EMAIL PROTECTED]").to("direct:a");
from("direct:a").to("smtp://[EMAIL PROTECTED]", "smtp://[EMAIL
PROTECTED]");
- from("pop3://[EMAIL
PROTECTED]").convertBodyTo(String.class).to("mock:result");
+ from("pop3://[EMAIL
PROTECTED]").convertBodyTo(String.class).to("mock:result");
}
};
}
Modified:
activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailSubjectTest.java
URL:
http://svn.apache.org/viewvc/activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailSubjectTest.java?rev=654684&r1=654683&r2=654684&view=diff
==============================================================================
---
activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailSubjectTest.java
(original)
+++
activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailSubjectTest.java
Thu May 8 21:56:58 2008
@@ -41,10 +41,10 @@
return new RouteBuilder() {
public void configure() throws Exception {
// START SNIPPET: e1
- from("direct:a").setHeader("subject",
subject).to("smtp://[EMAIL PROTECTED]");
+ from("direct:a").setHeader("subject",
subject).to("smtp://[EMAIL PROTECTED]");
// END SNIPPET: e1
-
from("pop3://localhost?username=james&password=secret").to("mock:result");
+
from("pop3://localhost?username=james2&password=secret&consumer.delay=1000").to("mock:result");
}
};
}
Modified:
activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MimeMessageConsumeTest.java
URL:
http://svn.apache.org/viewvc/activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MimeMessageConsumeTest.java?rev=654684&r1=654683&r2=654684&view=diff
==============================================================================
---
activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MimeMessageConsumeTest.java
(original)
+++
activemq/camel/trunk/components/camel-mail/src/test/java/org/apache/camel/component/mail/MimeMessageConsumeTest.java
Thu May 8 21:56:58 2008
@@ -56,7 +56,7 @@
MimeMessage message = new MimeMessage(session);
populateMimeMessageBody(message);
- message.setRecipients(Message.RecipientType.TO, "[EMAIL PROTECTED]");
+ message.setRecipients(Message.RecipientType.TO, "[EMAIL PROTECTED]");
Transport.send(message);
@@ -130,7 +130,7 @@
protected RouteBuilder createRouteBuilder() {
return new RouteBuilder() {
public void configure() {
- from("pop3://[EMAIL
PROTECTED]").convertBodyTo(String.class).to("mock:result");
+ from("pop3://[EMAIL
PROTECTED]").convertBodyTo(String.class).to("mock:result");
}
};
}