org.apache.activemq.artemis.spi.core.remoting.ssl

## Interface SSLContextFactory

- All Superinterfaces:
    Comparable<SSLContextFactory>

      public interface SSLContextFactory
      extends Comparable<SSLContextFactory>

  Service interface to create a SSLContext for a configuration. This is NOT used by OpenSSL. To create and use your own implementation you need to create a file `META-INF/services/org.apache.activemq.artemis.spi.core.remoting.ssl.SSLContextFactory` in your jar and fill it with the full qualified name of your implementation.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static org.jboss.logging.Logger` | `log`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Default Methods
    Modifier and Type | Method and Description
    --- | ---
    `default void` | `clearSSLContexts()`
    `default int` | `compareTo(SSLContextFactory other)`
    `int` | `getPriority()` The priority for the SSLContextFactory when resolving the service to get the implementation.
    `SSLContext` | `getSSLContext(Map<String,Object> configuration, String keystoreProvider, String keystorePath, String keystorePassword, String truststoreProvider, String truststorePath, String truststorePassword, String crlPath, String trustManagerFactoryPlugin, boolean trustAll)` Obtain a SSLContext from the configuration.

- - ### Field Detail

    - #### log

          static final org.jboss.logging.Logger log

  - ### Method Detail

    - #### getSSLContext

          SSLContext getSSLContext(Map<String,Object> configuration,
                                   String keystoreProvider,
                                   String keystorePath,
                                   String keystorePassword,
                                   String truststoreProvider,
                                   String truststorePath,
                                   String truststorePassword,
                                   String crlPath,
                                   String trustManagerFactoryPlugin,
                                   boolean trustAll)
                            throws Exception

      Obtain a SSLContext from the configuration.
      Parameters:
        `configuration` -
        `keystoreProvider` -
        `keystorePath` -
        `keystorePassword` -
        `truststoreProvider` -
        `truststorePath` -
        `truststorePassword` -
        `crlPath` -
        `trustManagerFactoryPlugin` -
        `trustAll` -
      Returns:
        a SSLContext instance.
      Throws:
        `Exception`

    - #### clearSSLContexts

          default void clearSSLContexts()

    - #### getPriority

          int getPriority()

      The priority for the SSLContextFactory when resolving the service to get the implementation. This is used when selecting the implementation when several implementations are loaded. The highest priority implementation will be used.
      Returns:
        the priority.

    - #### compareTo

          default int compareTo(SSLContextFactory other)

      Specified by:
        `compareTo` in interface `Comparable<SSLContextFactory>`

Copyright © 2020 The Apache Software Foundation. All rights reserved.