| Modifier and Type | Field and Description |
|---|---|
| private final Stack | |
| protected static final FetchStrategy | DEFAULT_EAGER
The JPA 2.1 SPEC's Entity Graph only defines _WHEN_ to load an attribute, it doesn't define _HOW_ to load it So I'm here just making an assumption that when it is EAGER, then we use JOIN, and when it is LAZY, then we use SELECT. |
| protected static final FetchStrategy | |
| private final Stack | |
| protected final LoadQueryInfluencers | |
| private final LockMode | |
| private static final Logger | |
| private EntityReturn |
| Access | Constructor and Description |
|---|---|
| protected | AbstractEntityGraphVisitationStrategy(final SessionFactoryImplementor sessionFactory, final LoadQueryInfluencers loadQueryInfluencers, final LockMode lockMode)
Deprecated
as a consequence of
SessionFactoryImplementor being deprecated.
|
| attributeStack | back to summary |
|---|---|
| private final Stack<AttributeNodeImplementor<J>> attributeStack | |
| DEFAULT_EAGER | back to summary |
|---|---|
| protected static final FetchStrategy DEFAULT_EAGER The JPA 2.1 SPEC's Entity Graph only defines _WHEN_ to load an attribute, it doesn't define _HOW_ to load it So I'm here just making an assumption that when it is EAGER, then we use JOIN, and when it is LAZY, then we use SELECT. Note this may be changed in the near further, though ATM I have no idea how this will be changed to :) -- stliu | |
| DEFAULT_LAZY | back to summary |
|---|---|
| protected static final FetchStrategy DEFAULT_LAZY | |
| graphStack | back to summary |
|---|---|
| private final Stack<GraphImplementor<J>> graphStack | |
| loadQueryInfluencers | back to summary |
|---|---|
| protected final LoadQueryInfluencers loadQueryInfluencers | |
| lockMode | back to summary |
|---|---|
| private final LockMode lockMode | |
| LOG | back to summary |
|---|---|
| private static final Logger LOG | |
| rootEntityReturn | back to summary |
|---|---|
| private EntityReturn rootEntityReturn | |
| AbstractEntityGraphVisitationStrategy | back to summary |
|---|---|
| protected AbstractEntityGraphVisitationStrategy(final SessionFactoryImplementor sessionFactory, final LoadQueryInfluencers loadQueryInfluencers, final LockMode lockMode)
Deprecated as a consequence of | |
| addRootReturn | back to summary |
|---|---|
| protected void addRootReturn(final Return rootReturn) Implements abstract org.
| |
| adjustJoinFetchIfNeeded | back to summary |
|---|---|
| protected FetchStrategy adjustJoinFetchIfNeeded(AssociationAttributeDefinition attributeDefinition, FetchStrategy fetchStrategy) | |
| buildLoadPlan | back to summary |
|---|---|
| public LoadPlan buildLoadPlan() Implements org. Doc from org. After visitation is done, build the load plan. | |
| determineFetchStrategy | back to summary |
|---|---|
| protected FetchStrategy determineFetchStrategy(final AssociationAttributeDefinition attributeDefinition) Implements abstract org.
| |
| finish | back to summary |
|---|---|
| public void finish() Implements org. Doc from org. Notification we are finished visitation.
| |
| finishingAttribute | back to summary |
|---|---|
| public void finishingAttribute(final AttributeDefinition attributeDefinition) Implements org. Doc from org. Notification that we are finishing walking an attribute.
| |
| finishingCollectionElements | back to summary |
|---|---|
| public void finishingCollectionElements(final CollectionElementDefinition elementDefinition) Implements org. Doc from org. Notification that we are finishing walking the elements of a collection (List/Map).
| |
| finishingCollectionIndex | back to summary |
|---|---|
| public void finishingCollectionIndex(final CollectionIndexDefinition indexDefinition) Implements org. Doc from org. Notification that we are finishing walking the index of a collection (List/Map).
| |
| foundCircularAssociation | back to summary |
|---|---|
| public void foundCircularAssociation(AssociationAttributeDefinition attributeDefinition) Implements org.
| |
| getRootEntityGraph | back to summary |
|---|---|
| protected abstract GraphImplementor | |
| resolveImplicitFetchStrategyFromEntityGraph | back to summary |
|---|---|
| protected abstract FetchStrategy resolveImplicitFetchStrategyFromEntityGraph(final AssociationAttributeDefinition attributeDefinition) | |
| start | back to summary |
|---|---|
| public void start() Overrides org. Implements org. Doc from org. Notification we are preparing to start visitation.
| |
| startingAttribute | back to summary |
|---|---|
| public boolean startingAttribute(AttributeDefinition attributeDefinition) Implements org. I'm using the NULL-OBJECT pattern here. For attributes that don't exist in the EntityGraph, a predefined NULL-ATTRIBUTE-NODE is pushed to the stack. And for a nonexistent subgraph, a predefined NULL-SUBGRAPH is pushed to the stack. So, whenever we start visiting an attribute, there will be an attribute node pushed to the attribute stack, and a subgraph node pushed to the graph stack. when we finish visiting an attribute, these two will be popped from each stack.
| |
| startingCollectionElements | back to summary |
|---|---|
| public void startingCollectionElements(final CollectionElementDefinition elementDefinition) Implements org. Doc from org. Notification that we are starting to look at the element definition for the collection. If the collection
elements are entities this will be followed up by a call to
| |
| startingCollectionIndex | back to summary |
|---|---|
| public void startingCollectionIndex(final CollectionIndexDefinition indexDefinition) Implements org. Doc from org. Notification that we are starting to walk the index of a collection (List/Map). In the case of a Map,
if the indices (the keys) are entities this will be followed up by a call to
| |
| supportsRootCollectionReturns | back to summary |
|---|---|
protected boolean supportsRootCollectionReturns()
| |