From 8122885d57444b41ccee51402e202e2ea6257dc5 Mon Sep 17 00:00:00 2001 From: Juan Manuel Leflet Estrada Date: Thu, 2 Mar 2023 13:06:19 +0100 Subject: [PATCH 1/3] [WINDUPRULE-954] Add ruleset for hibernate orm 6.2 --- .../eap8/eap7/hibernate-6.2.windup.xml | 102 ++++++++++++++++++ .../tests/data/hibernate-62/TestClass.java | 25 +++++ .../eap7/tests/hibernate-6.2.windup.test.xml | 65 +++++++++++ 3 files changed, 192 insertions(+) create mode 100644 rules/rules-reviewed/eap8/eap7/hibernate-6.2.windup.xml create mode 100644 rules/rules-reviewed/eap8/eap7/tests/data/hibernate-62/TestClass.java create mode 100644 rules/rules-reviewed/eap8/eap7/tests/hibernate-6.2.windup.test.xml diff --git a/rules/rules-reviewed/eap8/eap7/hibernate-6.2.windup.xml b/rules/rules-reviewed/eap8/eap7/hibernate-6.2.windup.xml new file mode 100644 index 000000000..650902f7a --- /dev/null +++ b/rules/rules-reviewed/eap8/eap7/hibernate-6.2.windup.xml @@ -0,0 +1,102 @@ + + + + + + This ruleset provides migration rules to Hibernate ORM 6. + + + + + + + + hibernate + + + + + + + METHOD_CALL + + + + + + This method has changed from `EntityPersister#multiload(Object[] ids, SharedSessionContractImplementor session, MultiIdLoadOptions loadOptions)` to `EntityPersister#lock(Object[] ids, EventSource session, MultiIdLoadOptions loadOptions)`. + Both EventSource and SharedSessionContractImplementor are contracts of `SessionImpl` so they can be easily swapped. + Methods `isEventSource` and `asEventSource` can also be used to ease the transition, available on the `SharedSessionContractImplementor` contract. + + + + + + + + + METHOD_CALL + + + + + + This method has changed from `Executable#afterDeserialize(SharedSessionContractImplementor session)` to `Executable#afterDeserialize(EventSource eventSource)`. + Both EventSource and SharedSessionContractImplementor are contracts of `SessionImpl` so they can be easily swapped. + Methods `isEventSource` and `asEventSource` can also be used to ease the transition, available on the `SharedSessionContractImplementor` contract. + + + + + + + + + METHOD_CALL + + + + + + The return type of `JdbcType#getJdbcRecommendedJavaTypeMapping()` was changed from `BasicJavaType` to `JavaType`. + + + + + + + + + + + + + This class within `org.hibernate.cfg` has been moved; see link for more information. + + + + + + + + + + + + + + + + This class within `org.hibernate.loader` has been moved; see link for more information. + + + + + + + + + + + \ No newline at end of file diff --git a/rules/rules-reviewed/eap8/eap7/tests/data/hibernate-62/TestClass.java b/rules/rules-reviewed/eap8/eap7/tests/data/hibernate-62/TestClass.java new file mode 100644 index 000000000..de6dee77f --- /dev/null +++ b/rules/rules-reviewed/eap8/eap7/tests/data/hibernate-62/TestClass.java @@ -0,0 +1,25 @@ +import org.hibernate.persister.entity.EntityPersister; +import org.hibernate.LockMode; +import org.hibernate.engine.spi.SharedSessionContractImplementor; +import org.hibernate.action.spi.Executable; +import java.lang.Object; +import org.hibernate.type.descriptor.jdbc.JdbcType; +import org.hibernate.cfg.AnnotatedClassType; +import org.hibernate.cfg.annotations.ArrayBinder; +import org.hibernate.loader.AbstractEntityJoinWalker; +import org.hibernate.loader.collection.BatchingCollectionInitializer; + +public class TestClass { + public static void main(String[] args) { + EntityPersister persister = new EntityPersister(); +// persister.lock(new Object(), new Object(), LockMode.FORCE, new SharedSessionContractImplementor()); + Object o1 = new Object(); + Object oa = new Object[]{o1, o1}; + persister.multiload(o1, o1, oa); + + Executable executable = new Executable(); + executable.afterDeserialize(new SharedSessionContractImplementor()); + JdbcType type = new JdbcType(); + type.getJdbcRecommendedJavaTypeMapping(); + } +} \ No newline at end of file diff --git a/rules/rules-reviewed/eap8/eap7/tests/hibernate-6.2.windup.test.xml b/rules/rules-reviewed/eap8/eap7/tests/hibernate-6.2.windup.test.xml new file mode 100644 index 000000000..ebdafc6c7 --- /dev/null +++ b/rules/rules-reviewed/eap8/eap7/tests/hibernate-6.2.windup.test.xml @@ -0,0 +1,65 @@ + + + + data/hibernate-62 + ../hibernate-6.2.windup.xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file From e4056b808f9ce29bfd4012882a3dbef0fed94385 Mon Sep 17 00:00:00 2001 From: Juan Manuel Leflet Estrada Date: Thu, 2 Mar 2023 13:06:52 +0100 Subject: [PATCH 2/3] [WINDUPRULE-954] Fix target --- rules/rules-reviewed/eap8/eap7/hibernate-6.2.windup.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rules/rules-reviewed/eap8/eap7/hibernate-6.2.windup.xml b/rules/rules-reviewed/eap8/eap7/hibernate-6.2.windup.xml index 650902f7a..7c538d509 100644 --- a/rules/rules-reviewed/eap8/eap7/hibernate-6.2.windup.xml +++ b/rules/rules-reviewed/eap8/eap7/hibernate-6.2.windup.xml @@ -10,7 +10,7 @@ - + hibernate From dedd4363db1d1d57041ec846c5477123a408f73d Mon Sep 17 00:00:00 2001 From: Juan Manuel Leflet Estrada Date: Thu, 2 Mar 2023 13:08:17 +0100 Subject: [PATCH 3/3] [WINDUPRULE-954] Fix description --- rules/rules-reviewed/eap8/eap7/hibernate-6.2.windup.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rules/rules-reviewed/eap8/eap7/hibernate-6.2.windup.xml b/rules/rules-reviewed/eap8/eap7/hibernate-6.2.windup.xml index 7c538d509..8c873077b 100644 --- a/rules/rules-reviewed/eap8/eap7/hibernate-6.2.windup.xml +++ b/rules/rules-reviewed/eap8/eap7/hibernate-6.2.windup.xml @@ -4,7 +4,7 @@ - This ruleset provides migration rules to Hibernate ORM 6. + This ruleset provides migration rules to Hibernate ORM 6.2.