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
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final String
     
  • Method Summary

    Modifier and Type
    Method
    Description
    Gets the lock info for the node reference relative to the current user.
    boolean
    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
     
    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 Details

  • Method Details

    • 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 lock
      userName - the current user's user name
      timeout - the number of seconds before the locks expires
    • lock

      void lock(NodeRef nodeRef, LockInfo lockInfo)
    • lock

      void lock(NodeRef nodeRef, LockInfo lockInfo, int timeout)
    • 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:
    • 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