Class Locking.ClientLockTable

  • Enclosing class:
    Locking

    protected class Locking.ClientLockTable
    extends java.lang.Object
    Manages access to client locks
    • Field Detail

      • table

        protected final java.util.concurrent.ConcurrentMap<java.lang.String,​java.util.Map<Owner,​Locking.ClientLock>> table
      • pending_release_reqs

        protected final java.util.Set<Locking.ClientLock> pending_release_reqs
    • Constructor Detail

      • ClientLockTable

        protected ClientLockTable()
    • Method Detail

      • numLocks

        protected int numLocks()
      • getLock

        protected Locking.ClientLock getLock​(java.lang.String name,
                                             Owner owner,
                                             boolean create_if_absent)
      • removeClientLock

        protected boolean removeClientLock​(java.lang.String lock_name,
                                           Owner owner)
      • unlockAll

        protected void unlockAll()
      • unlockForce

        protected void unlockForce​(java.lang.String lock_name)
      • resendPendingLockRequests

        protected void resendPendingLockRequests()
      • getLockInfo

        protected java.util.List<Tuple<java.lang.String,​Owner>> getLockInfo()
        Returns locks that have been successfully acquired
      • printLocks

        public java.lang.String printLocks()
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • addToPendingReleaseRequests

        public void addToPendingReleaseRequests​(Locking.ClientLock cl)
      • removeFromPendingReleaseRequests

        public void removeFromPendingReleaseRequests​(Locking.ClientLock cl)