use of org.simplejavamail.api.mailer.Mailer in project spring-zerocell by nndi-oss.
the class ExcelToEmailController method sendEmailToCustomer.
private void sendEmailToCustomer(Customer customer) {
Email email = EmailBuilder.startingBlank().from("noreply@nndi-tech.com").to(customer.getFullName(), customer.getEmail()).withSubject("Spring Zerocell Newsletter").withPlainText(String.format("Hello %s, \nPlease view this email in a modern email client!", customer.getFullName())).buildEmail();
Mailer mailer = MailerBuilder.withDebugLogging(true).withSessionTimeout(10 * 1000).async().buildMailer();
mailer.sendMail(email);
}
use of org.simplejavamail.api.mailer.Mailer in project simple-java-mail by bbottema.
the class MailerSOCKSLiveTest method testSOCKSPassthrough_Authenticating.
@Test
public // but it triggers the code on the mailer side, which should not produce errors either
void testSOCKSPassthrough_Authenticating() throws Exception {
Mailer mailer = MailerBuilder.withSMTPServer("localhost", SMTP_SERVER_PORT).withProxy("localhost", PROXY_SERVER_PORT, "username", "password").buildMailer();
assertSendingEmail(mailer, EmailHelper.createDummyEmailBuilder(true, true, false, false, false, false), false);
}
use of org.simplejavamail.api.mailer.Mailer in project simple-java-mail by bbottema.
the class MailerTest method createMailSession_MinimalConstructor_WithConfig_OPPORTUNISTIC_TLS.
@Test
public void createMailSession_MinimalConstructor_WithConfig_OPPORTUNISTIC_TLS() {
Properties properties = new Properties();
properties.setProperty(OPPORTUNISTIC_TLS.key(), "false");
properties.setProperty("simplejavamail.extraproperties.extra-properties-property2", "override");
ConfigLoader.loadProperties(properties, true);
Mailer mailer = MailerBuilder.withTransportStrategy(TransportStrategy.SMTP).buildMailer();
Session session = mailer.getSession();
assertThat(session.getDebug()).isTrue();
assertThat(session.getProperty("mail.smtp.host")).isEqualTo("smtp.default.com");
assertThat(session.getProperty("mail.smtp.port")).isEqualTo("25");
assertThat(session.getProperty("mail.transport.protocol")).isEqualTo("smtp");
assertThat(session.getProperty("mail.smtp.starttls.enable")).isNull();
assertThat(session.getProperty("mail.smtp.starttls.required")).isNull();
assertThat(session.getProperty("mail.smtp.ssl.checkserveridentity")).isNull();
assertThat(session.getProperty("mail.smtp.username")).isEqualTo("username smtp");
assertThat(session.getProperty("mail.smtp.auth")).isEqualTo("true");
// the following two are because authentication is needed, otherwise proxy would be straightworward
assertThat(session.getProperty("mail.smtp.socks.host")).isEqualTo("localhost");
assertThat(session.getProperty("mail.smtp.socks.port")).isEqualTo("1081");
assertThat(session.getProperty("extra-properties-property1")).isNull();
assertThat(session.getProperty("extra-properties-property2")).isEqualTo("override");
}
use of org.simplejavamail.api.mailer.Mailer in project simple-java-mail by bbottema.
the class MailerTest method createMailSession_MinimalConstructor_WithoutConfig.
@Test
public void createMailSession_MinimalConstructor_WithoutConfig() {
ConfigLoaderTestHelper.clearConfigProperties();
final UUID clusterKey = UUID.randomUUID();
Mailer mailer = MailerBuilder.withSMTPServer("host", 25, null, null).withClusterKey(clusterKey).buildMailer();
assertThat(mailer.getOperationalConfig().getSslHostsToTrust()).isEmpty();
Session session = mailer.getSession();
assertThat(session.getDebug()).isFalse();
assertThat(session.getProperty("mail.smtp.host")).isEqualTo("host");
assertThat(session.getProperty("mail.smtp.port")).isEqualTo("25");
assertThat(session.getProperty("mail.transport.protocol")).isEqualTo("smtp");
assertThat(session.getProperty("mail.smtp.starttls.enable")).isEqualTo("true");
assertThat(session.getProperty("mail.smtp.starttls.required")).isEqualTo("false");
assertThat(session.getProperty("mail.smtp.ssl.trust")).isEqualTo("*");
assertThat(session.getProperty("mail.smtp.ssl.checkserveridentity")).isNull();
assertThat(session.getProperty("mail.smtp.username")).isNull();
assertThat(session.getProperty("mail.smtp.auth")).isNull();
assertThat(session.getProperty("mail.smtp.socks.host")).isNull();
assertThat(session.getProperty("mail.smtp.socks.port")).isNull();
assertThat(session.getProperty("extra1")).isNull();
assertThat(session.getProperty("extra2")).isNull();
assertThat(session.getProperty("extra-properties-property1")).isNull();
assertThat(session.getProperty("extra-properties-property2")).isNull();
assertThat(mailer.getOperationalConfig().getClusterKey()).isEqualTo(clusterKey);
// all constructors, providing the same minimal information
Mailer alternative1 = MailerBuilder.withSMTPServer("host", 25).withClusterKey(clusterKey).buildMailer();
Mailer alternative2 = MailerBuilder.usingSession(session).withClusterKey(clusterKey).buildMailer();
assertThat(session.getProperties()).isEqualTo(alternative1.getSession().getProperties());
assertThat(session.getProperties()).isEqualTo(alternative2.getSession().getProperties());
}
use of org.simplejavamail.api.mailer.Mailer in project simple-java-mail by bbottema.
the class MailerTest method createMailSession_MinimalConstructor_WithConfig_OPPORTUNISTIC_TLS_Manually_Disabled.
@Test
public void createMailSession_MinimalConstructor_WithConfig_OPPORTUNISTIC_TLS_Manually_Disabled() {
Properties properties = new Properties();
properties.setProperty(OPPORTUNISTIC_TLS.key(), "false");
ConfigLoader.loadProperties(properties, true);
TransportStrategy.SMTP.setOpportunisticTLS(true);
Mailer mailer = MailerBuilder.withTransportStrategy(TransportStrategy.SMTP).buildMailer();
Session session = mailer.getSession();
assertThat(session.getDebug()).isTrue();
assertThat(session.getProperty("mail.smtp.host")).isEqualTo("smtp.default.com");
assertThat(session.getProperty("mail.smtp.port")).isEqualTo("25");
assertThat(session.getProperty("mail.transport.protocol")).isEqualTo("smtp");
assertThat(session.getProperty("mail.smtp.starttls.enable")).isEqualTo("true");
assertThat(session.getProperty("mail.smtp.starttls.required")).isEqualTo("false");
assertThat(session.getProperty("mail.smtp.ssl.trust")).isEqualTo("*");
assertThat(session.getProperty("mail.smtp.ssl.checkserveridentity")).isNull();
assertThat(session.getProperty("mail.smtp.username")).isEqualTo("username smtp");
assertThat(session.getProperty("mail.smtp.auth")).isEqualTo("true");
// the following two are because authentication is needed, otherwise proxy would be straightworward
assertThat(session.getProperty("mail.smtp.socks.host")).isEqualTo("localhost");
assertThat(session.getProperty("mail.smtp.socks.port")).isEqualTo("1081");
}
Aggregations