Class EmbeddableFetchImpl
- java.lang.Object
-
- org.hibernate.sql.results.graph.AbstractFetchParent
-
- org.hibernate.sql.results.graph.embeddable.internal.EmbeddableFetchImpl
-
- All Implemented Interfaces:
DomainResultGraphNode
,EmbeddableResultGraphNode
,Fetch
,FetchParent
,InitializerProducer<EmbeddableFetchImpl>
- Direct Known Subclasses:
NonAggregatedIdentifierMappingFetch
public class EmbeddableFetchImpl extends AbstractFetchParent implements EmbeddableResultGraphNode, Fetch, InitializerProducer<EmbeddableFetchImpl>
-
-
Constructor Summary
Constructors Modifier Constructor Description EmbeddableFetchImpl(NavigablePath navigablePath, EmbeddableValuedFetchable embeddedPartDescriptor, FetchParent fetchParent, FetchTiming fetchTiming, boolean hasTableGroup, DomainResultCreationState creationState)
protected
EmbeddableFetchImpl(EmbeddableFetchImpl original)
For Hibernate Reactive
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
appliesTo(GraphImplementor<?> graphImplementor, JpaMetamodel metamodel)
FetchParent
asFetchParent()
Utility method to avoidinstanceof
checks.DomainResultAssembler<?>
createAssembler(InitializerParent<?> parent, AssemblerCreationState creationState)
Create the assembler for this fetchInitializer<?>
createInitializer(EmbeddableFetchImpl resultGraphNode, InitializerParent<?> parent, AssemblerCreationState creationState)
EmbeddableInitializer<?>
createInitializer(InitializerParent<?> parent, AssemblerCreationState creationState)
protected BasicFetch<?>
getDiscriminatorFetch()
EmbeddableMappingType
getFetchContainer()
Fetchable
getFetchedMapping()
The value mapping being fetchedFetchParent
getFetchParent()
Obtain the owner of this fetch.EmbeddableValuedModelPart
getReferencedMappingContainer()
This parent's mapping typeEmbeddableMappingType
getReferencedMappingType()
This parent's mapping typeFetchTiming
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?NavigablePath
resolveNavigablePath(Fetchable fetchable)
-
Methods inherited from class org.hibernate.sql.results.graph.AbstractFetchParent
afterInitialize, collectValueIndexesToCache, containsCollectionFetches, findFetch, getFetches, getNavigablePath, getResultJavaType, hasJoinFetches, resetFetches
-
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
getResultJavaType
-
Methods inherited from interface org.hibernate.sql.results.graph.embeddable.EmbeddableResultGraphNode
getNavigablePath
-
Methods inherited from interface org.hibernate.sql.results.graph.Fetch
containsAnyNonScalarResults, getNavigablePath
-
Methods inherited from interface org.hibernate.sql.results.graph.FetchParent
collectValueIndexesToCache, containsCollectionFetches, findFetch, generateFetchableFetch, getCollectionFetchesCount, getFetches, getReferencedModePart, getRoot, hasJoinFetches
-
-
-
-
Constructor Detail
-
EmbeddableFetchImpl
public EmbeddableFetchImpl(NavigablePath navigablePath, EmbeddableValuedFetchable embeddedPartDescriptor, FetchParent fetchParent, FetchTiming fetchTiming, boolean hasTableGroup, DomainResultCreationState creationState)
-
EmbeddableFetchImpl
protected EmbeddableFetchImpl(EmbeddableFetchImpl original)
For Hibernate Reactive
-
-
Method Detail
-
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
-
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
-
getFetchContainer
public EmbeddableMappingType getFetchContainer()
- Specified by:
getFetchContainer
in classAbstractFetchParent
-
getReferencedMappingContainer
public EmbeddableValuedModelPart getReferencedMappingContainer()
Description copied from interface:FetchParent
This parent's mapping type- Specified by:
getReferencedMappingContainer
in interfaceEmbeddableResultGraphNode
- Specified by:
getReferencedMappingContainer
in interfaceFetchParent
- Overrides:
getReferencedMappingContainer
in classAbstractFetchParent
-
getFetchedMapping
public Fetchable getFetchedMapping()
Description copied from interface:Fetch
The value mapping being fetched- Specified by:
getFetchedMapping
in interfaceFetch
-
resolveNavigablePath
public NavigablePath resolveNavigablePath(Fetchable fetchable)
- Specified by:
resolveNavigablePath
in interfaceFetchParent
-
getReferencedMappingType
public EmbeddableMappingType getReferencedMappingType()
Description copied from interface:FetchParent
This parent's mapping type- Specified by:
getReferencedMappingType
in interfaceEmbeddableResultGraphNode
- Specified by:
getReferencedMappingType
in interfaceFetchParent
-
createAssembler
public DomainResultAssembler<?> createAssembler(InitializerParent<?> parent, AssemblerCreationState creationState)
Description copied from interface:Fetch
Create the assembler for this fetch- Specified by:
createAssembler
in interfaceFetch
-
createInitializer
public Initializer<?> createInitializer(EmbeddableFetchImpl resultGraphNode, InitializerParent<?> parent, AssemblerCreationState creationState)
- Specified by:
createInitializer
in interfaceInitializerProducer<EmbeddableFetchImpl>
-
createInitializer
public EmbeddableInitializer<?> createInitializer(InitializerParent<?> parent, AssemblerCreationState creationState)
- Specified by:
createInitializer
in interfaceFetchParent
-
appliesTo
public boolean appliesTo(GraphImplementor<?> graphImplementor, JpaMetamodel metamodel)
- Specified by:
appliesTo
in interfaceDomainResultGraphNode
-
asFetchParent
public FetchParent asFetchParent()
Description copied from interface:Fetch
Utility method to avoidinstanceof
checks. Returns this if it's an instance ofFetchParent
, null otherwise.- Specified by:
asFetchParent
in interfaceFetch
-
getDiscriminatorFetch
protected BasicFetch<?> getDiscriminatorFetch()
-
-