Package org.alfresco.repo.webdav
Class WebDAVLockServiceImpl
java.lang.Object
org.alfresco.repo.webdav.WebDAVLockServiceImpl
- All Implemented Interfaces:
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
-
Field Summary
Fields inherited from interface org.alfresco.repo.webdav.WebDAVLockService
BEAN_NAME
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiongetLockInfo
(NodeRef nodeRef) Gets the lock status 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
Shared method for webdav/vti protocols to lock node.void
void
void
setCheckOutCheckInService
(CheckOutCheckInService checkOutCheckInService) Set the CheckOutCheckInServicevoid
setCurrentSession
(javax.servlet.http.HttpSession session) Caches current session to the thread local variablevoid
setLockService
(LockService lockService) Set the LockServicevoid
setNodeService
(NodeService nodeService) Set the NodeServicevoid
setTransactionService
(TransactionService transactionService) Set the TransactionServicevoid
Shared method for webdav/vti to unlock node.
-
Constructor Details
-
WebDAVLockServiceImpl
public WebDAVLockServiceImpl()
-
-
Method Details
-
setLockService
Set the LockService- Parameters:
lockService
- LockService
-
setNodeService
Set the NodeService- Parameters:
nodeService
- NodeService
-
setTransactionService
Set the TransactionService- Parameters:
transactionService
- TransactionService
-
setCheckOutCheckInService
Set the CheckOutCheckInService- Parameters:
checkOutCheckInService
- CheckOutCheckInService
-
setCurrentSession
public void setCurrentSession(javax.servlet.http.HttpSession session) Caches current session to the thread local variable- Specified by:
setCurrentSession
in interfaceWebDAVLockService
- Parameters:
session
- HttpSession
-
sessionDestroyed
public void sessionDestroyed()- Specified by:
sessionDestroyed
in interfaceWebDAVLockService
-
lock
- Specified by:
lock
in interfaceWebDAVLockService
-
lock
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.- Specified by:
lock
in interfaceWebDAVLockService
- Parameters:
nodeRef
- the node to lockuserName
- userNametimeout
- the number of seconds before the locks expires
-
unlock
Shared method for webdav/vti to unlock node. Unlocked node is automatically removed from current sessions's locked resources list.- Specified by:
unlock
in interfaceWebDAVLockService
- Parameters:
nodeRef
- the node to lock
-
getLockInfo
Gets the lock status for the node reference relative to the current user.- Specified by:
getLockInfo
in interfaceWebDAVLockService
- Parameters:
nodeRef
- the node reference- Returns:
- the lock status
- See Also:
-
isLockedAndReadOnly
Determines if the node is locked AND it's not a WRITE_LOCK for the current user.- Specified by:
isLockedAndReadOnly
in interfaceWebDAVLockService
- Returns:
- true if the node is locked AND it's not a WRITE_LOCK for the current user
-