org.hibernate.loader.collection
Class BasicCollectionJoinWalker

java.lang.Object
  extended by org.hibernate.loader.JoinWalker
      extended by org.hibernate.loader.collection.CollectionJoinWalker
          extended by org.hibernate.loader.collection.BasicCollectionJoinWalker

public class BasicCollectionJoinWalker
extends CollectionJoinWalker

Walker for collections of values and many-to-many associations

Author:
Gavin King
See Also:
BasicCollectionLoader

Field Summary
 
Fields inherited from class org.hibernate.loader.JoinWalker
aliases, associations, collectionOwners, collectionPersisters, collectionSuffixes, lockModeArray, ownerAssociationTypes, owners, persisters, sql, suffixes
 
Constructor Summary
BasicCollectionJoinWalker(QueryableCollection collectionPersister, int batchSize, String subquery, SessionFactoryImplementor factory, Map enabledFilters)
           
 
Method Summary
protected  int getJoinType(AssociationType type, FetchMode config, String path, Set visitedAssociations, String lhsTable, String[] lhsColumns, boolean nullable, int currentDepth)
          We can use an inner join for first many-to-many association
 String toString()
           
 
Methods inherited from class org.hibernate.loader.collection.CollectionJoinWalker
whereString
 
Methods inherited from class org.hibernate.loader.JoinWalker
countCollectionPersisters, countEntityPersisters, generateRootAlias, generateTableAlias, getAliases, getCollectionOwners, getCollectionPersisters, getCollectionSuffixes, getDialect, getEnabledFilters, getFactory, getJoinType, getJoinType, getLockModeArray, getOwnerAssociationTypes, getOwners, getPersisters, getSQLString, getSuffixes, initPersisters, isDuplicateAssociation, isDuplicateAssociation, isJoinable, isJoinedFetchEnabled, isJoinedFetchEnabledInMapping, isTooDeep, isTooManyCollections, mergeOrderings, mergeOuterJoins, orderBy, orderBy, selectString, setAliases, setCollectionOwners, setCollectionPersisters, setCollectionSuffixes, setLockModeArray, setOwnerAssociationTypes, setOwners, setPersisters, setSql, setSuffixes, walkCollectionTree, walkEntityTree, whereString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

BasicCollectionJoinWalker

public BasicCollectionJoinWalker(QueryableCollection collectionPersister,
                                 int batchSize,
                                 String subquery,
                                 SessionFactoryImplementor factory,
                                 Map enabledFilters)
                          throws MappingException
Throws:
MappingException
Method Detail

getJoinType

protected int getJoinType(AssociationType type,
                          FetchMode config,
                          String path,
                          Set visitedAssociations,
                          String lhsTable,
                          String[] lhsColumns,
                          boolean nullable,
                          int currentDepth)
                   throws MappingException
We can use an inner join for first many-to-many association

Throws:
MappingException

toString

public String toString()
Overrides:
toString in class Object