Package de.xima.fc.mail.impl.context
Class DefaultMailContext
- java.lang.Object
-
- de.xima.fc.mail.impl.context.DefaultMailContext
-
- All Implemented Interfaces:
IMailContext
- Direct Known Subclasses:
MSGraphMailContext
,PasswordMailContext
public class DefaultMailContext extends Object implements IMailContext
Default implementation for sending mails via smtp- Author:
- XIMA MEDIA GmbH, Dresden
-
-
Field Summary
Fields Modifier and Type Field Description protected Predicate<javax.mail.Address>
addressFilter
protected IMailServerData
serverData
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
archive(IBaseMailData mail, Mandant client, File file)
Create an archived file of the mail.protected void
buildAndSendMessage(IBaseMailData mail, Mandant client)
protected javax.mail.Authenticator
buildAuthenticator()
protected javax.mail.internet.MimeBodyPart
buildBodyPart(BodyPartData body)
protected void
buildContent(IBaseMailData mail, javax.mail.internet.MimeMessage msg, Mandant client)
protected javax.mail.internet.MimeBodyPart
buildFilePart(FilePartData file)
protected Properties
buildProperties()
protected javax.mail.internet.MimeMessage
createMimeMessage(IBaseMailData mail, Mandant client)
protected javax.mail.internet.MimeMessage
createMimeMessage(javax.mail.Session session, IBaseMailData mail, Mandant client)
protected javax.mail.Address[]
filterAddresses(javax.mail.Address[] addresses)
IMailServerData
getServerData()
Gets the mail server data of the contextvoid
send(IBaseMailData mail)
Sends an mail based on the given datavoid
send(IBaseMailData mail, Mandant client)
Sends an mail based on the given datavoid
setAddressFilter(Predicate<javax.mail.Address> addressFilter)
Sets an filter for excluding mail addresses during send-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface de.xima.fc.mail.interfaces.IMailContext
setAddressFilter
-
-
-
-
Field Detail
-
addressFilter
protected Predicate<javax.mail.Address> addressFilter
-
serverData
protected IMailServerData serverData
-
-
Method Detail
-
getServerData
public IMailServerData getServerData()
Description copied from interface:IMailContext
Gets the mail server data of the context- Specified by:
getServerData
in interfaceIMailContext
- Returns:
- the server data
-
setAddressFilter
public void setAddressFilter(Predicate<javax.mail.Address> addressFilter)
Description copied from interface:IMailContext
Sets an filter for excluding mail addresses during send- Specified by:
setAddressFilter
in interfaceIMailContext
- Parameters:
addressFilter
- the address filter to set
-
buildAuthenticator
protected javax.mail.Authenticator buildAuthenticator()
-
buildProperties
protected Properties buildProperties()
-
send
public void send(IBaseMailData mail) throws Exception
Description copied from interface:IMailContext
Sends an mail based on the given data- Specified by:
send
in interfaceIMailContext
- Parameters:
mail
- the mail data- Throws:
Exception
- on errors while sending the mail
-
send
public void send(IBaseMailData mail, Mandant client) throws Exception
Description copied from interface:IMailContext
Sends an mail based on the given data- Specified by:
send
in interfaceIMailContext
- Parameters:
mail
- Data of the email to send.client
- the client to use for placeholder replacements- Throws:
Exception
- on errors while sending the mail
-
archive
public void archive(IBaseMailData mail, Mandant client, File file) throws Exception
Description copied from interface:IMailContext
Create an archived file of the mail.- Specified by:
archive
in interfaceIMailContext
- Parameters:
mail
- Data of the email to send.client
- The client to use for placeholder replacements.file
- The file to write to.- Throws:
Exception
- When the archive file could not be created.
-
buildAndSendMessage
protected void buildAndSendMessage(IBaseMailData mail, Mandant client) throws Exception
- Throws:
Exception
-
createMimeMessage
protected javax.mail.internet.MimeMessage createMimeMessage(IBaseMailData mail, Mandant client) throws javax.mail.MessagingException
- Throws:
javax.mail.MessagingException
-
createMimeMessage
protected javax.mail.internet.MimeMessage createMimeMessage(javax.mail.Session session, IBaseMailData mail, Mandant client) throws javax.mail.MessagingException
- Throws:
javax.mail.MessagingException
-
filterAddresses
protected javax.mail.Address[] filterAddresses(javax.mail.Address[] addresses)
-
buildContent
protected void buildContent(IBaseMailData mail, javax.mail.internet.MimeMessage msg, Mandant client) throws javax.mail.MessagingException
- Throws:
javax.mail.MessagingException
-
buildBodyPart
protected javax.mail.internet.MimeBodyPart buildBodyPart(BodyPartData body) throws Exception
- Throws:
Exception
-
buildFilePart
protected javax.mail.internet.MimeBodyPart buildFilePart(FilePartData file) throws Exception
- Throws:
Exception
-
-