List of usage examples for org.apache.commons.net.smtp AuthSMTPClient setConnectTimeout
public void setConnectTimeout(int connectTimeout)
From source file:com.google.gerrit.server.mail.send.SmtpEmailSender.java
private SMTPClient open() throws EmailException { final AuthSMTPClient client = new AuthSMTPClient(UTF_8.name()); if (smtpEncryption == Encryption.SSL) { client.enableSSL(sslVerify);/*from w w w . ja va 2 s .c o m*/ } client.setConnectTimeout(connectTimeout); try { client.connect(smtpHost, smtpPort); int replyCode = client.getReplyCode(); String replyString = client.getReplyString(); if (!SMTPReply.isPositiveCompletion(replyCode)) { throw new EmailException( String.format("SMTP server rejected connection: %d: %s", replyCode, replyString)); } if (!client.login()) { throw new EmailException("SMTP server rejected HELO/EHLO greeting: " + replyString); } if (smtpEncryption == Encryption.TLS) { if (!client.startTLS(smtpHost, smtpPort, sslVerify)) { throw new EmailException("SMTP server does not support TLS"); } if (!client.login()) { throw new EmailException("SMTP server rejected login: " + replyString); } } if (smtpUser != null && !client.auth(smtpUser, smtpPass)) { throw new EmailException("SMTP server rejected auth: " + replyString); } return client; } catch (IOException | EmailException e) { if (client.isConnected()) { try { client.disconnect(); } catch (IOException e2) { //Ignored } } if (e instanceof EmailException) { throw (EmailException) e; } throw new EmailException(e.getMessage(), e); } }