Class AggregateEmbeddableInitializerImpl
java.lang.Object
org.hibernate.sql.results.graph.internal.AbstractInitializer<EmbeddableInitializerImpl.EmbeddableInitializerData>
org.hibernate.sql.results.graph.embeddable.internal.EmbeddableInitializerImpl
org.hibernate.sql.results.graph.embeddable.internal.AggregateEmbeddableInitializerImpl
- All Implemented Interfaces:
EmbeddableInitializer<EmbeddableInitializerImpl.EmbeddableInitializerData>
,Initializer<EmbeddableInitializerImpl.EmbeddableInitializerData>
,InitializerParent<EmbeddableInitializerImpl.EmbeddableInitializerData>
An initializer for an embeddable that is mapped as aggregate e.g. STRUCT, JSON or XML.
The aggregate selection reads an Object[] from JDBC which serves as data for the nested
DomainResultAssembler
.
This class exposes the Object[] of the aggregate to the nested assemblers through a wrapping RowProcessingState
.-
Nested Class Summary
Nested classes/interfaces inherited from class org.hibernate.sql.results.graph.embeddable.internal.EmbeddableInitializerImpl
EmbeddableInitializerImpl.EmbeddableInitializerData
Nested classes/interfaces inherited from interface org.hibernate.sql.results.graph.Initializer
Initializer.State
-
Field Summary
Fields inherited from class org.hibernate.sql.results.graph.embeddable.internal.EmbeddableInitializerImpl
assemblers, collectionContainingSubInitializers, discriminatorAssembler, hasLazySubInitializer, lazyCapable, subInitializers, subInitializersForResolveFromInitialized
Fields inherited from class org.hibernate.sql.results.graph.internal.AbstractInitializer
initializerId
Fields inherited from interface org.hibernate.sql.results.graph.Initializer
EMPTY_ARRAY
-
Constructor Summary
ConstructorsConstructorDescriptionAggregateEmbeddableInitializerImpl
(AggregateEmbeddableResultGraphNode resultDescriptor, BasicFetch<?> discriminatorFetch, InitializerParent<?> parent, AssemblerCreationState creationState, boolean isResultInitializer) -
Method Summary
Modifier and TypeMethodDescriptionint[]
Object[]
getJdbcValues
(RowProcessingState processingState) void
startLoading
(RowProcessingState rowProcessingState) Step 0 - Callback for initializers before the first row is read.Methods inherited from class org.hibernate.sql.results.graph.embeddable.internal.EmbeddableInitializerImpl
createInitializerData, forEachSubInitializer, getInitializedPart, getNavigablePath, getParent, hasLazySubInitializers, initializeInstance, initializeInstanceFromParent, isEager, isLazyCapable, isPartOfKey, isResultInitializer, resetResolvedEntityRegistrations, resolveFromPreviousRow, resolveInstance, resolveInstance, resolveKey, resolveState, toString
Methods inherited from class org.hibernate.sql.results.graph.internal.AbstractInitializer
finishUpRow, getData
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.hibernate.sql.results.graph.embeddable.EmbeddableInitializer
asEmbeddableInitializer, isEmbeddableInitializer
Methods inherited from interface org.hibernate.sql.results.graph.Initializer
asCollectionInitializer, asEntityInitializer, endLoading, endLoading, findOwningEntityInitializer, finishUpRow, finishUpRow, getData, getResolvedInstance, getResolvedInstance, initializeInstance, initializeInstanceFromParent, isCollectionInitializer, isEntityInitializer, resolveFromPreviousRow, resolveInstance, resolveInstance, resolveKey, resolveState
-
Constructor Details
-
AggregateEmbeddableInitializerImpl
public AggregateEmbeddableInitializerImpl(AggregateEmbeddableResultGraphNode resultDescriptor, BasicFetch<?> discriminatorFetch, InitializerParent<?> parent, AssemblerCreationState creationState, boolean isResultInitializer)
-
-
Method Details
-
startLoading
Description copied from interface:Initializer
Step 0 - Callback for initializers before the first row is read. It is the responsibility of this initializer to recurse to the sub-initializers and registerInitializerData
for the initializer id viaRowProcessingState.setInitializerData(int, InitializerData)
. This is useful for e.g. preparing initializers in case of a cache hit.- Specified by:
startLoading
in interfaceInitializer<EmbeddableInitializerImpl.EmbeddableInitializerData>
- Overrides:
startLoading
in classAbstractInitializer<EmbeddableInitializerImpl.EmbeddableInitializerData>
-
getAggregateValuesArrayPositions
public int[] getAggregateValuesArrayPositions() -
getJdbcValues
-