org.hibernate.persister.entity
Interface OuterJoinLoadable

All Superinterfaces:
EntityPersister, Joinable, Loadable, OptimisticCacheSource
All 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

Field Summary
 
Fields inherited from interface org.hibernate.persister.entity.Loadable
ROWID_ALIAS
 
Fields inherited from interface org.hibernate.persister.entity.EntityPersister
ENTITY_ID
 
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.Loadable
getDiscriminatorAlias, getDiscriminatorColumnName, getDiscriminatorType, getIdentifierAliases, getIdentifierColumnNames, getPropertyAliases, getPropertyColumnNames, getSubclassForDiscriminatorValue, hasRowId, hasSubclasses, hydrate, isAbstract
 
Methods inherited from interface org.hibernate.persister.entity.EntityPersister
afterInitialize, afterReassociate, canExtractIdOutOfEntity, createProxy, delete, findDirty, findModified, forceVersionIncrement, getCache, getCacheEntryStructure, getClassMetadata, getConcreteProxyClass, getCurrentVersion, getDatabaseSnapshot, getEntityMetamodel, getEntityName, getFactory, 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, isBatchLoadable, isCacheInvalidationRequired, isIdentifierAssignedByInsert, isInherited, isInstance, isInstrumented, isLazyPropertiesCacheable, isMutable, isSelectBeforeUpdateRequired, isSubclassEntityName, isTransient, isVersioned, isVersionPropertyGenerated, load, lock, postInstantiate, processInsertGeneratedProperties, processUpdateGeneratedProperties, resetIdentifier, setIdentifier, setPropertyValue, setPropertyValues, update
 
Methods inherited from interface org.hibernate.cache.OptimisticCacheSource
getVersionComparator
 
Methods inherited from interface org.hibernate.persister.entity.Joinable
consumesCollectionAlias, consumesEntityAlias, filterFragment, fromJoinFragment, getKeyColumnNames, getName, getTableName, isCollection, oneToManyFilterFragment, selectFragment, whereJoinFragment
 

Method Detail

selectFragment

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


countSubclassProperties

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


getFetchMode

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


getCascadeStyle

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


isDefinedOnSubclass

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


getSubclassPropertyType

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


getSubclassPropertyName

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


isSubclassPropertyNullable

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


getSubclassPropertyColumnNames

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


getSubclassPropertyTableName

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


toColumns

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


fromTableFragment

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


getPropertyColumnNames

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


getPropertyTableName

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


getEntityType

EntityType getEntityType()