Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.mina.integration.spring.ssl
Class SSLContextFactoryBean

    java.lang.Object
      org.springframework.beans.factory.config.AbstractFactoryBean
          org.apache.mina.integration.spring.ssl.SSLContextFactoryBean

All Implemented Interfaces:
  BeanFactoryAware, DisposableBean, FactoryBean, InitializingBean

    public class SSLContextFactoryBean

extends AbstractFactoryBean

Spring `FactoryBean` implementation which makes it possible to configure `SSLContext` instances using Spring.

If no properties are set the returned `SSLContext` will be equivalent to what the following creates:

          SSLContext c = SSLContext.getInstance( "TLS" );
          c.init( null, null, null );

Use the properties prefixed with `keyManagerFactory` to control the creation of the `KeyManager` to be used.

Use the properties prefixed with `trustManagerFactory` to control the creation of the `TrustManagerFactory` to be used.

Version:
  $Rev: 555855 $, $Date: 2007-07-13 05:19:00 +0200 (Fri, 13 Jul 2007) $
Author:
  The Apache Directory Project (mina-dev@directory.apache.org)

Field Summary

Fields inherited from class org.springframework.beans.factory.config.AbstractFactoryBean
`logger`

Constructor Summary
`SSLContextFactoryBean()`

Method Summary
`protected Object` | `createInstance()`
`Class` | `getObjectType()`
`void` | `setKeyManagerFactory(KeyManagerFactory factory)` Sets the `KeyManagerFactory` to use.
`void` | `setKeyManagerFactoryAlgorithm(String algorithm)` Sets the algorithm to use when creating the `KeyManagerFactory` using `KeyManagerFactory.getInstance(java.lang.String)` or `KeyManagerFactory.getInstance(java.lang.String, java.lang.String)`.
`void` | `setKeyManagerFactoryAlgorithmUseDefault(boolean useDefault)` If this is set to `true` while no `KeyManagerFactory` has been set using `setKeyManagerFactory(KeyManagerFactory)` and no algorithm has been set using `setKeyManagerFactoryAlgorithm(String)` the default algorithm return by `KeyManagerFactory.getDefaultAlgorithm()` will be used.
`void` | `setKeyManagerFactoryKeyStore(KeyStore keyStore)` Sets the `KeyStore` which will be used in the call to `KeyManagerFactory.init(java.security.KeyStore, char[])` when the `SSLContext` is created.
`void` | `setKeyManagerFactoryKeyStorePassword(String password)` Sets the password which will be used in the call to `KeyManagerFactory.init(java.security.KeyStore, char[])` when the `SSLContext` is created.
`void` | `setKeyManagerFactoryProvider(String provider)` Sets the provider to use when creating the `KeyManagerFactory` using `KeyManagerFactory.getInstance(java.lang.String, java.lang.String)`.
`void` | `setProtocol(String protocol)` Sets the protocol to use when creating the `SSLContext`.
`void` | `setSecureRandom(SecureRandom secureRandom)` Sets the `SecureRandom` to use when initializing the `SSLContext`.
`void` | `setTrustManagerFactory(TrustManagerFactory factory)` Sets the `TrustManagerFactory` to use.
`void` | `setTrustManagerFactoryAlgorithm(String algorithm)` Sets the algorithm to use when creating the `TrustManagerFactory` using `TrustManagerFactory.getInstance(java.lang.String)` or `TrustManagerFactory.getInstance(java.lang.String, java.lang.String)`.
`void` | `setTrustManagerFactoryAlgorithmUseDefault(boolean useDefault)` If this is set to `true` while no `TrustManagerFactory` has been set using `setTrustManagerFactory(TrustManagerFactory)` and no algorithm has been set using `setTrustManagerFactoryAlgorithm(String)` the default algorithm return by `TrustManagerFactory.getDefaultAlgorithm()` will be used.
`void` | `setTrustManagerFactoryKeyStore(KeyStore keyStore)` Sets the `KeyStore` which will be used in the call to `TrustManagerFactory.init(java.security.KeyStore)` when the `SSLContext` is created.
`void` | `setTrustManagerFactoryParameters(ManagerFactoryParameters parameters)` Sets the `ManagerFactoryParameters` which will be used in the call to `TrustManagerFactory.init(javax.net.ssl.ManagerFactoryParameters)` when the `SSLContext` is created.
`void` | `setTrustManagerFactoryProvider(String provider)` Sets the provider to use when creating the `TrustManagerFactory` using `TrustManagerFactory.getInstance(java.lang.String, java.lang.String)`.

