Interface SoftLockManager

    • Method Detail

      • createSoftLockID

        SoftLockID createSoftLockID​(TransactionID transactionID,
                                    java.lang.Object key,
                                    Element newElement,
                                    Element oldElement)
        Create a new soft lock ID and associated soft lock if necessary.
        Parameters:
        transactionID - the transaction ID under which the soft lock will operate
        key - the key of the Element this soft lock is protecting
        newElement - the new Element
        oldElement - the actual Element
        Returns:
        the soft lock ID
      • clearSoftLock

        void clearSoftLock​(SoftLock softLock)
        Clear a soft lock
        Parameters:
        softLock - the lock to clear
      • findSoftLockById

        SoftLock findSoftLockById​(SoftLockID softLockId)
        Find a previously created and still existing soft lock
        Parameters:
        softLockId - the soft lock's ID
        Returns:
        the soft lock, or null if no soft lock with the corresponding ID could be found
      • getKeysInvisibleInContext

        java.util.Set<java.lang.Object> getKeysInvisibleInContext​(LocalTransactionContext transactionContext,
                                                                  Store underlyingStore)
        Get a Set of keys protected by soft locks which must not be visible to a transaction context according to the isolation level.
        Parameters:
        transactionContext - the transaction context
        Returns:
        a Set of keys invisible to the context
      • collectAllSoftLocksForTransactionID

        java.util.Set<SoftLock> collectAllSoftLocksForTransactionID​(TransactionID transactionID)
        Get a the soft locks of the specified transaction ID
        Parameters:
        transactionID - the transaction ID
        Returns:
        a Set of SoftLocks