private void retrySendMessage(final JavaxMailSender s, final Message message) throws MessagingException { int attempt; for (attempt = 0; attempt < MAX_EMAIL_RETRY_COUNT; attempt++) { try { s.sendMessage(message, message.getRecipients(Message.RecipientType.TO)); return; } catch (final Exception e) { this.logger.error("Sending email messages failed, attempt: " + attempt, e); } } s.close(); throw new MessagingException("Failed to send email messages after " + attempt + " attempts."); }
public JavaxMailSender createSender(final Properties props) throws NoSuchProviderException { return new JavaxMailSender(props); } }
final Message message = sender.createMessage(); sender.close();
@Before public void setUp() throws Exception { this.creator = mock(EmailMessageCreator.class); this.mailSender = mock(JavaxMailSender.class); this.mimeMessage = mock(Message.class); this.addresses = new Address[]{new InternetAddress(this.toAddr, false)}; when(this.creator.createSender(any())).thenReturn(this.mailSender); when(this.mailSender.createMessage()).thenReturn(this.mimeMessage); when(this.mimeMessage.getRecipients(Message.RecipientType.TO)).thenReturn(this.addresses); this.em = new EmailMessage(this.host, this.port, this.user, this.password, this.creator); }
@Test public void testSendEmail() throws Exception { this.em.setTLS("true"); this.em.addToAddress(this.toAddr); this.em.setFromAddress(this.sender); this.em.setSubject("azkaban test email"); this.em.setBody("azkaban test email"); this.em.sendEmail(); verify(this.mimeMessage).addRecipient(RecipientType.TO, this.addresses[0]); verify(this.mailSender).sendMessage(this.mimeMessage, this.addresses); }
private void retryConnectToSMTPServer(final JavaxMailSender s) throws MessagingException { int attempt; for (attempt = 0; attempt < MAX_EMAIL_RETRY_COUNT; attempt++) { try { connectToSMTPServer(s); return; } catch (final Exception e) { this.logger.error("Connecting to SMTP server failed, attempt: " + attempt, e); } } s.close(); throw new MessagingException("Failed to connect to SMTP server after " + attempt + " attempts."); }
final Message message = sender.createMessage(); sender.close();
private void retryConnectToSMTPServer(final JavaxMailSender s) throws MessagingException { int attempt; for (attempt = 0; attempt < MAX_EMAIL_RETRY_COUNT; attempt++) { try { connectToSMTPServer(s); return; } catch (final Exception e) { this.logger.error("Connecting to SMTP server failed, attempt: " + attempt, e); } } s.close(); throw new MessagingException("Failed to connect to SMTP server after " + attempt + " attempts."); }
private void retrySendMessage(final JavaxMailSender s, final Message message) throws MessagingException { int attempt; for (attempt = 0; attempt < MAX_EMAIL_RETRY_COUNT; attempt++) { try { s.sendMessage(message, message.getRecipients(Message.RecipientType.TO)); return; } catch (final Exception e) { this.logger.error("Sending email messages failed, attempt: " + attempt, e); } } s.close(); throw new MessagingException("Failed to send email messages after " + attempt + " attempts."); }
public JavaxMailSender createSender(final Properties props) throws NoSuchProviderException { return new JavaxMailSender(props); } }