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.mule.transport.ssl
Class SslConnector

    java.lang.Object
      org.mule.transport.AbstractConnector
          org.mule.transport.tcp.TcpConnector
              org.mule.transport.ssl.SslConnector

All Implemented Interfaces:
  EventListener, javax.resource.spi.work.WorkListener, Disposable, Initialisable, Lifecycle, LifecycleStateEnabled, Startable, Stoppable, NamedObject, TlsDirectKeyStore, TlsDirectTrustStore, TlsIndirectKeyStore, TlsIndirectTrustStore, TlsProtocolHandler, Connectable, Connector

Direct Known Subclasses:
  TlsConnector

    public class SslConnector

extends TcpConnector
implements TlsDirectKeyStore, TlsIndirectKeyStore, TlsDirectTrustStore, TlsProtocolHandler

`SslConnector` provides a connector for SSL connections. Note that the *only* function of the code in this package is to configure and provide SSL enabled sockets. All other logic is identical to TCP.

Field Summary
`static String` | `LOCAL_CERTIFICATES`
`static String` | `PEER_CERTIFICATES`
`static String` | `SSL`

Fields inherited from class org.mule.transport.tcp.TcpConnector
`CLIENT, DEFAULT_BACKLOG, DEFAULT_BUFFER_SIZE, DEFAULT_SO_LINGER, DEFAULT_SOCKET_TIMEOUT, KEEP_SEND_SOCKET_OPEN_PROPERTY, SERVER, TCP`

Fields inherited from class org.mule.transport.AbstractConnector
`connected, createMultipleTransactedReceivers, DEFAULT_NUM_CONCURRENT_TX_RECEIVERS, dispatcherFactory, dispatcherPoolFactory, dispatchers, initialStateStopped, lifecycleManager, logger, muleContext, muleMessageFactory, name, numberOfConcurrentTransactedReceivers, PROPERTY_POLLING_FREQUENCY, receivers, requesterFactory, requesters, serviceDescriptor, serviceOverrides, sessionHandler, startOnConnect`

Fields inherited from interface org.mule.api.transport.Connector
`INT_VALUE_NOT_SET`

Fields inherited from interface org.mule.api.lifecycle.Disposable
`PHASE_NAME`

Constructor Summary
`SslConnector(MuleContext context)`

Method Summary
`protected void` | `doInitialise()`
`String` | `getClientKeyStore()`
`String` | `getClientKeyStorePassword()`
`String` | `getClientKeyStoreType()`
`String` | `getKeyManagerAlgorithm()`
`KeyManagerFactory` | `getKeyManagerFactory()`
`String` | `getKeyPassword()`
`String` | `getKeyStore()`
`String` | `getKeyStorePassword()`
`String` | `getKeyStoreType()`
`String` | `getProtocol()`
`String` | `getProtocolHandler()`
`Provider` | `getProvider()`
`SecurityProviderFactory` | `getSecurityProviderFactory()`
`protected ServerSocket` | `getServerSocket(URI uri)`
`long` | `getSslHandshakeTimeout()`
`String` | `getSslType()`
`String` | `getTrustManagerAlgorithm()`
`TrustManagerFactory` | `getTrustManagerFactory()`
`String` | `getTrustStore()`
`String` | `getTrustStorePassword()`
`String` | `getTrustStoreType()`
`boolean` | `isExplicitTrustStoreOnly()` If the trust store is undefined and the trust store generated via System properties then the key store certificates defined via TODO can be used as a source of trust information.
`boolean` | `isRequireClientAuthentication()` If a server socket is constructed directly (see `TlsConfiguration`) then this flag will control whether client authenticatin is required.
`void` | `setClientKeyStore(String clientKeyStore)`
`void` | `setClientKeyStorePassword(String clientKeyStorePassword)`
`void` | `setClientKeyStoreType(String clientKeyStoreType)`
`void` | `setExplicitTrustStoreOnly(boolean explicitTrustStoreOnly)` If the trust store is undefined and the trust store generated via System properties then the key store certificates defined via TODO can be used as a source of trust information.
`void` | `setKeyManagerAlgorithm(String keyManagerAlgorithm)`
`void` | `setKeyPassword(String keyPassword)`
`void` | `setKeyStore(String keyStore)`
`void` | `setKeyStorePassword(String storePassword)`
`void` | `setKeyStoreType(String keystoreType)`
`void` | `setProtocolHandler(String protocolHandler)`
`void` | `setProvider(Provider provider)`
`void` | `setRequireClientAuthentication(boolean requireClientAuthentication)` If a server socket is constructed directly (see `TlsConfiguration`) then this flag will control whether client authenticatin is required.
`void` | `setSecurityProviderFactory(SecurityProviderFactory spFactory)`
`void` | `setSslHandshakeTimeout(long sslHandshakeTimeout)`
`void` | `setSslType(String sslType)`
`void` | `setTrustManagerAlgorithm(String trustManagerAlgorithm)`
`void` | `setTrustManagerFactory(TrustManagerFactory trustManagerFactory)`
`void` | `setTrustStore(String trustStore)`
`void` | `setTrustStorePassword(String trustStorePassword)`
`void` | `setTrustStoreType(String trustStoreType)`

