Class SSLSocketProviderDependenciesBuilder

  • All Implemented Interfaces:
    ParameterizedBuilder<com.tangosol.internal.net.ssl.SSLSocketProviderDefaultDependencies>

    public class SSLSocketProviderDependenciesBuilder
    extends Object
    implements ParameterizedBuilder<com.tangosol.internal.net.ssl.SSLSocketProviderDefaultDependencies>
    SSLSocketProviderDependenciesBuilder enables lazy instantiation of SSL SocketProvider.

    This builder includes methods that allows one to specify whether to get a datagram or demultiplexed SocketProvider and what subport to use for the socketprovider.

    Since:
    Coherence 12.2.1.1
    Author:
    jf 2015.11.11, Jonathan Knight 2022.01.25
    • Field Detail

      • ACTION_ALLOW

        public static final String ACTION_ALLOW
        The value of the hostname-verifier action to allow all connections.
        See Also:
        Constant Field Values
      • NO_REFRESH

        public static final Seconds NO_REFRESH
        The default auto-refresh period - no refresh.
    • Constructor Detail

      • SSLSocketProviderDependenciesBuilder

        public SSLSocketProviderDependenciesBuilder​(com.tangosol.internal.net.ssl.SSLSocketProviderDefaultDependencies deps)
        Parameters:
        deps - SSLSocketProviderDefaultDependencies defaults for cluster
    • Method Detail

      • setProtocol

        @Injectable("protocol")
        public void setProtocol​(String sName)
        Set the SSL protocol name
        Parameters:
        sName - the protocol name
      • getProtocol

        public String getProtocol()
        Get the SSL protocol name
        Returns:
        protocol name
      • realizeProvider

        protected Provider realizeProvider()
        Realize the SSL provider.
        Returns:
        the SSL provider
      • getProviderName

        protected String getProviderName()
        Returns the SSL provider name.
        Returns:
        the SSL provider name
      • setIdentityManager

        @Injectable("identity-manager")
        public void setIdentityManager​(com.tangosol.internal.net.ssl.DefaultManagerDependencies deps)
        Set the SSL identity manager dependencies.
        Parameters:
        deps - configured or defaulted values for identity manager dependencies
      • getIdentityManager

        public com.tangosol.internal.net.ssl.ManagerDependencies getIdentityManager()
        Get the SSL identity manager dependencies
        Returns:
        identity manager configured/defaulted values
      • getTrustManager

        public com.tangosol.internal.net.ssl.ManagerDependencies getTrustManager()
        Get the SSL trust manager
        Returns:
        the trust manager
      • setTrustManager

        @Injectable("trust-manager")
        public void setTrustManager​(com.tangosol.internal.net.ssl.ManagerDependencies deps)
        Set the SSL trust manager
        Parameters:
        deps - trust manager configured/defaulted values
      • setHostnameVerifierBuilder

        @Injectable("hostname-verifier")
        public void setHostnameVerifierBuilder​(ParameterizedBuilder<HostnameVerifier> bldr)
        Set the customized HostnameVerifierBuilder
        Parameters:
        bldr - HostnameVerifierBuilder
      • setDelegate

        @Injectable("socket-provider")
        public void setDelegate​(SocketProviderBuilder bldr)
        Set delegate SocketProviderBuilder
        Parameters:
        bldr - delegate socket provider builder
      • setClientAuth

        @Injectable("client-auth")
        public void setClientAuth​(String sAuthMode)
        Set the client auth mode to use.
        Parameters:
        sAuthMode - the client auth mode to use
      • setRefreshPeriod

        @Injectable("refresh-period")
        public void setRefreshPeriod​(Seconds refreshPeriod)
        Set the auto-refresh period.
        Parameters:
        refreshPeriod - the period to use to auto-refresh keys and certs
      • getRefreshPeriod

        public Seconds getRefreshPeriod()
        Return the period to use to auto-refresh keys and certs.
        Returns:
        the period to use to auto-refresh keys and certs
      • getSocketProviderBuilder

        public SocketProviderBuilder getSocketProviderBuilder()
        Get delegate socket provider builder
        Returns:
        socket provider builder
      • realize

        public com.tangosol.internal.net.ssl.SSLSocketProviderDefaultDependencies realize()
        Realize a SSLSocketProviderDefaultDependencies based on configured/defaulted values for config element ssl.

        Note: unlike typical builders, this is realized once, since sensitive password data is nullified after realizing.

        Returns:
        SSLSocketProviderDefaultDependencies
      • realize

        public com.tangosol.internal.net.ssl.SSLSocketProviderDefaultDependencies realize​(ParameterResolver resolver,
                                                                                          ClassLoader loader,
                                                                                          ParameterList listParameters)
        Realize SSLSocketProviderDefaultDependencies from this builder
        Specified by:
        realize in interface ParameterizedBuilder<com.tangosol.internal.net.ssl.SSLSocketProviderDefaultDependencies>
        Parameters:
        resolver - a resolver
        loader - class loader
        listParameters - parameter list
        Returns:
        SSLSocketProviderDefaultDependencies