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
-
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()
-
getNullIndicatorResult
protected @Nullable DomainResult<Boolean> getNullIndicatorResult()
-
-