Package org.alfresco.repo.webdav
Interface WebDAVLockService
-
- All Known Implementing Classes:
WebDAVLockServiceImpl
public interface WebDAVLockService
WebDAVLockService is used to manage file locks for WebDAV and Sharepoint protocol. It ensures a lock never persists for more than 24 hours, and also ensures locks are timed out on session timeout.- Author:
- Pavel.Yurkevich, Matt Ward
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description LockInfo
getLockInfo(NodeRef nodeRef)
Gets the lock info for the node reference relative to the current user.boolean
isLockedAndReadOnly(NodeRef nodeRef)
Determines if the node is locked AND it's not a WRITE_LOCK for the current user.void
lock(NodeRef nodeRef, String userName, int timeout)
Shared method for webdav/vti protocols to lock node.void
lock(NodeRef nodeRef, LockInfo lockInfo)
void
lock(NodeRef nodeRef, LockInfo lockInfo, int timeout)
void
sessionDestroyed()
void
setCurrentSession(javax.servlet.http.HttpSession session)
Caches current session in a thread local variable.void
unlock(NodeRef nodeRef)
Shared method for webdav/vti to unlock node.
-
-
-
Field Detail
-
BEAN_NAME
static final String BEAN_NAME
- See Also:
- Constant Field Values
-
-
Method Detail
-
sessionDestroyed
void sessionDestroyed()
-
lock
void lock(NodeRef nodeRef, String userName, int timeout)
Shared method for webdav/vti protocols to lock node. If node is locked for more than 24 hours it is automatically added to the current session locked resources list.- Parameters:
nodeRef
- the node to lockuserName
- the current user's user nametimeout
- the number of seconds before the locks expires
-
unlock
void unlock(NodeRef nodeRef)
Shared method for webdav/vti to unlock node. Unlocked node is automatically removed from current sessions's locked resources list.- Parameters:
nodeRef
- the node to lock
-
getLockInfo
LockInfo getLockInfo(NodeRef nodeRef)
Gets the lock info for the node reference relative to the current user.- Parameters:
nodeRef
- the node reference- Returns:
- the lock status
- See Also:
LockService.getLockStatus(org.alfresco.service.cmr.repository.NodeRef, java.lang.String)
-
isLockedAndReadOnly
boolean isLockedAndReadOnly(NodeRef nodeRef)
Determines if the node is locked AND it's not a WRITE_LOCK for the current user.- Returns:
- true if the node is locked AND it's not a WRITE_LOCK for the current user
-
setCurrentSession
void setCurrentSession(javax.servlet.http.HttpSession session)
Caches current session in a thread local variable.- Parameters:
session
- HttpSession
-
-