Class RedisLockManager
- java.lang.Object
-
- com.netflix.spinnaker.kork.jedis.lock.RedisLockManager
-
- All Implemented Interfaces:
com.netflix.spinnaker.kork.lock.LockManager,com.netflix.spinnaker.kork.lock.RefreshableLockManager
public class RedisLockManager extends java.lang.Object implements com.netflix.spinnaker.kork.lock.RefreshableLockManager
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface com.netflix.spinnaker.kork.lock.LockManager
com.netflix.spinnaker.kork.lock.LockManager.AcquireLockResponse<R extends java.lang.Object>, com.netflix.spinnaker.kork.lock.LockManager.Lock, com.netflix.spinnaker.kork.lock.LockManager.LockCallbackException, com.netflix.spinnaker.kork.lock.LockManager.LockException, com.netflix.spinnaker.kork.lock.LockManager.LockExpiredException, com.netflix.spinnaker.kork.lock.LockManager.LockMetricsConstants, com.netflix.spinnaker.kork.lock.LockManager.LockNotAcquiredException, com.netflix.spinnaker.kork.lock.LockManager.LockOptions, com.netflix.spinnaker.kork.lock.LockManager.LockReleaseStatus, com.netflix.spinnaker.kork.lock.LockManager.LockStatus, com.netflix.spinnaker.kork.lock.LockManager.Named
-
Nested classes/interfaces inherited from interface com.netflix.spinnaker.kork.lock.RefreshableLockManager
com.netflix.spinnaker.kork.lock.RefreshableLockManager.HeartbeatLockRequest, com.netflix.spinnaker.kork.lock.RefreshableLockManager.HeartbeatResponse, com.netflix.spinnaker.kork.lock.RefreshableLockManager.LockFailedHeartbeatException, com.netflix.spinnaker.kork.lock.RefreshableLockManager.LockHeartbeatStatus
-
-
Constructor Summary
Constructors Constructor Description RedisLockManager(java.lang.String ownerName, java.time.Clock clock, com.netflix.spectator.api.Registry registry, com.fasterxml.jackson.databind.ObjectMapper objectMapper, RedisClientDelegate redisClientDelegate)RedisLockManager(java.lang.String ownerName, java.time.Clock clock, com.netflix.spectator.api.Registry registry, com.fasterxml.jackson.databind.ObjectMapper objectMapper, RedisClientDelegate redisClientDelegate, java.util.Optional<java.lang.Long> heartbeatRateMillis, java.util.Optional<java.lang.Long> leaseDurationMillis)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description com.netflix.spinnaker.kork.lock.LockManager.AcquireLockResponse<java.lang.Void>acquireLock(com.netflix.spinnaker.kork.lock.LockManager.LockOptions lockOptions, java.lang.Runnable onLockAcquiredCallback)<R> com.netflix.spinnaker.kork.lock.LockManager.AcquireLockResponse<R>acquireLock(com.netflix.spinnaker.kork.lock.LockManager.LockOptions lockOptions, java.util.concurrent.Callable<R> onLockAcquiredCallback)com.netflix.spinnaker.kork.lock.LockManager.AcquireLockResponse<java.lang.Void>acquireLock(java.lang.String lockName, long maximumLockDurationMillis, java.lang.Runnable onLockAcquiredCallback)<R> com.netflix.spinnaker.kork.lock.LockManager.AcquireLockResponse<R>acquireLock(java.lang.String lockName, long maximumLockDurationMillis, java.util.concurrent.Callable<R> onLockAcquiredCallback)com.netflix.spinnaker.kork.lock.RefreshableLockManager.HeartbeatResponseheartbeat(com.netflix.spinnaker.kork.lock.RefreshableLockManager.HeartbeatLockRequest heartbeatLockRequest)voidqueueHeartbeat(com.netflix.spinnaker.kork.lock.RefreshableLockManager.HeartbeatLockRequest heartbeatLockRequest)booleanreleaseLock(com.netflix.spinnaker.kork.lock.LockManager.Lock lock, boolean wasWorkSuccessful)com.netflix.spinnaker.kork.lock.LockManager.LocktryCreateLock(com.netflix.spinnaker.kork.lock.LockManager.LockOptions lockOptions)
-
-
-
Constructor Detail
-
RedisLockManager
public RedisLockManager(java.lang.String ownerName, java.time.Clock clock, com.netflix.spectator.api.Registry registry, com.fasterxml.jackson.databind.ObjectMapper objectMapper, RedisClientDelegate redisClientDelegate, java.util.Optional<java.lang.Long> heartbeatRateMillis, java.util.Optional<java.lang.Long> leaseDurationMillis)
-
RedisLockManager
public RedisLockManager(java.lang.String ownerName, java.time.Clock clock, com.netflix.spectator.api.Registry registry, com.fasterxml.jackson.databind.ObjectMapper objectMapper, RedisClientDelegate redisClientDelegate)
-
-
Method Detail
-
acquireLock
public <R> com.netflix.spinnaker.kork.lock.LockManager.AcquireLockResponse<R> acquireLock(@Nonnull com.netflix.spinnaker.kork.lock.LockManager.LockOptions lockOptions, @Nonnull java.util.concurrent.Callable<R> onLockAcquiredCallback)- Specified by:
acquireLockin interfacecom.netflix.spinnaker.kork.lock.LockManager
-
acquireLock
public <R> com.netflix.spinnaker.kork.lock.LockManager.AcquireLockResponse<R> acquireLock(@Nonnull java.lang.String lockName, long maximumLockDurationMillis, @Nonnull java.util.concurrent.Callable<R> onLockAcquiredCallback)- Specified by:
acquireLockin interfacecom.netflix.spinnaker.kork.lock.LockManager
-
acquireLock
public com.netflix.spinnaker.kork.lock.LockManager.AcquireLockResponse<java.lang.Void> acquireLock(@Nonnull java.lang.String lockName, long maximumLockDurationMillis, @Nonnull java.lang.Runnable onLockAcquiredCallback)- Specified by:
acquireLockin interfacecom.netflix.spinnaker.kork.lock.LockManager
-
acquireLock
public com.netflix.spinnaker.kork.lock.LockManager.AcquireLockResponse<java.lang.Void> acquireLock(@Nonnull com.netflix.spinnaker.kork.lock.LockManager.LockOptions lockOptions, @Nonnull java.lang.Runnable onLockAcquiredCallback)- Specified by:
acquireLockin interfacecom.netflix.spinnaker.kork.lock.LockManager
-
releaseLock
public boolean releaseLock(@Nonnull com.netflix.spinnaker.kork.lock.LockManager.Lock lock, boolean wasWorkSuccessful)- Specified by:
releaseLockin interfacecom.netflix.spinnaker.kork.lock.LockManager
-
heartbeat
public com.netflix.spinnaker.kork.lock.RefreshableLockManager.HeartbeatResponse heartbeat(com.netflix.spinnaker.kork.lock.RefreshableLockManager.HeartbeatLockRequest heartbeatLockRequest)
- Specified by:
heartbeatin interfacecom.netflix.spinnaker.kork.lock.RefreshableLockManager
-
queueHeartbeat
public void queueHeartbeat(com.netflix.spinnaker.kork.lock.RefreshableLockManager.HeartbeatLockRequest heartbeatLockRequest)
- Specified by:
queueHeartbeatin interfacecom.netflix.spinnaker.kork.lock.RefreshableLockManager
-
tryCreateLock
public com.netflix.spinnaker.kork.lock.LockManager.Lock tryCreateLock(com.netflix.spinnaker.kork.lock.LockManager.LockOptions lockOptions)
- Specified by:
tryCreateLockin interfacecom.netflix.spinnaker.kork.lock.LockManager
-
-