This is an automated email from the ASF dual-hosted git repository.

borinquenkid pushed a commit to branch 7.1.x-hibernate6
in repository https://gitbox.apache.org/repos/asf/grails-core.git

commit 241f5a8a3e12000da2912c58e5c1804ca260b549
Author: Walter Duque de Estrada <[email protected]>
AuthorDate: Fri Oct 17 21:47:12 2025 -0500

    Fixed HibernateEntityTransformation
---
 .../compiler/HibernateEntityTransformation.groovy  | 33 ++++++++++++++++++++++
 1 file changed, 33 insertions(+)

diff --git 
a/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/compiler/HibernateEntityTransformation.groovy
 
b/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/compiler/HibernateEntityTransformation.groovy
index 2b0df86bc2..bd837b1975 100644
--- 
a/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/compiler/HibernateEntityTransformation.groovy
+++ 
b/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/compiler/HibernateEntityTransformation.groovy
@@ -237,6 +237,39 @@ class HibernateEntityTransformation implements 
ASTTransformation, CompilationUni
         AnnotatedNodeUtils.markAsGenerated(classNode, 
setNextManagedEntityMethod)
         staticCompilationVisitor.visitMethod(setNextManagedEntityMethod)
 
+        // add field: boolean $$_hibernate_useTracker
+        String useTrackerFieldName = '$$_hibernate_useTracker'
+        FieldNode useTrackerField = classNode.addField(useTrackerFieldName, 
Modifier.PRIVATE | Modifier.TRANSIENT, ClassHelper.boolean_TYPE, constX(false))
+        useTrackerField
+                 .addAnnotation(transientAnnotationNode)
+
+        // add method: boolean $$_hibernate_useTracker()
+        def useTrackerGetter = new MethodNode(
+                '$$_hibernate_useTracker',
+                Modifier.PUBLIC,
+                ClassHelper.boolean_TYPE,
+                AstUtils.ZERO_PARAMETERS,
+                null,
+                returnS(varX(useTrackerField))
+        )
+        classNode.addMethod(useTrackerGetter)
+        AnnotatedNodeUtils.markAsGenerated(classNode, useTrackerGetter)
+        staticCompilationVisitor.visitMethod(useTrackerGetter)
+
+        // add method: void $$_hibernate_setUseTracker(boolean useTracker)
+        def useTrackerParam = param(ClassHelper.boolean_TYPE, 'useTracker')
+        def useTrackerSetter = new MethodNode(
+                '$$_hibernate_setUseTracker',
+                Modifier.PUBLIC,
+                ClassHelper.VOID_TYPE,
+                params(useTrackerParam),
+                null,
+                assignS(varX(useTrackerField), varX(useTrackerParam))
+        )
+        classNode.addMethod(useTrackerSetter)
+        AnnotatedNodeUtils.markAsGenerated(classNode, useTrackerSetter)
+        staticCompilationVisitor.visitMethod(useTrackerSetter)
+
         List<MethodNode> allMethods = classNode.getMethods()
         for(MethodNode methodNode in allMethods) {
             
if(methodNode.getAnnotations(ClassHelper.make(DirtyCheckedProperty))) {

Reply via email to