com.funambol.email.transport
Class CommonMailServerWrapper

java.lang.Object
  extended bycom.funambol.email.transport.CommonMailServerWrapper
All Implemented Interfaces:
IMailServerWrapper
Direct Known Subclasses:
ImapMailServerWrapper, PopMailServerWrapper

public abstract class CommonMailServerWrapper
extends java.lang.Object
implements IMailServerWrapper

Create a connection with a Mail Server


Field Summary
protected  DefaultFolder defaultFolder
           
protected  java.util.Locale locale
           
protected  java.util.logging.Logger log
           
protected  javax.mail.Folder mailDefaultFolder
           
protected  java.lang.String serverOut
           
protected  java.lang.String serverType
           
protected  javax.mail.Session session
           
protected  javax.mail.Store store
           
protected  java.lang.String userAddress
           
 
Constructor Summary
CommonMailServerWrapper()
           
 
Method Summary
 void checkUser(java.lang.String server, java.lang.String incomingPort, java.lang.String user, java.lang.String password, boolean isSSL, java.lang.String keystorePath, java.lang.String keystorePassphrase)
           
 DefaultFolder getDefaultFolder()
           
 java.util.Locale getLocale()
           
 javax.mail.Folder getMailDefaultFolder()
           
 java.lang.String getServerOut()
          used in the creation of the Message-ID see IMAP-based getEmailFromUID
 java.lang.String getServerType()
          used in getOnlyMailTerm see IMAP-based getOnlyMailTerm
 javax.mail.Session getSession()
           
 javax.mail.Store getStore()
           
 java.lang.String getUserAddress()
          used in the creation of the Message-ID see IMAP-based getEmailFromUID
protected  boolean multipleOpenConnection(java.lang.String incomingServer, java.lang.String user, java.lang.String password)
           
abstract  void openConnection(java.lang.String serverType, java.lang.String outgoingServer, java.lang.String outgoingPort, boolean smtpAuth, java.lang.String incomingServer, java.lang.String incomingPort, DefaultFolder defaultFolder, java.lang.String user, java.lang.String password, boolean isSSL, java.lang.String keystorePath, java.lang.String keystorePassphrase)
          opens the connection with the mail server
abstract  void releaseConnection()
          closes the connection with the mail server
protected abstract  void setConnectionNormal(java.util.Properties props, java.lang.String outgoingServer, java.lang.String outgoingPort, boolean smtpAuth, java.lang.String incomingServer, java.lang.String incomingPort)
           
protected abstract  void setConnectionSSL(java.util.Properties props, java.lang.String outgoingServer, java.lang.String outgoingPort, boolean smtpAuth, java.lang.String incomingServer, java.lang.String incomingPort, com.sun.net.ssl.internal.ssl.Provider provider, java.lang.String keystorePath, java.lang.String kestorePassphrase)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

log

protected java.util.logging.Logger log

session

protected javax.mail.Session session

store

protected javax.mail.Store store

defaultFolder

protected DefaultFolder defaultFolder

mailDefaultFolder

protected javax.mail.Folder mailDefaultFolder

locale

protected java.util.Locale locale

serverType

protected java.lang.String serverType

serverOut

protected java.lang.String serverOut

userAddress

protected java.lang.String userAddress
Constructor Detail

CommonMailServerWrapper

public CommonMailServerWrapper()
Method Detail

openConnection

public abstract void openConnection(java.lang.String serverType,
                                    java.lang.String outgoingServer,
                                    java.lang.String outgoingPort,
                                    boolean smtpAuth,
                                    java.lang.String incomingServer,
                                    java.lang.String incomingPort,
                                    DefaultFolder defaultFolder,
                                    java.lang.String user,
                                    java.lang.String password,
                                    boolean isSSL,
                                    java.lang.String keystorePath,
                                    java.lang.String keystorePassphrase)
                             throws EmailAccessException
opens the connection with the mail server

Specified by:
openConnection in interface IMailServerWrapper
Parameters:
serverType - String
outgoingServer - String
outgoingPort - String
incomingServer - String
incomingPort - String
defaultFolder - DefaultFolder
user - String
password - String
isSSL - boolean
Throws:
EmailAccessException

releaseConnection

public abstract void releaseConnection()
                                throws EmailAccessException
Description copied from interface: IMailServerWrapper
closes the connection with the mail server

Specified by:
releaseConnection in interface IMailServerWrapper
Throws:
EmailAccessException

checkUser

public void checkUser(java.lang.String server,
                      java.lang.String incomingPort,
                      java.lang.String user,
                      java.lang.String password,
                      boolean isSSL,
                      java.lang.String keystorePath,
                      java.lang.String keystorePassphrase)
               throws EmailAccessException
Specified by:
checkUser in interface IMailServerWrapper
Parameters:
server - String
incomingPort - String
user - String
password - String
isSSL - boolean
keystorePath - Path to the keystore file used in SSL certification
keystorePassphrase - Passphrase of the keystore file
Throws:
EmailAccessException

setConnectionNormal

protected abstract void setConnectionNormal(java.util.Properties props,
                                            java.lang.String outgoingServer,
                                            java.lang.String outgoingPort,
                                            boolean smtpAuth,
                                            java.lang.String incomingServer,
                                            java.lang.String incomingPort)
Parameters:
props - Properties
outgoingServer - String
outgoingPort - String
incomingServer - String
incomingPort - String

setConnectionSSL

protected abstract void setConnectionSSL(java.util.Properties props,
                                         java.lang.String outgoingServer,
                                         java.lang.String outgoingPort,
                                         boolean smtpAuth,
                                         java.lang.String incomingServer,
                                         java.lang.String incomingPort,
                                         com.sun.net.ssl.internal.ssl.Provider provider,
                                         java.lang.String keystorePath,
                                         java.lang.String kestorePassphrase)
Parameters:
props - Properties
outgoingServer - String
outgoingPort - String
incomingServer - String
incomingPort - String
provider - Provider

getSession

public javax.mail.Session getSession()
Specified by:
getSession in interface IMailServerWrapper
Returns:
Session

getStore

public javax.mail.Store getStore()
Specified by:
getStore in interface IMailServerWrapper
Returns:
Store

getMailDefaultFolder

public javax.mail.Folder getMailDefaultFolder()
Specified by:
getMailDefaultFolder in interface IMailServerWrapper
Returns:
Folder

getDefaultFolder

public DefaultFolder getDefaultFolder()
Specified by:
getDefaultFolder in interface IMailServerWrapper
Returns:
DefaultFolder

getLocale

public java.util.Locale getLocale()
Specified by:
getLocale in interface IMailServerWrapper
Returns:
Locale

getServerType

public java.lang.String getServerType()
used in getOnlyMailTerm see IMAP-based getOnlyMailTerm

Specified by:
getServerType in interface IMailServerWrapper
Returns:
serverType

getServerOut

public java.lang.String getServerOut()
used in the creation of the Message-ID see IMAP-based getEmailFromUID

Returns:
serverOut

getUserAddress

public java.lang.String getUserAddress()
used in the creation of the Message-ID see IMAP-based getEmailFromUID

Returns:
String

multipleOpenConnection

protected boolean multipleOpenConnection(java.lang.String incomingServer,
                                         java.lang.String user,
                                         java.lang.String password)
                                  throws EmailAccessException
Throws:
EmailAccessException


Copyright © 2003-2006 Funambol.