Top Inners Fields Constructors Methods
org.hibernate.loader.plan.exec.internal

public abstract Class AbstractLoadQueryDetails

extends Object
implements LoadQueryDetails
Class Inheritance
All Implemented Interfaces
org.hibernate.loader.plan.exec.spi.LoadQueryDetails
Known Direct Subclasses
org.hibernate.loader.plan.exec.internal.EntityLoadQueryDetails, org.hibernate.loader.plan.exec.internal.AbstractCollectionLoadQueryDetails
Imports
java.util.ArrayList, .Collections, .List, org.hibernate.engine.spi.SessionFactoryImplementor, org.hibernate.loader.MultipleBagFetchException, org.hibernate.loader.plan.build.spi.LoadPlanTreePrinter, org.hibernate.loader.plan.exec.process.internal.ResultSetProcessorImpl, org.hibernate.loader.plan.exec.process.spi.CollectionReferenceInitializer, .EntityReferenceInitializer, .ReaderCollector, .ResultSetProcessor, .ResultSetProcessorResolver, org.hibernate.loader.plan.exec.query.internal.SelectStatementBuilder, org.hibernate.loader.plan.exec.query.spi.QueryBuildingParameters, org.hibernate.loader.plan.exec.spi.AliasResolutionContext, .LoadQueryDetails, org.hibernate.loader.plan.spi.CollectionAttributeFetch, .CollectionReturn, .FetchSource, .LoadPlan, .QuerySpace, .Return, org.hibernate.sql.ConditionFragment, .DisjunctionFragment, .InFragment

Author
Gail Badner

Nested and Inner Type Summary

Modifier and TypeClass and Description
protected abstract static class

Field Summary

Modifier and TypeField and Description
private final String[]
private final LoadPlan
private final LoadQueryJoinAndFetchProcessor
private ResultSetProcessor
private final Return
private String

Constructor Summary

AccessConstructor and Description
protected
AbstractLoadQueryDetails(LoadPlan loadPlan, AliasResolutionContextImpl aliasResolutionContext, QueryBuildingParameters
The query building context
buildingParameters
,
String[] keyColumnNames, Return
The root return reference we are processing
rootReturn
,
SessionFactoryImplementor
The SessionFactory
factory
)

Deprecated as a consequence of SessionFactoryImplementor being deprecated.

Method Summary

Modifier and TypeMethod and Description
private static void
applyKeyRestriction(SelectStatementBuilder select, String alias, String[] keyColumnNames, int batchSize)

protected abstract void
protected abstract void
protected abstract void
protected abstract void
protected abstract void
protected void
generate()

Main entry point for properly handling the FROM clause and and joins and restrictions

protected void
generate(ResultSetProcessorResolver resultSetProcessorResolver)

protected final AliasResolutionContext
protected String[]
protected LoadPlan
protected final QueryBuildingParameters
protected QuerySpace
getQuerySpace(String querySpaceUid)

protected abstract ReaderCollector
public ResultSetProcessor
protected abstract QuerySpace
protected final Return
protected abstract String
protected final SessionFactoryImplementor
getSessionFactory()

Deprecated as a consequence of SessionFactoryImplementor being deprecated.
public String
protected abstract boolean

Returns:

true if subselect loading is enabled; false otherwise.
isSubselectLoadingEnabled
(FetchStats
the fetch stats; may be null
fetchStats
)

Is subselect loading enabled?

protected abstract boolean
protected abstract boolean
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

keyColumnNamesback to summary
private final String[] keyColumnNames
loadPlanback to summary
private final LoadPlan loadPlan
queryProcessorback to summary
private final LoadQueryJoinAndFetchProcessor queryProcessor
resultSetProcessorback to summary
private ResultSetProcessor resultSetProcessor
rootReturnback to summary
private final Return rootReturn
sqlStatementback to summary
private String sqlStatement

Constructor Detail

AbstractLoadQueryDetailsback to summary
protected AbstractLoadQueryDetails(LoadPlan loadPlan, AliasResolutionContextImpl aliasResolutionContext, QueryBuildingParameters buildingParameters, String[] keyColumnNames, Return rootReturn, SessionFactoryImplementor factory)

Deprecated

as a consequence of SessionFactoryImplementor being deprecated. See corresponding docs for further information.

Parameters
buildingParameters:QueryBuildingParameters

The query building context

rootReturn:Return

The root return reference we are processing

factory:SessionFactoryImplementor

The SessionFactory

Method Detail

applyKeyRestrictionback to summary
private static void applyKeyRestriction(SelectStatementBuilder select, String alias, String[] keyColumnNames, int batchSize)
applyRootReturnFilterRestrictionsback to summary
protected abstract void applyRootReturnFilterRestrictions(SelectStatementBuilder selectStatementBuilder)
applyRootReturnOrderByFragmentsback to summary
protected abstract void applyRootReturnOrderByFragments(SelectStatementBuilder selectStatementBuilder)
applyRootReturnSelectFragmentsback to summary
protected abstract void applyRootReturnSelectFragments(SelectStatementBuilder selectStatementBuilder)
applyRootReturnTableFragmentsback to summary
protected abstract void applyRootReturnTableFragments(SelectStatementBuilder selectStatementBuilder)
applyRootReturnWhereJoinRestrictionsback to summary
protected abstract void applyRootReturnWhereJoinRestrictions(SelectStatementBuilder selectStatementBuilder)
generateback to summary
protected void generate()

Main entry point for properly handling the FROM clause and and joins and restrictions

generateback to summary
protected void generate(ResultSetProcessorResolver resultSetProcessorResolver)
getAliasResolutionContextback to summary
protected final AliasResolutionContext getAliasResolutionContext()
getKeyColumnNamesback to summary
protected String[] getKeyColumnNames()
getLoadPlanback to summary
protected LoadPlan getLoadPlan()
getQueryBuildingParametersback to summary
protected final QueryBuildingParameters getQueryBuildingParameters()
getQuerySpaceback to summary
protected QuerySpace getQuerySpace(String querySpaceUid)
getReaderCollectorback to summary
protected abstract ReaderCollector getReaderCollector()
getResultSetProcessorback to summary
public ResultSetProcessor getResultSetProcessor()

Implements org.hibernate.loader.plan.exec.spi.LoadQueryDetails.getResultSetProcessor.

Annotations
@Override
getRootQuerySpaceback to summary
protected abstract QuerySpace getRootQuerySpace()
getRootReturnback to summary
protected final Return getRootReturn()
getRootTableAliasback to summary
protected abstract String getRootTableAlias()
getSessionFactoryback to summary
protected final SessionFactoryImplementor getSessionFactory()

Deprecated

as a consequence of SessionFactoryImplementor being deprecated. See corresponding docs for further information.

getSqlStatementback to summary
public String getSqlStatement()

Implements org.hibernate.loader.plan.exec.spi.LoadQueryDetails.getSqlStatement.

Annotations
@Override
isSubselectLoadingEnabledback to summary
protected abstract boolean isSubselectLoadingEnabled(FetchStats fetchStats)

Is subselect loading enabled?

Parameters
fetchStats:FetchStats

the fetch stats; may be null

Returns:boolean

true if subselect loading is enabled; false otherwise.

shouldApplyRootReturnFilterBeforeKeyRestrictionback to summary
protected abstract boolean shouldApplyRootReturnFilterBeforeKeyRestriction()
shouldUseOptionalEntityInstanceback to summary
protected abstract boolean shouldUseOptionalEntityInstance()
org.hibernate.loader.plan.exec.internal back to summary

protected abstract Class AbstractLoadQueryDetails.ReaderCollectorImpl

extends Object
implements ReaderCollector
Class Inheritance
  • java.lang.Object
  • org.hibernate.loader.plan.exec.internal.AbstractLoadQueryDetails.ReaderCollectorImpl
All Implemented Interfaces
org.hibernate.loader.plan.exec.process.spi.ReaderCollector
Known Direct Subclasses
org.hibernate.loader.plan.exec.internal.EntityLoadQueryDetails.EntityLoaderReaderCollectorImpl, org.hibernate.loader.plan.exec.internal.AbstractCollectionLoadQueryDetails.CollectionLoaderReaderCollectorImpl

Field Summary

Modifier and TypeField and Description
private List<CollectionReferenceInitializer>
private List<CollectionReferenceInitializer>
private List<EntityReferenceInitializer>

Constructor Summary

AccessConstructor and Description
protected

Method Summary

Modifier and TypeMethod and Description
public void
public void
private static <V> List<V>

Returns:

possibly a new list instance, containing both the original elements and the new elements.
addTo
(List<V> host, V element)

LISP-style list growing, as there is a strong likelihood we'll be dealing with lists of zero or one element we can save some memory.

public List<CollectionReferenceInitializer>
public final List<EntityReferenceInitializer>
public List<CollectionReferenceInitializer>
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

arrayReferenceInitializersback to summary
private List<CollectionReferenceInitializer> arrayReferenceInitializers
collectionReferenceInitializersback to summary
private List<CollectionReferenceInitializer> collectionReferenceInitializers
entityReferenceInitializersback to summary
private List<EntityReferenceInitializer> entityReferenceInitializers

Constructor Detail

ReaderCollectorImplback to summary
protected ReaderCollectorImpl()

Method Detail

addback to summary
public void add(CollectionReferenceInitializer collectionReferenceInitializer)

Implements org.hibernate.loader.plan.exec.process.spi.ReaderCollector.add.

Annotations
@Override
addback to summary
public void add(EntityReferenceInitializer entityReferenceInitializer)

Implements org.hibernate.loader.plan.exec.process.spi.ReaderCollector.add.

Annotations
@Override
addToback to summary
private static <V> List<V> addTo(List<V> host, V element)

LISP-style list growing, as there is a strong likelihood we'll be dealing with lists of zero or one element we can save some memory.

Returns:List<V>

possibly a new list instance, containing both the original elements and the new elements.

getArrayReferenceInitializersback to summary
public List<CollectionReferenceInitializer> getArrayReferenceInitializers()

Implements org.hibernate.loader.plan.exec.process.spi.ReaderCollector.getArrayReferenceInitializers.

Annotations
@Override
getEntityReferenceInitializersback to summary
public final List<EntityReferenceInitializer> getEntityReferenceInitializers()

Implements org.hibernate.loader.plan.exec.process.spi.ReaderCollector.getEntityReferenceInitializers.

Annotations
@Override
getNonArrayCollectionReferenceInitializersback to summary
public List<CollectionReferenceInitializer> getNonArrayCollectionReferenceInitializers()

Implements org.hibernate.loader.plan.exec.process.spi.ReaderCollector.getNonArrayCollectionReferenceInitializers.

Annotations
@Override