Class AbstractSimpleLock

java.lang.Object
net.javacrumbs.shedlock.core.AbstractSimpleLock
All Implemented Interfaces:
SimpleLock

public abstract class AbstractSimpleLock extends Object implements SimpleLock
  • Field Details

  • Constructor Details

    • AbstractSimpleLock

      protected AbstractSimpleLock(LockConfiguration lockConfiguration)
  • Method Details

    • unlock

      public final void unlock()
      Description copied from interface: SimpleLock
      Unlocks the lock. Once you unlock it, you should not use for any other operation.
      Specified by:
      unlock in interface SimpleLock
    • doUnlock

      protected abstract void doUnlock()
    • extend

      public Optional<SimpleLock> extend(Duration lockAtMostFor, Duration lockAtLeastFor)
      Description copied from interface: SimpleLock
      Extends the lock. If the lock can be extended a new lock is returned. After calling extend, no other operation can be called on current lock.

      This method is NOT supported by all lock providers.

      Specified by:
      extend in interface SimpleLock
      Returns:
      a new lock or empty optional if the lock can not be extended
    • doExtend

      protected Optional<SimpleLock> doExtend(LockConfiguration newConfiguration)