public abstract class AbstractEntityJoinWalker extends JoinWalker
Abstract walker for walkers which begin at an entity (criteria queries and entity loaders).
JoinWalker.AssociationInitCallbackaliases, associations, collectionOwners, collectionPersisters, collectionSuffixes, lockModeArray, lockOptions, ownerAssociationTypes, owners, persisters, sql, suffixes| Constructor and Description |
|---|
AbstractEntityJoinWalker(OuterJoinLoadable persister,
SessionFactoryImplementor factory,
LoadQueryInfluencers loadQueryInfluencers) |
AbstractEntityJoinWalker(OuterJoinLoadable persister,
SessionFactoryImplementor factory,
LoadQueryInfluencers loadQueryInfluencers,
String alias) |
| Modifier and Type | Method and Description |
|---|---|
String |
getAlias() |
abstract String |
getComment() |
Loadable |
getPersister() |
protected String |
getWhereFragment() |
protected void |
initAll(String whereString,
String orderByString,
LockOptions lockOptions) |
protected void |
initAll(String whereString,
String orderByString,
LockOptions lockOptions,
JoinWalker.AssociationInitCallback callback) |
protected void |
initProjection(String projectionString,
String whereString,
String orderByString,
String groupByString,
LockOptions lockOptions) |
protected boolean |
isDuplicateAssociation(String foreignKeyTable,
String[] foreignKeyColumns)
Used to detect circularities in the joined graph, note that
this method is side-effecty
|
protected boolean |
isJoinedFetchEnabled(AssociationType type,
FetchMode config,
CascadeStyle cascadeStyle)
The superclass deliberately excludes collections
|
protected boolean |
isJoinFetchEnabledByProfile(OuterJoinLoadable persister,
PropertyPath path,
int propertyNumber) |
protected String |
orderBy(List associations,
String orderBy)
For entities, orderings added by, for example, Criteria#addOrder need to come before the associations' @OrderBy
values.
|
String |
toString() |
countCollectionPersisters, countEntityPersisters, generateRootAlias, generateTableAlias, getAliases, getAssociations, getCollectionOwners, getCollectionPersisters, getCollectionSuffixes, getDialect, getFactory, getJoinType, getJoinType, getJoinType, getLoadQueryInfluencers, getLockModeArray, getLockModeOptions, getOwnerAssociationTypes, getOwners, getPersisters, getSQLString, getSuffixes, getWithClause, hasRestriction, initPersisters, initPersisters, initPersisters, isDuplicateAssociation, isJoinable, isJoinedFetchEnabledInMapping, isTooDeep, isTooManyCollections, mergeOrderings, mergeOuterJoins, orderBy, selectString, setAliases, setCollectionOwners, setCollectionPersisters, setCollectionSuffixes, setOwnerAssociationTypes, setOwners, setPersisters, setSql, setSuffixes, walkCollectionTree, walkEntityTree, whereStringpublic AbstractEntityJoinWalker(OuterJoinLoadable persister, SessionFactoryImplementor factory, LoadQueryInfluencers loadQueryInfluencers)
public AbstractEntityJoinWalker(OuterJoinLoadable persister, SessionFactoryImplementor factory, LoadQueryInfluencers loadQueryInfluencers, String alias)
protected final void initAll(String whereString, String orderByString, LockOptions lockOptions) throws MappingException
MappingExceptionprotected final void initAll(String whereString, String orderByString, LockOptions lockOptions, JoinWalker.AssociationInitCallback callback) throws MappingException
MappingExceptionprotected final void initProjection(String projectionString, String whereString, String orderByString, String groupByString, LockOptions lockOptions) throws MappingException
MappingExceptionprotected String getWhereFragment() throws MappingException
MappingExceptionprotected boolean isJoinedFetchEnabled(AssociationType type, FetchMode config, CascadeStyle cascadeStyle)
The superclass deliberately excludes collections
isJoinedFetchEnabled in class JoinWalkerprotected final boolean isJoinFetchEnabledByProfile(OuterJoinLoadable persister, PropertyPath path, int propertyNumber)
public abstract String getComment()
protected boolean isDuplicateAssociation(String foreignKeyTable, String[] foreignKeyColumns)
JoinWalkerUsed to detect circularities in the joined graph, note that this method is side-effecty
isDuplicateAssociation in class JoinWalkerpublic final Loadable getPersister()
public final String getAlias()
protected String orderBy(List associations, String orderBy)
For entities, orderings added by, for example, Criteria#addOrder need to come before the associations' @OrderBy values. However, other sub-classes of JoinWalker (BasicCollectionJoinWalker, OneToManyJoinWalker, etc.) still need the other way around. So, override here instead. See HHH-7116.
orderBy in class JoinWalkerCopyright © 2001-2018 Red Hat, Inc. All Rights Reserved.