org.hibernate.loader.criteria
Class CriteriaLoader

java.lang.Object
  extended by org.hibernate.loader.Loader
      extended by org.hibernate.loader.BasicLoader
          extended by org.hibernate.loader.OuterJoinLoader
              extended by org.hibernate.loader.criteria.CriteriaLoader

public class CriteriaLoader
extends OuterJoinLoader

A Loader for Criteria queries. Note that criteria queries are more like multi-object load()s than like HQL queries.

Author:
Gavin King

Field Summary
 
Fields inherited from class org.hibernate.loader.OuterJoinLoader
aliases, collectionOwners, collectionPersisters, collectionSuffixes, lockModeArray, ownerAssociationTypes, owners, persisters, sql, suffixes
 
Fields inherited from class org.hibernate.loader.BasicLoader
NO_SUFFIX
 
Constructor Summary
CriteriaLoader(OuterJoinLoadable persister, SessionFactoryImplementor factory, CriteriaImpl criteria, String rootEntityName, Map enabledFilters)
           
 
Method Summary
protected  String applyLocks(String sqlSelectString, Map lockModes, Dialect dialect)
          Append FOR UPDATE OF clause, if necessary.
protected  LockMode[] getLockModes(Map lockModes)
          What lock mode does this load entities with?
 Set getQuerySpaces()
           
protected  Object getResultColumnOrRow(Object[] row, ResultTransformer transformer, ResultSet rs, SessionImplementor session)
          Get the actual object that is returned in the user-visible result list.
protected  List getResultList(List results, ResultTransformer resultTransformer)
           
protected  boolean isSubselectLoadingEnabled()
           
 List list(SessionImplementor session)
           
 ScrollableResults scroll(SessionImplementor session, ScrollMode scrollMode)
           
 
Methods inherited from class org.hibernate.loader.OuterJoinLoader
getAliases, getCollectionOwners, getCollectionPersisters, getCollectionSuffixes, getDialect, getEnabledFilters, getEntityPersisters, getOwnerAssociationTypes, getOwners, getSQLString, getSuffixes, initFromWalker
 
Methods inherited from class org.hibernate.loader.BasicLoader
generateSuffixes, generateSuffixes, getCollectionAliases, getEntityAliases, postInstantiate
 
Methods inherited from class org.hibernate.loader.Loader
autoDiscoverTypes, bindNamedParameters, bindParameterValues, bindPositionalParameters, checkScrollability, doList, getEntityEagerPropertyFetches, getFactory, getNamedParameterLocs, getQueryIdentifier, getResultSet, hasSubselectLoadableCollections, isSingleRowLoader, list, loadCollection, loadCollectionBatch, loadCollectionSubselect, loadEntity, loadEntity, loadEntityBatch, loadSequentialRowsForward, loadSequentialRowsReverse, loadSingleRow, needsFetchingScroll, prepareQueryStatement, preprocessSQL, processFilters, scroll, toString, upgradeLocks
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

CriteriaLoader

public CriteriaLoader(OuterJoinLoadable persister,
                      SessionFactoryImplementor factory,
                      CriteriaImpl criteria,
                      String rootEntityName,
                      Map enabledFilters)
               throws HibernateException
Throws:
HibernateException
Method Detail

scroll

public ScrollableResults scroll(SessionImplementor session,
                                ScrollMode scrollMode)
                         throws HibernateException
Throws:
HibernateException

list

public List list(SessionImplementor session)
          throws HibernateException
Throws:
HibernateException

getResultColumnOrRow

protected Object getResultColumnOrRow(Object[] row,
                                      ResultTransformer transformer,
                                      ResultSet rs,
                                      SessionImplementor session)
                               throws SQLException,
                                      HibernateException
Description copied from class: Loader
Get the actual object that is returned in the user-visible result list. This empty implementation merely returns its first argument. This is overridden by some subclasses.

Overrides:
getResultColumnOrRow in class Loader
Throws:
SQLException
HibernateException

getQuerySpaces

public Set getQuerySpaces()

applyLocks

protected String applyLocks(String sqlSelectString,
                            Map lockModes,
                            Dialect dialect)
                     throws QueryException
Description copied from class: Loader
Append FOR UPDATE OF clause, if necessary. This empty superclass implementation merely returns its first argument.

Overrides:
applyLocks in class Loader
Throws:
QueryException

getLockModes

protected LockMode[] getLockModes(Map lockModes)
Description copied from class: Loader
What lock mode does this load entities with?

Overrides:
getLockModes in class OuterJoinLoader
Parameters:
lockModes - a collection of lock modes specified dynamically via the Query interface

isSubselectLoadingEnabled

protected boolean isSubselectLoadingEnabled()
Overrides:
isSubselectLoadingEnabled in class Loader

getResultList

protected List getResultList(List results,
                             ResultTransformer resultTransformer)
Overrides:
getResultList in class Loader