Class SSLImplementation

java.lang.Object
org.apache.tomcat.util.net.SSLImplementation
Direct Known Subclasses:
JSSEImplementation, OpenSSLImplementation

public abstract class SSLImplementation extends Object
Provides a factory and base implementation for the Tomcat specific mechanism that allows alternative SSL/TLS implementations to be used without requiring the implementation of a full JSSE provider.
  • Constructor Details

    • SSLImplementation

      public SSLImplementation()
  • Method Details

    • getInstance

      public static SSLImplementation getInstance(String className) throws ClassNotFoundException
      Obtain an instance (not a singleton) of the implementation with the given class name.
      Parameters:
      className - The class name of the required implementation or null to use the default (currently JSSEImplementation.
      Returns:
      An instance of the required implementation
      Throws:
      ClassNotFoundException - If an instance of the requested class cannot be created
    • getSSLSupport

      public SSLSupport getSSLSupport(SSLSession session, Map<String,List<String>> additionalAttributes)
      Obtain an instance of SSLSupport.
      Parameters:
      session - The SSL session
      additionalAttributes - Additional SSL attributes that are not available from the session.
      Returns:
      An instance of SSLSupport based on the given session and the provided additional attributes
    • getSSLSupport

      @Deprecated public abstract SSLSupport getSSLSupport(SSLSession session)
      Deprecated.
      This will be removed in Tomcat 10.1.x onwards. Use getSSLSupport(SSLSession, Map).
      Obtain an instance of SSLSupport.
      Parameters:
      session - The TLS session
      Returns:
      An instance of SSLSupport based on the given session.
    • getSSLUtil

      public abstract SSLUtil getSSLUtil(SSLHostConfigCertificate certificate)
    • isAlpnSupported

      public abstract boolean isAlpnSupported()