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 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 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.NamedNested 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 -
Field Summary
Fields inherited from interface com.netflix.spinnaker.kork.lock.LockManager
NAME_FALLBACK -
Constructor Summary
ConstructorsConstructorDescriptionRedisLockManager(String ownerName, Clock clock, com.netflix.spectator.api.Registry registry, com.fasterxml.jackson.databind.ObjectMapper objectMapper, RedisClientDelegate redisClientDelegate) RedisLockManager(String ownerName, Clock clock, com.netflix.spectator.api.Registry registry, com.fasterxml.jackson.databind.ObjectMapper objectMapper, RedisClientDelegate redisClientDelegate, Optional<Long> heartbeatRateMillis, Optional<Long> leaseDurationMillis) -
Method Summary
Modifier and TypeMethodDescriptioncom.netflix.spinnaker.kork.lock.LockManager.AcquireLockResponse<Void>acquireLock(com.netflix.spinnaker.kork.lock.LockManager.LockOptions lockOptions, Runnable onLockAcquiredCallback) <R> com.netflix.spinnaker.kork.lock.LockManager.AcquireLockResponse<R>acquireLock(com.netflix.spinnaker.kork.lock.LockManager.LockOptions lockOptions, Callable<R> onLockAcquiredCallback) com.netflix.spinnaker.kork.lock.LockManager.AcquireLockResponse<Void>acquireLock(String lockName, long maximumLockDurationMillis, Runnable onLockAcquiredCallback) <R> com.netflix.spinnaker.kork.lock.LockManager.AcquireLockResponse<R>acquireLock(String lockName, long maximumLockDurationMillis, 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) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.netflix.spinnaker.kork.lock.LockManager
getOwnerName, lockKey
-
Constructor Details
-
RedisLockManager
-
RedisLockManager
public RedisLockManager(String ownerName, Clock clock, com.netflix.spectator.api.Registry registry, com.fasterxml.jackson.databind.ObjectMapper objectMapper, RedisClientDelegate redisClientDelegate)
-
-
Method Details
-
acquireLock
public <R> com.netflix.spinnaker.kork.lock.LockManager.AcquireLockResponse<R> acquireLock(@Nonnull com.netflix.spinnaker.kork.lock.LockManager.LockOptions lockOptions, @Nonnull 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 String lockName, long maximumLockDurationMillis, @Nonnull Callable<R> onLockAcquiredCallback) - Specified by:
acquireLockin interfacecom.netflix.spinnaker.kork.lock.LockManager
-
acquireLock
public com.netflix.spinnaker.kork.lock.LockManager.AcquireLockResponse<Void> acquireLock(@Nonnull String lockName, long maximumLockDurationMillis, @Nonnull Runnable onLockAcquiredCallback) - Specified by:
acquireLockin interfacecom.netflix.spinnaker.kork.lock.LockManager
-
acquireLock
public com.netflix.spinnaker.kork.lock.LockManager.AcquireLockResponse<Void> acquireLock(@Nonnull com.netflix.spinnaker.kork.lock.LockManager.LockOptions lockOptions, @Nonnull 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
-