Class LockManagerImpl

  • All Implemented Interfaces:
    javax.jcr.lock.LockManager

    public class LockManagerImpl
    extends Object
    implements javax.jcr.lock.LockManager
    Simple lock manager implementation that just keeps track of a set of lock tokens and delegates all locking operations back to the Session and Node implementations.
    • Constructor Detail

      • LockManagerImpl

        public LockManagerImpl​(SessionContext sessionContext)
    • Method Detail

      • getLockTokens

        @NotNull
        public @NotNull String[] getLockTokens()
                                        throws javax.jcr.RepositoryException
        Specified by:
        getLockTokens in interface javax.jcr.lock.LockManager
        Throws:
        javax.jcr.RepositoryException
      • addLockToken

        public void addLockToken​(String lockToken)
                          throws javax.jcr.RepositoryException
        Specified by:
        addLockToken in interface javax.jcr.lock.LockManager
        Throws:
        javax.jcr.RepositoryException
      • removeLockToken

        public void removeLockToken​(String lockToken)
                             throws javax.jcr.RepositoryException
        Specified by:
        removeLockToken in interface javax.jcr.lock.LockManager
        Throws:
        javax.jcr.RepositoryException
      • isLocked

        public boolean isLocked​(String absPath)
                         throws javax.jcr.RepositoryException
        Specified by:
        isLocked in interface javax.jcr.lock.LockManager
        Throws:
        javax.jcr.RepositoryException
      • holdsLock

        public boolean holdsLock​(String absPath)
                          throws javax.jcr.RepositoryException
        Specified by:
        holdsLock in interface javax.jcr.lock.LockManager
        Throws:
        javax.jcr.RepositoryException
      • getLock

        @NotNull
        public @NotNull javax.jcr.lock.Lock getLock​(String absPath)
                                             throws javax.jcr.RepositoryException
        Specified by:
        getLock in interface javax.jcr.lock.LockManager
        Throws:
        javax.jcr.RepositoryException
      • lock

        @NotNull
        public @NotNull javax.jcr.lock.Lock lock​(String absPath,
                                                 boolean isDeep,
                                                 boolean isSessionScoped,
                                                 long timeoutHint,
                                                 String ownerInfo)
                                          throws javax.jcr.RepositoryException
        Specified by:
        lock in interface javax.jcr.lock.LockManager
        Throws:
        javax.jcr.RepositoryException
      • unlock

        public void unlock​(String absPath)
                    throws javax.jcr.RepositoryException
        Specified by:
        unlock in interface javax.jcr.lock.LockManager
        Throws:
        javax.jcr.RepositoryException
      • canUnlock

        public boolean canUnlock​(NodeDelegate node)
        Verifies if the current sessionContext can unlock the specified node
        Parameters:
        node - the node state to check
        Returns:
        true if the current sessionContext can unlock the specified node