Class OutboxLockRepository
java.lang.Object
one.tomorrow.transactionaloutbox.repository.OutboxLockRepository
@Repository
public class OutboxLockRepository
extends java.lang.Object
-
Constructor Summary
Constructors Constructor Description OutboxLockRepository(OutboxSessionFactory sessionFactory) -
Method Summary
Modifier and Type Method Description booleanacquireOrRefreshLock(java.lang.String ownerId, java.time.Duration timeout)booleanpreventLockStealing(java.lang.String ownerId)Locks the outbox lock row for the given owner if it exists.voidreleaseLock(java.lang.String ownerId)
-
Constructor Details
-
Method Details
-
acquireOrRefreshLock
public boolean acquireOrRefreshLock(java.lang.String ownerId, java.time.Duration timeout) -
preventLockStealing
public boolean preventLockStealing(java.lang.String ownerId)Locks the outbox lock row for the given owner if it exists. Must be executed inside some outer transaction.- Returns:
- true if the lock could be acquired, otherwise false.
-
releaseLock
@Transactional public void releaseLock(java.lang.String ownerId)
-