Methods inherited from class org.mule.transport.tcp.TcpConnector
`configureSocket, doConnect, doDisconnect, doDispose, doStart, doStop, getBacklog, getBufferSize, getClientSoTimeout, getDispatchers, getKeepAliveMonitor, getKeepAliveTimeout, getOutputStream, getReceiveBacklog, getReceiveBufferSize, getSendBufferSize, getServerSocketFactory, getServerSoTimeout, getSocket, getSocketFactory, getSocketSoLinger, getTcpProtocol, isKeepAlive, isKeepSendSocketOpen, isResponseEnabled, isReuseAddress, isSendTcpNoDelay, setBacklog, setBufferSize, setClientSoTimeout, setDispatcherFactory, setKeepAlive, setKeepAliveTimeout, setKeepSendSocketOpen, setReceiveBacklog, setReceiveBufferSize, setReuseAddress, setSendBufferSize, setSendTcpNoDelay, setServerSocketFactory, setServerSoTimeout, setSocketFactory, setSocketSoLinger, setTcpProtocol, setTimeout`

Methods inherited from class org.mule.transport.AbstractConnector
`clearDispatchers, clearRequesters, configureDispatcherPool, connect, createDispatcherMessageProcessor, createMuleMessageFactory, createReceiver, createScheduler, destroyReceiver, disconnect, dispose, disposeReceivers, disposeWorkManagers, doUnregisterListener, exceptionThrown, fireNotification, getConnectEventId, getConnectionDescription, getDefaultExchangePattern, getDefaultInboundTransformers, getDefaultOutboundTransformers, getDefaultResponseTransformers, getDispatcherFactory, getDispatcherPoolFactory, getDispatcherThreadingProfile, getDispatcherWorkManager, getInboundExchangePatterns, getLifecycleState, getMaxDispatchersActive, getMaxRequestersActive, getMaxTotalDispatchers, getMuleContext, getMuleMessageFactory, getName, getNumberOfConcurrentTransactedReceivers, getOutboundExchangePatterns, getOutputStream, getReceiver, getReceiverKey, getReceivers, getReceivers, getReceiverThreadingProfile, getReceiverWorkManager, getReplyToHandler, getRequesterFactory, getRequesterThreadingProfile, getRequesterWorkManager, getRetryPolicyTemplate, getScheduler, getServiceDescriptor, getServiceOverrides, getSessionHandler, getSupportedProtocols, handleException, handleWorkException, initFromServiceDescriptor, initialise, initialiseFromUrl, initWorkManagers, isConnected, isCreateMultipleTransactedReceivers, isDisposed, isEnableMessageEvents, isInitialised, isInitialStateStopped, isStarted, isStopped, isValidateConnections, lookupReceiver, registerListener, registerSupportedMetaProtocol, registerSupportedProtocol, registerSupportedProtocolWithoutPrefix, request, request, setConnected, setCreateMultipleTransactedReceivers, setDispatcherPoolFactory, setDispatcherPoolMaxWait, setDispatcherPoolWhenExhaustedAction, setDispatcherThreadingProfile, setDynamicNotification, setInitialStateStopped, setMaxDispatchersActive, setMaxRequestersActive, setName, setNumberOfConcurrentTransactedReceivers, setReceiverThreadingProfile, setRequesterFactory, setRequesterPoolMaxWait, setRequesterPoolWhenExhaustedAction, setRequesterThreadingProfile, setRetryPolicyTemplate, setServiceOverrides, setSessionHandler, setSupportedProtocols, setupDispatchReturn, setupRequestReturn, setValidateConnections, shutdownScheduler, start, startAfterConnect, stop, supportsProtocol, toString, unregisterListener, unregisterSupportedProtocol, updateCachedNotificationHandler, validateConnection, workAccepted, workCompleted, workRejected, workStarted`

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

