org.hibernate.persister.entity
Interface Loadable

All Superinterfaces:
EntityPersister, OptimisticCacheSource
All Known Subinterfaces:
OuterJoinLoadable, Queryable, SQLLoadable, UniqueKeyLoadable
All Known Implementing Classes:
AbstractEntityPersister, JoinedSubclassEntityPersister, SingleTableEntityPersister, UnionSubclassEntityPersister

public interface Loadable
extends EntityPersister

Implemented by a EntityPersister that may be loaded using Loader.

See Also:
Loader

Field Summary
static String ROWID_ALIAS
           
 
Fields inherited from interface org.hibernate.persister.entity.EntityPersister
ENTITY_ID
 
Method Summary
 String getDiscriminatorAlias(String suffix)
          Get the result set aliases used for the identifier columns, given a suffix
 String getDiscriminatorColumnName()
           
 Type getDiscriminatorType()
          Get the discriminator type
 Object getDiscriminatorValue()
          Get the discriminator value
 String[] getIdentifierAliases(String suffix)
          Get the result set aliases used for the identifier columns, given a suffix
 String[] getIdentifierColumnNames()
          Get the names of columns used to persist the identifier
 String[] getPropertyAliases(String suffix, int i)
          Get the result set aliases used for the property columns, given a suffix (properties of this class, only).
 String[] getPropertyColumnNames(int i)
          Get the result set column names mapped for this property (properties of this class, only).
 String getSubclassForDiscriminatorValue(Object value)
          Get the concrete subclass corresponding to the given discriminator value
 String getTableAliasForColumn(String columnName, String rootAlias)
          Given a column name and the root table alias in use for the entity hierarchy, determine the proper table alias for the table in that hierarchy that contains said column.
 boolean hasRowId()
          Does the result set contain rowids?
 boolean hasSubclasses()
          Does this persistent class have subclasses?
 Object[] hydrate(ResultSet rs, Serializable id, Object object, Loadable rootLoadable, String[][] suffixedPropertyColumns, boolean allProperties, SessionImplementor session)
          Retrieve property values from one row of a result set
 boolean isAbstract()
           
 void registerAffectingFetchProfile(String fetchProfileName)
          Register the name of a fetch profile determined to have an affect on the underlying loadable in regards to the fact that the underlying load SQL needs to be adjust when the given fetch profile is enabled.
 
Methods inherited from interface org.hibernate.persister.entity.EntityPersister
afterInitialize, afterReassociate, buildCacheEntry, canExtractIdOutOfEntity, canUseReferenceCacheEntries, createProxy, delete, findDirty, findModified, forceVersionIncrement, getCacheAccessStrategy, getCacheEntryStructure, getClassMetadata, getConcreteProxyClass, getCurrentVersion, getDatabaseSnapshot, getEntityMetamodel, getEntityMode, getEntityName, getEntityTuplizer, getFactory, getFilterAliasGenerator, getIdByUniqueKey, getIdentifier, getIdentifier, getIdentifierGenerator, getIdentifierPropertyName, getIdentifierType, getInstrumentationMetadata, getMappedClass, getNaturalIdCacheAccessStrategy, 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, hasCache, hasCascades, hasCollections, hasIdentifierProperty, hasInsertGeneratedProperties, hasLazyProperties, hasMutableProperties, hasNaturalIdCache, hasNaturalIdentifier, hasProxy, hasSubselectLoadableCollections, hasUninitializedLazyProperties, hasUpdateGeneratedProperties, implementsLifecycle, insert, insert, instantiate, isBatchLoadable, isCacheInvalidationRequired, isIdentifierAssignedByInsert, isInherited, isInstance, isInstrumented, isLazyPropertiesCacheable, isMutable, isSelectBeforeUpdateRequired, isSubclassEntityName, isTransient, isVersioned, isVersionPropertyGenerated, load, load, loadEntityIdByNaturalId, lock, lock, postInstantiate, processInsertGeneratedProperties, processUpdateGeneratedProperties, resetIdentifier, resolveAttributeIndexes, setIdentifier, setPropertyValue, setPropertyValues, update
 
Methods inherited from interface org.hibernate.cache.spi.OptimisticCacheSource
getVersionComparator
 

Field Detail

ROWID_ALIAS

static final String ROWID_ALIAS
See Also:
Constant Field Values
Method Detail

hasSubclasses

boolean hasSubclasses()
Does this persistent class have subclasses?


getDiscriminatorType

Type getDiscriminatorType()
Get the discriminator type


getDiscriminatorValue

Object getDiscriminatorValue()
Get the discriminator value


getSubclassForDiscriminatorValue

String getSubclassForDiscriminatorValue(Object value)
Get the concrete subclass corresponding to the given discriminator value


getIdentifierColumnNames

String[] getIdentifierColumnNames()
Get the names of columns used to persist the identifier


getIdentifierAliases

String[] getIdentifierAliases(String suffix)
Get the result set aliases used for the identifier columns, given a suffix


getPropertyAliases

String[] getPropertyAliases(String suffix,
                            int i)
Get the result set aliases used for the property columns, given a suffix (properties of this class, only).


getPropertyColumnNames

String[] getPropertyColumnNames(int i)
Get the result set column names mapped for this property (properties of this class, only).


getDiscriminatorAlias

String getDiscriminatorAlias(String suffix)
Get the result set aliases used for the identifier columns, given a suffix


getDiscriminatorColumnName

String getDiscriminatorColumnName()
Returns:
the column name for the discriminator as specified in the mapping.

hasRowId

boolean hasRowId()
Does the result set contain rowids?


hydrate

Object[] hydrate(ResultSet rs,
                 Serializable id,
                 Object object,
                 Loadable rootLoadable,
                 String[][] suffixedPropertyColumns,
                 boolean allProperties,
                 SessionImplementor session)
                 throws SQLException,
                        HibernateException
Retrieve property values from one row of a result set

Throws:
SQLException
HibernateException

isAbstract

boolean isAbstract()

registerAffectingFetchProfile

void registerAffectingFetchProfile(String fetchProfileName)
Register the name of a fetch profile determined to have an affect on the underlying loadable in regards to the fact that the underlying load SQL needs to be adjust when the given fetch profile is enabled.

Parameters:
fetchProfileName - The name of the profile affecting this.

getTableAliasForColumn

String getTableAliasForColumn(String columnName,
                              String rootAlias)
Given a column name and the root table alias in use for the entity hierarchy, determine the proper table alias for the table in that hierarchy that contains said column.

NOTE : Generally speaking the column is not validated to exist. Most implementations simply return the root alias; the exception is JoinedSubclassEntityPersister

Parameters:
columnName - The column name
rootAlias - The hierarchy root alias
Returns:
The proper table alias for qualifying the given column.


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