|
4 | 4 | */ |
5 | 5 | package org.hibernate.persister.entity; |
6 | 6 |
|
7 | | -import java.io.Serializable; |
8 | | -import java.sql.PreparedStatement; |
9 | | -import java.sql.ResultSet; |
10 | | -import java.sql.SQLException; |
11 | | -import java.util.ArrayList; |
12 | | -import java.util.Arrays; |
13 | | -import java.util.BitSet; |
14 | | -import java.util.Collection; |
15 | | -import java.util.HashMap; |
16 | | -import java.util.HashSet; |
17 | | -import java.util.LinkedHashMap; |
18 | | -import java.util.List; |
19 | | -import java.util.Locale; |
20 | | -import java.util.Map; |
21 | | -import java.util.Objects; |
22 | | -import java.util.Set; |
23 | | -import java.util.SortedMap; |
24 | | -import java.util.TreeMap; |
25 | | -import java.util.concurrent.ConcurrentHashMap; |
26 | | -import java.util.function.BiConsumer; |
27 | | -import java.util.function.Consumer; |
28 | | -import java.util.function.Supplier; |
29 | | - |
| 7 | +import org.checkerframework.checker.nullness.qual.Nullable; |
30 | 8 | import org.hibernate.AssertionFailure; |
31 | 9 | import org.hibernate.FetchMode; |
32 | 10 | import org.hibernate.Filter; |
|
39 | 17 | import org.hibernate.MappingException; |
40 | 18 | import org.hibernate.PropertyValueException; |
41 | 19 | import org.hibernate.QueryException; |
| 20 | +import org.hibernate.Session; |
42 | 21 | import org.hibernate.annotations.CacheLayout; |
43 | 22 | import org.hibernate.boot.Metadata; |
44 | 23 | import org.hibernate.boot.model.relational.SqlStringGenerationContext; |
|
157 | 136 | import org.hibernate.metamodel.mapping.ForeignKeyDescriptor; |
158 | 137 | import org.hibernate.metamodel.mapping.JdbcMapping; |
159 | 138 | import org.hibernate.metamodel.mapping.ManagedMappingType; |
| 139 | +import org.hibernate.metamodel.mapping.internal.MappingModelHelper; |
160 | 140 | import org.hibernate.metamodel.mapping.ModelPart; |
161 | 141 | import org.hibernate.metamodel.mapping.NaturalIdMapping; |
162 | 142 | import org.hibernate.metamodel.mapping.NonAggregatedIdentifierMapping; |
|
179 | 159 | import org.hibernate.metamodel.mapping.internal.InFlightEntityMappingType; |
180 | 160 | import org.hibernate.metamodel.mapping.internal.MappingModelCreationHelper; |
181 | 161 | import org.hibernate.metamodel.mapping.internal.MappingModelCreationProcess; |
182 | | -import org.hibernate.metamodel.mapping.internal.MappingModelHelper; |
183 | 162 | import org.hibernate.metamodel.mapping.internal.SimpleAttributeMetadata; |
184 | 163 | import org.hibernate.metamodel.mapping.internal.SimpleNaturalIdMapping; |
185 | 164 | import org.hibernate.metamodel.mapping.internal.UnifiedAnyDiscriminatorConverter; |
|
275 | 254 | import org.hibernate.type.descriptor.java.MutabilityPlan; |
276 | 255 | import org.hibernate.type.spi.TypeConfiguration; |
277 | 256 |
|
278 | | -import org.checkerframework.checker.nullness.qual.Nullable; |
| 257 | +import java.io.Serializable; |
| 258 | +import java.sql.PreparedStatement; |
| 259 | +import java.sql.ResultSet; |
| 260 | +import java.sql.SQLException; |
| 261 | +import java.util.ArrayList; |
| 262 | +import java.util.Arrays; |
| 263 | +import java.util.BitSet; |
| 264 | +import java.util.Collection; |
| 265 | +import java.util.HashMap; |
| 266 | +import java.util.HashSet; |
| 267 | +import java.util.LinkedHashMap; |
| 268 | +import java.util.List; |
| 269 | +import java.util.Locale; |
| 270 | +import java.util.Map; |
| 271 | +import java.util.Objects; |
| 272 | +import java.util.Set; |
| 273 | +import java.util.SortedMap; |
| 274 | +import java.util.TreeMap; |
| 275 | +import java.util.concurrent.ConcurrentHashMap; |
| 276 | +import java.util.function.BiConsumer; |
| 277 | +import java.util.function.Consumer; |
| 278 | +import java.util.function.Supplier; |
279 | 279 |
|
280 | 280 | import static java.util.Collections.emptyList; |
281 | 281 | import static java.util.Collections.emptyMap; |
@@ -4054,23 +4054,23 @@ public boolean isVersionGeneratedBeforeExecution() { |
4054 | 4054 | } |
4055 | 4055 |
|
4056 | 4056 | @Override |
4057 | | - public void afterInitialize(Object entity, SharedSessionContractImplementor session) { |
| 4057 | + public void afterInitialize(Object entity, SharedSessionContractImplementor sharedSessionContractImplementor) { |
4058 | 4058 | if ( isPersistentAttributeInterceptable( entity ) && getRepresentationStrategy().getMode() == POJO ) { |
4059 | 4059 | final BytecodeLazyAttributeInterceptor interceptor = getEntityMetamodel().getBytecodeEnhancementMetadata() |
4060 | 4060 | .extractLazyInterceptor( entity ); |
4061 | 4061 | assert interceptor != null; |
4062 | 4062 | if ( interceptor.getLinkedSession() == null ) { |
4063 | | - interceptor.setSession( session ); |
| 4063 | + interceptor.setSession( sharedSessionContractImplementor ); |
4064 | 4064 | } |
4065 | 4065 | } |
4066 | 4066 |
|
4067 | 4067 | // clear the fields that are marked as dirty in the dirtiness tracker |
4068 | 4068 | processIfSelfDirtinessTracker( entity, AbstractEntityPersister::clearDirtyAttributes ); |
4069 | 4069 | processIfManagedEntity( entity, AbstractEntityPersister::useTracker ); |
4070 | 4070 |
|
4071 | | - if ( session instanceof SessionImplementor sessionImplementor ) { |
4072 | | - session.getFactory().getCustomEntityDirtinessStrategy() |
4073 | | - .resetDirty( entity, this, sessionImplementor ); |
| 4071 | + if ( sharedSessionContractImplementor instanceof Session session ) { |
| 4072 | + sharedSessionContractImplementor.getFactory().getCustomEntityDirtinessStrategy() |
| 4073 | + .resetDirty( entity, this, session ); |
4074 | 4074 | } |
4075 | 4075 | } |
4076 | 4076 |
|
|
0 commit comments