Package org.hibernate.persister.entity
Interface Loadable
-
- All Superinterfaces:
AttributeSource
,EntityDefinition
,EntityPersister
- 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
Fields Modifier and Type Field Description static String
ROWID_ALIAS
-
Fields inherited from interface org.hibernate.persister.entity.EntityPersister
ENTITY_ID
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description String
getDiscriminatorAlias(String suffix)
Get the result set aliases used for the identifier columns, given a suffixString
getDiscriminatorColumnName()
Type
getDiscriminatorType()
Get the discriminator typeObject
getDiscriminatorValue()
Get the discriminator valueString[]
getIdentifierAliases(String suffix)
Get the result set aliases used for the identifier columns, given a suffixString[]
getIdentifierColumnNames()
Get the names of columns used to persist the identifierString[]
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 valueString
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 forceEager, boolean[] propertiesForceEager, SharedSessionContractImplementor session)
Retrieve property values from one row of a result setdefault Object[]
hydrate(ResultSet rs, Serializable id, Object object, Loadable rootLoadable, String[][] suffixedPropertyColumns, boolean forceEager, SharedSessionContractImplementor session)
Retrieve property values from one row of a result setboolean
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.walking.spi.AttributeSource
getAttributes
-
Methods inherited from interface org.hibernate.persister.walking.spi.EntityDefinition
getEntityKeyDefinition, getEntityPersister
-
Methods inherited from interface org.hibernate.persister.entity.EntityPersister
afterInitialize, afterReassociate, buildCacheEntry, canExtractIdOutOfEntity, canIdentityInsertBeDelayed, canReadFromCache, canUseReferenceCacheEntries, canWriteToCache, createProxy, delete, findDirty, findModified, forceVersionIncrement, generateEntityDefinition, getBytecodeEnhancementMetadata, getCacheAccessStrategy, getCacheEntryStructure, getClassMetadata, getConcreteProxyClass, getCurrentVersion, getDatabaseSnapshot, getEntityEntryFactory, getEntityMetamodel, getEntityMode, getEntityName, getEntityTuplizer, getFactory, getFilterAliasGenerator, getIdByUniqueKey, getIdentifier, getIdentifier, getIdentifierGenerator, getIdentifierPropertyName, getIdentifierType, getInstrumentationMetadata, getMappedClass, getNaturalIdCacheAccessStrategy, getNaturalIdentifierProperties, getNaturalIdentifierSnapshot, getNavigableRole, 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, initializeEnhancedEntityUsedAsProxy, insert, insert, instantiate, isBatchLoadable, isCacheInvalidationRequired, isIdentifierAssignedByInsert, isInherited, isInstance, isInstrumented, isLazyPropertiesCacheable, isMutable, isSelectBeforeUpdateRequired, isSubclassEntityName, isTransient, isVersioned, isVersionPropertyGenerated, load, load, load, load, loadEntityIdByNaturalId, lock, lock, multiLoad, postInstantiate, processInsertGeneratedProperties, processUpdateGeneratedProperties, resetIdentifier, resolveAttributeIndexes, resolveDirtyAttributeIndexes, setIdentifier, setPropertyValue, setPropertyValues, update
-
-
-
-
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
default Object[] hydrate(ResultSet rs, Serializable id, Object object, Loadable rootLoadable, String[][] suffixedPropertyColumns, boolean forceEager, SharedSessionContractImplementor session) throws SQLException, HibernateException
Retrieve property values from one row of a result set- Throws:
SQLException
HibernateException
-
hydrate
Object[] hydrate(ResultSet rs, Serializable id, Object object, Loadable rootLoadable, String[][] suffixedPropertyColumns, boolean forceEager, boolean[] propertiesForceEager, SharedSessionContractImplementor 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 isJoinedSubclassEntityPersister
- Parameters:
columnName
- The column namerootAlias
- The hierarchy root alias- Returns:
- The proper table alias for qualifying the given column.
-
-