Class NativeLeaseResourceManager
java.lang.Object
org.apache.camel.component.kubernetes.cluster.lock.impl.NativeLeaseResourceManager
- All Implemented Interfaces:
KubernetesLeaseResourceManager<io.fabric8.kubernetes.api.model.coordination.v1.Lease>
public class NativeLeaseResourceManager
extends Object
implements KubernetesLeaseResourceManager<io.fabric8.kubernetes.api.model.coordination.v1.Lease>
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionio.fabric8.kubernetes.api.model.coordination.v1.LeasecreateNewLeaseResource(io.fabric8.kubernetes.client.KubernetesClient client, String namespace, String prefix, LeaderInfo leaderInfo) Create a new lease resource matching the givenLeaderInfo.decodeLeaderInfo(io.fabric8.kubernetes.api.model.coordination.v1.Lease lease, Set<String> members, String group) Return aLeaderInfoobject from the underlying Kubernetes resource.io.fabric8.kubernetes.api.model.coordination.v1.LeasefetchLeaseResource(io.fabric8.kubernetes.client.KubernetesClient client, String namespace, String name, String group) Fetch the lease resource for the given name and group.io.fabric8.kubernetes.api.model.coordination.v1.LeaseoptimisticAcquireLeadership(io.fabric8.kubernetes.client.KubernetesClient client, io.fabric8.kubernetes.api.model.coordination.v1.Lease leaseResource, LeaderInfo newLeaderInfo) Set the leadership information on the lease resource to match the givenLeaderInfo.io.fabric8.kubernetes.api.model.coordination.v1.LeaseoptimisticDeleteLeaderInfo(io.fabric8.kubernetes.client.KubernetesClient client, io.fabric8.kubernetes.api.model.coordination.v1.Lease leaseResource, String group) Delete leadership information for the given lease resource and group.io.fabric8.kubernetes.api.model.coordination.v1.LeaserefreshLeaseRenewTime(io.fabric8.kubernetes.client.KubernetesClient client, io.fabric8.kubernetes.api.model.coordination.v1.Lease leaseResource, int minUpdateIntervalSeconds) Update information on the lease resource to increase the renew time (if last renewal has occurred more than minUpdateIntervalSeconds seconds ago).
-
Constructor Details
-
NativeLeaseResourceManager
public NativeLeaseResourceManager()
-
-
Method Details
-
decodeLeaderInfo
public LeaderInfo decodeLeaderInfo(io.fabric8.kubernetes.api.model.coordination.v1.Lease lease, Set<String> members, String group) Description copied from interface:KubernetesLeaseResourceManagerReturn aLeaderInfoobject from the underlying Kubernetes resource.- Specified by:
decodeLeaderInfoin interfaceKubernetesLeaseResourceManager<io.fabric8.kubernetes.api.model.coordination.v1.Lease>
-
fetchLeaseResource
public io.fabric8.kubernetes.api.model.coordination.v1.Lease fetchLeaseResource(io.fabric8.kubernetes.client.KubernetesClient client, String namespace, String name, String group) Description copied from interface:KubernetesLeaseResourceManagerFetch the lease resource for the given name and group.- Specified by:
fetchLeaseResourcein interfaceKubernetesLeaseResourceManager<io.fabric8.kubernetes.api.model.coordination.v1.Lease>
-
optimisticDeleteLeaderInfo
public io.fabric8.kubernetes.api.model.coordination.v1.Lease optimisticDeleteLeaderInfo(io.fabric8.kubernetes.client.KubernetesClient client, io.fabric8.kubernetes.api.model.coordination.v1.Lease leaseResource, String group) Description copied from interface:KubernetesLeaseResourceManagerDelete leadership information for the given lease resource and group.- Specified by:
optimisticDeleteLeaderInfoin interfaceKubernetesLeaseResourceManager<io.fabric8.kubernetes.api.model.coordination.v1.Lease>
-
optimisticAcquireLeadership
public io.fabric8.kubernetes.api.model.coordination.v1.Lease optimisticAcquireLeadership(io.fabric8.kubernetes.client.KubernetesClient client, io.fabric8.kubernetes.api.model.coordination.v1.Lease leaseResource, LeaderInfo newLeaderInfo) Description copied from interface:KubernetesLeaseResourceManagerSet the leadership information on the lease resource to match the givenLeaderInfo.- Specified by:
optimisticAcquireLeadershipin interfaceKubernetesLeaseResourceManager<io.fabric8.kubernetes.api.model.coordination.v1.Lease>
-
refreshLeaseRenewTime
public io.fabric8.kubernetes.api.model.coordination.v1.Lease refreshLeaseRenewTime(io.fabric8.kubernetes.client.KubernetesClient client, io.fabric8.kubernetes.api.model.coordination.v1.Lease leaseResource, int minUpdateIntervalSeconds) Description copied from interface:KubernetesLeaseResourceManagerUpdate information on the lease resource to increase the renew time (if last renewal has occurred more than minUpdateIntervalSeconds seconds ago).- Specified by:
refreshLeaseRenewTimein interfaceKubernetesLeaseResourceManager<io.fabric8.kubernetes.api.model.coordination.v1.Lease>
-
createNewLeaseResource
public io.fabric8.kubernetes.api.model.coordination.v1.Lease createNewLeaseResource(io.fabric8.kubernetes.client.KubernetesClient client, String namespace, String prefix, LeaderInfo leaderInfo) Description copied from interface:KubernetesLeaseResourceManagerCreate a new lease resource matching the givenLeaderInfo.- Specified by:
createNewLeaseResourcein interfaceKubernetesLeaseResourceManager<io.fabric8.kubernetes.api.model.coordination.v1.Lease>
-