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

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

commit d76b7ef1bb49b9d3b06f6b8b2f1a2f9309eac440
Author: Walter Duque de Estrada <[email protected]>
AuthorDate: Wed Mar 4 09:14:59 2026 -0600

    refactor(hibernate7): fold AbstractClosureEventTriggeringInterceptor into 
ClosureEventTriggeringInterceptor
---
 .../HibernateConnectionSourceFactory.java          |  8 ++--
 .../HibernateConnectionSourceSettings.groovy       | 10 ++---
 .../AbstractClosureEventTriggeringInterceptor.java | 43 ----------------------
 .../support/ClosureEventTriggeringInterceptor.java | 28 +++++++++++++-
 4 files changed, 35 insertions(+), 54 deletions(-)

diff --git 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/connections/HibernateConnectionSourceFactory.java
 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/connections/HibernateConnectionSourceFactory.java
index 4af992756a..bf69e27f29 100644
--- 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/connections/HibernateConnectionSourceFactory.java
+++ 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/connections/HibernateConnectionSourceFactory.java
@@ -39,7 +39,7 @@ import org.grails.orm.hibernate.cfg.HibernateMappingContext;
 import org.grails.orm.hibernate.cfg.HibernateMappingContextConfiguration;
 import org.grails.orm.hibernate.cfg.Settings;
 import org.grails.orm.hibernate.cfg.domainbinding.binder.GrailsDomainBinder;
-import 
org.grails.orm.hibernate.support.AbstractClosureEventTriggeringInterceptor;
+import org.grails.orm.hibernate.support.ClosureEventTriggeringInterceptor;
 import org.grails.orm.hibernate.support.ClosureEventTriggeringInterceptor;
 import org.hibernate.Interceptor;
 import org.hibernate.SessionFactory;
@@ -142,7 +142,7 @@ public class HibernateConnectionSourceFactory
 
     configureNamingStrategy(name, hibernateSettings);
 
-    AbstractClosureEventTriggeringInterceptor eventTriggeringInterceptor =
+    ClosureEventTriggeringInterceptor eventTriggeringInterceptor =
         resolveEventTriggeringInterceptor(
             hibernateSettings.getClosureEventTriggeringInterceptorClass());
     
hibernateSettings.setEventTriggeringInterceptor(eventTriggeringInterceptor);
@@ -248,8 +248,8 @@ public class HibernateConnectionSourceFactory
     }
   }
 
-  private static AbstractClosureEventTriggeringInterceptor 
resolveEventTriggeringInterceptor(
-      Class<? extends AbstractClosureEventTriggeringInterceptor> clazz) {
+  private static ClosureEventTriggeringInterceptor 
resolveEventTriggeringInterceptor(
+      Class<? extends ClosureEventTriggeringInterceptor> clazz) {
     return clazz != null
         ? BeanUtils.instantiateClass(clazz)
         : new ClosureEventTriggeringInterceptor();
diff --git 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/connections/HibernateConnectionSourceSettings.groovy
 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/connections/HibernateConnectionSourceSettings.groovy
index f87692be51..f3a18c27aa 100644
--- 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/connections/HibernateConnectionSourceSettings.groovy
+++ 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/connections/HibernateConnectionSourceSettings.groovy
@@ -8,7 +8,7 @@ import 
org.grails.datastore.mapping.core.connections.ConnectionSourceSettings
 import org.grails.orm.hibernate.HibernateEventListeners
 import org.grails.datastore.gorm.jdbc.connections.DataSourceSettings
 import org.grails.orm.hibernate.dirty.GrailsEntityDirtinessStrategy
-import 
org.grails.orm.hibernate.support.AbstractClosureEventTriggeringInterceptor
+import org.grails.orm.hibernate.support.ClosureEventTriggeringInterceptor
 import org.hibernate.CustomEntityDirtinessStrategy
 import org.hibernate.boot.model.naming.CamelCaseToUnderscoresNamingStrategy
 import org.hibernate.boot.model.naming.PhysicalNamingStrategy
@@ -97,14 +97,14 @@ class HibernateConnectionSourceSettings extends 
ConnectionSourceSettings {
         Class<? extends CustomEntityDirtinessStrategy> 
entity_dirtiness_strategy = GrailsEntityDirtinessStrategy
 
         /**
-         * A subclass of AbstractClosureEventTriggeringInterceptor
+         * A subclass of ClosureEventTriggeringInterceptor
          */
-        Class<? extends AbstractClosureEventTriggeringInterceptor> 
closureEventTriggeringInterceptorClass
+        Class<? extends ClosureEventTriggeringInterceptor> 
closureEventTriggeringInterceptorClass
 
         /**
          * The event triggering interceptor
          */
-        AbstractClosureEventTriggeringInterceptor eventTriggeringInterceptor
+        ClosureEventTriggeringInterceptor eventTriggeringInterceptor
         /**
          * The default hibernate event listeners
          */
@@ -191,7 +191,7 @@ class HibernateConnectionSourceSettings extends 
ConnectionSourceSettings {
         Properties additionalProperties = new Properties()
 
         @CompileStatic
-        Map<String, Object> 
toHibernateEventListeners(AbstractClosureEventTriggeringInterceptor 
eventTriggeringInterceptor) {
+        Map<String, Object> 
toHibernateEventListeners(ClosureEventTriggeringInterceptor 
eventTriggeringInterceptor) {
             if(eventTriggeringInterceptor != null) {
                 return [
 //                    'save': eventTriggeringInterceptor,
diff --git 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/support/AbstractClosureEventTriggeringInterceptor.java
 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/support/AbstractClosureEventTriggeringInterceptor.java
deleted file mode 100644
index d7fb9f90ff..0000000000
--- 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/support/AbstractClosureEventTriggeringInterceptor.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *    https://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- */
-package org.grails.orm.hibernate.support;
-
-import org.hibernate.event.spi.*;
-import org.hibernate.jpa.event.spi.CallbackRegistryConsumer;
-import org.springframework.context.ApplicationContextAware;
-
-/**
- * Abstract class for defining the event triggering interceptor
- *
- * @author Graeme Rocher
- * @since 6.0
- */
-public abstract class AbstractClosureEventTriggeringInterceptor
-    implements ApplicationContextAware,
-        PreLoadEventListener,
-        PostLoadEventListener,
-        PostInsertEventListener,
-        PostUpdateEventListener,
-        PostDeleteEventListener,
-        PreDeleteEventListener,
-        PreUpdateEventListener,
-        PreInsertEventListener,
-        MergeEventListener,
-        PersistEventListener,
-        CallbackRegistryConsumer {}
diff --git 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/support/ClosureEventTriggeringInterceptor.java
 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/support/ClosureEventTriggeringInterceptor.java
index 2c44fc1e3f..922dccb4ab 100644
--- 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/support/ClosureEventTriggeringInterceptor.java
+++ 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/support/ClosureEventTriggeringInterceptor.java
@@ -38,17 +38,29 @@ import 
org.hibernate.event.internal.DefaultMergeEventListener;
 import org.hibernate.event.internal.DefaultPersistEventListener;
 import org.hibernate.event.spi.MergeContext;
 import org.hibernate.event.spi.MergeEvent;
+import org.hibernate.event.spi.MergeEventListener;
 import org.hibernate.event.spi.PersistContext;
 import org.hibernate.event.spi.PersistEvent;
+import org.hibernate.event.spi.PersistEventListener;
 import org.hibernate.event.spi.PostDeleteEvent;
+import org.hibernate.event.spi.PostDeleteEventListener;
 import org.hibernate.event.spi.PostInsertEvent;
+import org.hibernate.event.spi.PostInsertEventListener;
 import org.hibernate.event.spi.PostLoadEvent;
+import org.hibernate.event.spi.PostLoadEventListener;
 import org.hibernate.event.spi.PostUpdateEvent;
+import org.hibernate.event.spi.PostUpdateEventListener;
 import org.hibernate.event.spi.PreDeleteEvent;
+import org.hibernate.event.spi.PreDeleteEventListener;
 import org.hibernate.event.spi.PreInsertEvent;
+import org.hibernate.event.spi.PreInsertEventListener;
 import org.hibernate.event.spi.PreLoadEvent;
+import org.hibernate.event.spi.PreLoadEventListener;
 import org.hibernate.event.spi.PreUpdateEvent;
+import org.hibernate.event.spi.PreUpdateEventListener;
 import org.hibernate.jpa.event.spi.CallbackRegistry;
+import org.hibernate.jpa.event.spi.CallbackRegistryConsumer;
+import org.springframework.context.ApplicationContextAware;
 import org.hibernate.metamodel.mapping.AttributeMapping;
 import org.hibernate.metamodel.mapping.EntityMappingType;
 import org.hibernate.persister.entity.EntityPersister;
@@ -65,8 +77,20 @@ import 
org.springframework.context.ConfigurableApplicationContext;
  * @since 1.0
  */
 @SuppressWarnings({"PMD.DataflowAnomalyAnalysis", "PMD.NonSerializableClass"})
-public class ClosureEventTriggeringInterceptor extends 
AbstractClosureEventTriggeringInterceptor
-    implements Serializable {
+public class ClosureEventTriggeringInterceptor
+    implements Serializable,
+        ApplicationContextAware,
+        PreLoadEventListener,
+        PostLoadEventListener,
+        PostInsertEventListener,
+        PostUpdateEventListener,
+        PostDeleteEventListener,
+        PreDeleteEventListener,
+        PreUpdateEventListener,
+        PreInsertEventListener,
+        MergeEventListener,
+        PersistEventListener,
+        CallbackRegistryConsumer {
 
   //    private final Logger log = LoggerFactory.getLogger(getClass());
   private static final long serialVersionUID = 1;

Reply via email to