Methods inherited from class org.springframework.beans.factory.config.AbstractFactoryBean
`afterPropertiesSet, destroy, destroyInstance, getBeanFactory, getBeanTypeConverter, getEarlySingletonInterfaces, getObject, isSingleton, setBeanFactory, setSingleton`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### SSLContextFactoryBean

    public SSLContextFactoryBean()

Method Detail

### createInstance

    protected Object createInstance()
                             throws Exception

  Specified by:
    `createInstance` in class `AbstractFactoryBean`
  Throws:
    `Exception`

### getObjectType

    public Class getObjectType()

  Specified by:
    `getObjectType` in interface `FactoryBean`
  Specified by:
    `getObjectType` in class `AbstractFactoryBean`

### setProtocol

    public void setProtocol(String protocol)

  Sets the protocol to use when creating the `SSLContext`. The default is `TLS`.

  Parameters:
    `protocol` - the name of the protocol.
  Throws:
    `IllegalArgumentException` - if the specified value is `null`.

### setKeyManagerFactoryAlgorithmUseDefault

    public void setKeyManagerFactoryAlgorithmUseDefault(boolean useDefault)

  If this is set to `true` while no `KeyManagerFactory` has been set using `setKeyManagerFactory(KeyManagerFactory)` and no algorithm has been set using `setKeyManagerFactoryAlgorithm(String)` the default algorithm return by `KeyManagerFactory.getDefaultAlgorithm()` will be used.

  Parameters:
    `useDefault` - `true` or `false`.

### setTrustManagerFactoryAlgorithmUseDefault

    public void setTrustManagerFactoryAlgorithmUseDefault(boolean useDefault)

  If this is set to `true` while no `TrustManagerFactory` has been set using `setTrustManagerFactory(TrustManagerFactory)` and no algorithm has been set using `setTrustManagerFactoryAlgorithm(String)` the default algorithm return by `TrustManagerFactory.getDefaultAlgorithm()` will be used.

  Parameters:
    `useDefault` - `true` or `false`.

### setKeyManagerFactory

    public void setKeyManagerFactory(KeyManagerFactory factory)

  Sets the `KeyManagerFactory` to use. If this is set the properties which are used by this factory bean to create a `KeyManagerFactory` will all be ignored.

  Parameters:
    `factory` - the factory.

### setKeyManagerFactoryAlgorithm

    public void setKeyManagerFactoryAlgorithm(String algorithm)

  Sets the algorithm to use when creating the `KeyManagerFactory` using `KeyManagerFactory.getInstance(java.lang.String)` or `KeyManagerFactory.getInstance(java.lang.String, java.lang.String)`.

  This property will be ignored if a `KeyManagerFactory` has been set directly using `setKeyManagerFactory(KeyManagerFactory)`.

  If this property isn't set while no `KeyManagerFactory` has been set using `setKeyManagerFactory(KeyManagerFactory)` and `setKeyManagerFactoryAlgorithmUseDefault(boolean)` has been set to `true` the value returned by `KeyManagerFactory.getDefaultAlgorithm()` will be used instead.

  Parameters:
    `algorithm` - the algorithm to use.

### setKeyManagerFactoryProvider

    public void setKeyManagerFactoryProvider(String provider)

  Sets the provider to use when creating the `KeyManagerFactory` using `KeyManagerFactory.getInstance(java.lang.String, java.lang.String)`.

  This property will be ignored if a `KeyManagerFactory` has been set directly using `setKeyManagerFactory(KeyManagerFactory)`.

  If this property isn't set and no `KeyManagerFactory` has been set using `setKeyManagerFactory(KeyManagerFactory)` `KeyManagerFactory.getInstance(java.lang.String)` will be used to create the `KeyManagerFactory`.

  Parameters:
    `provider` - the name of the provider.

