org.hibernate.persister.entity
Interface Lockable

All Superinterfaces:
EntityPersister, OptimisticCacheSource
All Known Implementing Classes:
AbstractEntityPersister, JoinedSubclassEntityPersister, SingleTableEntityPersister, UnionSubclassEntityPersister

public interface Lockable
extends EntityPersister

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).

Since:
3.2
Author:
Steve Ebersole

Field Summary
 
Fields inherited from interface org.hibernate.persister.entity.EntityPersister
ENTITY_ID
 
Method Summary
 String getRootTableAlias(String drivingAlias)
          Get the SQL alias this persister would use for the root table given the passed driving alias.
 String[] getRootTableIdentifierColumnNames()
          Get the names of columns on the root table used to persist the identifier.
 String getRootTableName()
          Locks are always applied to the "root table".
 String getVersionColumnName()
          For versioned entities, get the name of the column (again, expected on the root table) used to store the version values.
 
Methods inherited from interface org.hibernate.persister.entity.EntityPersister
afterInitialize, afterReassociate, canExtractIdOutOfEntity, createProxy, delete, findDirty, findModified, forceVersionIncrement, getCacheAccessStrategy, getCacheEntryStructure, getClassMetadata, getConcreteProxyClass, getCurrentVersion, getDatabaseSnapshot, getEntityMetamodel, getEntityName, getFactory, getIdentifier, getIdentifier, getIdentifierGenerator, getIdentifierPropertyName, getIdentifierType, getMappedClass, getNaturalIdentifierProperties, getNaturalIdentifierSnapshot, getPropertyCascadeStyles, getPropertyCheckability, getPropertyInsertability, getPropertyInsertGenerationInclusions, getPropertyLaziness, getPropertyNames, getPropertyNullability, getPropertySpaces, getPropertyType, getPropertyTypes, getPropertyUpdateability, getPropertyUpdateGenerationInclusions, getPropertyValue, getPropertyValue, getPropertyValues, getPropertyValuesToInsert, getPropertyVersionability, getQuerySpaces, getRootEntityName, getSubclassEntityPersister, getVersion, getVersionProperty, getVersionType, guessEntityMode, hasCache, hasCascades, hasCollections, hasIdentifierProperty, hasInsertGeneratedProperties, hasLazyProperties, hasMutableProperties, hasNaturalIdentifier, hasProxy, hasSubselectLoadableCollections, hasUninitializedLazyProperties, hasUpdateGeneratedProperties, implementsLifecycle, implementsValidatable, insert, insert, instantiate, instantiate, isBatchLoadable, isCacheInvalidationRequired, isIdentifierAssignedByInsert, isInherited, isInstance, isInstrumented, isLazyPropertiesCacheable, isMutable, isSelectBeforeUpdateRequired, isSubclassEntityName, isTransient, isVersioned, isVersionPropertyGenerated, load, load, lock, lock, postInstantiate, processInsertGeneratedProperties, processUpdateGeneratedProperties, resetIdentifier, resetIdentifier, setIdentifier, setIdentifier, setPropertyValue, setPropertyValues, update
 
Methods inherited from interface org.hibernate.cache.OptimisticCacheSource
getVersionComparator
 

Method Detail

getRootTableName

String getRootTableName()
Locks are always applied to the "root table".

Returns:
The root table name

getRootTableAlias

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.

getRootTableIdentifierColumnNames

String[] getRootTableIdentifierColumnNames()
Get the names of columns on the root table used to persist the identifier.

Returns:
The root table identifier column names.

getVersionColumnName

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.


Copyright © 2001-2010 Red Hat, Inc. All Rights Reserved.