Class CircularBiDirectionalFetchImpl
- java.lang.Object
-
- org.hibernate.sql.results.internal.domain.CircularBiDirectionalFetchImpl
-
- All Implemented Interfaces:
BiDirectionalFetch
,DomainResultGraphNode
,Fetch
public class CircularBiDirectionalFetchImpl extends Object implements BiDirectionalFetch
-
-
Constructor Summary
Constructors Constructor Description CircularBiDirectionalFetchImpl(FetchTiming timing, NavigablePath navigablePath, FetchParent fetchParent, ToOneAttributeMapping referencedModelPart, NavigablePath referencedNavigablePath, @Nullable DomainResult<?> keyResult)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
collectValueIndexesToCache(BitSet valueIndexes)
Collect the JDBC value indexes used by this domain result that should be cached.DomainResultAssembler
createAssembler(InitializerParent<?> parent, AssemblerCreationState creationState)
Create the assembler for this fetchToOneAttributeMapping
getFetchedMapping()
The value mapping being fetchedFetchParent
getFetchParent()
Obtain the owner of this fetch.NavigablePath
getNavigablePath()
Get the property path to this fetchNavigablePath
getReferencedPath()
The NavigablePath for the DomainResult or Fetch that this Fetch refers to.JavaType<?>
getResultJavaType()
FetchTiming
getTiming()
immediate or delayed? todo (6.0) : should we also expose the fetch-style? Perhaps the fetch-options?boolean
hasTableGroup()
Is the TableGroup associated with this Fetch defined?-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.hibernate.sql.results.graph.DomainResultGraphNode
appliesTo
-
Methods inherited from interface org.hibernate.sql.results.graph.Fetch
asFetchParent, containsAnyNonScalarResults
-
-
-
-
Constructor Detail
-
CircularBiDirectionalFetchImpl
public CircularBiDirectionalFetchImpl(FetchTiming timing, NavigablePath navigablePath, FetchParent fetchParent, ToOneAttributeMapping referencedModelPart, NavigablePath referencedNavigablePath, @Nullable DomainResult<?> keyResult)
-
-
Method Detail
-
getNavigablePath
public NavigablePath getNavigablePath()
Description copied from interface:Fetch
Get the property path to this fetch- Specified by:
getNavigablePath
in interfaceDomainResultGraphNode
- Specified by:
getNavigablePath
in interfaceFetch
- Returns:
- The property path
-
getFetchedMapping
public ToOneAttributeMapping getFetchedMapping()
Description copied from interface:Fetch
The value mapping being fetched- Specified by:
getFetchedMapping
in interfaceFetch
-
getResultJavaType
public JavaType<?> getResultJavaType()
- Specified by:
getResultJavaType
in interfaceDomainResultGraphNode
-
getFetchParent
public FetchParent getFetchParent()
Description copied from interface:Fetch
Obtain the owner of this fetch. Ultimately used to identify the thing that "owns" this fetched navigable for the purpose of:* identifying the associated owner reference as we process the fetch * inject the fetched instance into the parent and potentially inject the parent reference into the fetched instance if it defines such injection (e.g.
Parent
)- Specified by:
getFetchParent
in interfaceFetch
-
getReferencedPath
public NavigablePath getReferencedPath()
Description copied from interface:BiDirectionalFetch
The NavigablePath for the DomainResult or Fetch that this Fetch refers to. For `o`, the referenced path is `p`. For `oa`, it's `p.address` Different fromFetch.getNavigablePath()
which returns this fetch's path, i.e. `p.address.owner` and `p.address.owner.address` respectively- Specified by:
getReferencedPath
in interfaceBiDirectionalFetch
-
getTiming
public FetchTiming getTiming()
Description copied from interface:Fetch
immediate or delayed? todo (6.0) : should we also expose the fetch-style? Perhaps the fetch-options?
-
hasTableGroup
public boolean hasTableGroup()
Description copied from interface:Fetch
Is the TableGroup associated with this Fetch defined?- Specified by:
hasTableGroup
in interfaceFetch
-
collectValueIndexesToCache
public void collectValueIndexesToCache(BitSet valueIndexes)
Description copied from interface:DomainResultGraphNode
Collect the JDBC value indexes used by this domain result that should be cached.- Specified by:
collectValueIndexesToCache
in interfaceBiDirectionalFetch
- Specified by:
collectValueIndexesToCache
in interfaceDomainResultGraphNode
-
createAssembler
public DomainResultAssembler createAssembler(InitializerParent<?> parent, AssemblerCreationState creationState)
Description copied from interface:Fetch
Create the assembler for this fetch- Specified by:
createAssembler
in interfaceFetch
-
-