Package tigase.io

Interface CertificateContainerIfc

  • All Known Implementing Classes:
    CertificateContainer

    public interface CertificateContainerIfc
    Interface implemented by classes responsible for keeping SSL certificates in memory
    Created by andrzej on 29.02.2016.
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      void addCertificates​(java.util.Map<java.lang.String,​java.lang.String> params)
      Method addCertificates allows to add more certificates at run time after the container has bee already initialized.
      javax.net.ssl.KeyManager[] createCertificate​(java.lang.String domain)
      Method createCertificate allows to generate self-signed certificate for passed domain name.s
      CertificateEntry getCertificateEntry​(java.lang.String hostname)  
      java.lang.String getDefCertAlias()
      Method to retrieve default alias of certificate to use when domain is null
      javax.net.ssl.KeyManager[] getKeyManagers​(java.lang.String domain)
      Method returns array of KeyManager with certificate for domain or null if there is no certificate for domain
      javax.net.ssl.TrustManager[] getTrustManagers()  
      java.security.KeyStore getTrustStore()  
      void init​(java.util.Map<java.lang.String,​java.lang.Object> params)
      Method used to pass parameters to initialize instance of class
    • Field Detail

      • CERTIFICATE_CONTAINER_CLASS_KEY

        static final java.lang.String CERTIFICATE_CONTAINER_CLASS_KEY
        See Also:
        Constant Field Values
      • CERTIFICATE_CONTAINER_CLASS_VAL

        static final java.lang.String CERTIFICATE_CONTAINER_CLASS_VAL
    • Method Detail

      • addCertificates

        void addCertificates​(java.util.Map<java.lang.String,​java.lang.String> params)
                      throws java.security.cert.CertificateParsingException
        Method addCertificates allows to add more certificates at run time after the container has bee already initialized. This is to avoid server restart if there are certificates updates or new certificates for new virtual domain. The method should add new certificates or replace existing one if there is already a certificate for a domain.
        Parameters:
        params - a Map value with configuration parameters.
        Throws:
        java.security.cert.CertificateParsingException
      • createCertificate

        javax.net.ssl.KeyManager[] createCertificate​(java.lang.String domain)
                                              throws java.security.NoSuchAlgorithmException,
                                                     java.security.cert.CertificateException,
                                                     java.security.SignatureException,
                                                     java.security.NoSuchProviderException,
                                                     java.security.InvalidKeyException,
                                                     java.io.IOException,
                                                     java.security.UnrecoverableKeyException,
                                                     java.security.KeyStoreException
        Method createCertificate allows to generate self-signed certificate for passed domain name.s
        Parameters:
        domain - domain for which certificate should be generated
        Returns:
        an array of KeyManager containing generated certificate
        Throws:
        java.security.NoSuchAlgorithmException
        java.security.cert.CertificateException
        java.security.SignatureException
        java.security.NoSuchProviderException
        java.security.InvalidKeyException
        java.io.IOException
        java.security.UnrecoverableKeyException
        java.security.KeyStoreException
      • getDefCertAlias

        java.lang.String getDefCertAlias()
        Method to retrieve default alias of certificate to use when domain is null
        Returns:
        default alias
      • getCertificateEntry

        CertificateEntry getCertificateEntry​(java.lang.String hostname)
      • getKeyManagers

        javax.net.ssl.KeyManager[] getKeyManagers​(java.lang.String domain)
        Method returns array of KeyManager with certificate for domain or null if there is no certificate for domain
      • getTrustManagers

        javax.net.ssl.TrustManager[] getTrustManagers()
      • getTrustStore

        java.security.KeyStore getTrustStore()
      • init

        void init​(java.util.Map<java.lang.String,​java.lang.Object> params)
        Method used to pass parameters to initialize instance of class