public interface

Lockable

implements EntityPersister
org.hibernate.persister.entity.Lockable
Known Indirect Subclasses

Class Overview

Contract for things that can be locked via a LockingStrategy.

Currently only the root table gets locked, except for the case of HQL and Criteria queries against dialects which do not support either (1) FOR UPDATE OF or (2) support hint locking (in which case *all* queried tables would be locked).

Summary

[Expand]
Inherited Constants
From interface org.hibernate.persister.entity.EntityPersister
Public Methods
abstract String getRootTableAlias(String drivingAlias)
Get the SQL alias this persister would use for the root table given the passed driving alias.
abstract String[] getRootTableIdentifierColumnNames()
Get the names of columns on the root table used to persist the identifier.
abstract String getRootTableName()
Locks are always applied to the "root table".
abstract String getVersionColumnName()
For versioned entities, get the name of the column (again, expected on the root table) used to store the version values.
[Expand]
Inherited Methods
From interface org.hibernate.cache.OptimisticCacheSource
From interface org.hibernate.persister.entity.EntityPersister

Public Methods

public abstract String getRootTableAlias (String drivingAlias)

Get the SQL alias this persister would use for the root table given the passed driving alias.

Parameters
drivingAlias The driving alias; or the alias for the table mapped by this persister in the hierarchy.
Returns
  • The root table alias.

public abstract String[] getRootTableIdentifierColumnNames ()

Get the names of columns on the root table used to persist the identifier.

Returns
  • The root table identifier column names.

public abstract String getRootTableName ()

Locks are always applied to the "root table".

Returns
  • The root table name

public abstract String getVersionColumnName ()

For versioned entities, get the name of the column (again, expected on the root table) used to store the version values.

Returns
  • The version column name.