Ontimize 5.2071EN

com.ontimize.util.mail
Class AbstractMailManager

java.lang.Object
  extended bycom.ontimize.util.mail.AbstractMailManager
Direct Known Subclasses:
DefaultMailManager

public abstract class AbstractMailManager
extends java.lang.Object

Class that contains useful methods to get mail parameters like server mail, message, authentication type...

Author:
Imatia Innovation
See Also:
{@link http://java.sun.com/products/javamail/}

Nested Class Summary
protected static class AbstractMailManager.PasswordDocument
           
protected static class AbstractMailManager.PopupAuthenticator
           
protected static class AbstractMailManager.SilentAuthenticator
           
 
Field Summary
static boolean DEBUG
           
protected  int port
           
protected  java.lang.String socketFactoryClass
           
protected  java.lang.String socketFactoryFallback
           
protected  java.lang.String starttls
           
protected  int timeoutSMTP
           
protected  boolean useOnlyUSASCII
           
 
Constructor Summary
AbstractMailManager()
           
 
Method Summary
 javax.mail.Message[] checkMail(java.lang.String password, boolean deleteMessages)
           
 int checkMailFolder(java.lang.String password, java.lang.String folderName)
           
 javax.mail.Message createHTMLMessage(javax.mail.Session s, java.lang.String from, java.lang.String to, java.lang.String subject, java.lang.String text)
           
 javax.mail.Message createMessage(boolean auth, java.lang.String from, java.lang.String[] to, java.lang.String subject, java.lang.String text)
          Creates a Message class instance using the entry parameters.
 javax.mail.Message createMessage(boolean auth, java.lang.String from, java.lang.String to, java.lang.String subject, java.lang.String text)
          Creates a Message class instance using the entry parameters.
 javax.mail.Message createMessage(javax.mail.Session s)
           
 javax.mail.Message createMessage(javax.mail.Session session, java.lang.String from, java.lang.String[] to, java.lang.String subject, java.lang.String text)
          Creates a Message class instance using the entry parameters.
 javax.mail.Message createMessage(javax.mail.Session session, java.lang.String from, java.lang.String[] to, java.lang.String subject, java.lang.String text, java.lang.String[] attachment)
          Creates a Message class instance using the entry parameters.
 javax.mail.Message createMessage(javax.mail.Session session, java.lang.String from, java.lang.String to, java.lang.String subject, java.lang.String text)
          Creates a Message class instance using the entry parameters.
 javax.mail.Message createMultipartMessage(javax.mail.Session s, java.lang.String from, java.lang.String to, java.lang.String subject, java.lang.String text)
           
 javax.mail.Address getAddress(java.lang.String mailAddress)
           
 javax.mail.Address getAddress(java.lang.String mailAddress, java.lang.String name)
           
 javax.mail.Authenticator getAuthenticator()
           
 java.lang.String getMailServer()
           
 java.util.Hashtable getMessageInfo(javax.mail.Message message)
          Get a Hashtable with the information of each part of the message.
 javax.mail.Session getNewSession(java.lang.String mailServer, java.lang.String userName)
           
 int getPort()
           
 javax.mail.Session getSession(java.lang.String mailServer)
           
 javax.mail.Session getSession(java.lang.String mailServer, java.lang.String userName)
           
 javax.mail.Session getSessionWithSMTPAuth(java.lang.String mailServer, java.lang.String userName)
           
 java.lang.String getSocketFactoryClass()
           
 java.lang.String getSocketFactoryFallback()
           
 java.lang.String getStarttls()
           
 javax.mail.Store getStore()
           
 javax.mail.Store getStore(java.lang.String provider)
           
 java.lang.String getUserName()
           
 void send(javax.mail.Message message)
           
 void send(javax.mail.Message[] messages, boolean auth)
           
 void send(java.lang.String from, java.lang.String[] to, java.lang.String subject, java.lang.String text, java.lang.String[] filename, boolean auth)
           
 void send(java.lang.String from, java.lang.String to, java.lang.String subject, java.lang.String text)
           
 void send(java.lang.String from, java.lang.String to, java.lang.String subject, java.lang.String text, boolean auth)
           
 void sendHTMLMessage(java.lang.String from, java.lang.String to, java.lang.String subject, java.lang.String html)
           
 void setAuthenticator(javax.mail.Authenticator a)
           
 void setMailServer(java.lang.String mailServer)
           
 void setPort(int port)
           
 void setSMTPTimeout(int timeout)
           
 void setSocketFactoryClass(java.lang.String socketFactoryClass)
           
 void setSocketFactoryFallback(java.lang.String socketFactoryFallback)
           
 void setStarttls(java.lang.String starttls)
           
 void setUseAuth(boolean useAuth)
           
 void setUseOnlyUSASCII(boolean b)
           
 void setUserName(java.lang.String userName)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DEBUG

public static boolean DEBUG

timeoutSMTP

protected int timeoutSMTP

port

protected int port

starttls

protected java.lang.String starttls

socketFactoryFallback

protected java.lang.String socketFactoryFallback

socketFactoryClass

protected java.lang.String socketFactoryClass

useOnlyUSASCII

protected boolean useOnlyUSASCII
Constructor Detail

AbstractMailManager

public AbstractMailManager()
Method Detail

getSocketFactoryFallback

public java.lang.String getSocketFactoryFallback()

setSocketFactoryFallback

public void setSocketFactoryFallback(java.lang.String socketFactoryFallback)

getSocketFactoryClass

public java.lang.String getSocketFactoryClass()

setSocketFactoryClass

public void setSocketFactoryClass(java.lang.String socketFactoryClass)

getPort

public int getPort()

setPort

public void setPort(int port)

getStarttls

public java.lang.String getStarttls()

setStarttls

public void setStarttls(java.lang.String starttls)

setAuthenticator

public void setAuthenticator(javax.mail.Authenticator a)

setUserName

public void setUserName(java.lang.String userName)

setMailServer

public void setMailServer(java.lang.String mailServer)

getUserName

public java.lang.String getUserName()

getMailServer

public java.lang.String getMailServer()

getAuthenticator

public javax.mail.Authenticator getAuthenticator()

createMessage

public javax.mail.Message createMessage(javax.mail.Session s)

getSession

public javax.mail.Session getSession(java.lang.String mailServer)

getSession

public javax.mail.Session getSession(java.lang.String mailServer,
                                     java.lang.String userName)

getSessionWithSMTPAuth

public javax.mail.Session getSessionWithSMTPAuth(java.lang.String mailServer,
                                                 java.lang.String userName)

getNewSession

public javax.mail.Session getNewSession(java.lang.String mailServer,
                                        java.lang.String userName)

getAddress

public javax.mail.Address getAddress(java.lang.String mailAddress,
                                     java.lang.String name)
                              throws java.io.UnsupportedEncodingException
Throws:
java.io.UnsupportedEncodingException

getAddress

public javax.mail.Address getAddress(java.lang.String mailAddress)
                              throws javax.mail.internet.AddressException
Throws:
javax.mail.internet.AddressException

createMessage

public javax.mail.Message createMessage(javax.mail.Session session,
                                        java.lang.String from,
                                        java.lang.String to,
                                        java.lang.String subject,
                                        java.lang.String text)
                                 throws javax.mail.MessagingException
Creates a Message class instance using the entry parameters.

Parameters:
session - Session
from - Message source
to - Message destiny
subject - String with the message subject.
text - String with the message contained.
Returns:
a Message
Throws:
javax.mail.MessagingException

createMessage

public javax.mail.Message createMessage(javax.mail.Session session,
                                        java.lang.String from,
                                        java.lang.String[] to,
                                        java.lang.String subject,
                                        java.lang.String text)
                                 throws javax.mail.MessagingException
Creates a Message class instance using the entry parameters. This Message could have multiple destinies.

Parameters:
session - Session
from - Message source
to - Message destinies
subject - String with the message subject.
text - String with the message contained.
Returns:
Throws:
javax.mail.MessagingException

createMessage

public javax.mail.Message createMessage(boolean auth,
                                        java.lang.String from,
                                        java.lang.String to,
                                        java.lang.String subject,
                                        java.lang.String text)
                                 throws javax.mail.MessagingException
Creates a Message class instance using the entry parameters.

Parameters:
auth - boolean to indicates when the authentication is required
from - Message source
to - Message destiny
subject - String with the message subject.
text - String with the message contained.
Returns:
Throws:
javax.mail.MessagingException

createMessage

public javax.mail.Message createMessage(boolean auth,
                                        java.lang.String from,
                                        java.lang.String[] to,
                                        java.lang.String subject,
                                        java.lang.String text)
                                 throws javax.mail.MessagingException
Creates a Message class instance using the entry parameters. This Message could have multiple destinies.

Parameters:
auth - true is the authentication is required.
from - Message source
to - Message destinies
subject - String with the message subject.
text - String with the message contained.
Returns:
Throws:
javax.mail.MessagingException

createMultipartMessage

public javax.mail.Message createMultipartMessage(javax.mail.Session s,
                                                 java.lang.String from,
                                                 java.lang.String to,
                                                 java.lang.String subject,
                                                 java.lang.String text)
                                          throws javax.mail.MessagingException
Throws:
javax.mail.MessagingException

createMessage

public javax.mail.Message createMessage(javax.mail.Session session,
                                        java.lang.String from,
                                        java.lang.String[] to,
                                        java.lang.String subject,
                                        java.lang.String text,
                                        java.lang.String[] attachment)
                                 throws javax.mail.MessagingException
Creates a Message class instance using the entry parameters. This Message could have attachment files.

Parameters:
session - Session
from - Message source
to - Message destinies
subject - String with the message subject.
text - String with the message contained.
attachment - File paths to be attached.
Returns:
Throws:
javax.mail.MessagingException

createHTMLMessage

public javax.mail.Message createHTMLMessage(javax.mail.Session s,
                                            java.lang.String from,
                                            java.lang.String to,
                                            java.lang.String subject,
                                            java.lang.String text)
                                     throws javax.mail.MessagingException
Throws:
javax.mail.MessagingException

send

public void send(java.lang.String from,
                 java.lang.String to,
                 java.lang.String subject,
                 java.lang.String text)
          throws javax.mail.MessagingException
Throws:
javax.mail.MessagingException

send

public void send(java.lang.String from,
                 java.lang.String to,
                 java.lang.String subject,
                 java.lang.String text,
                 boolean auth)
          throws javax.mail.MessagingException
Throws:
javax.mail.MessagingException

send

public void send(java.lang.String from,
                 java.lang.String[] to,
                 java.lang.String subject,
                 java.lang.String text,
                 java.lang.String[] filename,
                 boolean auth)
          throws java.lang.Exception
Throws:
java.lang.Exception

send

public void send(javax.mail.Message message)
          throws javax.mail.MessagingException
Throws:
javax.mail.MessagingException

send

public void send(javax.mail.Message[] messages,
                 boolean auth)
          throws javax.mail.MessagingException
Throws:
javax.mail.MessagingException

sendHTMLMessage

public void sendHTMLMessage(java.lang.String from,
                            java.lang.String to,
                            java.lang.String subject,
                            java.lang.String html)
                     throws javax.mail.MessagingException
Throws:
javax.mail.MessagingException

getStore

public javax.mail.Store getStore()
                          throws javax.mail.NoSuchProviderException,
                                 javax.mail.MessagingException
Throws:
javax.mail.NoSuchProviderException
javax.mail.MessagingException

getStore

public javax.mail.Store getStore(java.lang.String provider)
                          throws javax.mail.NoSuchProviderException,
                                 javax.mail.MessagingException
Throws:
javax.mail.NoSuchProviderException
javax.mail.MessagingException

setUseAuth

public void setUseAuth(boolean useAuth)

setSMTPTimeout

public void setSMTPTimeout(int timeout)

setUseOnlyUSASCII

public void setUseOnlyUSASCII(boolean b)

checkMail

public javax.mail.Message[] checkMail(java.lang.String password,
                                      boolean deleteMessages)

checkMailFolder

public int checkMailFolder(java.lang.String password,
                           java.lang.String folderName)

getMessageInfo

public java.util.Hashtable getMessageInfo(javax.mail.Message message)
                                   throws java.lang.Exception
Get a Hashtable with the information of each part of the message. This part are: source, subject, content, attachment and inlines.

Parameters:
message - Message to get the information from.
Returns:
Part of the message, with the following keys: Source, Subject, Content, Attachment, Inline
Throws:
java.lang.Exception

Ontimize