Skip to content

Commit b4e26b3

Browse files
committed
refactor a bit the BindingContext hierarchy
1 parent 1abc64f commit b4e26b3

File tree

17 files changed

+44
-56
lines changed

17 files changed

+44
-56
lines changed

hibernate-core/src/main/java/org/hibernate/engine/spi/SessionFactoryDelegatingImpl.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@
4040
import org.hibernate.event.spi.EventEngine;
4141
import org.hibernate.graph.spi.RootGraphImplementor;
4242
import org.hibernate.internal.FastSessionServices;
43-
import org.hibernate.metamodel.model.domain.spi.JpaMetamodelImplementor;
43+
import org.hibernate.metamodel.model.domain.JpaMetamodel;
4444
import org.hibernate.metamodel.spi.MetamodelImplementor;
4545
import org.hibernate.metamodel.spi.RuntimeMetamodelsImplementor;
4646
import org.hibernate.proxy.EntityNotFoundDelegate;
@@ -265,7 +265,7 @@ public FetchProfile getFetchProfile(String name) {
265265
}
266266

267267
@Override
268-
public JpaMetamodelImplementor getJpaMetamodel() {
268+
public JpaMetamodel getJpaMetamodel() {
269269
return delegate.getJpaMetamodel();
270270
}
271271

hibernate-core/src/main/java/org/hibernate/engine/spi/SessionFactoryImplementor.java

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@
2525
import org.hibernate.metamodel.spi.MetamodelImplementor;
2626
import org.hibernate.metamodel.spi.RuntimeMetamodelsImplementor;
2727
import org.hibernate.proxy.EntityNotFoundDelegate;
28-
import org.hibernate.query.spi.QueryEngine;
2928
import org.hibernate.query.spi.QueryParameterBindingTypeResolver;
3029
import org.hibernate.query.sqm.spi.SqmCreationContext;
3130
import org.hibernate.service.spi.ServiceRegistryImplementor;
@@ -91,9 +90,6 @@ default MappingMetamodelImplementor getMappingMetamodel() {
9190
return getRuntimeMetamodels().getMappingMetamodel();
9291
}
9392

94-
@Override
95-
QueryEngine getQueryEngine();
96-
9793
@Override
9894
SessionBuilderImplementor withOptions();
9995

hibernate-core/src/main/java/org/hibernate/graph/internal/parse/PathQualifierType.java

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88

99
import org.hibernate.graph.CannotContainSubGraphException;
1010
import org.hibernate.metamodel.model.domain.DomainType;
11+
import org.hibernate.metamodel.model.domain.JpaMetamodel;
1112
import org.hibernate.metamodel.model.domain.ManagedDomainType;
1213
import org.hibernate.metamodel.model.domain.spi.JpaMetamodelImplementor;
1314

@@ -42,13 +43,11 @@ public enum PathQualifierType {
4243
private static ManagedDomainType resolveSubTypeManagedType(
4344
DomainType<?> graphType,
4445
String subTypeName,
45-
JpaMetamodelImplementor metamodel) {
46-
if ( !( graphType instanceof ManagedDomainType ) ) {
46+
JpaMetamodel metamodel) {
47+
if ( !( graphType instanceof ManagedDomainType<?> managedType ) ) {
4748
throw new CannotContainSubGraphException( "The given type [" + graphType + "] is not a ManagedType" );
4849
}
4950

50-
ManagedDomainType managedType = (ManagedDomainType) graphType;
51-
5251
if ( subTypeName != null ) {
5352
managedType = resolveSubType( managedType, subTypeName, metamodel );
5453
}

hibernate-core/src/main/java/org/hibernate/metamodel/model/domain/internal/AbstractPluralAttribute.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,9 @@
1414
import org.hibernate.metamodel.mapping.CollectionPart;
1515
import org.hibernate.metamodel.model.domain.DomainType;
1616
import org.hibernate.metamodel.model.domain.EntityDomainType;
17+
import org.hibernate.metamodel.model.domain.JpaMetamodel;
1718
import org.hibernate.metamodel.model.domain.PluralPersistentAttribute;
1819
import org.hibernate.metamodel.model.domain.SimpleDomainType;
19-
import org.hibernate.metamodel.model.domain.spi.JpaMetamodelImplementor;
2020
import org.hibernate.spi.NavigablePath;
2121
import org.hibernate.query.sqm.SqmPathSource;
2222
import org.hibernate.query.sqm.internal.SqmMappingModelHelper;
@@ -89,7 +89,7 @@ public SqmPathSource<?> findSubPathSource(String name) {
8989
}
9090

9191
@Override
92-
public SqmPathSource<?> findSubPathSource(String name, JpaMetamodelImplementor metamodel) {
92+
public SqmPathSource<?> findSubPathSource(String name, JpaMetamodel metamodel) {
9393
if ( CollectionPart.Nature.ELEMENT.getName().equals( name ) ) {
9494
return elementPathSource;
9595
}

hibernate-core/src/main/java/org/hibernate/metamodel/model/domain/internal/DomainModelHelper.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -59,11 +59,13 @@ public static <T, S extends T> ManagedDomainType<S> resolveSubType(
5959
static boolean isCompatible(
6060
PersistentAttribute<?, ?> attribute1,
6161
PersistentAttribute<?, ?> attribute2,
62-
JpaMetamodelImplementor jpaMetamodel) {
62+
JpaMetamodel jpaMetamodel) {
6363
if ( attribute1 == attribute2 ) {
6464
return true;
6565
}
66-
final MappingMetamodel runtimeMetamodels = jpaMetamodel.getMappingMetamodel();
66+
final MappingMetamodel runtimeMetamodels =
67+
//TODO: eliminate this cast!
68+
((JpaMetamodelImplementor) jpaMetamodel).getMappingMetamodel();
6769
final ModelPart modelPart1 = getEntityAttributeModelPart(
6870
attribute1,
6971
attribute1.getDeclaringType(),

hibernate-core/src/main/java/org/hibernate/metamodel/model/domain/internal/EntitySqmPathSource.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
package org.hibernate.metamodel.model.domain.internal;
88

99
import org.hibernate.metamodel.model.domain.EntityDomainType;
10-
import org.hibernate.metamodel.model.domain.spi.JpaMetamodelImplementor;
10+
import org.hibernate.metamodel.model.domain.JpaMetamodel;
1111
import org.hibernate.query.hql.spi.SqmCreationState;
1212
import org.hibernate.query.sqm.SqmJoinable;
1313
import org.hibernate.query.sqm.SqmPathSource;
@@ -44,7 +44,7 @@ public SqmPathSource<?> findSubPathSource(String name) {
4444
}
4545

4646
@Override
47-
public SqmPathSource<?> findSubPathSource(String name, JpaMetamodelImplementor metamodel) {
47+
public SqmPathSource<?> findSubPathSource(String name, JpaMetamodel metamodel) {
4848
return getSqmPathType().findSubPathSource( name, metamodel );
4949
}
5050

hibernate-core/src/main/java/org/hibernate/metamodel/model/domain/internal/EntityTypeImpl.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -160,7 +160,7 @@ public SqmPathSource<?> findSubPathSource(String name) {
160160
}
161161

162162
@Override
163-
public SqmPathSource<?> findSubPathSource(String name, JpaMetamodelImplementor metamodel) {
163+
public SqmPathSource<?> findSubPathSource(String name, JpaMetamodel metamodel) {
164164
final PersistentAttribute<? super J,?> attribute = super.findAttribute( name );
165165
if ( attribute != null ) {
166166
return (SqmPathSource<?>) attribute;
@@ -182,7 +182,7 @@ public SqmPathSource<?> findSubPathSource(String name, JpaMetamodelImplementor m
182182
return null;
183183
}
184184

185-
private PersistentAttribute<?, ?> findSubtypeAttribute(String name, JpaMetamodelImplementor metamodel) {
185+
private PersistentAttribute<?, ?> findSubtypeAttribute(String name, JpaMetamodel metamodel) {
186186
PersistentAttribute<?,?> subtypeAttribute = null;
187187
for ( ManagedDomainType<?> subtype : getSubTypes() ) {
188188
final PersistentAttribute<?,?> candidate = subtype.findSubTypesAttribute( name );

hibernate-core/src/main/java/org/hibernate/metamodel/model/domain/internal/ListAttributeImpl.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@
1010

1111
import org.hibernate.metamodel.internal.MetadataContext;
1212
import org.hibernate.metamodel.mapping.CollectionPart;
13+
import org.hibernate.metamodel.model.domain.JpaMetamodel;
1314
import org.hibernate.metamodel.model.domain.ListPersistentAttribute;
14-
import org.hibernate.metamodel.model.domain.spi.JpaMetamodelImplementor;
1515
import org.hibernate.query.sqm.SqmPathSource;
1616
import org.hibernate.query.hql.spi.SqmCreationState;
1717
import org.hibernate.query.sqm.internal.SqmMappingModelHelper;
@@ -62,7 +62,7 @@ public SqmPathSource<?> findSubPathSource(String name) {
6262
}
6363

6464
@Override
65-
public SqmPathSource<?> findSubPathSource(String name, JpaMetamodelImplementor metamodel) {
65+
public SqmPathSource<?> findSubPathSource(String name, JpaMetamodel metamodel) {
6666
final CollectionPart.Nature nature = CollectionPart.Nature.fromNameExact( name );
6767
if ( nature != null ) {
6868
switch ( nature ) {

hibernate-core/src/main/java/org/hibernate/metamodel/model/domain/internal/MapAttributeImpl.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,9 @@
1010

1111
import org.hibernate.metamodel.internal.MetadataContext;
1212
import org.hibernate.metamodel.mapping.CollectionPart;
13+
import org.hibernate.metamodel.model.domain.JpaMetamodel;
1314
import org.hibernate.metamodel.model.domain.MapPersistentAttribute;
1415
import org.hibernate.metamodel.model.domain.SimpleDomainType;
15-
import org.hibernate.metamodel.model.domain.spi.JpaMetamodelImplementor;
1616
import org.hibernate.query.sqm.SqmPathSource;
1717
import org.hibernate.query.hql.spi.SqmCreationState;
1818
import org.hibernate.query.sqm.internal.SqmMappingModelHelper;
@@ -72,7 +72,7 @@ public SqmPathSource<?> findSubPathSource(String name) {
7272
}
7373

7474
@Override
75-
public SqmPathSource<?> findSubPathSource(String name, JpaMetamodelImplementor metamodel) {
75+
public SqmPathSource<?> findSubPathSource(String name, JpaMetamodel metamodel) {
7676
final CollectionPart.Nature nature = CollectionPart.Nature.fromNameExact( name );
7777
if ( nature != null ) {
7878
switch ( nature ) {

hibernate-core/src/main/java/org/hibernate/metamodel/model/domain/internal/SingularAttributeImpl.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,11 @@
1616
import org.hibernate.metamodel.model.domain.DomainType;
1717
import org.hibernate.metamodel.model.domain.EntityDomainType;
1818
import org.hibernate.metamodel.model.domain.IdentifiableDomainType;
19+
import org.hibernate.metamodel.model.domain.JpaMetamodel;
1920
import org.hibernate.metamodel.model.domain.ManagedDomainType;
2021
import org.hibernate.metamodel.model.domain.PluralPersistentAttribute;
2122
import org.hibernate.metamodel.model.domain.SimpleDomainType;
2223
import org.hibernate.metamodel.model.domain.SingularPersistentAttribute;
23-
import org.hibernate.metamodel.model.domain.spi.JpaMetamodelImplementor;
2424
import org.hibernate.query.SemanticException;
2525
import org.hibernate.query.sqm.SqmPathSource;
2626
import org.hibernate.query.hql.spi.SqmCreationState;
@@ -130,7 +130,7 @@ public SqmPathSource<?> findSubPathSource(String name) {
130130
}
131131

132132
@Override
133-
public SqmPathSource<?> findSubPathSource(String name, JpaMetamodelImplementor metamodel) {
133+
public SqmPathSource<?> findSubPathSource(String name, JpaMetamodel metamodel) {
134134
return sqmPathSource.findSubPathSource( name, metamodel );
135135
}
136136

0 commit comments

Comments
 (0)