|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.slide.lock.LockImpl
Lock helper class.
Constructor Summary | |
LockImpl(Namespace namespace,
NamespaceConfig namespaceConfig,
Security securityHelper)
Constructor. |
Method Summary | |
void |
checkLock(SlideToken token,
ObjectNode object,
ActionNode action)
Utility function for lock checking. |
void |
checkLock(SlideToken slideToken,
ObjectNode subject,
SubjectNode user,
ActionNode action)
Check locking for a specific action and credential. |
boolean |
checkLockOwner(SlideToken slideToken,
NodeLock token)
Returns true, if the principal from the credentials token is either the lock-owner of has kill-lock privileges |
boolean |
checkLockToken(SlideToken slideToken,
NodeLock token)
Return true if a lock token for this lock has been given in the credentials token. |
void |
clearExpiredLocks(SlideToken slideToken,
java.lang.String objectUri,
UnlockListener listener)
Clears the expired locks from the specified resource. |
java.util.Enumeration |
enumerateLocks(SlideToken slideToken,
java.lang.String objectUri)
Enumerate locks on a subject, including any locks inherited from parent subjects. |
java.util.Enumeration |
enumerateLocks(SlideToken slideToken,
java.lang.String objectUri,
boolean inherited)
Enumerate locks on a subject, optionally excluding locks inherited from parent subjects. |
boolean |
isLocked(SlideToken slideToken,
NodeLock token,
boolean tryToLock)
Tests if an element is locked. |
boolean |
isLocked(SlideToken slideToken,
ObjectNode subject,
SubjectNode user,
ActionNode action,
boolean tryToLock)
Tests if an element is locked. |
boolean |
isLocked(SlideToken slideToken,
ObjectNode subject,
SubjectNode user,
ActionNode action,
boolean inheritance,
boolean tryToLock)
Tests if an element is locked. |
void |
kill(SlideToken slideToken,
SubjectNode subject)
Kills locks. |
void |
lock(SlideToken slideToken,
NodeLock lockToken)
Put a lock on a subject. |
void |
renew(SlideToken slideToken,
NodeLock lockToken,
java.util.Date newExpirationDate)
Renew a lock. |
void |
renew(SlideToken slideToken,
java.lang.String objectUri,
java.lang.String lockId,
java.util.Date newExpirationDate)
Renew a set of linked locks. |
boolean |
unlock(SlideToken slideToken,
NodeLock lockToken)
Removes a lock. |
void |
unlock(SlideToken slideToken,
java.lang.String objectUri,
java.lang.String lockId)
Removes a set of linked locks. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
public LockImpl(Namespace namespace, NamespaceConfig namespaceConfig, Security securityHelper)
namespace
- Associated namespacenamespaceConfig
- Namespace configurationsecurityHelper
- Security helperMethod Detail |
public void lock(SlideToken slideToken, NodeLock lockToken) throws ServiceAccessException, ObjectIsAlreadyLockedException, AccessDeniedException, ObjectNotFoundException
lock
in interface Lock
slideToken
- The token to access slide.lockToken
- Object containing all the lock information
ServiceAccessException
- Low level service access exception
ObjectNotFoundException
- One of the objects referenced
in the lock token were not found
ObjectIsAlreadyLockedException
- Object is already locked
with an incompatible lock token
AccessDeniedException
- Insufficient credentials to allow
object lockingpublic boolean unlock(SlideToken slideToken, NodeLock lockToken) throws ServiceAccessException, LockTokenNotFoundException
unlock
in interface Lock
slideToken
- The token to access slide.lockToken
- Object containing all the lock information
true
if the lock could be removed
ServiceAccessException
- Low level service access exception
LockTokenNotFoundException
- Cannot find the Lock in the
Lock Store servicepublic void unlock(SlideToken slideToken, java.lang.String objectUri, java.lang.String lockId) throws ServiceAccessException, LockTokenNotFoundException, ObjectNotFoundException
unlock
in interface Lock
slideToken
- Slide tokenobjectUri
- Uri of the locked object.lockId
- The id of the locks, which will be removed.
ServiceAccessException
- Low level service access exception
LockTokenNotFoundException
- Cannot find the Lock in the
Lock Store service
ObjectNotFoundException
- One of the objects referenced
in the lock token were not foundpublic void renew(SlideToken slideToken, NodeLock lockToken, java.util.Date newExpirationDate) throws ServiceAccessException, LockTokenNotFoundException
renew
in interface Lock
slideToken
- Slide tokenlockToken
- Token containing the lock info.newExpirationDate
- the desired expiration date
ServiceAccessException
- Low level service access exception
LockTokenNotFoundException
- Cannot find the Lock in
the Lock Store servicepublic void renew(SlideToken slideToken, java.lang.String objectUri, java.lang.String lockId, java.util.Date newExpirationDate) throws ServiceAccessException, LockTokenNotFoundException, ObjectNotFoundException
renew
in interface Lock
slideToken
- Slide tokenobjectUri
- Uri of the locked objectlockId
- Id of the locks, which will be renewed.newExpirationDate
- The new expiration date of the locks
ServiceAccessException
- Low level service access exception
LockTokenNotFoundException
- Cannot find the Lock in the
Lock Store service
ObjectNotFoundException
- One of the objects referenced
in the lock token were not foundpublic void kill(SlideToken slideToken, SubjectNode subject) throws ServiceAccessException, AccessDeniedException, LockTokenNotFoundException, ObjectNotFoundException
kill
in interface Lock
slideToken
- Slide tokensubject
- Subject on which locks are to be removed
ServiceAccessException
- Low level service access exception
ObjectNotFoundException
- One of the objects referenced in
the lock token were not found
LockTokenNotFoundException
- Cannot find the Lock in the
Lock Store service
AccessDeniedException
- Insufficient credentials to allow
forced removal of lockspublic java.util.Enumeration enumerateLocks(SlideToken slideToken, java.lang.String objectUri) throws ServiceAccessException, ObjectNotFoundException, LockTokenNotFoundException
Lock
enumerateLocks
in interface Lock
slideToken
- the slide tokenobjectUri
- the URI of the object of which we want to enumerate
active locks
ObjectNotFoundException
- one of the objects referenced in
the lock token were not found
ServiceAccessException
- low level service access exception
LockTokenNotFoundException
public java.util.Enumeration enumerateLocks(SlideToken slideToken, java.lang.String objectUri, boolean inherited) throws ServiceAccessException, ObjectNotFoundException, LockTokenNotFoundException
Lock
enumerateLocks
in interface Lock
slideToken
- the slide tokenobjectUri
- the URI of the object of which we want to enumerate
active locksinherited
- if true, locks inherited from parent objects will be
included in the result, otherwise, only locks that
explicitly lock the object will be returned
ServiceAccessException
- low level service access exception
LockTokenNotFoundException
- cannot find the lock in the
lock store service
ObjectNotFoundException
- one of the objects referenced in
the lock token were not foundpublic void checkLock(SlideToken token, ObjectNode object, ActionNode action) throws ServiceAccessException, ObjectNotFoundException, ObjectLockedException
checkLock
in interface Lock
token
- Slide tokenobject
- Object on which the action is performedaction
- Action to test
ObjectLockedException
- Can't perform specified action
on object
ServiceAccessException
- Low level service access exception
ObjectNotFoundException
- One of the objects referenced
in the lock token were not foundpublic void checkLock(SlideToken slideToken, ObjectNode subject, SubjectNode user, ActionNode action) throws ServiceAccessException, ObjectNotFoundException, ObjectLockedException
checkLock
in interface Lock
slideToken
- Credetials tokensubject
- Subject to testuser
- User to testaction
- Action to test
ObjectLockedException
- Can't perform specified action
on object
ServiceAccessException
- Low level service access exception
ObjectNotFoundException
- One of the objects referenced
in the lock token were not foundpublic boolean isLocked(SlideToken slideToken, ObjectNode subject, SubjectNode user, ActionNode action, boolean tryToLock) throws ServiceAccessException, ObjectNotFoundException
isLocked
in interface Lock
slideToken
- Slide tokensubject
- Subject to testuser
- User to testaction
- Locked for action
ServiceAccessException
- Low level service access exception
ObjectNotFoundException
- One of the objects referenced
in the lock token were not foundpublic boolean isLocked(SlideToken slideToken, ObjectNode subject, SubjectNode user, ActionNode action, boolean inheritance, boolean tryToLock) throws ServiceAccessException, ObjectNotFoundException
isLocked
in interface Lock
slideToken
- Slide tokensubject
- Subject to testuser
- User to testaction
- Locked for actioninheritance
- Set to true if we want to check if any children
is locked with an incompatible locktryToLock
- True if the check is intended to check whether
or not we can put a new lock
ServiceAccessException
- Low level service access exception
ObjectNotFoundException
- One of the objects referenced
in the lock token were not foundpublic boolean isLocked(SlideToken slideToken, NodeLock token, boolean tryToLock) throws ServiceAccessException, ObjectNotFoundException
isLocked
in interface Lock
token
- Lock token to test
ServiceAccessException
- Low level service access exception
ObjectNotFoundException
- One of the objects referenced
in the lock token were not foundpublic void clearExpiredLocks(SlideToken slideToken, java.lang.String objectUri, UnlockListener listener) throws SlideException
clearExpiredLocks
in interface Lock
slideToken
- a SlideTokenobjectUri
- a Stringlistener
- an UnlockListener
SlideException
public boolean checkLockToken(SlideToken slideToken, NodeLock token)
checkLockToken
in interface Lock
slideToken
- Current credentials tokentoken
- Lock tokenpublic boolean checkLockOwner(SlideToken slideToken, NodeLock token) throws ObjectNotFoundException, ServiceAccessException
checkLockOwner
in interface Lock
slideToken
- a SlideTokentoken
- a NodeLock
ObjectNotFoundException
ServiceAccessException
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |