Package org.hibernate.persister.entity
Interface Loadable
-
- All Superinterfaces:
AttributeSource
,Bindable
,Discriminatable
,EntityMappingType
,EntityPersister
,EntityValuedModelPart
,FetchableContainer
,FilterRestrictable
,JdbcMappingContainer
,Loadable
,ManagedMappingType
,MappingModelExpressible
,MappingType
,ModelPart
,ModelPartContainer
,Queryable
,Restrictable
,RootTableGroupProducer
,TableGroupProducer
,WhereRestrictable
- All Known Subinterfaces:
OuterJoinLoadable
,Queryable
,SQLLoadable
,UniqueKeyLoadable
- All Known Implementing Classes:
AbstractEntityPersister
,JoinedSubclassEntityPersister
,SingleTableEntityPersister
,UnionSubclassEntityPersister
public interface Loadable extends EntityPersister
Implemented by anyEntityPersister
that may be loaded using aLoader
.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.hibernate.metamodel.mapping.Bindable
Bindable.JdbcValuesConsumer
-
Nested classes/interfaces inherited from interface org.hibernate.metamodel.mapping.EntityMappingType
EntityMappingType.ConstraintOrderedTableConsumer
-
Nested classes/interfaces inherited from interface org.hibernate.metamodel.mapping.ModelPart
ModelPart.JdbcValueConsumer
-
-
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 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?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.walking.spi.AttributeSource
getPropertyIndex
-
Methods inherited from interface org.hibernate.metamodel.mapping.Bindable
forEachDisassembledJdbcValue, forEachJdbcType, forEachJdbcValue, getJdbcMappings
-
Methods inherited from interface org.hibernate.metamodel.mapping.EntityMappingType
applyBaseRestrictions, applyDiscriminator, applyFilterRestrictions, applySqlSelections, applySqlSelections, applyWhereRestrictions, createDomainResult, createPrimaryTableReference, createRootTableGroup, createRootTableGroup, createTableReferenceJoin, disassemble, extractConcreteTypeStateValues, findContainingEntityMapping, findDeclaredAttributeMapping, findSubPart, findSubPart, forEachDisassembledJdbcValue, forEachJdbcType, forEachJdbcValue, getAttributeMappings, getContributor, getDeclaredAttributeMappings, getDiscriminatorMapping, getEntityPersister, getFetchable, getIdentifierMapping, getJavaType, getJdbcTypeCount, getMappedJavaType, getNaturalIdMapping, getNumberOfAttributeMappings, getNumberOfDeclaredAttributeMappings, getNumberOfFetchables, getPartMappingType, getPartName, getRootEntityDescriptor, getRootPathName, getRowIdMapping, getSubclassEntityNames, getSubclassId, getSubMappingTypes, getSuperMappingType, getVersionMapping, isAffectedByEnabledFetchProfiles, isAffectedByEnabledFilters, isAffectedByEntityGraph, isTypeOrSuperType, isTypeOrSuperType, pruneForSubclasses, visitAttributeMappings, visitAttributeMappings, visitConstraintOrderedTables, visitDeclaredAttributeMappings, visitSubParts, visitSubTypeAttributeMappings, visitSuperTypeAttributeMappings
-
Methods inherited from interface org.hibernate.persister.entity.EntityPersister
afterInitialize, afterReassociate, breakDownJdbcValues, buildCacheEntry, canExtractIdOutOfEntity, canReadFromCache, canUseReferenceCacheEntries, canWriteToCache, createProxy, delete, findDirty, findModified, forceVersionIncrement, getAttributeMapping, getBytecodeEnhancementMetadata, getCacheAccessStrategy, getCacheEntryStructure, getClassMetadata, getConcreteProxyClass, getCurrentVersion, getDatabaseSnapshot, getEntityEntryFactory, getEntityMappingType, getEntityMetamodel, getEntityName, getFactory, getFilterAliasGenerator, getFilterAliasGenerator, getIdByUniqueKey, getIdentifier, getIdentifierGenerator, getIdentifierPropertyName, getIdentifierType, getInstrumentationMetadata, getMappedClass, getMultiNaturalIdLoader, getNaturalIdCacheAccessStrategy, getNaturalIdentifierProperties, getNaturalIdentifierSnapshot, getNaturalIdLoader, getPropertyCascadeStyles, getPropertyCheckability, getPropertyInsertability, getPropertyLaziness, getPropertyNames, getPropertyNullability, getPropertySpaces, getPropertyType, getPropertyTypes, getPropertyUpdateability, getPropertyValue, getPropertyValue, getPropertyValues, getPropertyValuesToInsert, getPropertyVersionability, getQuerySpaces, getRepresentationStrategy, getRootEntityName, getSqlAliasStem, getSqmMultiTableInsertStrategy, getSqmMultiTableMutationStrategy, getSubclassEntityPersister, getSynchronizationSpaces, getSynchronizedQuerySpaces, getValue, getValues, getVersion, getVersionJavaType, 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, setValue, setValues, update, visitQuerySpaces
-
Methods inherited from interface org.hibernate.sql.results.graph.FetchableContainer
getKeyFetchable, getNumberOfKeyFetchables, visitFetchables, visitFetchables, visitFetchables, visitKeyFetchables, visitKeyFetchables, visitKeyFetchables
-
Methods inherited from interface org.hibernate.metamodel.mapping.ManagedMappingType
findAttributeMapping, forEachAttributeMapping
-
Methods inherited from interface org.hibernate.metamodel.mapping.ModelPart
areEqual, asAttributeMapping, forEachSelectable, forEachSelectable, getNavigableRole
-
Methods inherited from interface org.hibernate.metamodel.mapping.Queryable
findByPath, findSubTypesSubPart, resolveSubPart
-
Methods inherited from interface org.hibernate.sql.ast.tree.from.TableGroupProducer
containsTableReference
-
-
-
-
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?- Specified by:
hasSubclasses
in interfaceEntityMappingType
-
getDiscriminatorType
Type getDiscriminatorType()
Get the discriminator type
-
getDiscriminatorValue
Object getDiscriminatorValue()
Get the discriminator value- Specified by:
getDiscriminatorValue
in interfaceEntityMappingType
-
getSubclassForDiscriminatorValue
String getSubclassForDiscriminatorValue(Object value)
Get the concrete subclass corresponding to the given discriminator value- Specified by:
getSubclassForDiscriminatorValue
in interfaceEntityMappingType
-
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?
-
isAbstract
boolean isAbstract()
- Specified by:
isAbstract
in interfaceEntityMappingType
-
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.
-
-