Class Email
- Direct Known Subclasses:
MultiPartEmail,SimpleEmail
Subclasses are responsible for setting the message body.
- Since:
- 1.0
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringDeprecated.protected AuthenticatorDeprecated.Use getters and getters.protected List<InternetAddress> Deprecated.Use getters and getters.protected StringDeprecated.Use getters and getters.protected List<InternetAddress> Deprecated.Use getters and getters.protected StringDeprecated.Use getters and getters.protected ObjectDeprecated.Use getters and getters.static final StringDeprecated.since 1.3, useEmailConstants.CONTENT_TYPEinsteadprotected StringDeprecated.Use getters and getters.protected booleanDeprecated.Use getters and getters.static final StringDeprecated.since 1.3, useEmailConstants.EMAIL_BODYinsteadstatic final StringDeprecated.since 1.3, useEmailConstants.EMAIL_SUBJECTinsteadprotected MimeMultipartDeprecated.Use getters and getters.static final StringDeprecated.since 1.3, useEmailConstants.FILE_SERVERinsteadprotected InternetAddressDeprecated.Use getters and getters.Deprecated.Use getters and getters.protected StringDeprecated.Use getters and getters.static final StringDeprecated.since 1.3, useEmailConstants.ISO_8859_1insteadstatic final StringDeprecated.since 1.3, useEmailConstants.KOI8_Rinsteadstatic final StringDeprecated.since 1.3, useEmailConstants.MAIL_DEBUGinsteadstatic final StringDeprecated.since 1.3, useEmailConstants.MAIL_HOSTinsteadstatic final StringDeprecated.since 1.3, useEmailConstants.MAIL_PORTinsteadstatic final StringDeprecated.since 1.3, useEmailConstants.MAIL_SMTP_AUTHinsteadstatic final StringDeprecated.since 1.3, useEmailConstants.MAIL_SMTP_CONNECTIONTIMEOUTinsteadstatic final StringDeprecated.since 1.3, useEmailConstants.MAIL_SMTP_FROMinsteadstatic final StringDeprecated.since 1.3, useEmailConstants.MAIL_SMTP_PASSWORDinsteadstatic final StringDeprecated.since 1.3, useEmailConstants.MAIL_SMTP_SOCKET_FACTORY_CLASSinsteadstatic final StringDeprecated.since 1.3, useEmailConstants.MAIL_SMTP_SOCKET_FACTORY_FALLBACKinsteadstatic final StringDeprecated.since 1.3, useEmailConstants.MAIL_SMTP_SOCKET_FACTORY_PORTinsteadstatic final StringDeprecated.since 1.3, useEmailConstants.MAIL_SMTP_TIMEOUTinsteadstatic final StringDeprecated.since 1.3, useEmailConstants.MAIL_SMTP_USERinsteadstatic final StringDeprecated.since 1.3, useEmailConstants.MAIL_TRANSPORT_PROTOCOLinsteadstatic final StringDeprecated.since 1.3, useEmailConstants.MAIL_TRANSPORT_TLSinsteadprotected MimeMessageDeprecated.Use getters and getters.protected booleanDeprecated.Use getters and getters.protected StringDeprecated.Use getters and getters.protected StringDeprecated.Use getters and getters.protected StringDeprecated.Use getters and getters.static final StringDeprecated.since 1.3, useEmailConstants.RECEIVER_EMAILinsteadstatic final StringDeprecated.since 1.3, useEmailConstants.RECEIVER_NAMEinsteadprotected List<InternetAddress> Deprecated.Use getters and getters.static final StringDeprecated.since 1.3, useEmailConstants.SENDER_EMAILinsteadstatic final StringDeprecated.since 1.3, useEmailConstants.SENDER_NAMEinsteadprotected DateDeprecated.Use getters and getters.static final StringDeprecated.since 1.3, useEmailConstants.SMTPinsteadprotected StringDeprecated.Use getters and getters.protected intDeprecated.protected intDeprecated.protected booleanDeprecated.since 1.3, use setSSLOnConnect() insteadprotected StringDeprecated.Use getters and getters.protected StringDeprecated.Use getters and getters.static final StringDeprecated.since 1.3, useEmailConstants.TEXT_HTMLinsteadstatic final StringDeprecated.since 1.3, useEmailConstants.TEXT_PLAINinsteadprotected booleanDeprecated.since 1.3, use setStartTLSEnabled() insteadprotected List<InternetAddress> Deprecated.Use getters and getters.static final StringDeprecated.since 1.3, useEmailConstants.US_ASCIIinstead -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionAdds a blind BCC recipient to the email.Adds an array of blind BCC recipients to the email.Adds a blind BCC recipient to the email using the specified address and the specified personal name.Adds a blind BCC recipient to the email using the specified address, personal name, and charset encoding for the name.Adds a recipient CC to the email.Adds an array of CC recipients to the email.Adds a recipient CC to the email using the specified address and the specified personal name.Adds a recipient CC to the email using the specified address, personal name, and charset encoding for the name.voidAdds a header ( name, value ) to the headers Map.addReplyTo(String email) Adds a reply to address to the email.addReplyTo(String email, String name) Adds a reply to address to the email using the specified address and the specified personal name.addReplyTo(String email, String name, String charset) Adds a reply to address to the email using the specified address, personal name, and charset encoding for the name.Adds a recipient TO to the email.Adds a list of TO recipients to the email.Adds a recipient TO to the email using the specified address and the specified personal name.Adds a recipient TO to the email using the specified address, personal name, and charset encoding for the name.voidBuilds the MimeMessage.protected MimeMessagecreateMimeMessage(Session aSession) Creates a customized MimeMessage which can be implemented by a derived class, e.g.Gets the authenticator.Gets the list of "Bcc" addresses.Gets the "bounce address" of this email.Gets the list of "CC" addresses.Gets the Charset.Gets the content.Gets the content type.Gets the email body.Gets the sender of the email.Gets the specified header.Gets all headers on an Email.Gets the host name of the SMTP server,Gets the mail session used when sending this Email, creating the Session if necessary.Gets the message.Gets the internal MimeMessage.Gets the POP3 host.Gets the POP3 password.Gets the POP3 user name.Gets the list of "Reply-To" addresses.Gets the sent date for the email.Gets the listening port of the SMTP server.intGets the socket connection timeout value in milliseconds.intGets the socket I/O timeout value in milliseconds.Gets the current SSL port used by the SMTP transport.Gets the subject of the email.Gets the list of "To" addresses.booleanisDebug()Tests whether debug is on.booleanTests whether to use POP3 before SMTP, and if so the settings.booleanTests whether partial sending of email is enabled.booleanisSSL()Deprecated.since 1.3, useisSSLOnConnect()instead.booleanTests whether the server identity checked as specified by RFC 2595booleanTests whether SSL/TLS encryption for the transport is currently enabled (SMTPS/POPS).booleanTests whether the client is configured to try to enable STARTTLS.booleanTests whether the client is configured to require STARTTLS.booleanisTLS()Deprecated.since 1.3, useisStartTLSEnabled()instead.send()Sends the email.Sends the previously created MimeMessage to the SMTP server.voidsetAuthentication(String userName, String password) Sets the userName and password if authentication is needed.voidsetAuthenticator(Authenticator authenticator) Sets theAuthenticatorto be used when authentication is requested from the mail server.setBcc(Collection<InternetAddress> collection) Sets a list of "BCC" addresses.setBounceAddress(String email) Sets the "bounce address" - the address to which undeliverable messages will be returned.setCc(Collection<InternetAddress> collection) Sets a list of "CC" addresses.voidsetCharset(String charset) Sets the charset of the message.setContent(Object content) Sets the content.voidsetContent(Object content, String contentType) Sets the content and contentType.voidsetContent(MimeMultipart mimeMultipart) Sets the emailBody to a MimeMultiPartsetContentType(String contentType) Sets the content type.voidsetDebug(boolean debug) Sets the display of debug information.Sets the FROM field of the email to use the specified address.Sets the FROM field of the email to use the specified address and the specified personal name.Sets the FROM field of the email to use the specified address, personal name, and charset encoding for the name.setFromAddress(InternetAddress fromAddress) Sets the From address.voidsetHeaders(Map<String, String> map) Sets the mail headers.voidsetHostName(String hostName) Sets the hostname of the outgoing mail server.voidsetMailSession(Session session) Sets a mail Session object to use.voidsetMailSessionFromJNDI(String jndiName) Sets a mail Session object from a JNDI directory.voidsetMessage(MimeMessage message) Sets the MIME message.abstract EmailSets the content of the mail.setPopBeforeSmtp(boolean popBeforeSmtp) Sets whether to use POP3 before SMTP, and if so the settings.voidsetPopBeforeSmtp(boolean popBeforeSmtp, String popHost, String popUserName, String popPassword) Sets details regarding "POP3 before SMTP" authentication.setPopHost(String popHost) Sets the POP3 host.setPopPassword(String popPassword) Sets the POP3 password.setPopUsername(String popUserName) Sets the POP3 user name.setReplyTo(Collection<InternetAddress> collection) Sets a list of reply to addresses.setSendPartial(boolean sendPartial) Sets whether the email is partially send in case of invalid addresses.voidsetSentDate(Date date) Sets the sent date for the email.voidsetSmtpPort(int portNumber) Sets the non-SSL port number of the outgoing mail server.voidsetSocketConnectionTimeout(int socketConnectionTimeout) Deprecated.voidsetSocketConnectionTimeout(Duration socketConnectionTimeout) Sets the socket connection timeout value in milliseconds.voidsetSocketTimeout(int socketTimeout) Deprecated.voidsetSocketTimeout(Duration socketTimeout) Sets the socket I/O timeout value in milliseconds.voidsetSSL(boolean ssl) Deprecated.since 1.3, usesetSSLOnConnect(boolean)instead.setSSLCheckServerIdentity(boolean sslCheckServerIdentity) Sets whether the server identity is checked as specified by RFC 2595setSSLOnConnect(boolean ssl) Sets whether SSL/TLS encryption should be enabled for the SMTP transport upon connection (SMTPS/POPS).voidsetSslSmtpPort(String sslSmtpPort) Sets the SSL port to use for the SMTP transport.setStartTLSEnabled(boolean startTlsEnabled) Sets or disable the STARTTLS encryption.setStartTLSRequired(boolean startTlsRequired) Sets or disable the required STARTTLS encryption.setSubject(String aSubject) Sets the email subject.voidsetTLS(boolean withTLS) Deprecated.since 1.3, usesetStartTLSEnabled(boolean)instead.setTo(Collection<InternetAddress> collection) Sets a list of "TO" addresses.protected InternetAddress[]Converts to copy List of known InternetAddress objects into an array.voidupdateContentType(String contentType) Updates the contentType.
-
Field Details
-
SENDER_EMAIL
Deprecated.since 1.3, useEmailConstants.SENDER_EMAILinstead- See Also:
-
SENDER_NAME
Deprecated.since 1.3, useEmailConstants.SENDER_NAMEinstead- See Also:
-
RECEIVER_EMAIL
Deprecated.since 1.3, useEmailConstants.RECEIVER_EMAILinstead- See Also:
-
RECEIVER_NAME
Deprecated.since 1.3, useEmailConstants.RECEIVER_NAMEinstead- See Also:
-
EMAIL_SUBJECT
Deprecated.since 1.3, useEmailConstants.EMAIL_SUBJECTinstead- See Also:
-
EMAIL_BODY
Deprecated.since 1.3, useEmailConstants.EMAIL_BODYinstead- See Also:
-
CONTENT_TYPE
Deprecated.since 1.3, useEmailConstants.CONTENT_TYPEinstead- See Also:
-
ATTACHMENTS
Deprecated.since 1.3, useEmailConstants.ATTACHMENTSinstead- See Also:
-
FILE_SERVER
Deprecated.since 1.3, useEmailConstants.FILE_SERVERinstead- See Also:
-
KOI8_R
Deprecated.since 1.3, useEmailConstants.KOI8_Rinstead- See Also:
-
ISO_8859_1
Deprecated.since 1.3, useEmailConstants.ISO_8859_1instead -
US_ASCII
Deprecated.since 1.3, useEmailConstants.US_ASCIIinstead -
MAIL_DEBUG
Deprecated.since 1.3, useEmailConstants.MAIL_DEBUGinstead- See Also:
-
MAIL_HOST
Deprecated.since 1.3, useEmailConstants.MAIL_HOSTinstead- See Also:
-
MAIL_PORT
Deprecated.since 1.3, useEmailConstants.MAIL_PORTinstead- See Also:
-
MAIL_SMTP_FROM
Deprecated.since 1.3, useEmailConstants.MAIL_SMTP_FROMinstead- See Also:
-
MAIL_SMTP_AUTH
Deprecated.since 1.3, useEmailConstants.MAIL_SMTP_AUTHinstead- See Also:
-
MAIL_SMTP_USER
Deprecated.since 1.3, useEmailConstants.MAIL_SMTP_USERinstead- See Also:
-
MAIL_SMTP_PASSWORD
Deprecated.since 1.3, useEmailConstants.MAIL_SMTP_PASSWORDinstead- See Also:
-
MAIL_TRANSPORT_PROTOCOL
Deprecated.since 1.3, useEmailConstants.MAIL_TRANSPORT_PROTOCOLinstead- See Also:
-
SMTP
Deprecated.since 1.3, useEmailConstants.SMTPinstead- See Also:
-
TEXT_HTML
Deprecated.since 1.3, useEmailConstants.TEXT_HTMLinstead- See Also:
-
TEXT_PLAIN
Deprecated.since 1.3, useEmailConstants.TEXT_PLAINinstead- See Also:
-
MAIL_TRANSPORT_TLS
Deprecated.since 1.3, useEmailConstants.MAIL_TRANSPORT_TLSinstead- See Also:
-
MAIL_SMTP_SOCKET_FACTORY_FALLBACK
Deprecated.since 1.3, useEmailConstants.MAIL_SMTP_SOCKET_FACTORY_FALLBACKinstead- See Also:
-
MAIL_SMTP_SOCKET_FACTORY_CLASS
Deprecated.since 1.3, useEmailConstants.MAIL_SMTP_SOCKET_FACTORY_CLASSinstead- See Also:
-
MAIL_SMTP_SOCKET_FACTORY_PORT
Deprecated.since 1.3, useEmailConstants.MAIL_SMTP_SOCKET_FACTORY_PORTinstead- See Also:
-
MAIL_SMTP_CONNECTIONTIMEOUT
Deprecated.since 1.3, useEmailConstants.MAIL_SMTP_CONNECTIONTIMEOUTinstead- See Also:
-
MAIL_SMTP_TIMEOUT
Deprecated.since 1.3, useEmailConstants.MAIL_SMTP_TIMEOUTinstead- See Also:
-
message
Deprecated.Use getters and getters.The email message to send. -
charset
Deprecated.Use getters and getters.The charset to use for this message. -
fromAddress
Deprecated.Use getters and getters.The Address of the sending party, mandatory. -
subject
Deprecated.Use getters and getters.The Subject. -
emailBody
Deprecated.Use getters and getters.An attachment. -
Deprecated.Use getters and getters.The content.
-
contentType
Deprecated.Use getters and getters.The content type. -
debug
Deprecated.Use getters and getters.Set session debugging on or off. -
sentDate
Deprecated.Use getters and getters.Sent date. -
authenticator
Deprecated.Use getters and getters.Instance of anAuthenticatorobject that will be used when authentication is requested from the mail server. -
hostName
Deprecated.Use getters and getters.The hostname of the mail server with which to connect. If null will try to get property from system.properties. If still null, quit. -
smtpPort
Deprecated.Use getters and getters.The port number of the mail server to connect to. Defaults to the standard port ( 25 ). -
sslSmtpPort
Deprecated.Use getters and getters.The port number of the SSL enabled SMTP server; defaults to the standard port, 465. -
toList
Deprecated.Use getters and getters.List of "to" email addresses. -
ccList
Deprecated.Use getters and getters.List of "cc" email addresses. -
bccList
Deprecated.Use getters and getters.List of "bcc" email addresses. -
replyList
Deprecated.Use getters and getters.List of "replyTo" email addresses. -
bounceAddress
Deprecated.Use getters and getters.Address to which undeliverable mail should be sent. Because this is handled by JavaMail as a String property in the mail session, this property is of typeStringrather thanInternetAddress. -
headers
Deprecated.Use getters and getters.Used to specify the mail headers. Example: X-Mailer: Sendmail, X-Priority: 1( highest ) or 2( high ) 3( normal ) 4( low ) and 5( lowest ) Disposition-Notification-To: user@domain.net -
popBeforeSmtp
Deprecated.Use getters and getters.Whether to use POP3 before SMTP, and if so the settings. -
popHost
Deprecated.Use getters and getters.The host name of the POP3 server. -
popUsername
Deprecated.Use getters and getters.The user name to log into the POP3 server. -
popPassword
Deprecated.Use getters and getters.The password to log into the POP3 server. -
tls
Deprecated.since 1.3, use setStartTLSEnabled() insteadDoes server require TLS encryption for authentication? -
ssl
Deprecated.since 1.3, use setSSLOnConnect() insteadDoes the current transport use SSL/TLS encryption upon connection? -
socketTimeout
Deprecated.Socket I/O timeout value in milliseconds. -
socketConnectionTimeout
Deprecated.Socket connection timeout value in milliseconds.
-
-
Constructor Details
-
Email
public Email()Constructs a new instance.
-
-
Method Details
-
addBcc
Adds a blind BCC recipient to the email. The email address will also be used as the personal name. The name will be encoded by the charset ofsetCharset(String). If it is not set, it will be encoded using the Java platform's default charset (UTF-16) if it contains non-ASCII characters; otherwise, it is used as is.- Parameters:
email- A String.- Returns:
- An Email.
- Throws:
EmailException- Indicates an invalid email address- Since:
- 1.0
-
addBcc
Adds an array of blind BCC recipients to the email. The email addresses will also be used as the personal name. The names will be encoded by the charset ofsetCharset(String). If it is not set, it will be encoded using the Java platform's default charset (UTF-16) if it contains non-ASCII characters; otherwise, it is used as is.- Parameters:
emails- A String array.- Returns:
- An Email.
- Throws:
EmailException- Indicates an invalid email address- Since:
- 1.3
-
addBcc
Adds a blind BCC recipient to the email using the specified address and the specified personal name. The name will be encoded by the charset ofsetCharset(String). If it is not set, it will be encoded using the Java platform's default charset (UTF-16) if it contains non-ASCII characters; otherwise, it is used as is.- Parameters:
email- A String.name- A String.- Returns:
- An Email.
- Throws:
EmailException- Indicates an invalid email address- Since:
- 1.0
-
addBcc
Adds a blind BCC recipient to the email using the specified address, personal name, and charset encoding for the name.- Parameters:
email- A String.name- A String.charset- The charset to encode the name with.- Returns:
- An Email.
- Throws:
EmailException- Indicates an invalid email address- Since:
- 1.1
-
addCc
Adds a recipient CC to the email. The email address will also be used as the personal name. The name will be encoded by the charset ofsetCharset(String). If it is not set, it will be encoded using the Java platform's default charset (UTF-16) if it contains non-ASCII characters; otherwise, it is used as is.- Parameters:
email- A String.- Returns:
- An Email.
- Throws:
EmailException- Indicates an invalid email address.- Since:
- 1.0
-
addCc
Adds an array of CC recipients to the email. The email addresses will also be used as the personal name. The names will be encoded by the charset ofsetCharset(String). If it is not set, it will be encoded using the Java platform's default charset (UTF-16) if it contains non-ASCII characters; otherwise, it is used as is.- Parameters:
emails- A String array.- Returns:
- An Email.
- Throws:
EmailException- Indicates an invalid email address.- Since:
- 1.3
-
addCc
Adds a recipient CC to the email using the specified address and the specified personal name. The name will be encoded by the charset ofsetCharset(String). If it is not set, it will be encoded using the Java platform's default charset (UTF-16) if it contains non-ASCII characters; otherwise, it is used as is.- Parameters:
email- A String.name- A String.- Returns:
- An Email.
- Throws:
EmailException- Indicates an invalid email address.- Since:
- 1.0
-
addCc
Adds a recipient CC to the email using the specified address, personal name, and charset encoding for the name.- Parameters:
email- A String.name- A String.charset- The charset to encode the name with.- Returns:
- An Email.
- Throws:
EmailException- Indicates an invalid email address or charset.- Since:
- 1.1
-
addHeader
Adds a header ( name, value ) to the headers Map.- Parameters:
name- A String with the name.value- A String with the value.- Throws:
IllegalArgumentException- if eithernameorvalueis null or empty- Since:
- 1.0
-
addReplyTo
Adds a reply to address to the email. The email address will also be used as the personal name. The name will be encoded by the charset ofsetCharset(String). If it is not set, it will be encoded using the Java platform's default charset (UTF-16) if it contains non-ASCII characters; otherwise, it is used as is.- Parameters:
email- A String.- Returns:
- An Email.
- Throws:
EmailException- Indicates an invalid email address- Since:
- 1.0
-
addReplyTo
Adds a reply to address to the email using the specified address and the specified personal name. The name will be encoded by the charset ofsetCharset(String). If it is not set, it will be encoded using the Java platform's default charset (UTF-16) if it contains non-ASCII characters; otherwise, it is used as is.- Parameters:
email- A String.name- A String.- Returns:
- An Email.
- Throws:
EmailException- Indicates an invalid email address- Since:
- 1.0
-
addReplyTo
Adds a reply to address to the email using the specified address, personal name, and charset encoding for the name.- Parameters:
email- A String.name- A String.charset- The charset to encode the name with.- Returns:
- An Email.
- Throws:
EmailException- Indicates an invalid email address or charset.- Since:
- 1.1
-
addTo
Adds a recipient TO to the email. The email address will also be used as the personal name. The name will be encoded by the charset ofsetCharset(String). If it is not set, it will be encoded using the Java platform's default charset (UTF-16) if it contains non-ASCII characters; otherwise, it is used as is.- Parameters:
email- A String.- Returns:
- An Email.
- Throws:
EmailException- Indicates an invalid email address.- Since:
- 1.0
-
addTo
Adds a list of TO recipients to the email. The email addresses will also be used as the personal names. The names will be encoded by the charset ofsetCharset(String). If it is not set, it will be encoded using the Java platform's default charset (UTF-16) if it contains non-ASCII characters; otherwise, it is used as is.- Parameters:
emails- A String array.- Returns:
- An Email.
- Throws:
EmailException- Indicates an invalid email address.- Since:
- 1.3
-
addTo
Adds a recipient TO to the email using the specified address and the specified personal name. The name will be encoded by the charset ofsetCharset(String). If it is not set, it will be encoded using the Java platform's default charset (UTF-16) if it contains non-ASCII characters; otherwise, it is used as is.- Parameters:
email- A String.name- A String.- Returns:
- An Email.
- Throws:
EmailException- Indicates an invalid email address.- Since:
- 1.0
-
addTo
Adds a recipient TO to the email using the specified address, personal name, and charset encoding for the name.- Parameters:
email- A String.name- A String.charset- The charset to encode the name with.- Returns:
- An Email.
- Throws:
EmailException- Indicates an invalid email address or charset.- Since:
- 1.1
-
buildMimeMessage
Builds the MimeMessage. Please note that a user rarely calls this method directly and only if he/she is interested in the sending the underlying MimeMessage without commons-email.- Throws:
IllegalStateException- if the MimeMessage was already builtEmailException- if there was an error.- Since:
- 1.0
-
createMimeMessage
Creates a customized MimeMessage which can be implemented by a derived class, e.g. to set the message id.- Parameters:
aSession- mail session to be used- Returns:
- the newly created message
-
getAuthenticator
Gets the authenticator.- Returns:
- the authenticator.
- Since:
- 1.6.0
-
getBccAddresses
Gets the list of "Bcc" addresses.- Returns:
- List addresses
-
getBounceAddress
Gets the "bounce address" of this email.- Returns:
- the bounce address as string
- Since:
- 1.4
-
getCcAddresses
Gets the list of "CC" addresses.- Returns:
- List addresses
-
getCharsetName
Gets the Charset.- Returns:
- the Charset.
- Since:
- 1.6.0
-
getContent
Gets the content.- Returns:
- the content.
- Since:
- 1.6.0
-
getContentType
Gets the content type.- Returns:
- the content type.
- Since:
- 1.6.0
-
getEmailBody
Gets the email body.- Returns:
- the email body.
- Since:
- 1.6.0
-
getFromAddress
Gets the sender of the email.- Returns:
- from address
-
getHeader
Gets the specified header.- Parameters:
header- A string with the header.- Returns:
- The value of the header, or null if no such header.
- Since:
- 1.5
-
getHeaders
Gets all headers on an Email.- Returns:
- a Map of all headers.
- Since:
- 1.5
-
getHostName
Gets the host name of the SMTP server,- Returns:
- host name
-
getMailSession
Gets the mail session used when sending this Email, creating the Session if necessary. When a mail session is already initialized setting the session related properties will cause an IllegalStateException.- Returns:
- A Session.
- Throws:
EmailException- if the host name was not set- Since:
- 1.0
-
getMessage
Gets the message.- Returns:
- the message.
- Since:
- 1.6.0
-
getMimeMessage
Gets the internal MimeMessage. Please note that the MimeMessage is built by the buildMimeMessage() method.- Returns:
- the MimeMessage
-
getPopHost
Gets the POP3 host.- Returns:
- the POP3 host.
- Since:
- 1.6.0
-
getPopPassword
Gets the POP3 password.- Returns:
- the POP3 password.
- Since:
- 1.6.0
-
getPopUserName
Gets the POP3 user name.- Returns:
- the POP3 user name.
- Since:
- 1.6.0
-
getReplyToAddresses
Gets the list of "Reply-To" addresses.- Returns:
- List addresses
-
getSentDate
Gets the sent date for the email.- Returns:
- date to be used as the sent date for the email
- Since:
- 1.0
-
getSmtpPort
Gets the listening port of the SMTP server.- Returns:
- SMTP port
-
getSocketConnectionTimeout
Gets the socket connection timeout value in milliseconds.- Returns:
- the timeout in milliseconds.
- Since:
- 1.2
-
getSocketTimeout
Gets the socket I/O timeout value in milliseconds.- Returns:
- the socket I/O timeout
- Since:
- 1.2
-
getSslSmtpPort
Gets the current SSL port used by the SMTP transport.- Returns:
- the current SSL port used by the SMTP transport
-
getSubject
Gets the subject of the email.- Returns:
- email subject
-
getToAddresses
Gets the list of "To" addresses.- Returns:
- List addresses
-
isDebug
Tests whether debug is on.- Returns:
- whether debug is on.
- Since:
- 1.6.0
-
isPopBeforeSmtp
Tests whether to use POP3 before SMTP, and if so the settings.- Returns:
- whether to use POP3 before SMTP, and if so the settings.
- Since:
- 1.6.0
-
isSendPartial
Tests whether partial sending of email is enabled.- Returns:
- true if sending partial email is enabled.
- Since:
- 1.3.2
-
isSSL
Deprecated.since 1.3, useisSSLOnConnect()instead.Tests whether SSL/TLS encryption for the transport is currently enabled (SMTPS/POPS). See EMAIL-105 for reason of deprecation.- Returns:
- true if SSL enabled for the transport.
-
isSSLCheckServerIdentity
Tests whether the server identity checked as specified by RFC 2595- Returns:
- true if the server identity is checked.
- Since:
- 1.3
-
isSSLOnConnect
Tests whether SSL/TLS encryption for the transport is currently enabled (SMTPS/POPS).- Returns:
- true if SSL enabled for the transport.
- Since:
- 1.3
-
isStartTLSEnabled
Tests whether the client is configured to try to enable STARTTLS.- Returns:
- true if using STARTTLS for authentication, false otherwise.
- Since:
- 1.3
-
isStartTLSRequired
Tests whether the client is configured to require STARTTLS.- Returns:
- true if using STARTTLS for authentication, false otherwise.
- Since:
- 1.3
-
isTLS
Deprecated.since 1.3, useisStartTLSEnabled()instead.Tests whether the client is configured to try to enable STARTTLS. See EMAIL-105 for reason of deprecation.- Returns:
- true if using STARTTLS for authentication, false otherwise.
- Since:
- 1.1
-
send
Sends the email. Internally we build a MimeMessage which is afterwards sent to the SMTP server.- Returns:
- the message id of the underlying MimeMessage
- Throws:
IllegalStateException- if the MimeMessage was already built, that is,buildMimeMessage()was already calledEmailException- the sending failed
-
sendMimeMessage
Sends the previously created MimeMessage to the SMTP server.- Returns:
- the message id of the underlying MimeMessage
- Throws:
IllegalArgumentException- if the MimeMessage has not been createdEmailException- the sending failed
-
setAuthentication
Sets the userName and password if authentication is needed. If this method is not used, no authentication will be performed.This method will create a new instance of
DefaultAuthenticatorusing the supplied parameters.- Parameters:
userName- User name for the SMTP serverpassword- password for the SMTP server- Since:
- 1.0
- See Also:
-
setAuthenticator
Sets theAuthenticatorto be used when authentication is requested from the mail server.This method should be used when your outgoing mail server requires authentication. Your mail server must also support RFC2554.
- Parameters:
authenticator- theAuthenticatorobject.- Since:
- 1.0
- See Also:
-
setBcc
Sets a list of "BCC" addresses. All elements in the specifiedCollectionare expected to be of typejava.mail.internet.InternetAddress.- Parameters:
collection- collection ofInternetAddressobjects- Returns:
- An Email.
- Throws:
EmailException- Indicates an invalid email address- Since:
- 1.0
- See Also:
-
setBounceAddress
Sets the "bounce address" - the address to which undeliverable messages will be returned. If this value is never set, then the message will be sent to the address specified with the System property "mail.smtp.from", or if that value is not set, then to the "from" address.- Parameters:
email- A String.- Returns:
- An Email.
- Throws:
IllegalStateException- if the mail session is already initialized- Since:
- 1.0
-
setCc
Sets a list of "CC" addresses. All elements in the specifiedCollectionare expected to be of typejava.mail.internet.InternetAddress.- Parameters:
collection- collection ofInternetAddressobjects.- Returns:
- An Email.
- Throws:
EmailException- Indicates an invalid email address.- Since:
- 1.0
- See Also:
-
setCharset
Sets the charset of the message. Please note that you should set the charset before adding the message content.- Parameters:
charset- A String.- Throws:
IllegalCharsetNameException- if the charset name is invalidUnsupportedCharsetException- if no support for the named charset exists in the current JVM- Since:
- 1.0
-
setContent
Sets the emailBody to a MimeMultiPart- Parameters:
mimeMultipart- aMimeMultipart- Since:
- 1.0
-
setContent
Sets the content.- Parameters:
content- the content.- Returns:
- this.
- Since:
- 1.6.0
-
setContent
Sets the content and contentType.- Parameters:
content- content.contentType- content type.- Since:
- 1.0
-
setContentType
Sets the content type.- Parameters:
contentType- the content type.- Returns:
- this.
- Since:
- 1.6.0
-
setDebug
Sets the display of debug information.- Parameters:
debug- A boolean.- Since:
- 1.0
-
setFrom
Sets the FROM field of the email to use the specified address. The email address will also be used as the personal name. The name will be encoded by the charset ofsetCharset(String). If it is not set, it will be encoded using the Java platform's default charset (UTF-16) if it contains non-ASCII characters; otherwise, it is used as is.- Parameters:
email- A String.- Returns:
- An Email.
- Throws:
EmailException- Indicates an invalid email address.- Since:
- 1.0
-
setFrom
Sets the FROM field of the email to use the specified address and the specified personal name. The name will be encoded by the charset ofsetCharset(String). If it is not set, it will be encoded using the Java platform's default charset (UTF-16) if it contains non-ASCII characters; otherwise, it is used as is.- Parameters:
email- A String.name- A String.- Returns:
- An Email.
- Throws:
EmailException- Indicates an invalid email address.- Since:
- 1.0
-
setFrom
Sets the FROM field of the email to use the specified address, personal name, and charset encoding for the name.- Parameters:
email- A String.name- A String.charset- The charset to encode the name with.- Returns:
- An Email.
- Throws:
EmailException- Indicates an invalid email address or charset.- Since:
- 1.1
-
setFromAddress
Sets the From address.- Parameters:
fromAddress- the From address.- Returns:
- this.
- Since:
- 1.6.0
-
setHeaders
Sets the mail headers. Example: X-Mailer: Sendmail, X-Priority: 1( highest ) or 2( high ) 3( normal ) 4( low ) and 5( lowest ) Disposition-Notification-To: user@domain.net- Parameters:
map- A Map.- Throws:
IllegalArgumentException- if either of the provided header / value is null or empty- Since:
- 1.0
-
setHostName
Sets the hostname of the outgoing mail server.- Parameters:
hostName- aHostName- Throws:
IllegalStateException- if the mail session is already initialized- Since:
- 1.0
-
setMailSession
Sets a mail Session object to use. Please note that passing a user name and password (in the case of mail authentication) will create a new mail session with a DefaultAuthenticator. This is a convenience but might come unexpected. If mail authentication is used but NO user name and password is supplied the implementation assumes that you have set a authenticator and will use the existing mail session (as expected).- Parameters:
session- mail session to be used- Throws:
NullPointerException- ifaSessionisnull- Since:
- 1.0
-
setMailSessionFromJNDI
Sets a mail Session object from a JNDI directory.- Parameters:
jndiName- name of JNDI resource (javax.mail.Session type), resource if searched in java:comp/env if name does not start with "java:"- Throws:
IllegalArgumentException- if the JNDI name is null or emptyNamingException- if the resource cannot be retrieved from JNDI directory- Since:
- 1.1
-
setMessage
Sets the MIME message.- Parameters:
message- the MIME message.
-
setMsg
Sets the content of the mail. It should be overridden by the subclasses.- Parameters:
msg- A String.- Returns:
- An Email.
- Throws:
EmailException- generic exception.- Since:
- 1.0
-
setPopBeforeSmtp
Sets whether to use POP3 before SMTP, and if so the settings.- Parameters:
popBeforeSmtp- whether to use POP3 before SMTP, and if so the settings.- Returns:
- this.
- Since:
- 1.6.0
-
setPopBeforeSmtp
public void setPopBeforeSmtp(boolean popBeforeSmtp, String popHost, String popUserName, String popPassword) Sets details regarding "POP3 before SMTP" authentication.- Parameters:
popBeforeSmtp- Whether or not to log into POP3 server before sending mail.popHost- The POP3 host to use.popUserName- The POP3 user name.popPassword- The POP3 password.- Since:
- 1.0
-
setPopHost
Sets the POP3 host.- Parameters:
popHost- The POP3 host.- Returns:
- this.
- Since:
- 1.6.0
-
setPopPassword
Sets the POP3 password.- Parameters:
popPassword- the POP3 password.- Returns:
- this.
- Since:
- 1.6.0
-
setPopUsername
Sets the POP3 user name.- Parameters:
popUserName- the POP3 user name.- Returns:
- this.
- Since:
- 1.6.0
-
setReplyTo
Sets a list of reply to addresses. All elements in the specifiedCollectionare expected to be of typejava.mail.internet.InternetAddress.- Parameters:
collection- collection ofInternetAddressobjects- Returns:
- An Email.
- Throws:
EmailException- Indicates an invalid email address- Since:
- 1.1
- See Also:
-
setSendPartial
Sets whether the email is partially send in case of invalid addresses.In case the mail server rejects an address as invalid, the call to
send()may throw aSendFailedException, even if partial send mode is enabled (emails to valid addresses will be transmitted). In case the email server does not reject invalid addresses immediately, but return a bounce message, no exception will be thrown by thesend()method.- Parameters:
sendPartial- whether to enable partial send mode- Returns:
- An Email.
- Throws:
IllegalStateException- if the mail session is already initialized- Since:
- 1.3.2
-
setSentDate
Sets the sent date for the email. The sent date will default to the current date if not explicitly set.- Parameters:
date- Date to use as the sent date on the email- Since:
- 1.0
-
setSmtpPort
Sets the non-SSL port number of the outgoing mail server.- Parameters:
portNumber- aPortNumber- Throws:
IllegalArgumentException- if the port number is < 1IllegalStateException- if the mail session is already initialized- Since:
- 1.0
- See Also:
-
setSocketConnectionTimeout
Sets the socket connection timeout value in milliseconds. Default is a 60 second timeout.- Parameters:
socketConnectionTimeout- the connection timeout- Throws:
IllegalStateException- if the mail session is already initialized- Since:
- 1.6.0
-
setSocketConnectionTimeout
Deprecated.Sets the socket connection timeout value in milliseconds. Default is a 60 second timeout.- Parameters:
socketConnectionTimeout- the connection timeout- Throws:
IllegalStateException- if the mail session is already initialized- Since:
- 1.2
-
setSocketTimeout
Sets the socket I/O timeout value in milliseconds. Default is 60 second timeout.- Parameters:
socketTimeout- the socket I/O timeout- Throws:
IllegalStateException- if the mail session is already initialized- Since:
- 1.6.0
-
setSocketTimeout
Deprecated.Sets the socket I/O timeout value in milliseconds. Default is 60 second timeout.- Parameters:
socketTimeout- the socket I/O timeout- Throws:
IllegalStateException- if the mail session is already initialized- Since:
- 1.2
-
setSSL
Deprecated.since 1.3, usesetSSLOnConnect(boolean)instead.Sets whether SSL/TLS encryption should be enabled for the SMTP transport upon connection (SMTPS/POPS). See EMAIL-105 for reason of deprecation.- Parameters:
ssl- whether to enable the SSL transport
-
setSSLCheckServerIdentity
Sets whether the server identity is checked as specified by RFC 2595- Parameters:
sslCheckServerIdentity- whether to enable server identity check- Returns:
- An Email.
- Throws:
IllegalStateException- if the mail session is already initialized- Since:
- 1.3
-
setSSLOnConnect
Sets whether SSL/TLS encryption should be enabled for the SMTP transport upon connection (SMTPS/POPS). Takes precedence oversetStartTLSRequired(boolean)Defaults to
sslSmtpPort; can be overridden by usingsetSslSmtpPort(String)- Parameters:
ssl- whether to enable the SSL transport- Returns:
- An Email.
- Throws:
IllegalStateException- if the mail session is already initialized- Since:
- 1.3
-
setSslSmtpPort
Sets the SSL port to use for the SMTP transport. Defaults to the standard port, 465.- Parameters:
sslSmtpPort- the SSL port to use for the SMTP transport- Throws:
IllegalStateException- if the mail session is already initialized- See Also:
-
setStartTLSEnabled
Sets or disable the STARTTLS encryption.- Parameters:
startTlsEnabled- true if STARTTLS requested, false otherwise- Returns:
- An Email.
- Throws:
IllegalStateException- if the mail session is already initialized- Since:
- 1.3
-
setStartTLSRequired
Sets or disable the required STARTTLS encryption.Defaults to
smtpPort; can be overridden by usingsetSmtpPort(int)- Parameters:
startTlsRequired- true if STARTTLS requested, false otherwise- Returns:
- An Email.
- Throws:
IllegalStateException- if the mail session is already initialized- Since:
- 1.3
-
setSubject
Sets the email subject. Replaces end-of-line characters with spaces.- Parameters:
aSubject- A String.- Returns:
- An Email.
- Since:
- 1.0
-
setTLS
Deprecated.since 1.3, usesetStartTLSEnabled(boolean)instead.Sets or disable the STARTTLS encryption. Please see EMAIL-105 for the reasons of deprecation.- Parameters:
withTLS- true if STARTTLS requested, false otherwise- Since:
- 1.1
-
setTo
Sets a list of "TO" addresses. All elements in the specifiedCollectionare expected to be of typejava.mail.internet.InternetAddress.- Parameters:
collection- collection ofInternetAddressobjects.- Returns:
- An Email.
- Throws:
EmailException- Indicates an invalid email address.- Since:
- 1.0
- See Also:
-
toInternetAddressArray
Converts to copy List of known InternetAddress objects into an array.- Parameters:
list- A List.- Returns:
- An InternetAddress[].
- Since:
- 1.0
-
updateContentType
Updates the contentType.- Parameters:
contentType- aContentType- Since:
- 1.2
-
EmailConstants.ATTACHMENTSinstead