Field Detail

### SSL

    public static final String SSL

See Also:
  Constant Field Values

### PEER_CERTIFICATES

    public static final String PEER_CERTIFICATES

See Also:
  Constant Field Values

### LOCAL_CERTIFICATES

    public static final String LOCAL_CERTIFICATES

See Also:
  Constant Field Values

Constructor Detail

### SslConnector

    public SslConnector(MuleContext context)

Method Detail

### doInitialise

    protected void doInitialise()
                         throws InitialisationException

  Overrides:
    `doInitialise` in class `TcpConnector`
  Throws:
    `InitialisationException`

### getServerSocket

    protected ServerSocket getServerSocket(URI uri)
                                    throws IOException

  Overrides:
    `getServerSocket` in class `TcpConnector`
  Throws:
    `IOException`

### getProtocol

    public String getProtocol()

  Specified by:
    `getProtocol` in interface `Connector`
  Overrides:
    `getProtocol` in class `TcpConnector`
  Returns:
    the primary protocol name for endpoints of this connector

### getClientKeyStore

    public String getClientKeyStore()

  Specified by:
    `getClientKeyStore` in interface `TlsIndirectKeyStore`
  Returns:
    The location (resolved relative to the current classpath and file system, if possible) of the keystore that contains public certificates and private keys for identification.

### getClientKeyStorePassword

    public String getClientKeyStorePassword()

  Specified by:
    `getClientKeyStorePassword` in interface `TlsIndirectKeyStore`
  Returns:
    The password used to protect the keystore itself

### getClientKeyStoreType

    public String getClientKeyStoreType()

  Specified by:
    `getClientKeyStoreType` in interface `TlsIndirectKeyStore`
  Returns:
    The type of keystore used in `TlsIndirectKeyStore.setClientKeyStore(String)`

