Skip to content

Commit 0cf8e34

Browse files
DavideDyrodiere
authored andcommitted
HHH-19953 Relax scope of methods in EntityInitializerImpl
For Hibernate Reactive. It needs to reimplement these classes and we will avoid a lot of duplicated code.
1 parent 1ff3eb9 commit 0cf8e34

File tree

1 file changed

+27
-4
lines changed

1 file changed

+27
-4
lines changed

hibernate-core/src/main/java/org/hibernate/sql/results/graph/entity/internal/EntityInitializerImpl.java

Lines changed: 27 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1342,7 +1342,8 @@ protected void upgradeLockMode(EntityInitializerData data) {
13421342
}
13431343
}
13441344

1345-
private boolean isProxyInstance(Object proxy) {
1345+
// Used by Hibernate Reactive
1346+
protected boolean isProxyInstance(Object proxy) {
13461347
return proxy != null
13471348
&& ( proxy instanceof MapProxy
13481349
|| entityDescriptor.getJavaType().getJavaTypeClass().isInstance( proxy ) );
@@ -1436,7 +1437,8 @@ protected Object instantiateEntity(EntityInitializerData data) {
14361437
.instantiate( data.concreteDescriptor, data.entityKey.getIdentifier() );
14371438
}
14381439

1439-
private Object resolveToOptionalInstance(EntityInitializerData data) {
1440+
// Used by Hibernate Reactive
1441+
protected Object resolveToOptionalInstance(EntityInitializerData data) {
14401442
if ( isResultInitializer() ) {
14411443
// this isEntityReturn bit is just for entity loaders, not HQL/criteria
14421444
final var processingOptions =
@@ -1452,7 +1454,8 @@ private Object resolveToOptionalInstance(EntityInitializerData data) {
14521454
}
14531455
}
14541456

1455-
private boolean matchesOptionalInstance(
1457+
// Used by Hibernate Reactive
1458+
protected boolean matchesOptionalInstance(
14561459
EntityInitializerData data,
14571460
JdbcValuesSourceProcessingOptions processingOptions) {
14581461
final Object optionalEntityInstance = processingOptions.getEffectiveOptionalObject();
@@ -1462,7 +1465,8 @@ private boolean matchesOptionalInstance(
14621465
&& areKeysEqual( requestedEntityId, data.entityKey.getIdentifier() );
14631466
}
14641467

1465-
private Object resolveInstanceFromCache(EntityInitializerData data) {
1468+
// Used by Hibernate Reactive
1469+
protected Object resolveInstanceFromCache(EntityInitializerData data) {
14661470
return loadFromSecondLevelCache(
14671471
data.getRowProcessingState().getSession().asEventSource(),
14681472
null,
@@ -2076,6 +2080,25 @@ public String toString() {
20762080
//#########################
20772081
// For Hibernate Reactive
20782082
//#########################
2083+
protected EntityPersister getRootEntityDescriptor() {
2084+
return rootEntityDescriptor;
2085+
}
2086+
2087+
protected @Nullable Initializer<?>[][] getEagerSubInitializers() {
2088+
return eagerSubInitializers;
2089+
}
2090+
2091+
protected @Nullable Initializer<?>[][] getCollectionContainingSubInitializers() {
2092+
return collectionContainingSubInitializers;
2093+
}
2094+
2095+
protected ImmutableBitSet[] getLazySets() {
2096+
return lazySets;
2097+
}
2098+
2099+
public boolean isHasLazyInitializingSubAssemblers() {
2100+
return hasLazyInitializingSubAssemblers;
2101+
}
20792102

20802103
protected @Nullable DomainResultAssembler<?> getVersionAssembler() {
20812104
return versionAssembler;

0 commit comments

Comments
 (0)