Class BatchEntityInsideEmbeddableSelectFetchInitializer
- java.lang.Object
-
- org.hibernate.sql.results.graph.AbstractFetchParentAccess
-
- org.hibernate.sql.results.graph.entity.internal.AbstractBatchEntitySelectFetchInitializer
-
- org.hibernate.sql.results.graph.entity.internal.BatchEntityInsideEmbeddableSelectFetchInitializer
-
- All Implemented Interfaces:
EntityInitializer
,FetchParentAccess
,Initializer
public class BatchEntityInsideEmbeddableSelectFetchInitializer extends AbstractBatchEntitySelectFetchInitializer
-
-
Field Summary
Fields Modifier and Type Field Description static Serializable
BATCH_PROPERTY
Marker value for batch properties, needed by the EmbeddableInitializer to instantiate the embeddable instance in case all the other properties are null.-
Fields inherited from class org.hibernate.sql.results.graph.entity.internal.AbstractBatchEntitySelectFetchInitializer
concreteDescriptor, entityKey, firstEntityInitializer, identifierAssembler, initializedEntityInstance, parentAccess, referencedModelPart, state
-
-
Constructor Summary
Constructors Constructor Description BatchEntityInsideEmbeddableSelectFetchInitializer(FetchParentAccess parentAccess, ToOneAttributeMapping referencedModelPart, NavigablePath fetchedNavigable, EntityPersister concreteDescriptor, DomainResultAssembler<?> identifierAssembler)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
endLoading(ExecutionContext context)
Lifecycle method called at the very end of the result values processingprotected static String
getRootEmbeddablePropertyName(EntityInitializer firstEntityInitializer, FetchParentAccess parentAccess, ToOneAttributeMapping referencedModelPart)
boolean
isEntityInitialized()
protected void
registerResolutionListener()
void
resolveInstance(RowProcessingState rowProcessingState)
Step 2 - Using the key resolved inInitializer.resolveKey(org.hibernate.sql.results.jdbc.spi.RowProcessingState)
, resolve the instance (of the thing initialized) to use for the current row.protected static void
setInstance(EntityInitializer entityInitializer, ToOneAttributeMapping referencedModelPart, String rootEmbeddablePropertyName, int propertyIndex, Object loadedInstance, Object embeddableParentInstance, EntityKey parentEntityKey, EntityEntry parentEntityEntry, SharedSessionContractImplementor session)
String
toString()
-
Methods inherited from class org.hibernate.sql.results.graph.entity.internal.AbstractBatchEntitySelectFetchInitializer
finishUpRow, getConcreteDescriptor, getEntityDescriptor, getEntityInstance, getEntityKey, getExistingInitializedInstance, getFetchParentAccess, getInitializedPart, getNavigablePath, getParentEntityAttribute, getParentKey, initializeInstance, loadInstance, registerResolutionListener, registerToBatchFetchQueue, resolveKey, resolveKey
-
Methods inherited from class org.hibernate.sql.results.graph.AbstractFetchParentAccess
clearResolutionListeners, notifyResolutionListeners
-
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.entity.EntityInitializer
asEntityInitializer, findFirstEntityDescriptorAccess, findFirstEntityInitializer, getInitializedInstance, isEntityInitializer
-
Methods inherited from interface org.hibernate.sql.results.graph.Initializer
asEmbeddableInitializer, isAttributeAssignableToConcreteDescriptor, isCollectionInitializer, isEmbeddableInitializer
-
-
-
-
Field Detail
-
BATCH_PROPERTY
public static final Serializable BATCH_PROPERTY
Marker value for batch properties, needed by the EmbeddableInitializer to instantiate the embeddable instance in case all the other properties are null.
-
-
Constructor Detail
-
BatchEntityInsideEmbeddableSelectFetchInitializer
public BatchEntityInsideEmbeddableSelectFetchInitializer(FetchParentAccess parentAccess, ToOneAttributeMapping referencedModelPart, NavigablePath fetchedNavigable, EntityPersister concreteDescriptor, DomainResultAssembler<?> identifierAssembler)
-
-
Method Detail
-
resolveInstance
public void resolveInstance(RowProcessingState rowProcessingState)
Description copied from interface:Initializer
Step 2 - Using the key resolved inInitializer.resolveKey(org.hibernate.sql.results.jdbc.spi.RowProcessingState)
, resolve the instance (of the thing initialized) to use for the current row. After this point, the initializer knows the entity/collection/component instance for the current row based on the resolved key todo (6.0) : much of the various implementations of this are similar enough to handle in a common base implementation (templating?) things like resolving as managed (Session cache), from second-level cache, from LoadContext, etc..
-
registerResolutionListener
protected void registerResolutionListener()
- Specified by:
registerResolutionListener
in classAbstractBatchEntitySelectFetchInitializer
-
isEntityInitialized
public boolean isEntityInitialized()
- Returns:
- true if the current entity associated to this EntityInitializer has been initialized
-
endLoading
public void endLoading(ExecutionContext context)
Description copied from interface:Initializer
Lifecycle method called at the very end of the result values processing
-
setInstance
protected static void setInstance(EntityInitializer entityInitializer, ToOneAttributeMapping referencedModelPart, String rootEmbeddablePropertyName, int propertyIndex, Object loadedInstance, Object embeddableParentInstance, EntityKey parentEntityKey, EntityEntry parentEntityEntry, SharedSessionContractImplementor session)
-
getRootEmbeddablePropertyName
protected static String getRootEmbeddablePropertyName(EntityInitializer firstEntityInitializer, FetchParentAccess parentAccess, ToOneAttributeMapping referencedModelPart)
-
-