### getKeyManagerAlgorithm

    public String getKeyManagerAlgorithm()

  Specified by:
    `getKeyManagerAlgorithm` in interface `TlsDirectKeyStore`
  Returns:
    The algorithm used by the key store. The default comes from {

### getKeyManagerFactory

    public KeyManagerFactory getKeyManagerFactory()

  Specified by:
    `getKeyManagerFactory` in interface `TlsDirectKeyStore`
  Returns:
    A source of key stores generated from the parameters supplied here.

### getKeyPassword

    public String getKeyPassword()

  Specified by:
    `getKeyPassword` in interface `TlsDirectKeyStore`
  Returns:
    The password used to protect the private key(s)

### getKeyStore

    public String getKeyStore()

  Specified by:
    `getKeyStore` in interface `TlsDirectKeyStore`
  Returns:
    The location (resolved relative to the current classpath and file system, if possible) of the keystore that contains public certificates and private keys for identification.

### getKeyStoreType

    public String getKeyStoreType()

  Specified by:
    `getKeyStoreType` in interface `TlsDirectKeyStore`
  Returns:
    The type of keystore used in `TlsDirectKeyStore.getKeyStore()`

### getProtocolHandler

    public String getProtocolHandler()

  Specified by:
    `getProtocolHandler` in interface `TlsProtocolHandler`

### getProvider

    public Provider getProvider()

### getSecurityProviderFactory

    public SecurityProviderFactory getSecurityProviderFactory()

### getSslType

    public String getSslType()

### getKeyStorePassword

    public String getKeyStorePassword()

  Specified by:
    `getKeyStorePassword` in interface `TlsDirectKeyStore`
  Returns:
    The password used to protect the keystore itself

### getTrustManagerAlgorithm

    public String getTrustManagerAlgorithm()

  Specified by:
    `getTrustManagerAlgorithm` in interface `TlsDirectTrustStore`
  Returns:
    The algorithm used by the trust store. The default comes from `AutoDiscoverySecurityProviderFactory`

### getTrustManagerFactory

    public TrustManagerFactory getTrustManagerFactory()

  Specified by:
    `getTrustManagerFactory` in interface `TlsDirectTrustStore`
  Returns:
    Either the factory defined by `TlsDirectTrustStore.setTrustManagerFactory(TrustManagerFactory)` or one constructed from the parameters in this interface (`TlsDirectTrustStore.setTrustStoreType(String)` etc).

### getTrustStore

    public String getTrustStore()

  Specified by:
    `getTrustStore` in interface `TlsIndirectTrustStore`
  Returns:
    The location (resolved relative to the current classpath and file system, if possible) of the keystore that contains public certificates of trusted servers.

### getTrustStorePassword

    public String getTrustStorePassword()

  Specified by:
    `getTrustStorePassword` in interface `TlsIndirectTrustStore`
  Returns:
    The password used to protected the trust store defined in `TlsIndirectTrustStore.getTrustStore()`

### getTrustStoreType

    public String getTrustStoreType()

  Specified by:
    `getTrustStoreType` in interface `TlsDirectTrustStore`
  Returns:
    The type of keystore used to implement the trust store defined in `TlsIndirectTrustStore.getTrustStore()`

### isExplicitTrustStoreOnly

    public boolean isExplicitTrustStoreOnly()

  Description copied from interface: `TlsDirectTrustStore`
  If the trust store is undefined and the trust store generated via System properties then the key store certificates defined via TODO can be used as a source of trust information.

  Specified by:
    `isExplicitTrustStoreOnly` in interface `TlsDirectTrustStore`
  Returns:
    true if the key store data should not be used when a trust store is otherwise undefined

### isRequireClientAuthentication

    public boolean isRequireClientAuthentication()

  Description copied from interface: `TlsDirectTrustStore`
  If a server socket is constructed directly (see `TlsConfiguration`) then this flag will control whether client authenticatin is required. This does not apply to client connections.

  Specified by:
    `isRequireClientAuthentication` in interface `TlsDirectTrustStore`
  Returns:
    true if clients must be authenticated

### setClientKeyStore

    public void setClientKeyStore(String clientKeyStore)
                           throws IOException

  Specified by:
    `setClientKeyStore` in interface `TlsIndirectKeyStore`
  Parameters:
    `clientKeyStore` - The location of the keystore that contains public certificates and private keys for identification.
  Throws:
    `IOException` - If the location cannot be resolved via the file system or classpath

### setClientKeyStorePassword

    public void setClientKeyStorePassword(String clientKeyStorePassword)

  Specified by:
    `setClientKeyStorePassword` in interface `TlsIndirectKeyStore`
  Parameters:
    `clientKeyStorePassword` - The password used to protect the keystore itself

### setClientKeyStoreType

    public void setClientKeyStoreType(String clientKeyStoreType)

  Specified by:
    `setClientKeyStoreType` in interface `TlsIndirectKeyStore`

### setExplicitTrustStoreOnly

    public void setExplicitTrustStoreOnly(boolean explicitTrustStoreOnly)

  Description copied from interface: `TlsDirectTrustStore`
  If the trust store is undefined and the trust store generated via System properties then the key store certificates defined via TODO can be used as a source of trust information.

  Specified by:
    `setExplicitTrustStoreOnly` in interface `TlsDirectTrustStore`
  Parameters:
    `explicitTrustStoreOnly` - true if the key store data should not be used when a trust store is otherwise undefined

### setKeyManagerAlgorithm

    public void setKeyManagerAlgorithm(String keyManagerAlgorithm)

  Specified by:
    `setKeyManagerAlgorithm` in interface `TlsDirectKeyStore`
  Parameters:
    `keyManagerAlgorithm` - The algorithm used by the key store. The default comes from {

### setKeyPassword

    public void setKeyPassword(String keyPassword)

  Specified by:
    `setKeyPassword` in interface `TlsDirectKeyStore`
  Parameters:
    `keyPassword` - The password used to protect the private key(s)

### setKeyStore

    public void setKeyStore(String keyStore)
                     throws IOException

  Specified by:
    `setKeyStore` in interface `TlsDirectKeyStore`
  Parameters:
    `keyStore` - The location of the keystore that contains public certificates and private keys for identification.
  Throws:
    `IOException` - If the location cannot be resolved via the file system or classpath

### setKeyStoreType

    public void setKeyStoreType(String keystoreType)

  Specified by:
    `setKeyStoreType` in interface `TlsDirectKeyStore`
  Parameters:
    `keystoreType` - The type of keystore used in `TlsDirectKeyStore.setKeyStore(String)`

### setProtocolHandler

    public void setProtocolHandler(String protocolHandler)

  Specified by:
    `setProtocolHandler` in interface `TlsProtocolHandler`

### setProvider

    public void setProvider(Provider provider)

### setRequireClientAuthentication

    public void setRequireClientAuthentication(boolean requireClientAuthentication)

  Description copied from interface: `TlsDirectTrustStore`
  If a server socket is constructed directly (see `TlsConfiguration`) then this flag will control whether client authenticatin is required. This does not apply to client connections.

  Specified by:
    `setRequireClientAuthentication` in interface `TlsDirectTrustStore`
  Parameters:
    `requireClientAuthentication` - true if clients must be authenticated

### setSecurityProviderFactory

    public void setSecurityProviderFactory(SecurityProviderFactory spFactory)

### setSslType

    public void setSslType(String sslType)

### setKeyStorePassword

    public void setKeyStorePassword(String storePassword)

  Specified by:
    `setKeyStorePassword` in interface `TlsDirectKeyStore`
  Parameters:
    `storePassword` - The password used to protect the keystore itself

### setTrustManagerAlgorithm

    public void setTrustManagerAlgorithm(String trustManagerAlgorithm)

  Specified by:
    `setTrustManagerAlgorithm` in interface `TlsDirectTrustStore`
  Parameters:
    `trustManagerAlgorithm` - The algorithm used by the trust store. The default comes from `AutoDiscoverySecurityProviderFactory`

### setTrustManagerFactory

    public void setTrustManagerFactory(TrustManagerFactory trustManagerFactory)

  Specified by:
    `setTrustManagerFactory` in interface `TlsDirectTrustStore`
  Parameters:
    `trustManagerFactory` - The source of trust information if the store is accessed directly (some connectors generate trust stores indirectly through System properties in which case this value will be ignored - see `TlsConfiguration`).

### setTrustStore

    public void setTrustStore(String trustStore)
                       throws IOException

  Specified by:
    `setTrustStore` in interface `TlsIndirectTrustStore`
  Parameters:
    `trustStore` - The location of the keystore that contains public certificates of trusted servers.
  Throws:
    `IOException` - If the location cannot be resolved via the file system or classpath

### setTrustStorePassword

    public void setTrustStorePassword(String trustStorePassword)

  Specified by:
    `setTrustStorePassword` in interface `TlsIndirectTrustStore`
  Parameters:
    `trustStorePassword` - The password used to protected the trust store defined in `TlsIndirectTrustStore.setTrustStore(String)`

### setTrustStoreType

    public void setTrustStoreType(String trustStoreType)

  Specified by:
    `setTrustStoreType` in interface `TlsDirectTrustStore`
  Parameters:
    `trustStoreType` - The type of keystore used to implement the trust store defined in `TlsIndirectTrustStore.setTrustStore(String)`

### getSslHandshakeTimeout

    public long getSslHandshakeTimeout()

### setSslHandshakeTimeout

    public void setSslHandshakeTimeout(long sslHandshakeTimeout)

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 © 2003-2010 MuleSoft, Inc.. All Rights Reserved.