Class AbstractKubernetesKeyStoreLoader<T>

  • All Implemented Interfaces:
    io.gravitee.node.api.certificate.KeyStoreLoader
    Direct Known Subclasses:
    KubernetesConfigMapKeyStoreLoader, KubernetesSecretKeyStoreLoader

    public abstract class AbstractKubernetesKeyStoreLoader<T>
    extends Object
    implements io.gravitee.node.api.certificate.KeyStoreLoader
    Author:
    Jeoffrey HAEYAERT (jeoffrey.haeyaert at graviteesource.com), GraviteeSource Team
    • Field Detail

      • options

        protected final io.gravitee.node.api.certificate.KeyStoreLoaderOptions options
      • kubernetesClient

        protected final io.gravitee.kubernetes.client.KubernetesClient kubernetesClient
      • listeners

        protected final List<java.util.function.Consumer<io.gravitee.node.api.certificate.KeyStoreBundle>> listeners
      • resources

        protected final Map<String,​io.gravitee.kubernetes.client.api.ResourceQuery<T>> resources
      • keyStoreBundle

        protected io.gravitee.node.api.certificate.KeyStoreBundle keyStoreBundle
    • Constructor Detail

      • AbstractKubernetesKeyStoreLoader

        public AbstractKubernetesKeyStoreLoader​(io.gravitee.node.api.certificate.KeyStoreLoaderOptions options,
                                                io.gravitee.kubernetes.client.KubernetesClient kubernetesClient)
    • Method Detail

      • start

        public void start()
        Specified by:
        start in interface io.gravitee.node.api.certificate.KeyStoreLoader
      • startWatch

        protected void startWatch()
      • stop

        public void stop()
        Specified by:
        stop in interface io.gravitee.node.api.certificate.KeyStoreLoader
      • watch

        protected abstract io.reactivex.rxjava3.core.Flowable<T> watch()
      • init

        protected abstract io.reactivex.rxjava3.core.Completable init()
      • loadKeyStore

        protected abstract io.reactivex.rxjava3.core.Completable loadKeyStore​(T elt)
      • addListener

        public void addListener​(java.util.function.Consumer<io.gravitee.node.api.certificate.KeyStoreBundle> listener)
        Specified by:
        addListener in interface io.gravitee.node.api.certificate.KeyStoreLoader
      • refreshKeyStoreBundle

        protected void refreshKeyStoreBundle()
      • notifyListeners

        protected void notifyListeners()