Package org.lable.oss.uniqueid.etcd
Class ExpiringResourceClaim
- java.lang.Object
-
- org.lable.oss.uniqueid.etcd.ResourceClaim
-
- org.lable.oss.uniqueid.etcd.ExpiringResourceClaim
-
- All Implemented Interfaces:
Closeable,AutoCloseable
public class ExpiringResourceClaim extends ResourceClaim
ResourceClaimthat automatically relinquishes its hold on a resource after a set amount of time.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.lable.oss.uniqueid.etcd.ResourceClaim
ResourceClaim.State
-
-
Field Summary
Fields Modifier and Type Field Description static DurationDEFAULT_ACQUISITION_TIMEOUTstatic DurationDEFAULT_CLAIM_HOLD-
Fields inherited from class org.lable.oss.uniqueid.etcd.ResourceClaim
closeables, state
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static ResourceClaimclaimExpiring(io.etcd.jetcd.Client etcd, int maxGeneratorCount, List<Integer> clusterIds)Claim a resource.static ResourceClaimclaimExpiring(io.etcd.jetcd.Client etcd, int maxGeneratorCount, List<Integer> clusterIds, Duration claimHold, Duration acquisitionTimeout)Claim a resource.-
Methods inherited from class org.lable.oss.uniqueid.etcd.ResourceClaim
claim, claim, close, close, getClusterId, getGeneratorId
-
-
-
-
Method Detail
-
claimExpiring
public static ResourceClaim claimExpiring(io.etcd.jetcd.Client etcd, int maxGeneratorCount, List<Integer> clusterIds) throws IOException
Claim a resource.- Parameters:
etcd- Etcd connection to use.maxGeneratorCount- Maximum number of generators possible.- Returns:
- A resource claim.
- Throws:
IOException
-
claimExpiring
public static ResourceClaim claimExpiring(io.etcd.jetcd.Client etcd, int maxGeneratorCount, List<Integer> clusterIds, Duration claimHold, Duration acquisitionTimeout) throws IOException
Claim a resource.- Parameters:
etcd- Etcd connection to use.maxGeneratorCount- Maximum number of generators possible.clusterIds- Cluster Ids available to use.claimHold- How long the claim should be held. May benullfor the default value ofDEFAULT_CLAIM_HOLD.acquisitionTimeout- How long to keep trying to acquire a claim. May benullto keep trying indefinitely.- Returns:
- A resource claim.
- Throws:
IOException
-
-