Skip to content

Commit 551a60d

Browse files
authored
Merge pull request quarkusio#47855 from yrodiere/orm-metamodel
Do not expose Hibernate-specific metamodels through CDI
2 parents 59cf4a6 + ac4a0c8 commit 551a60d

File tree

5 files changed

+2
-75
lines changed

5 files changed

+2
-75
lines changed

docs/src/main/asciidoc/hibernate-orm.adoc

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -514,12 +514,6 @@ HibernateCriteriaBuilder hibernateCriteriaBuilder;
514514
@Inject
515515
Metamodel metamodel;
516516
517-
@Inject
518-
org.hibernate.Metamodel metamodel;
519-
520-
@Inject
521-
JpaMetamodel jpaMetamodel;
522-
523517
@Inject
524518
Cache cache;
525519

extensions/hibernate-orm/deployment/src/main/java/io/quarkus/hibernate/orm/deployment/ClassNames.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,8 +57,6 @@ private static DotName createConstant(String fqcn) {
5757
public static final DotName HIBERNATE_CRITERIA_BUILDER = createConstant(
5858
"org.hibernate.query.criteria.HibernateCriteriaBuilder");
5959
public static final DotName METAMODEL = createConstant("jakarta.persistence.metamodel.Metamodel");
60-
public static final DotName HIBERNATE_METAMODEL = createConstant("org.hibernate.Metamodel");
61-
public static final DotName JPA_METAMODEL = createConstant("org.hibernate.metamodel.model.domain.JpaMetamodel");
6260
public static final DotName SCHEMA_MANAGER = createConstant("org.hibernate.relational.SchemaManager");
6361
public static final DotName CACHE = createConstant("jakarta.persistence.Cache");
6462
public static final DotName HIBERNATE_CACHE = createConstant("org.hibernate.Cache");

extensions/hibernate-orm/deployment/src/main/java/io/quarkus/hibernate/orm/deployment/HibernateOrmCdiProcessor.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -86,8 +86,7 @@ public class HibernateOrmCdiProcessor {
8686
private static final List<DotName> STATELESS_SESSION_EXPOSED_TYPES = List.of(ClassNames.STATELESS_SESSION);
8787
private static final List<DotName> CRITERIA_BUILDER_EXPOSED_TYPES = List.of(ClassNames.CRITERIA_BUILDER,
8888
ClassNames.HIBERNATE_CRITERIA_BUILDER);
89-
private static final List<DotName> METAMODEL_EXPOSED_TYPES = List.of(ClassNames.METAMODEL, ClassNames.JPA_METAMODEL,
90-
ClassNames.HIBERNATE_METAMODEL);
89+
private static final List<DotName> METAMODEL_EXPOSED_TYPES = List.of(ClassNames.METAMODEL);
9190
private static final List<DotName> SCHEMA_MANAGER_EXPOSED_TYPES = List.of(ClassNames.SCHEMA_MANAGER);
9291
private static final List<DotName> CACHE_EXPOSED_TYPES = List.of(ClassNames.CACHE, ClassNames.HIBERNATE_CACHE);
9392
private static final List<DotName> PERSISTENCE_UNIT_UTIL_EXPOSED_TYPES = List.of(ClassNames.PERSISTENCE_UNIT_UTIL);
@@ -471,7 +470,7 @@ private void produceFactoryDependentBeans(
471470
// Create Metamodel bean
472471
producer.produce(createSyntheticBean(persistenceUnitName,
473472
isDefaultPU, isNamedPU,
474-
org.hibernate.Metamodel.class, METAMODEL_EXPOSED_TYPES, false)
473+
jakarta.persistence.metamodel.Metamodel.class, METAMODEL_EXPOSED_TYPES, false)
475474
.createWith(recorder.metamodelSupplier(persistenceUnitName))
476475
.addInjectionPoint(ClassType.create(DotName.createSimple(SessionFactory.class)),
477476
sessionFactoryQualifier)

extensions/hibernate-orm/deployment/src/test/java/io/quarkus/hibernate/orm/multiplepersistenceunits/MultiplePersistenceUnitsCdiMetamodelTest.java

Lines changed: 0 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@
88
import jakarta.persistence.metamodel.EntityType;
99
import jakarta.persistence.metamodel.Metamodel;
1010

11-
import org.hibernate.metamodel.model.domain.JpaMetamodel;
1211
import org.junit.jupiter.api.Test;
1312
import org.junit.jupiter.api.extension.RegisterExtension;
1413

@@ -35,18 +34,10 @@ public class MultiplePersistenceUnitsCdiMetamodelTest {
3534
@PersistenceUnit("users")
3635
Metamodel usersMetamodel;
3736

38-
@Inject
39-
@PersistenceUnit("users")
40-
JpaMetamodel usersJpaMetamodel;
41-
4237
@Inject
4338
@PersistenceUnit("inventory")
4439
Metamodel inventoryMetamodel;
4540

46-
@Inject
47-
@PersistenceUnit("inventory")
48-
org.hibernate.Metamodel hibernateInventoryMetamodel;
49-
5041
@Test
5142
public void defaultMetamodel() {
5243
assertNotNull(defaultMetamodel);
@@ -68,16 +59,6 @@ public void usersMetamodel() {
6859
assertEquals(User.class.getSimpleName(), entityType.getName());
6960
}
7061

71-
@Test
72-
public void usersJpaMetamodel() {
73-
assertNotNull(usersJpaMetamodel);
74-
75-
EntityType<User> entityType = usersJpaMetamodel.entity(User.class);
76-
assertNotNull(entityType);
77-
78-
assertEquals(User.class.getSimpleName(), entityType.getName());
79-
}
80-
8162
@Test
8263
public void inventoryMetamodel() {
8364
assertNotNull(inventoryMetamodel);
@@ -88,16 +69,6 @@ public void inventoryMetamodel() {
8869
assertEquals(Plane.class.getSimpleName(), entityType.getName());
8970
}
9071

91-
@Test
92-
public void hibernateInventoryMetamodel() {
93-
assertNotNull(hibernateInventoryMetamodel);
94-
95-
EntityType<Plane> entityType = hibernateInventoryMetamodel.entity(Plane.class);
96-
assertNotNull(entityType);
97-
98-
assertEquals(Plane.class.getSimpleName(), entityType.getName());
99-
}
100-
10172
@Test
10273
public void testUserInInventoryMetamodel() {
10374
assertThatThrownBy(() -> {
@@ -106,11 +77,4 @@ public void testUserInInventoryMetamodel() {
10677
.hasMessageContaining("Not an entity");
10778
}
10879

109-
@Test
110-
public void testUserInHibernateInventoryMetamodel() {
111-
assertThatThrownBy(() -> {
112-
hibernateInventoryMetamodel.entity(User.class);
113-
}).isInstanceOf(IllegalArgumentException.class)
114-
.hasMessageContaining("Not an entity");
115-
}
11680
}

extensions/hibernate-orm/deployment/src/test/java/io/quarkus/hibernate/orm/singlepersistenceunit/SinglePersistenceUnitCdiMetamodelTest.java

Lines changed: 0 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@
88
import jakarta.persistence.metamodel.EntityType;
99
import jakarta.persistence.metamodel.Metamodel;
1010

11-
import org.hibernate.metamodel.model.domain.JpaMetamodel;
1211
import org.junit.jupiter.api.Test;
1312
import org.junit.jupiter.api.extension.RegisterExtension;
1413

@@ -24,10 +23,6 @@ public class SinglePersistenceUnitCdiMetamodelTest {
2423

2524
@Inject
2625
Metamodel metamodel;
27-
@Inject
28-
org.hibernate.Metamodel hibernateMetamodel;
29-
@Inject
30-
JpaMetamodel jpaMetamodel;
3126

3227
@Test
3328
public void testMetamodel() {
@@ -41,27 +36,4 @@ public void testMetamodel() {
4136
assertEquals(DefaultEntity.class.getSimpleName(), entityType.getName());
4237
}
4338

44-
@Test
45-
public void testHibernateMetamodel() {
46-
assertNotNull(hibernateMetamodel);
47-
EntityType<DefaultEntity> entityType = hibernateMetamodel.entity(DefaultEntity.class);
48-
assertNotNull(entityType);
49-
assertTrue(
50-
hibernateMetamodel.getEntities().stream()
51-
.anyMatch(et -> et.getJavaType().equals(DefaultEntity.class)),
52-
"Hibernate Metamodel should contain DefaultEntity");
53-
assertEquals(DefaultEntity.class.getSimpleName(), entityType.getName());
54-
}
55-
56-
@Test
57-
public void testJpaMetamodel() {
58-
assertNotNull(jpaMetamodel);
59-
EntityType<DefaultEntity> entityType = jpaMetamodel.entity(DefaultEntity.class);
60-
assertNotNull(entityType);
61-
assertTrue(
62-
jpaMetamodel.getEntities().stream()
63-
.anyMatch(et -> et.getJavaType().equals(DefaultEntity.class)),
64-
"Hibernate Metamodel should contain DefaultEntity");
65-
assertEquals(DefaultEntity.class.getSimpleName(), entityType.getName());
66-
}
6739
}

0 commit comments

Comments
 (0)