Sun Adapter for e-Mail API

com.stc.connector.emailadapter.appconn
Class EmailSecurityProperties

java.lang.Object
  extended by com.stc.connector.emailadapter.appconn.EmailSecurityProperties

public final class EmailSecurityProperties
extends java.lang.Object

Wrapper class for Security related SSL properties.

Version:
$Revision: 1.2 $
Author:
James D. Tran

Field Summary
protected static java.lang.String DEFAULT_KEYMANAGER_ALGORITHM_NAME
          Default KeyManager algorithm name property
protected static java.lang.String DEFAULT_SSL_SOCKETFACTORY_IMPL_PROPERTY
          SSL SocketFactory implementation property
protected static java.lang.String DEFAULT_SSL_SSLSERVERSOCKETFACTORY_IMPL_PROPERTY
          SSL ServerSocketFactory implementation property
protected static java.lang.String DEFAULT_TRUSTMANAGER_ALGORITHM_NAME
          Default TrustManager algorithm name property
protected static java.lang.String X509_CERTIFICATE_IMPL_PROPERTY
          X509 Certificate implementation property
 
Constructor Summary
EmailSecurityProperties()
           
 
Method Summary
static void addProvider(java.lang.String providerClass)
          Add a Cryptographic Service Provider (provider).
static java.lang.String getKeyManagerAlgorithm()
          Gets the default Key Manager Algorithm name previously set.
static java.security.Provider[] getProviders()
          Gets a list of Cryptographic Service Provider (provider).
static java.lang.String getSSLServerSocketFactoryImpl()
          Gets the default SSL Server Socket Factory implementation.
static java.lang.String getSSLSocketFactoryImpl()
          Gets the default SSL Socket Factory implementation.
static java.lang.String getTrustManagerAlgorithm()
          Gets the default Trust Manager Algorithm name previously set.
static java.lang.String getX509CertificateImpl()
          Gets the X509Certificate implementation.
static void insertProviderAt(java.lang.String providerClass, int position)
          Add a Cryptographic Service Provider (provider).
static void setKeyManagerAlgorithm(java.lang.String keyManagerAlgoName)
          Sets the default Key Manager Algorithm name.
static void setSSLServerSocketFactoryImpl(java.lang.String sslServerSocketFactoryImplClass)
          Sets the default SSL Server Socket Factory implementation.
static void setSSLSocketFactoryImpl(java.lang.String sslSocketFactoryImplClass)
          Sets the default SSL Socket Factory implementation.
static void setTrustManagerAlgorithm(java.lang.String trustManagerAlgoName)
          Sets the default Trust Manager Algorithm name.
static void setX509CertificateImpl(java.lang.String x509CertificateImpl)
          Sets the X509Certificate implementation.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

X509_CERTIFICATE_IMPL_PROPERTY

protected static final java.lang.String X509_CERTIFICATE_IMPL_PROPERTY
X509 Certificate implementation property

See Also:
Constant Field Values

DEFAULT_SSL_SOCKETFACTORY_IMPL_PROPERTY

protected static final java.lang.String DEFAULT_SSL_SOCKETFACTORY_IMPL_PROPERTY
SSL SocketFactory implementation property

See Also:
Constant Field Values

DEFAULT_SSL_SSLSERVERSOCKETFACTORY_IMPL_PROPERTY

protected static final java.lang.String DEFAULT_SSL_SSLSERVERSOCKETFACTORY_IMPL_PROPERTY
SSL ServerSocketFactory implementation property

See Also:
Constant Field Values

DEFAULT_KEYMANAGER_ALGORITHM_NAME

protected static final java.lang.String DEFAULT_KEYMANAGER_ALGORITHM_NAME
Default KeyManager algorithm name property

See Also:
Constant Field Values

DEFAULT_TRUSTMANAGER_ALGORITHM_NAME

protected static final java.lang.String DEFAULT_TRUSTMANAGER_ALGORITHM_NAME
Default TrustManager algorithm name property

See Also:
Constant Field Values
Constructor Detail

EmailSecurityProperties

public EmailSecurityProperties()
Method Detail

addProvider

public static void addProvider(java.lang.String providerClass)
                        throws java.lang.Exception
Add a Cryptographic Service Provider (provider). This method will add a JSSE provider implementation to the list of provider implementations.

Parameters:
providerClass - The JSSE Crytographic Service Provider to add to the list of JSSE provider implementations. For example, to use SUN's JSSE Provider reference implementation, specify "com.sun.net.ssl.internal.ssl.Provider".
Throws:
java.lang.Exception - upone error.

insertProviderAt

public static void insertProviderAt(java.lang.String providerClass,
                                    int position)
                             throws java.lang.Exception
Add a Cryptographic Service Provider (provider). This method will add a JSSE provider implementation to the list of provider implementations.

