Class WorkspaceLock

  • All Implemented Interfaces:
    java.io.Serializable, java.util.concurrent.locks.ReadWriteLock

    final class WorkspaceLock
    extends java.util.concurrent.locks.ReentrantReadWriteLock
    ReentrantReadWriteLock lock for serializing access to the Workspace.
    • Nested Class Summary

      • Nested classes/interfaces inherited from class java.util.concurrent.locks.ReentrantReadWriteLock

        java.util.concurrent.locks.ReentrantReadWriteLock.ReadLock, java.util.concurrent.locks.ReentrantReadWriteLock.WriteLock
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private static org.slf4j.Logger logger  
      private java.util.concurrent.atomic.AtomicInteger progress  
      private static long serialVersionUID  
    • Constructor Summary

      Constructors 
      Constructor Description
      WorkspaceLock​(boolean fair)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      private java.util.concurrent.CancellationException canceled​(java.util.concurrent.locks.Lock lock)  
      private java.lang.String dumpAllThreads()  
      private java.lang.Throwable getOwnerCause()  
      (package private) <T> T locked​(java.util.concurrent.locks.Lock lock, long timeoutInMs, java.util.concurrent.Callable<T> callable, java.util.function.BooleanSupplier canceled)  
      private java.util.concurrent.TimeoutException timeout​(java.util.concurrent.locks.Lock lock)  
      private void trace​(java.lang.String name, java.util.concurrent.locks.Lock lock)  
      private java.lang.String type​(java.util.concurrent.locks.Lock lock)  
      • Methods inherited from class java.util.concurrent.locks.ReentrantReadWriteLock

        getOwner, getQueuedReaderThreads, getQueuedThreads, getQueuedWriterThreads, getQueueLength, getReadHoldCount, getReadLockCount, getWaitingThreads, getWaitQueueLength, getWriteHoldCount, hasQueuedThread, hasQueuedThreads, hasWaiters, isFair, isWriteLocked, isWriteLockedByCurrentThread, readLock, toString, writeLock
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Field Detail

      • logger

        private static final org.slf4j.Logger logger
      • progress

        private final java.util.concurrent.atomic.AtomicInteger progress
    • Constructor Detail

      • WorkspaceLock

        WorkspaceLock​(boolean fair)
    • Method Detail

      • type

        private java.lang.String type​(java.util.concurrent.locks.Lock lock)
      • trace

        private void trace​(java.lang.String name,
                           java.util.concurrent.locks.Lock lock)
      • getOwnerCause

        private java.lang.Throwable getOwnerCause()
      • dumpAllThreads

        private java.lang.String dumpAllThreads()
      • canceled

        private java.util.concurrent.CancellationException canceled​(java.util.concurrent.locks.Lock lock)
      • timeout

        private java.util.concurrent.TimeoutException timeout​(java.util.concurrent.locks.Lock lock)
      • locked

        <T> T locked​(java.util.concurrent.locks.Lock lock,
                     long timeoutInMs,
                     java.util.concurrent.Callable<T> callable,
                     java.util.function.BooleanSupplier canceled)
              throws java.lang.Exception
        Throws:
        java.lang.Exception