Class LockingVisitors.LockVisitor.LVBuilder<O,​L,​B extends LockingVisitors.LockVisitor.LVBuilder<O,​L,​B>>

    • Field Summary

      Fields 
      Modifier and Type Field Description
      (package private) L lock
      The lock object, untyped, since, for example StampedLock does not implement a locking interface in Java 8.
      (package private) O object
      The guarded object.
      private java.util.function.Supplier<java.util.concurrent.locks.Lock> readLockSupplier
      Supplies the read lock, usually from the lock object.
      private java.util.function.Supplier<java.util.concurrent.locks.Lock> writeLockSupplier
      Supplies the write lock, usually from the lock object.
    • Constructor Summary

      Constructors 
      Constructor Description
      LVBuilder()
      Constructs a new instance.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      LockingVisitors.LockVisitor<O,​L> get()
      Supplies an object
      (package private) java.util.function.Supplier<java.util.concurrent.locks.Lock> getReadLockSupplier()  
      (package private) java.util.function.Supplier<java.util.concurrent.locks.Lock> getWriteLockSupplier()  
      B setLock​(L lock)
      Set the lock used from accept methods.
      B setObject​(O object)
      Set the resource.
      B setReadLockSupplier​(java.util.function.Supplier<java.util.concurrent.locks.Lock> readLockSupplier)
      Supplies the read lock.
      B setWriteLockSupplier​(java.util.function.Supplier<java.util.concurrent.locks.Lock> writeLockSupplier)
      Supplies the write lock.
      • Methods inherited from class java.lang.Object

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

      • lock

        L lock
        The lock object, untyped, since, for example StampedLock does not implement a locking interface in Java 8.
      • object

        O object
        The guarded object.
      • readLockSupplier

        private java.util.function.Supplier<java.util.concurrent.locks.Lock> readLockSupplier
        Supplies the read lock, usually from the lock object.
      • writeLockSupplier

        private java.util.function.Supplier<java.util.concurrent.locks.Lock> writeLockSupplier
        Supplies the write lock, usually from the lock object.
    • Constructor Detail

      • LVBuilder

        public LVBuilder()
        Constructs a new instance.
    • Method Detail

      • getReadLockSupplier

        java.util.function.Supplier<java.util.concurrent.locks.Lock> getReadLockSupplier()
      • getWriteLockSupplier

        java.util.function.Supplier<java.util.concurrent.locks.Lock> getWriteLockSupplier()
      • setLock

        public B setLock​(L lock)
        Set the lock used from accept methods.
        Parameters:
        lock - the lock.
        Returns:
        this instance.
      • setObject

        public B setObject​(O object)
        Set the resource.
        Parameters:
        object - the resource.
        Returns:
        this instance.
      • setReadLockSupplier

        public B setReadLockSupplier​(java.util.function.Supplier<java.util.concurrent.locks.Lock> readLockSupplier)
        Supplies the read lock.
        Parameters:
        readLockSupplier - Supplies the read lock.
        Returns:
        this instance.
      • setWriteLockSupplier

        public B setWriteLockSupplier​(java.util.function.Supplier<java.util.concurrent.locks.Lock> writeLockSupplier)
        Supplies the write lock.
        Parameters:
        writeLockSupplier - Supplies the write lock.
        Returns:
        this instance.