Interface KubernetesLeaseResourceManager<T extends io.fabric8.kubernetes.api.model.HasMetadata>

  • All Known Implementing Classes:
    ConfigMapLeaseResourceManager, NativeLeaseResourceManager

    public interface KubernetesLeaseResourceManager<T extends io.fabric8.kubernetes.api.model.HasMetadata>
    Handles the actual interaction with Kubernetes resources, allowing different implementation to be plugged.
    • Method Detail

      • fetchLeaseResource

        T fetchLeaseResource​(io.fabric8.kubernetes.client.KubernetesClient client,
                             String namespace,
                             String leaseResourceName,
                             String group)
        Fetch the lease resource for the given name and group.
      • optimisticDeleteLeaderInfo

        T optimisticDeleteLeaderInfo​(io.fabric8.kubernetes.client.KubernetesClient client,
                                     T leaseResource,
                                     String group)
        Delete leadership information for the given lease resource and group.
      • optimisticAcquireLeadership

        T optimisticAcquireLeadership​(io.fabric8.kubernetes.client.KubernetesClient client,
                                      T leaseResource,
                                      LeaderInfo newLeaderInfo)
        Set the leadership information on the lease resource to match the given LeaderInfo.
      • createNewLeaseResource

        T createNewLeaseResource​(io.fabric8.kubernetes.client.KubernetesClient client,
                                 String namespace,
                                 String leaseResourceName,
                                 LeaderInfo leaderInfo)
        Create a new lease resource matching the given LeaderInfo.
      • refreshLeaseRenewTime

        T refreshLeaseRenewTime​(io.fabric8.kubernetes.client.KubernetesClient client,
                                T leaseResource,
                                int minUpdateIntervalSeconds)
        Update information on the lease resource to increase the renew time (if last renewal has occurred more than minUpdateIntervalSeconds seconds ago).