use of javax.mail.Message in project camel by apache.
the class MailSearchTermTest method prepareMailbox.
private void prepareMailbox() throws Exception {
// connect to mailbox
Mailbox.clearAll();
JavaMailSender sender = new DefaultJavaMailSender();
Store store = sender.getSession().getStore("pop3");
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[6];
messages[0] = new MimeMessage(sender.getSession());
messages[0].setSubject("Apache Camel rocks");
messages[0].setText("I like riding the Camel");
messages[0].setHeader("Message-ID", "0");
messages[0].setFrom(new InternetAddress("someone@somewhere.com"));
messages[1] = new MimeMessage(sender.getSession());
messages[1].setSubject("Order");
messages[1].setText("Ordering Camel in Action");
messages[1].setHeader("Message-ID", "1");
messages[1].setFrom(new InternetAddress("dude@somewhere.com"));
messages[2] = new MimeMessage(sender.getSession());
messages[2].setSubject("Order");
messages[2].setText("Ordering ActiveMQ in Action");
messages[2].setHeader("Message-ID", "2");
messages[2].setFrom(new InternetAddress("dude@somewhere.com"));
messages[3] = new MimeMessage(sender.getSession());
messages[3].setSubject("Buy pharmacy");
messages[3].setText("This is spam");
messages[3].setHeader("Message-ID", "3");
messages[3].setFrom(new InternetAddress("spam@me.com"));
messages[4] = new MimeMessage(sender.getSession());
messages[4].setSubject("Beers tonight?");
messages[4].setText("We meet at 7pm the usual place");
messages[4].setHeader("Message-ID", "4");
messages[4].setFrom(new InternetAddress("barney@simpsons.com"));
messages[5] = new MimeMessage(sender.getSession());
messages[5].setSubject("Spambot attack");
messages[5].setText("I am attaching you");
messages[5].setHeader("Message-ID", "5");
messages[5].setFrom(new InternetAddress("spambot@me.com"));
folder.appendMessages(messages);
folder.close(true);
}
use of javax.mail.Message in project camel by apache.
the class MailSearchTermUriConfigLast24HoursTest method prepareMailbox.
private void prepareMailbox() throws Exception {
// connect to mailbox
Mailbox.clearAll();
JavaMailSender sender = new DefaultJavaMailSender();
Store store = sender.getSession().getStore("pop3");
store.connect("localhost", 25, "bill", "secret");
Folder folder = store.getFolder("INBOX");
folder.open(Folder.READ_WRITE);
folder.expunge();
long twoDaysAgo = new Date().getTime() - 2 * 24 * 60 * 60 * 1000L;
long twentyHoursAgo = new Date().getTime() - 1 * 20 * 60 * 60 * 1000L;
long oneHourAgo = new Date().getTime() - 1 * 1 * 60 * 60 * 1000L;
// inserts 5 new messages
Message[] messages = new Message[6];
messages[0] = new MimeMessage(sender.getSession());
messages[0].setSubject("Apache Camel rocks");
messages[0].setText("I like riding the Camel");
messages[0].setHeader("Message-ID", "0");
messages[0].setFrom(new InternetAddress("someone@somewhere.com"));
messages[0].setSentDate(new Date(twoDaysAgo));
messages[1] = new MimeMessage(sender.getSession());
messages[1].setSubject("Order");
messages[1].setText("Ordering Camel in Action");
messages[1].setFrom(new InternetAddress("dude@somewhere.com"));
messages[1].setHeader("Message-ID", "1");
messages[1].setSentDate(new Date(twoDaysAgo));
messages[2] = new MimeMessage(sender.getSession());
messages[2].setSubject("Order");
messages[2].setText("Ordering ActiveMQ in Action");
messages[2].setHeader("Message-ID", "2");
messages[2].setFrom(new InternetAddress("dude@somewhere.com"));
messages[2].setSentDate(new Date(twentyHoursAgo));
messages[3] = new MimeMessage(sender.getSession());
messages[3].setSubject("Buy pharmacy");
messages[3].setText("This is spam");
messages[3].setHeader("Message-ID", "3");
messages[3].setFrom(new InternetAddress("spam@me.com"));
messages[3].setSentDate(new Date(twentyHoursAgo));
messages[4] = new MimeMessage(sender.getSession());
messages[4].setSubject("Beers tonight?");
messages[4].setText("We meet at 7pm the usual place");
messages[4].setHeader("Message-ID", "4");
messages[4].setFrom(new InternetAddress("barney@simpsons.com"));
messages[4].setSentDate(new Date(oneHourAgo));
messages[5] = new MimeMessage(sender.getSession());
messages[5].setSubject("Spambot attack");
messages[5].setText("I am attaching you");
messages[5].setHeader("Message-ID", "5");
messages[5].setFrom(new InternetAddress("spambot@me.com"));
messages[5].setSentDate(new Date());
messages[5].setSentDate(new Date(oneHourAgo));
folder.appendMessages(messages);
folder.close(true);
}
use of javax.mail.Message in project camel by apache.
the class MailUsingOwnComponentTest method testUsingOwnMailComponent.
@Test
public void testUsingOwnMailComponent() throws Exception {
Mailbox.clearAll();
template.sendBodyAndHeader("mailbox:foo", "Hello Mailbox", "to", "davsclaus@apache.org");
Mailbox box = Mailbox.get("davsclaus@apache.org");
Message msg = box.get(0);
assertEquals("davsclaus@apache.org", msg.getRecipients(Message.RecipientType.TO)[0].toString());
}
use of javax.mail.Message in project camel by apache.
the class MultipleDestinationConsumeTest method testSendAndReceiveMails.
@Test
public void testSendAndReceiveMails() throws Exception {
Mailbox.clearAll();
MockEndpoint resultEndpoint = getMockEndpoint("mock:result");
resultEndpoint.expectedMinimumMessageCount(1);
MimeMessage message = new MimeMessage(mailSession);
message.setText(body);
message.setRecipients(Message.RecipientType.TO, new Address[] { new InternetAddress("james@localhost"), new InternetAddress("bar@localhost") });
Transport.send(message);
// lets test the receive worked
resultEndpoint.assertIsSatisfied(100000);
Exchange exchange = resultEndpoint.getReceivedExchanges().get(0);
org.apache.camel.Message in = exchange.getIn();
assertNotNull("Should have headers", in.getHeaders());
MailMessage msg = (MailMessage) exchange.getIn();
Message inMessage = msg != null ? msg.getMessage() : null;
assertNotNull("In message has no JavaMail message!", inMessage);
String text = in.getBody(String.class);
assertEquals("mail body", body, text);
// need to use iterator as some mail impl returns String[] and others a single String with comma as separator
// so we let Camel create an iterator so we can use the same code for the test
Object to = in.getHeader("TO");
Iterator<String> it = CastUtils.cast(ObjectHelper.createIterator(to));
int i = 0;
while (it.hasNext()) {
if (i == 0) {
assertEquals("james@localhost", it.next().trim());
} else {
assertEquals("bar@localhost", it.next().trim());
}
i++;
}
Enumeration<Header> iter = CastUtils.cast(inMessage.getAllHeaders());
while (iter.hasMoreElements()) {
Header header = iter.nextElement();
String[] value = message.getHeader(header.getName());
log.debug("Header: " + header.getName() + " has value: " + ObjectHelper.asString(value));
}
}
use of javax.mail.Message in project camel by apache.
the class MailIdempotentRepositoryTest method prepareMailbox.
private void prepareMailbox() throws Exception {
// connect to mailbox
Mailbox.clearAll();
JavaMailSender sender = new DefaultJavaMailSender();
Store store = sender.getSession().getStore("pop3");
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];
for (int i = 0; i < 5; i++) {
messages[i] = new MimeMessage(sender.getSession());
messages[i].setText("Message " + i);
messages[i].setHeader("Message-ID", "myuid-" + i);
}
folder.appendMessages(messages);
folder.close(true);
}
Aggregations