Package org.hibernate.sql.ast.spi
Interface LockingClauseStrategy
- All Known Implementing Classes:
NonLockingClauseStrategy,StandardLockingClauseStrategy
public interface LockingClauseStrategy
Strategy for dealing with locking via a SQL
FOR UPDATE (OF)
clause.
Some dialects do not use a FOR UPDATE (OF) to apply
locks - e.g., they apply locks in the FROM clause. Such
dialects would return a no-op version of this contract.
Some dialects support an additional FOR SHARE (OF) clause
as well to acquire non-exclusive locks. That is also handled here,
varied by the requested LockMode.
Operates in 2 "phases"-- collect tables which are to be locked (based on Locking.Scope, and other things)
- render the appropriate locking fragment
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionbooleanvoidregisterJoin(TableGroupJoin join) voidregisterRoot(TableGroup root) voidrender(SqlAppender sqlAppender)
-
Method Details
-
registerRoot
-
registerJoin
-
containsOuterJoins
boolean containsOuterJoins() -
render
-