Interface ClickHouseSslContextProvider

All Known Implementing Classes:
ClickHouseDefaultSslContextProvider

public interface ClickHouseSslContextProvider
This interface defines how to build SSL context based on given configuration and target server.
  • Method Details

    • getProvider

      static ClickHouseSslContextProvider getProvider()
      Get non-null SSL context provider.
      Returns:
      non-null SSL context provider
    • getSslContext

      <T> Optional<T> getSslContext(Class<? extends T> sslContextClass, ClickHouseConfig config) throws SSLException
      Get SSL context.
      Type Parameters:
      T - type of SSL context
      Parameters:
      sslContextClass - SSL context class
      config - client config
      Returns:
      SSL context
      Throws:
      SSLException - when error occured getting SSL context
    • getSslContextFromCerts

      SSLContext getSslContextFromCerts(String clientCert, String clientKey, String sslRootCert) throws SSLException
      Use this method if trust store should be imported
      Parameters:
      clientCert -
      clientKey -
      sslRootCert -
      Returns:
      Throws:
      SSLException
    • getSslContextFromKeyStore

      SSLContext getSslContextFromKeyStore(String truststorePath, String truststorePassword, String keyStoreType) throws SSLException
      Use this method if client has separate certs
      Parameters:
      truststorePath -
      truststorePassword -
      keyStoreType -
      Returns:
      Throws:
      SSLException