diff --git a/hibernate-core/src/main/java/org/hibernate/loader/ast/internal/AbstractMultiNaturalIdLoader.java b/hibernate-core/src/main/java/org/hibernate/loader/ast/internal/AbstractMultiNaturalIdLoader.java index 26ce6bb49c27..43f06b85e8c7 100644 --- a/hibernate-core/src/main/java/org/hibernate/loader/ast/internal/AbstractMultiNaturalIdLoader.java +++ b/hibernate-core/src/main/java/org/hibernate/loader/ast/internal/AbstractMultiNaturalIdLoader.java @@ -10,6 +10,7 @@ import org.hibernate.engine.spi.EntityKey; import org.hibernate.engine.spi.PersistenceContext; import org.hibernate.engine.spi.SharedSessionContractImplementor; +import org.hibernate.event.spi.EventSource; import org.hibernate.loader.ast.spi.MultiNaturalIdLoadOptions; import org.hibernate.loader.ast.spi.MultiNaturalIdLoader; import org.hibernate.metamodel.mapping.EntityMappingType; @@ -31,7 +32,7 @@ public AbstractMultiNaturalIdLoader(EntityMappingType entityDescriptor) { } @Override - public List multiLoad(K[] naturalIds, MultiNaturalIdLoadOptions options, SharedSessionContractImplementor session) { + public List multiLoad(K[] naturalIds, MultiNaturalIdLoadOptions options, EventSource eventSource) { assert naturalIds != null; this.options = options; @@ -41,41 +42,41 @@ public List multiLoad(K[] naturalIds, MultiNaturalIdLoadOptions options, } return options.isOrderReturnEnabled() - ? performOrderedMultiLoad( naturalIds, options, session ) - : performUnorderedMultiLoad( naturalIds, options, session ); + ? performOrderedMultiLoad( naturalIds, options, eventSource ) + : performUnorderedMultiLoad( naturalIds, options, eventSource ); } - private List performUnorderedMultiLoad(K[] naturalIds, MultiNaturalIdLoadOptions options, SharedSessionContractImplementor session) { + private List performUnorderedMultiLoad(K[] naturalIds, MultiNaturalIdLoadOptions options, EventSource eventSource) { if ( MultiKeyLoadLogging.MULTI_KEY_LOAD_LOGGER.isTraceEnabled() ) { MultiKeyLoadLogging.MULTI_KEY_LOAD_LOGGER.tracef( "Unordered MultiLoad Starting - `%s`", getEntityDescriptor().getEntityName() ); } return unorderedMultiLoad( naturalIds, - session, + eventSource, options.getLockOptions() == null ? LockOptions.NONE : options.getLockOptions() ); } - protected abstract List unorderedMultiLoad(K[] naturalIds, SharedSessionContractImplementor session, LockOptions lockOptions); + protected abstract List unorderedMultiLoad(K[] naturalIds, EventSource eventSource, LockOptions lockOptions); - private List performOrderedMultiLoad(K[] naturalIds, MultiNaturalIdLoadOptions options, SharedSessionContractImplementor session) { + private List performOrderedMultiLoad(K[] naturalIds, MultiNaturalIdLoadOptions options, EventSource eventSource) { if ( MultiKeyLoadLogging.MULTI_KEY_LOAD_LOGGER.isTraceEnabled() ) { MultiKeyLoadLogging.MULTI_KEY_LOAD_LOGGER.tracef( "Ordered MultiLoad Starting - `%s`", getEntityDescriptor().getEntityName() ); } return orderedMultiLoad( naturalIds, - session, + eventSource, options.getLockOptions() == null ? LockOptions.NONE : options.getLockOptions() ); } - protected List orderedMultiLoad( K[] naturalIds, SharedSessionContractImplementor session, LockOptions lockOptions ) { + protected List orderedMultiLoad( K[] naturalIds, EventSource eventSource, LockOptions lockOptions ) { - unorderedMultiLoad( naturalIds, session, lockOptions ); + unorderedMultiLoad( naturalIds, eventSource, lockOptions ); - return handleResults( naturalIds, session, lockOptions ); + return handleResults( naturalIds, eventSource, lockOptions ); } protected List handleResults( K[] naturalIds, SharedSessionContractImplementor session, LockOptions lockOptions ) { diff --git a/hibernate-core/src/main/java/org/hibernate/loader/ast/internal/MultiNaturalIdLoaderArrayParam.java b/hibernate-core/src/main/java/org/hibernate/loader/ast/internal/MultiNaturalIdLoaderArrayParam.java index 3a9f5258d5d5..f2394f527694 100644 --- a/hibernate-core/src/main/java/org/hibernate/loader/ast/internal/MultiNaturalIdLoaderArrayParam.java +++ b/hibernate-core/src/main/java/org/hibernate/loader/ast/internal/MultiNaturalIdLoaderArrayParam.java @@ -8,7 +8,7 @@ import org.hibernate.LockOptions; import org.hibernate.engine.spi.SessionFactoryImplementor; -import org.hibernate.engine.spi.SharedSessionContractImplementor; +import org.hibernate.event.spi.EventSource; import org.hibernate.loader.ast.spi.SqlArrayMultiKeyLoader; import org.hibernate.metamodel.mapping.EntityMappingType; import org.hibernate.metamodel.mapping.JdbcMapping; @@ -44,11 +44,11 @@ protected BasicAttributeMapping getNaturalIdAttribute() { } @Override - public List unorderedMultiLoad( K[] naturalIds, SharedSessionContractImplementor session, LockOptions lockOptions ) { + public List unorderedMultiLoad(K[] naturalIds, EventSource eventSource, LockOptions lockOptions ) { - final SessionFactoryImplementor sessionFactory = session.getFactory(); + final SessionFactoryImplementor sessionFactory = eventSource.getFactory(); - naturalIds = LoaderHelper.normalizeKeys( naturalIds, getNaturalIdAttribute(), session, sessionFactory ); + naturalIds = LoaderHelper.normalizeKeys( naturalIds, getNaturalIdAttribute(), eventSource, sessionFactory ); final JdbcMapping arrayJdbcMapping = MultiKeyLoadHelper.resolveArrayJdbcMapping( getNaturalIdMapping().getSingleJdbcMapping(), @@ -60,7 +60,7 @@ public List unorderedMultiLoad( K[] naturalIds, SharedSessionContractImpl final SelectStatement sqlAst = LoaderSelectBuilder.createSelectBySingleArrayParameter( getLoadable(), getNaturalIdAttribute(), - session.getLoadQueryInfluencers(), + eventSource.getLoadQueryInfluencers(), lockOptions, jdbcParameter, sessionFactory @@ -86,8 +86,8 @@ public LockOptions getLockOptions() { null, null, lockOptions, - session.isDefaultReadOnly(), - session + eventSource.isDefaultReadOnly(), + eventSource ); } diff --git a/hibernate-core/src/main/java/org/hibernate/loader/ast/internal/MultiNaturalIdLoaderInPredicate.java b/hibernate-core/src/main/java/org/hibernate/loader/ast/internal/MultiNaturalIdLoaderInPredicate.java index 262bdec8609b..9314c854e731 100644 --- a/hibernate-core/src/main/java/org/hibernate/loader/ast/internal/MultiNaturalIdLoaderInPredicate.java +++ b/hibernate-core/src/main/java/org/hibernate/loader/ast/internal/MultiNaturalIdLoaderInPredicate.java @@ -8,7 +8,7 @@ import org.hibernate.LockOptions; import org.hibernate.engine.spi.SessionFactoryImplementor; -import org.hibernate.engine.spi.SharedSessionContractImplementor; +import org.hibernate.event.spi.EventSource; import org.hibernate.loader.ast.spi.SqlInPredicateMultiKeyLoader; import org.hibernate.metamodel.mapping.EntityMappingType; @@ -22,9 +22,9 @@ public MultiNaturalIdLoaderInPredicate(EntityMappingType entityDescriptor) { } @Override - public List unorderedMultiLoad(K[] naturalIds, SharedSessionContractImplementor session, LockOptions lockOptions) { + public List unorderedMultiLoad(K[] naturalIds, EventSource eventSource, LockOptions lockOptions) { - final SessionFactoryImplementor sessionFactory = session.getFactory(); + final SessionFactoryImplementor sessionFactory = eventSource.getFactory(); final int maxBatchSize; if ( options.getBatchSize() != null && options.getBatchSize() > 0 ) { @@ -32,7 +32,7 @@ public List unorderedMultiLoad(K[] naturalIds, SharedSessionContractImple } else { maxBatchSize = - session.getJdbcServices().getJdbcEnvironment().getDialect() + eventSource.getJdbcServices().getJdbcEnvironment().getDialect() .getMultiKeyLoadSizingStrategy().determineOptimalBatchLoadSize( getEntityDescriptor().getNaturalIdMapping().getJdbcTypeCount(), naturalIds.length, @@ -50,12 +50,12 @@ public List unorderedMultiLoad(K[] naturalIds, SharedSessionContractImple // `naturalId` here is the one passed in by the API as part of the values array return getEntityDescriptor().getNaturalIdMapping().normalizeInput( naturalId ); }, - session.getLoadQueryInfluencers(), + eventSource.getLoadQueryInfluencers(), lockOptions, sessionFactory ); - return batcher.multiLoad( naturalIds, session ); + return batcher.multiLoad( naturalIds, eventSource ); } } diff --git a/hibernate-core/src/main/java/org/hibernate/loader/ast/spi/MultiNaturalIdLoader.java b/hibernate-core/src/main/java/org/hibernate/loader/ast/spi/MultiNaturalIdLoader.java index 4aa96b303666..d7698f92379c 100644 --- a/hibernate-core/src/main/java/org/hibernate/loader/ast/spi/MultiNaturalIdLoader.java +++ b/hibernate-core/src/main/java/org/hibernate/loader/ast/spi/MultiNaturalIdLoader.java @@ -6,7 +6,7 @@ import java.util.List; -import org.hibernate.engine.spi.SharedSessionContractImplementor; +import org.hibernate.event.spi.EventSource; /** * Loader for entities by multiple natural-ids @@ -24,5 +24,5 @@ public interface MultiNaturalIdLoader extends EntityMultiLoader { * values positioned according to "attribute ordering". Simple natural-ids can also be expressed * by their simple (basic/embedded) type. */ - List multiLoad(K[] naturalIds, MultiNaturalIdLoadOptions options, SharedSessionContractImplementor session); + List multiLoad(K[] naturalIds, MultiNaturalIdLoadOptions options, EventSource eventSource); }