public class RedisLockManager extends AbstractLockManager
Constructor and Description |
---|
RedisLockManager(String repositoryName)
Creates a lock manager for the given repository.
|
Modifier and Type | Method and Description |
---|---|
void |
clearCaches()
Clears any cache held by the lock manager.
|
void |
close()
Closes the lock manager and releases resources.
|
Lock |
getLock(String id)
Gets the lock on a document.
|
void |
loadScripts() |
Lock |
removeLock(String id,
String owner)
Removes the lock from a document.
|
Lock |
setLock(String id,
Lock lock)
Sets a lock on a document.
|
canLockBeRemoved, canLockBeRemovedStatic
public void loadScripts()
public Lock getLock(String id)
LockManager
If the document does not exist, null
is returned.
id
- the document idnull
when there is no lockpublic Lock setLock(String id, Lock lock)
LockManager
If the document is already locked, returns its existing lock status (there is no re-locking, LockManager.removeLock(java.lang.String, java.lang.String)
must be called first).
id
- the document idlock
- the lock to setnull
if locking succeeded, or the existing lock if locking failedpublic Lock removeLock(String id, String owner)
LockManager
The previous lock is returned.
If owner
is null
then the lock is unconditionally removed.
If owner
is not null
, it must match the existing lock owner for the lock to be removed. If it
doesn't match, the returned lock will return true
for Lock.getFailed()
.
id
- the document idnull
), with a failed flag if locking failedpublic void close()
LockManager
public void clearCaches()
LockManager
Copyright © 2015 Nuxeo SA. All rights reserved.