Class KieServerStateOpenShiftRepository

    • Constructor Detail

      • KieServerStateOpenShiftRepository

        public KieServerStateOpenShiftRepository()
    • Method Detail

      • create

        public void create​(org.kie.server.services.impl.storage.KieServerState kieServerState)
      • retrieveAllKieServerIds

        public List<String> retrieveAllKieServerIds()
      • retrieveAllKieServerStates

        public List<org.kie.server.services.impl.storage.KieServerState> retrieveAllKieServerStates()
      • exists

        public boolean exists​(String id)
      • delete

        public org.kie.server.services.impl.storage.KieServerState delete​(String id)
      • store

        public void store​(String serverId,
                          org.kie.server.services.impl.storage.KieServerState kieServerState)
        Specified by:
        store in interface org.kie.server.services.impl.storage.KieServerStateRepository
      • load

        public org.kie.server.services.impl.storage.KieServerState load​(String serverId)
        Specified by:
        load in interface org.kie.server.services.impl.storage.KieServerStateRepository
      • getAppName

        public Optional<String> getAppName​(io.fabric8.openshift.client.OpenShiftClient client,
                                           String serverId)
      • getAppNameFromPod

        public Optional<String> getAppNameFromPod​(io.fabric8.openshift.client.OpenShiftClient client)
      • getKieServerCMLabelSelector

        public io.fabric8.kubernetes.api.model.LabelSelector getKieServerCMLabelSelector​(io.fabric8.openshift.client.OpenShiftClient client)
      • isKieContainerRemovalAllowed

        public boolean isKieContainerRemovalAllowed​(io.fabric8.kubernetes.api.model.ConfigMap cm,
                                                    org.kie.server.services.impl.storage.KieServerState newState)
        To be compatible with non kieserver process, (workbench), kie container at certain status, i.e. STOPPED, should not be removed.
        Parameters:
        dc -
        c -
        newState -
        Returns:
      • isKieContainerUpdateDuringRolloutAllowed

        public boolean isKieContainerUpdateDuringRolloutAllowed​(io.fabric8.kubernetes.api.model.ConfigMap cm,
                                                                org.kie.server.services.impl.storage.KieServerState newState)
        Non KieServer process including workbench is allowed to update KieServerState even during DC rollout, but ONLY under certain conditions.
        Parameters:
        cm -
        newState -
        Returns:
      • createOrReplaceKieServerStateCM

        public io.fabric8.kubernetes.api.model.ConfigMap createOrReplaceKieServerStateCM​(io.fabric8.openshift.client.OpenShiftClient client,
                                                                                         String serverId,
                                                                                         org.kie.server.services.impl.storage.KieServerState kieServerState)
      • createOrReplaceCM

        public io.fabric8.kubernetes.api.model.ConfigMap createOrReplaceCM​(io.fabric8.openshift.client.OpenShiftClient client,
                                                                           io.fabric8.kubernetes.api.model.ConfigMap cm)