### setKeyManagerFactoryKeyStore

    public void setKeyManagerFactoryKeyStore(KeyStore keyStore)

  Sets the `KeyStore` which will be used in the call to `KeyManagerFactory.init(java.security.KeyStore, char[])` when the `SSLContext` is created.

  Parameters:
    `keyStore` - the key store.

### setKeyManagerFactoryKeyStorePassword

    public void setKeyManagerFactoryKeyStorePassword(String password)

  Sets the password which will be used in the call to `KeyManagerFactory.init(java.security.KeyStore, char[])` when the `SSLContext` is created.

  Parameters:
    `password` - the password. Use `null` to disable password.

### setTrustManagerFactory

    public void setTrustManagerFactory(TrustManagerFactory factory)

  Sets the `TrustManagerFactory` to use. If this is set the properties which are used by this factory bean to create a `TrustManagerFactory` will all be ignored.

  Parameters:
    `factory` - the factory.

### setTrustManagerFactoryAlgorithm

    public void setTrustManagerFactoryAlgorithm(String algorithm)

  Sets the algorithm to use when creating the `TrustManagerFactory` using `TrustManagerFactory.getInstance(java.lang.String)` or `TrustManagerFactory.getInstance(java.lang.String, java.lang.String)`.

  This property will be ignored if a `TrustManagerFactory` has been set directly using `setTrustManagerFactory(TrustManagerFactory)`.

  If this property isn't set while no `TrustManagerFactory` has been set using `setTrustManagerFactory(TrustManagerFactory)` and `setTrustManagerFactoryAlgorithmUseDefault(boolean)` has been set to `true` the value returned by `TrustManagerFactory.getDefaultAlgorithm()` will be used instead.

  Parameters:
    `algorithm` - the algorithm to use.

### setTrustManagerFactoryKeyStore

    public void setTrustManagerFactoryKeyStore(KeyStore keyStore)

  Sets the `KeyStore` which will be used in the call to `TrustManagerFactory.init(java.security.KeyStore)` when the `SSLContext` is created.

  This property will be ignored if `ManagerFactoryParameters` has been set directly using `setTrustManagerFactoryParameters(ManagerFactoryParameters)`.

  Parameters:
    `keyStore` - the key store.

### setTrustManagerFactoryParameters

    public void setTrustManagerFactoryParameters(ManagerFactoryParameters parameters)

  Sets the `ManagerFactoryParameters` which will be used in the call to `TrustManagerFactory.init(javax.net.ssl.ManagerFactoryParameters)` when the `SSLContext` is created.

  Parameters:
    `parameters` - describing provider-specific trust material.

### setTrustManagerFactoryProvider

    public void setTrustManagerFactoryProvider(String provider)

  Sets the provider to use when creating the `TrustManagerFactory` using `TrustManagerFactory.getInstance(java.lang.String, java.lang.String)`.

  This property will be ignored if a `TrustManagerFactory` has been set directly using `setTrustManagerFactory(TrustManagerFactory)`.

  If this property isn't set and no `TrustManagerFactory` has been set using `setTrustManagerFactory(TrustManagerFactory)` `TrustManagerFactory.getInstance(java.lang.String)` will be used to create the `TrustManagerFactory`.

  Parameters:
    `provider` - the name of the provider.

### setSecureRandom

    public void setSecureRandom(SecureRandom secureRandom)

  Sets the `SecureRandom` to use when initializing the `SSLContext`. The JVM's default will be used if this isn't set.

  Parameters:
    `secureRandom` - the `SecureRandom` or `null` if the JVM's default should be used.
  See Also:
    `SSLContext.init(javax.net.ssl.KeyManager[], javax.net.ssl.TrustManager[], java.security.SecureRandom)`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2004-2008 Apache MINA Project. All Rights Reserved.