public class SessionHandler
extends java.lang.Object
A wrapper around javax.mail.Store and javax.mail.Transport
Constructor and Description |
---|
SessionHandler()
Default constructor
|
SessionHandler(MailAccount oAccount)
Create instance taking data from a MailAccount
The data of MailAccount stored at k_user_mail table is used for initializing
the connection properties
|
SessionHandler(MailAccount oAccount,
java.lang.String sMBoxDirectory)
Create instance taking data from a MailAccount and set local directory for MBOX files
|
SessionHandler(java.util.Properties oMailProperties)
Create session using given Properties
|
Modifier and Type | Method and Description |
---|---|
void |
close() |
java.lang.String |
getAccountName()
Get column incoming_account of k_user_mail
|
java.lang.String |
getAuthStr()
Get column incoming_password of k_user_mail
|
javax.mail.Folder |
getFolder(java.lang.String sFolderName)
Get folder from current mail store
|
java.lang.String |
getHostName()
Get column incoming_server of k_user_mail
|
java.lang.String |
getMBoxDirectory() |
java.util.Properties |
getProperties() |
javax.mail.Session |
getSession()
Get incoming mail server Session
This method calls JavaMail Session.getInstance() method if neccesary,
using properties currently set at this instance and SilentAuthenticator as
Authenticator subclass
|
javax.mail.Session |
getSmtpSession()
Get outgoing mail server Session
This method calls JavaMail Session.getInstance() method if neccesary,
using properties currently set at this instance and SilentAuthenticator as
Authenticator subclass
|
javax.mail.Store |
getStore()
Get Store
This method calls Session.getStore() and Store.connect() if neccesary.
|
javax.mail.Transport |
getTransport()
Get Transport
This method calls Session.getTransport() and Transport.connect() if neccesary
|
javax.mail.URLName |
getURL() |
boolean |
isStoreConnected() |
boolean |
isTransportConnected() |
java.lang.String[] |
listFolderMessages(java.lang.String sFolderName)
Get a list of all folder messages which are not deleted
Messages are returned in ascending date order, oldest messages are returned first
|
HeadersHelper[] |
listFolderMessagesHeaders(java.lang.String sFolderName)
Get a list of headers for all folder messages which are not deleted
Messages are returned in ascending date order, oldest messages are returned first
|
java.lang.String[] |
listRecentMessages(java.lang.String sFolderName,
int iMaxMsgs)
Get a list of most recent folder messages which are not deleted, answered or marked as spam
Messages are returned in descending date order, most recent messages are returned first
|
void |
sendMessage(javax.mail.Message oMsg) |
void |
sendMessage(javax.mail.Message oMsg,
javax.mail.Address[] aAddrs) |
void |
sendMessage(javax.mail.Message oMsg,
javax.mail.Address[] aAdrFrom,
javax.mail.Address[] aAdrReply,
javax.mail.Address[] aAdrTo,
javax.mail.Address[] aAdrCc,
javax.mail.Address[] aAdrBcc) |
int |
sendMessage(java.lang.String sSubject,
java.lang.String sFromPersonal,
java.lang.String sFromAddr,
java.lang.String sReplyAddr,
java.lang.String[] aRecipients,
javax.mail.Message.RecipientType[] aRecType,
java.lang.String sTextBody,
java.lang.String sHtmlBody,
java.lang.String sEncoding,
java.lang.String sId,
java.lang.String[] aAttachmentsPath,
java.lang.String sUserDir,
java.io.PrintStream oOut)
Send e-mail message
|
int |
sendMessage(java.lang.String sSubject,
java.lang.String sFromPersonal,
java.lang.String sFromAddr,
java.lang.String sReplyAddr,
java.lang.String[] aRecipients,
javax.mail.Message.RecipientType oRecType,
java.lang.String sTextBody,
java.lang.String sHtmlBody,
java.lang.String sEncoding,
java.lang.String sId,
java.lang.String[] aAttachmentsPath,
java.lang.String sUserDir,
java.io.PrintStream oOut) |
void |
setAccountName(java.lang.String aAccName)
Set incoming mail account name
|
void |
setAuthStr(java.lang.String aAutStr)
Set incoming mail password
|
void |
setHostName(java.lang.String sName)
Set incoming mail host name or IP address
|
void |
setMBoxDirectory(java.lang.String sDir) |
void |
setProperties(java.util.Properties oPropties) |
public SessionHandler()
public SessionHandler(java.util.Properties oMailProperties) throws java.lang.NullPointerException
oMailProperties
- PropertiesProperty | Description> | Default value |
---|---|---|
mail.user | Store and transport user | |
mail.password | Store and transport password | |
mail.store.protocol | pop3 | |
mail.transport.protocol | smtp | |
mail.storeprotocol.host | For example: pop.mailserver.com | |
mail.storeprotocol.socketFactory.class | Only if using SSL set this value to javax.net.ssl.SSLSocketFactory | |
mail.storeprotocol.socketFactory.port | Only if using SSL | |
mail.transportprotocol.host | For example: smtp.mailserver.com | |
mail.transportprotocol.socketFactory.class | Only if using SSL set this value to javax.net.ssl.SSLSocketFactory | |
mail.transportprotocol.socketFactory.port | Only if using SSL | |
proxySet | Use proxy | false |
socksProxyHost | Proxy IP address | |
socksProxyPort | Proxy Port |
java.lang.NullPointerException
- if oMailProperties is nullpublic SessionHandler(MailAccount oAccount)
Create instance taking data from a MailAccount
The data of MailAccount stored at k_user_mail table is used for initializing the connection propertiesoAccount
- MailAccountpublic SessionHandler(MailAccount oAccount, java.lang.String sMBoxDirectory)
Create instance taking data from a MailAccount and set local directory for MBOX files
oAccount
- MailAccountsMBoxDirectory
- Stringpublic java.lang.String getAccountName()
Get column incoming_account of k_user_mail
public void setAccountName(java.lang.String aAccName)
public java.lang.String getAuthStr()
Get column incoming_password of k_user_mail
public void setAuthStr(java.lang.String aAutStr)
public java.lang.String getHostName()
Get column incoming_server of k_user_mail
public void setHostName(java.lang.String sName)
public java.lang.String getMBoxDirectory()
public void setMBoxDirectory(java.lang.String sDir)
public java.util.Properties getProperties()
public void setProperties(java.util.Properties oPropties)
public javax.mail.Session getSession() throws java.lang.IllegalStateException
Get incoming mail server Session
This method calls JavaMail Session.getInstance() method if neccesary, using properties currently set at this instance and SilentAuthenticator as Authenticator subclassjava.lang.IllegalStateException
java.lang.NullPointerException
public javax.mail.Session getSmtpSession() throws java.lang.IllegalStateException
Get outgoing mail server Session
This method calls JavaMail Session.getInstance() method if neccesary, using properties currently set at this instance and SilentAuthenticator as Authenticator subclassjava.lang.IllegalStateException
java.lang.NullPointerException
public javax.mail.Store getStore() throws javax.mail.NoSuchProviderException, javax.mail.MessagingException
Get Store
This method calls Session.getStore() and Store.connect() if neccesary.javax.mail.NoSuchProviderException
javax.mail.MessagingException
public javax.mail.Transport getTransport() throws javax.mail.NoSuchProviderException, javax.mail.MessagingException
Get Transport
This method calls Session.getTransport() and Transport.connect() if neccesaryjavax.mail.NoSuchProviderException
javax.mail.MessagingException
public javax.mail.Folder getFolder(java.lang.String sFolderName) throws javax.mail.NoSuchProviderException, javax.mail.MessagingException
javax.mail.NoSuchProviderException
javax.mail.MessagingException
public javax.mail.URLName getURL()
public boolean isStoreConnected()
public boolean isTransportConnected()
public void sendMessage(javax.mail.Message oMsg) throws javax.mail.NoSuchProviderException, javax.mail.SendFailedException, javax.mail.internet.ParseException, javax.mail.MessagingException, java.lang.NullPointerException, java.lang.IllegalStateException
javax.mail.NoSuchProviderException
javax.mail.SendFailedException
javax.mail.internet.ParseException
javax.mail.MessagingException
java.lang.NullPointerException
java.lang.IllegalStateException
public java.lang.String[] listFolderMessages(java.lang.String sFolderName) throws javax.mail.AuthenticationFailedException, javax.mail.NoSuchProviderException, javax.mail.MessagingException
Get a list of all folder messages which are not deleted
Messages are returned in ascending date order, oldest messages are returned firstsFolderName
- Folder Name, for example: "INBOX"javax.mail.AuthenticationFailedException
javax.mail.NoSuchProviderException
javax.mail.MessagingException
public HeadersHelper[] listFolderMessagesHeaders(java.lang.String sFolderName) throws javax.mail.AuthenticationFailedException, javax.mail.NoSuchProviderException, javax.mail.MessagingException
Get a list of headers for all folder messages which are not deleted
Messages are returned in ascending date order, oldest messages are returned firstsFolderName
- Folder Name, for example: "INBOX"javax.mail.AuthenticationFailedException
javax.mail.NoSuchProviderException
javax.mail.MessagingException
public java.lang.String[] listRecentMessages(java.lang.String sFolderName, int iMaxMsgs) throws javax.mail.AuthenticationFailedException, javax.mail.NoSuchProviderException, javax.mail.MessagingException, java.lang.IllegalArgumentException
Get a list of most recent folder messages which are not deleted, answered or marked as spam
Messages are returned in descending date order, most recent messages are returned firstsFolderName
- Folder Name, for example: "INBOX"iMaxMsgs
- Maximum number of messages to get [1..2^31-1]javax.mail.AuthenticationFailedException
javax.mail.NoSuchProviderException
javax.mail.MessagingException
java.lang.IllegalArgumentException
public void sendMessage(javax.mail.Message oMsg, javax.mail.Address[] aAddrs) throws javax.mail.NoSuchProviderException, javax.mail.SendFailedException, javax.mail.internet.ParseException, javax.mail.MessagingException, java.lang.NullPointerException
javax.mail.NoSuchProviderException
javax.mail.SendFailedException
javax.mail.internet.ParseException
javax.mail.MessagingException
java.lang.NullPointerException
public void sendMessage(javax.mail.Message oMsg, javax.mail.Address[] aAdrFrom, javax.mail.Address[] aAdrReply, javax.mail.Address[] aAdrTo, javax.mail.Address[] aAdrCc, javax.mail.Address[] aAdrBcc) throws javax.mail.NoSuchProviderException, javax.mail.SendFailedException, javax.mail.internet.ParseException, javax.mail.MessagingException, java.lang.NullPointerException
javax.mail.NoSuchProviderException
javax.mail.SendFailedException
javax.mail.internet.ParseException
javax.mail.MessagingException
java.lang.NullPointerException
public void close() throws javax.mail.MessagingException
javax.mail.MessagingException
public int sendMessage(java.lang.String sSubject, java.lang.String sFromPersonal, java.lang.String sFromAddr, java.lang.String sReplyAddr, java.lang.String[] aRecipients, javax.mail.Message.RecipientType[] aRecType, java.lang.String sTextBody, java.lang.String sHtmlBody, java.lang.String sEncoding, java.lang.String sId, java.lang.String[] aAttachmentsPath, java.lang.String sUserDir, java.io.PrintStream oOut) throws java.lang.NullPointerException, java.io.IOException, javax.mail.MessagingException, java.lang.IllegalArgumentException, java.lang.SecurityException
Send e-mail message
sSubject
- String e-mail SubjectsFromPersonal
- String Sender display namesFromAddr
- String Sender e-mail addresssReplyAddr
- String Reply-To e-mail addressaRecipients
- Array of recipients e-mail addressesaRecType
- Array of types for each recipient {to, cc, bcc}sTextBody
- String Plain Text Message BodysHtmlBody
- String HTML Text Message BodysEncoding
- Character Encoding to be usedsId
- String Message Unique Id. Optional, may be null.aAttachmentsPath
- Array of relative paths to files to be attachedsUserDir
- Base path for attached filesoOut
- PrintStream Output stream for messages verbosejava.lang.NullPointerException
java.io.IOException
javax.mail.MessagingException
java.lang.IllegalArgumentException
java.lang.SecurityException
public int sendMessage(java.lang.String sSubject, java.lang.String sFromPersonal, java.lang.String sFromAddr, java.lang.String sReplyAddr, java.lang.String[] aRecipients, javax.mail.Message.RecipientType oRecType, java.lang.String sTextBody, java.lang.String sHtmlBody, java.lang.String sEncoding, java.lang.String sId, java.lang.String[] aAttachmentsPath, java.lang.String sUserDir, java.io.PrintStream oOut) throws java.lang.NullPointerException, java.io.IOException, javax.mail.MessagingException, java.lang.IllegalArgumentException, java.lang.SecurityException
java.lang.NullPointerException
java.io.IOException
javax.mail.MessagingException
java.lang.IllegalArgumentException
java.lang.SecurityException