public class RedisLockManagerImpl extends AbstractLockManager implements com.seeyon.ctp.common.lock.manager.ConcreteLockManager
限定符和类型 | 字段和说明 |
---|---|
static long |
CHECK_PERIOD_SECONDS |
static long |
DEFAULT_EXPIRE_TIME |
EXPIRE_MILLIS, lockLogger, READ_ACTIOM
构造器和说明 |
---|
RedisLockManagerImpl() |
限定符和类型 | 方法和说明 |
---|---|
void |
activeReadLock(long owner,
long resourceId)
激活读锁,保证锁有效,若30秒未激活,锁会被回收。
|
void |
addReleaseLockListener(com.seeyon.ctp.common.lock.manager.ReleaseLockListener listener)
注册锁释放监听器,每个应用智能注册一个监听器
|
void |
addReleaseLockListener(java.lang.String module,
com.seeyon.ctp.common.lock.manager.ReleaseLockListener listener) |
com.seeyon.ctp.common.po.lock.Lock |
createDefaultLock(long owner,
long resourceId,
int action,
java.lang.String from,
java.lang.String param0,
java.lang.String param1,
boolean useNowexpirationTime) |
java.util.List<com.seeyon.ctp.common.po.lock.Lock> |
getAllLock()
该方法存在性能问题,并且使用场景不合理,废弃不再维护
|
com.seeyon.ctp.common.po.lock.Lock |
getLock(long resourceId,
int action)
取得资源的指定操作的锁。
|
java.util.List<com.seeyon.ctp.common.po.lock.Lock> |
getLocks(long resourceId)
取得资源的所有锁。
|
boolean |
lock(com.seeyon.ctp.common.po.lock.Lock lock)
对资源的操作加锁(高级使用,谨慎,lock参数需使用lockManager.createDefaultLock创建此对象才行)。
|
boolean |
lock(java.lang.String module,
long owner,
long resourceId) |
boolean |
lock(java.lang.String module,
long owner,
long resourceId,
int action) |
boolean |
lock(java.lang.String module,
long owner,
long resourceId,
int action,
boolean ignoreOnlineStatus) |
boolean |
lock(java.lang.String module,
long owner,
long resourceId,
int action,
java.lang.String from) |
boolean |
lock(java.lang.String module,
long owner,
long resourceId,
int action,
java.lang.String from,
boolean useNowexpirationTime) |
boolean |
lock(java.lang.String module,
long owner,
long resourceId,
int action,
java.lang.String from,
boolean useNowexpirationTime,
boolean unlockSelfLock) |
boolean |
lock(java.lang.String module,
long owner,
long resourceId,
int action,
java.lang.String from,
boolean useNowexpirationTime,
boolean unlockSelfLock,
boolean ignoreOnlineStatus) |
boolean |
lock(java.lang.String module,
long owner,
long resourceId,
java.lang.String from) |
boolean |
lock(java.lang.String module,
long owner,
long resourceId,
java.lang.String from,
boolean ignoreOnlineStatus) |
boolean |
lockForRead(java.lang.String module,
long owner,
long resourceId) |
void |
releaseCurrentLock(com.seeyon.ctp.common.po.lock.Lock lock)
释放锁
|
void |
releaseOutDateLock(int beforeSeconds)
清理内存持有的超时锁
|
void |
unlock(long resourceId)
解锁。
|
void |
unlock(long resourceId,
int action)
解锁。
|
void |
unlock(long owner,
long resourceId,
int action)
解锁。
|
void |
unlockForRead(long owner,
long resourceId)
解锁读锁
|
void |
updateLockExpirationTime(long resourceId,
int action,
long expirationTime) |
activeWriteLock, check, check, check, check, getLoginTime, getMember, getModule, getOnLineManager, getOrgManager, getOwnerName, getSortOrder, getValidator, init, initialize, isValid, lock, lock, lock, lock, lock, lock, lock, lock, lock, lockForRead, lockForWrite, setModule, setOnLineManager, setOrgManager, setValidator, unlockForWrite
public static final long CHECK_PERIOD_SECONDS
public static final long DEFAULT_EXPIRE_TIME
public boolean lock(java.lang.String module, long owner, long resourceId)
lock
在接口中 com.seeyon.ctp.common.lock.manager.ConcreteLockManager
public boolean lock(java.lang.String module, long owner, long resourceId, java.lang.String from)
lock
在接口中 com.seeyon.ctp.common.lock.manager.ConcreteLockManager
public boolean lock(java.lang.String module, long owner, long resourceId, java.lang.String from, boolean ignoreOnlineStatus)
lock
在接口中 com.seeyon.ctp.common.lock.manager.ConcreteLockManager
public boolean lock(java.lang.String module, long owner, long resourceId, int action)
lock
在接口中 com.seeyon.ctp.common.lock.manager.ConcreteLockManager
public boolean lock(java.lang.String module, long owner, long resourceId, int action, boolean ignoreOnlineStatus)
lock
在接口中 com.seeyon.ctp.common.lock.manager.ConcreteLockManager
public boolean lock(java.lang.String module, long owner, long resourceId, int action, java.lang.String from)
lock
在接口中 com.seeyon.ctp.common.lock.manager.ConcreteLockManager
public boolean lock(java.lang.String module, long owner, long resourceId, int action, java.lang.String from, boolean useNowexpirationTime)
lock
在接口中 com.seeyon.ctp.common.lock.manager.ConcreteLockManager
public java.util.List<com.seeyon.ctp.common.po.lock.Lock> getLocks(long resourceId)
com.seeyon.ctp.common.lock.manager.LockManager
getLocks
在接口中 com.seeyon.ctp.common.lock.manager.LockManager
getLocks
在类中 AbstractLockManager
resourceId
- 资源Idpublic void unlock(long resourceId)
com.seeyon.ctp.common.lock.manager.LockManager
unlock
在接口中 com.seeyon.ctp.common.lock.manager.LockManager
unlock
在类中 AbstractLockManager
resourceId
- 资源Id。public void unlock(long resourceId, int action)
com.seeyon.ctp.common.lock.manager.LockManager
unlock
在接口中 com.seeyon.ctp.common.lock.manager.LockManager
unlock
在类中 AbstractLockManager
resourceId
- 资源Id。action
- 资源操作。public void unlock(long owner, long resourceId, int action)
com.seeyon.ctp.common.lock.manager.LockManager
unlock
在接口中 com.seeyon.ctp.common.lock.manager.LockManager
unlock
在类中 AbstractLockManager
owner
- 加锁人IdresourceId
- 资源Id。action
- 资源操作。public void releaseCurrentLock(com.seeyon.ctp.common.po.lock.Lock lock)
com.seeyon.ctp.common.lock.manager.LockManager
releaseCurrentLock
在接口中 com.seeyon.ctp.common.lock.manager.LockManager
releaseCurrentLock
在类中 AbstractLockManager
lock
- public boolean lock(com.seeyon.ctp.common.po.lock.Lock lock)
com.seeyon.ctp.common.lock.manager.LockManager
lock
在接口中 com.seeyon.ctp.common.lock.manager.LockManager
lock
在类中 AbstractLockManager
public com.seeyon.ctp.common.po.lock.Lock createDefaultLock(long owner, long resourceId, int action, java.lang.String from, java.lang.String param0, java.lang.String param1, boolean useNowexpirationTime)
createDefaultLock
在接口中 com.seeyon.ctp.common.lock.manager.LockManager
createDefaultLock
在类中 AbstractLockManager
public void updateLockExpirationTime(long resourceId, int action, long expirationTime)
updateLockExpirationTime
在接口中 com.seeyon.ctp.common.lock.manager.LockManager
updateLockExpirationTime
在类中 AbstractLockManager
public com.seeyon.ctp.common.po.lock.Lock getLock(long resourceId, int action)
com.seeyon.ctp.common.lock.manager.LockManager
getLock
在接口中 com.seeyon.ctp.common.lock.manager.LockManager
getLock
在类中 AbstractLockManager
resourceId
- 资源Id。action
- 操作。null
。public void releaseOutDateLock(int beforeSeconds)
releaseOutDateLock
在接口中 com.seeyon.ctp.common.lock.manager.LockManager
releaseOutDateLock
在类中 AbstractLockManager
beforeSeconds
- public void addReleaseLockListener(java.lang.String module, com.seeyon.ctp.common.lock.manager.ReleaseLockListener listener)
addReleaseLockListener
在接口中 com.seeyon.ctp.common.lock.manager.ConcreteLockManager
public boolean lockForRead(java.lang.String module, long owner, long resourceId)
lockForRead
在接口中 com.seeyon.ctp.common.lock.manager.ConcreteLockManager
public void activeReadLock(long owner, long resourceId)
com.seeyon.ctp.common.lock.manager.LockManager
activeReadLock
在接口中 com.seeyon.ctp.common.lock.manager.LockManager
activeReadLock
在类中 AbstractLockManager
resourceId
- 加锁资源对象IDpublic void unlockForRead(long owner, long resourceId)
com.seeyon.ctp.common.lock.manager.LockManager
unlockForRead
在接口中 com.seeyon.ctp.common.lock.manager.LockManager
unlockForRead
在类中 AbstractLockManager
owner
- 加锁人员IDresourceId
- 资源对象IDpublic void addReleaseLockListener(com.seeyon.ctp.common.lock.manager.ReleaseLockListener listener)
com.seeyon.ctp.common.lock.manager.LockManager
addReleaseLockListener
在接口中 com.seeyon.ctp.common.lock.manager.LockManager
addReleaseLockListener
在类中 AbstractLockManager
listener
- 监听器public java.util.List<com.seeyon.ctp.common.po.lock.Lock> getAllLock()
com.seeyon.ctp.common.lock.manager.LockManager
getAllLock
在接口中 com.seeyon.ctp.common.lock.manager.LockManager
getAllLock
在类中 AbstractLockManager
public boolean lock(java.lang.String module, long owner, long resourceId, int action, java.lang.String from, boolean useNowexpirationTime, boolean unlockSelfLock)
lock
在接口中 com.seeyon.ctp.common.lock.manager.ConcreteLockManager
public boolean lock(java.lang.String module, long owner, long resourceId, int action, java.lang.String from, boolean useNowexpirationTime, boolean unlockSelfLock, boolean ignoreOnlineStatus)
lock
在接口中 com.seeyon.ctp.common.lock.manager.ConcreteLockManager