Parameters:
providerClass - The JSSE Crytographic Service Provider to add to the list of JSSE provider implementations. For example, to use SUN's JSSE Provider reference implementation, specify "com.sun.net.ssl.internal.ssl.Provider".
position - The position to insert this Provider.
Throws:
java.lang.Exception - upon error.

getProviders

public static java.security.Provider[] getProviders()
Gets a list of Cryptographic Service Provider (provider). This method will get a list of the providers that were previously set.

Returns:
An array of Provider.
See Also:
addProvider(java.lang.String), insertProviderAt(java.lang.String, int), Provider

setX509CertificateImpl

public static void setX509CertificateImpl(java.lang.String x509CertificateImpl)
                                   throws java.lang.Exception
Sets the X509Certificate implementation.

Parameters:
x509CertificateImpl - The implementation class of X509Certificate. For example, if the implementation class is called MyX509CertificateImpl and it appears in the com.radcrypto package, you should specify com.radcrypto.MyX509CertificateImpl.
Throws:
java.lang.Exception - if unable to set the X509Certificate implementation.

getX509CertificateImpl

public static java.lang.String getX509CertificateImpl()
Gets the X509Certificate implementation.

Returns:
The implementation class of X509Certificate. For example, if the implementation class was set to MyX509CertificateImpl and it appears in the com.radcrypto package, it will return com.radcrypto.MyX509CertificateImpl. Null will be returned if X509Certificate implementation was not set.

setSSLSocketFactoryImpl

public static void setSSLSocketFactoryImpl(java.lang.String sslSocketFactoryImplClass)
                                    throws java.lang.Exception
Sets the default SSL Socket Factory implementation.

Parameters:
sslSocketFactoryImplClass - The implementation class of SSL Socket Factory. For example, if the implementation class is called MySSLSocketFactoryImpl and it appears in the com.radcrypto package, you should specify com.radcrypto.MySSLSocketFactoryImpl.
Throws:
java.lang.Exception - if unable to set the default SSL Socket Factory implementation.

getSSLSocketFactoryImpl

public static java.lang.String getSSLSocketFactoryImpl()
Gets the default SSL Socket Factory implementation.

Returns:
The implementation class of SSL Socket Factory. For example, if the implementation class was set to MySSLSocketFactoryImpl and it appears in the com.radcrypto package, it will return com.radcrypto.MySSLSocketFactoryImpl. If SSL Socket Factory was not set, it will return null.

setSSLServerSocketFactoryImpl

public static void setSSLServerSocketFactoryImpl(java.lang.String sslServerSocketFactoryImplClass)
                                          throws java.lang.Exception
Sets the default SSL Server Socket Factory implementation.

Parameters:
sslServerSocketFactoryImplClass - The implementation class of SSL Server Socket Factory. For example, if the implementation class is called MySSLServerSocketFactoryImpl and it appears in the com.radcrypto package, you should specify com.radcrypto.MySSLServerSocketFactoryImpl.
Throws:
java.lang.Exception - if unable to set the default SSL Server Socket Factory implementation.

getSSLServerSocketFactoryImpl

public static java.lang.String getSSLServerSocketFactoryImpl()
Gets the default SSL Server Socket Factory implementation.

Returns:
The implementation class of SSL Server Socket Factory. For example, if the implementation class was set to MySSLServerSocketFactoryImpl and it appears in the com.radcrypto package, it will return com.radcrypto.MySSLServerSocketFactoryImpl. If SSL Server Socket Factory was not set, it will return null.

setKeyManagerAlgorithm

public static void setKeyManagerAlgorithm(java.lang.String keyManagerAlgoName)
                                   throws java.lang.Exception
Sets the default Key Manager Algorithm name.

Parameters:
keyManagerAlgoName - The name of the key manager algorithm to use. For example, the default key manager algorithm use in SUN's reference implementation of JSSE is "SunX509".
Throws:
java.lang.Exception - if unable to set the default key manager algorithm name.

getKeyManagerAlgorithm

public static java.lang.String getKeyManagerAlgorithm()
Gets the default Key Manager Algorithm name previously set.

Returns:
The name of the key manager algorithm that was previously set.

setTrustManagerAlgorithm

public static void setTrustManagerAlgorithm(java.lang.String trustManagerAlgoName)
                                     throws java.lang.Exception
Sets the default Trust Manager Algorithm name.

Parameters:
trustManagerAlgoName - The name of the trust manager algorithm to use. For example, the default trust manager algorithm use in SUN's reference implementation of JSSE is "SunX509".
Throws:
java.lang.Exception - if unable to set the default trust manager algorithm name.

getTrustManagerAlgorithm

public static java.lang.String getTrustManagerAlgorithm()
Gets the default Trust Manager Algorithm name previously set.

Returns:
The name of the trust manager algorithm that was previously set.

Sun Adapter for e-Mail API