org.hibernate.persister.entity

Interface OuterJoinLoadable

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

public interface OuterJoinLoadable
extends Loadable, Joinable

A EntityPersister that may be loaded by outer join using the OuterJoinLoader hierarchy and may be an element of a one-to-many association.
Author:
Gavin King
See Also:
OuterJoinLoader

Fields inherited from interface org.hibernate.persister.entity.EntityPersister

ENTITY_ID

Fields inherited from interface org.hibernate.persister.entity.Loadable

ROWID_ALIAS

Method Summary

int
countSubclassProperties()
How many properties are there, for this class and all subclasses?
String
fromTableFragment(String alias)
Get the main from table fragment, given a query alias.
CascadeStyle
getCascadeStyle(int i)
Get the cascade style of this (subclass closure) property
EntityType
getEntityType()
FetchMode
getFetchMode(int i)
May this (subclass closure) property be fetched using an SQL outerjoin?
String[]
getPropertyColumnNames(String propertyPath)
Get the column names for the given property path
String
getPropertyTableName(String propertyName)
Get the table name for the given property path
String[]
getSubclassPropertyColumnNames(int i)
Return the column names used to persist the numbered property of the class or a subclass.
String
getSubclassPropertyName(int i)
Get the name of the numbered property of the class or a subclass.
String
getSubclassPropertyTableName(int i)
Return the table name used to persist the numbered property of the class or a subclass.
Type
getSubclassPropertyType(int i)
Get the type of the numbered property of the class or a subclass.
boolean
isDefinedOnSubclass(int i)
Is this property defined on a subclass of the mapped class.
boolean
isSubclassPropertyNullable(int i)
Is the numbered property of the class of subclass nullable?
String
selectFragment(String alias, String suffix)
Generate a list of collection index, key and element columns
String[]
toColumns(String name, int i)
Given the number of a property of a subclass, and a table alias, return the aliased column names.

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, getIdentifierGenerator, getIdentifierPropertyName, getIdentifierType, getMappedClass, getNaturalIdentifierProperties, getNaturalIdentifierSnapshot, getPropertyCascadeStyles, getPropertyCheckability, getPropertyInsertGenerationInclusions, getPropertyInsertability, getPropertyLaziness, getPropertyNames, getPropertyNullability, getPropertySpaces, getPropertyType, getPropertyTypes, getPropertyUpdateGenerationInclusions, getPropertyUpdateability, 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, isBatchLoadable, isCacheInvalidationRequired, isIdentifierAssignedByInsert, isInherited, isInstance, isInstrumented, isLazyPropertiesCacheable, isMutable, isSelectBeforeUpdateRequired, isSubclassEntityName, isTransient, isVersionPropertyGenerated, isVersioned, load, lock, postInstantiate, processInsertGeneratedProperties, processUpdateGeneratedProperties, resetIdentifier, setIdentifier, setPropertyValue, setPropertyValues, update

Methods inherited from interface org.hibernate.persister.entity.Joinable

consumesCollectionAlias, consumesEntityAlias, filterFragment, fromJoinFragment, getKeyColumnNames, getName, getTableName, isCollection, oneToManyFilterFragment, selectFragment, whereJoinFragment

Methods inherited from interface org.hibernate.persister.entity.Loadable

getDiscriminatorAlias, getDiscriminatorColumnName, getDiscriminatorType, getIdentifierAliases, getIdentifierColumnNames, getPropertyAliases, getPropertyColumnNames, getSubclassForDiscriminatorValue, hasRowId, hasSubclasses, hydrate, isAbstract

Methods inherited from interface org.hibernate.cache.OptimisticCacheSource

getVersionComparator, isVersioned

Method Details

countSubclassProperties

public int countSubclassProperties()
How many properties are there, for this class and all subclasses?

fromTableFragment

public String fromTableFragment(String alias)
Get the main from table fragment, given a query alias.

getCascadeStyle

public CascadeStyle getCascadeStyle(int i)
Get the cascade style of this (subclass closure) property

getEntityType

public EntityType getEntityType()

getFetchMode

public FetchMode getFetchMode(int i)
May this (subclass closure) property be fetched using an SQL outerjoin?

getPropertyColumnNames

public String[] getPropertyColumnNames(String propertyPath)
Get the column names for the given property path

getPropertyTableName

public String getPropertyTableName(String propertyName)
Get the table name for the given property path

getSubclassPropertyColumnNames

public String[] getSubclassPropertyColumnNames(int i)
Return the column names used to persist the numbered property of the class or a subclass.

getSubclassPropertyName

public String getSubclassPropertyName(int i)
Get the name of the numbered property of the class or a subclass.

getSubclassPropertyTableName

public String getSubclassPropertyTableName(int i)
Return the table name used to persist the numbered property of the class or a subclass.

getSubclassPropertyType

public Type getSubclassPropertyType(int i)
Get the type of the numbered property of the class or a subclass.

isDefinedOnSubclass

public boolean isDefinedOnSubclass(int i)
Is this property defined on a subclass of the mapped class.

isSubclassPropertyNullable

public boolean isSubclassPropertyNullable(int i)
Is the numbered property of the class of subclass nullable?

selectFragment

public String selectFragment(String alias,
                             String suffix)
Generate a list of collection index, key and element columns

toColumns

public String[] toColumns(String name,
                          int i)
Given the number of a property of a subclass, and a table alias, return the aliased column names.