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 e639f023f123447ec399b21b49c2b00a11a01ff2
Author: Walter Duque de Estrada <[email protected]>
AuthorDate: Wed Mar 4 19:09:59 2026 -0600

    cleanup(hibernate7):  Make SimpleValueBinder.bindSimpleValue return 
SimpleValue
---
 .../cfg/domainbinding/binder/CollectionBinder.java   |  3 +--
 .../cfg/domainbinding/binder/ComponentUpdater.java   |  2 --
 .../binder/CompositeIdentifierToManyToOneBinder.java |  2 +-
 .../cfg/domainbinding/binder/GrailsDomainBinder.java |  4 +---
 .../domainbinding/binder/GrailsPropertyBinder.java   |  2 +-
 .../cfg/domainbinding/binder/IdentityBinder.java     |  3 +--
 .../domainbinding/binder/JoinedSubClassBinder.java   |  7 +++----
 .../domainbinding/binder/ManyToOneValuesBinder.java  |  2 +-
 .../cfg/domainbinding/binder/RootBinder.java         |  2 +-
 .../RootPersistentClassCommonValuesBinder.java       |  7 +++----
 .../cfg/domainbinding/binder/SimpleValueBinder.java  | 18 +++++-------------
 .../binder/SingleTableSubclassBinder.java            |  8 +++-----
 .../cfg/domainbinding/binder/SubClassBinder.java     |  1 -
 .../domainbinding/binder/SubclassMappingBinder.java  |  2 +-
 .../cfg/domainbinding/binder/VersionBinder.java      | 12 ------------
 .../hibernate/HibernatePersistentEntity.java         | 20 +++++++-------------
 .../cfg/domainbinding/IdentityBinderSpec.groovy      | 12 ++++++------
 .../cfg/domainbinding/binder/RootBinderSpec.groovy   |  4 ++--
 .../RootPersistentClassCommonValuesBinderSpec.groovy |  4 ++--
 .../binder/SingleTableSubclassBinderSpec.groovy      |  2 +-
 .../binder/SubclassMappingBinderSpec.groovy          |  7 ++-----
 21 files changed, 42 insertions(+), 82 deletions(-)

diff --git 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/CollectionBinder.java
 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/CollectionBinder.java
index 114e01ec05..a0cc85e653 100644
--- 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/CollectionBinder.java
+++ 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/CollectionBinder.java
@@ -59,8 +59,7 @@ import org.hibernate.mapping.Collection;
 import org.hibernate.mapping.OneToMany;
 import org.hibernate.mapping.PersistentClass;
 import org.hibernate.mapping.Table;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
+
 
 /** Handles the binding of collections to the Hibernate runtime meta model. */
 @SuppressWarnings("PMD.DataflowAnomalyAnalysis")
diff --git 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/ComponentUpdater.java
 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/ComponentUpdater.java
index 996f8640a3..f480774f14 100644
--- 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/ComponentUpdater.java
+++ 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/ComponentUpdater.java
@@ -18,8 +18,6 @@
  */
 package org.grails.orm.hibernate.cfg.domainbinding.binder;
 
-import java.util.Iterator;
-import 
org.grails.orm.hibernate.cfg.domainbinding.hibernate.GrailsHibernatePersistentEntity;
 import 
org.grails.orm.hibernate.cfg.domainbinding.hibernate.HibernatePersistentProperty;
 import 
org.grails.orm.hibernate.cfg.domainbinding.util.PropertyFromValueCreator;
 import org.hibernate.mapping.Column;
diff --git 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/CompositeIdentifierToManyToOneBinder.java
 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/CompositeIdentifierToManyToOneBinder.java
index 785403f21d..0d115077b3 100644
--- 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/CompositeIdentifierToManyToOneBinder.java
+++ 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/CompositeIdentifierToManyToOneBinder.java
@@ -138,6 +138,6 @@ public class CompositeIdentifierToManyToOneBinder {
     }
 
     private String join(String... parts) {
-        return 
Arrays.stream(parts).map(backticksRemover::apply).collect(Collectors.joining(String.valueOf(UNDERSCORE)));
+        return 
Arrays.stream(parts).map(backticksRemover).collect(Collectors.joining(String.valueOf(UNDERSCORE)));
     }
 }
diff --git 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/GrailsDomainBinder.java
 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/GrailsDomainBinder.java
index 2e00e23af4..3fb45b072f 100644
--- 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/GrailsDomainBinder.java
+++ 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/GrailsDomainBinder.java
@@ -58,7 +58,6 @@ import org.slf4j.LoggerFactory;
 public class GrailsDomainBinder implements AdditionalMappingContributor, 
TypeContributor {
 
   public static final String FOREIGN_KEY_SUFFIX = "_id";
-  private static final String STRING_TYPE = "string";
   public static final String EMPTY_PATH = "";
   public static final char UNDERSCORE = '_';
 
@@ -245,8 +244,7 @@ public class GrailsDomainBinder implements 
AdditionalMappingContributor, TypeCon
     
hibernateMappingContext.getHibernatePersistentEntities(dataSourceName).stream()
         .filter(persistentEntity -> 
persistentEntity.forGrailsDomainMapping(dataSourceName))
         .forEach(
-            hibernatePersistentEntity ->
-                rootBinder.bindRoot(hibernatePersistentEntity));
+                rootBinder::bindRoot);
   }
 
   /**
diff --git 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/GrailsPropertyBinder.java
 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/GrailsPropertyBinder.java
index 19f1ea72af..e9d32d668b 100644
--- 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/GrailsPropertyBinder.java
+++ 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/GrailsPropertyBinder.java
@@ -76,7 +76,7 @@ public class GrailsPropertyBinder {
               + "]");
     }
 
-    Value value = null;
+    Value value;
 
     // 1. Create Value and apply binders (consolidated block)
     if (currentGrailsProp instanceof HibernateEnumProperty) {
diff --git 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/IdentityBinder.java
 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/IdentityBinder.java
index fd06e02768..90e987e1db 100644
--- 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/IdentityBinder.java
+++ 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/IdentityBinder.java
@@ -24,7 +24,7 @@ import org.grails.orm.hibernate.cfg.Identity;
 import org.grails.orm.hibernate.cfg.Mapping;
 import 
org.grails.orm.hibernate.cfg.domainbinding.hibernate.GrailsHibernatePersistentEntity;
 import org.grails.orm.hibernate.cfg.domainbinding.hibernate.HibernateIdentity;
-import org.hibernate.boot.spi.InFlightMetadataCollector;
+
 import org.hibernate.mapping.RootClass;
 
 public class IdentityBinder {
@@ -40,7 +40,6 @@ public class IdentityBinder {
   public void bindIdentity(
       @Nonnull GrailsHibernatePersistentEntity domainClass,
       RootClass root,
-      @Nonnull InFlightMetadataCollector mappings,
       Mapping gormMapping) {
 
     HibernateIdentity id = gormMapping != null ? gormMapping.getIdentity() : 
null;
diff --git 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/JoinedSubClassBinder.java
 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/JoinedSubClassBinder.java
index 35830aac15..2f5fdaa73c 100644
--- 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/JoinedSubClassBinder.java
+++ 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/JoinedSubClassBinder.java
@@ -82,7 +82,7 @@ public class JoinedSubClassBinder {
         mappings.addTable(
             schemaName,
             catalogName,
-            getJoinedSubClassTableName(sub, joinedSubclass, null),
+            getJoinedSubClassTableName(sub, joinedSubclass),
             null,
             false,
             metadataBuildingContext);
@@ -111,8 +111,7 @@ public class JoinedSubClassBinder {
 
   private String getJoinedSubClassTableName(
       GrailsHibernatePersistentEntity sub,
-      PersistentClass model,
-      Table denormalizedSuperTable) {
+      PersistentClass model) {
 
     String logicalTableName = 
GrailsHibernateUtil.unqualify(model.getEntityName());
     String physicalTableName = sub.getTableName(namingStrategy);
@@ -121,7 +120,7 @@ public class JoinedSubClassBinder {
     String catalogName = sub.getCatalog(mappings);
 
     mappings.addTableNameBinding(
-        schemaName, catalogName, logicalTableName, physicalTableName, 
denormalizedSuperTable);
+        schemaName, catalogName, logicalTableName, physicalTableName, null);
     return physicalTableName;
   }
 }
diff --git 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/ManyToOneValuesBinder.java
 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/ManyToOneValuesBinder.java
index a37002ecfc..255af28272 100644
--- 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/ManyToOneValuesBinder.java
+++ 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/ManyToOneValuesBinder.java
@@ -34,7 +34,7 @@ public class ManyToOneValuesBinder {
     var fetchMode = 
Optional.ofNullable(config.getFetchMode()).orElse(FetchMode.DEFAULT);
     manyToOne.setFetchMode(fetchMode);
 
-    var lazy = Optional.ofNullable(config.getLazy()).orElse(property != null);
+    var lazy = Optional.ofNullable(config.getLazy()).orElse(true);
     manyToOne.setLazy(lazy);
 
     manyToOne.setIgnoreNotFound(config.getIgnoreNotFound());
diff --git 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/RootBinder.java
 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/RootBinder.java
index 2f52401cc7..5fd2a224f5 100644
--- 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/RootBinder.java
+++ 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/RootBinder.java
@@ -71,7 +71,7 @@ public class RootBinder {
     Collection<GrailsHibernatePersistentEntity> children = 
entity.getChildEntities(dataSourceName);
     RootClass root =
         
rootPersistentClassCommonValuesBinder.bindRootPersistentClassCommonValues(
-            entity, children);
+            entity);
 
     if (!children.isEmpty() && entity.isTablePerHierarchy()) {
       discriminatorPropertyBinder.bindDiscriminatorProperty(root);
diff --git 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/RootPersistentClassCommonValuesBinder.java
 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/RootPersistentClassCommonValuesBinder.java
index 1b8efc451d..781a7ade71 100644
--- 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/RootPersistentClassCommonValuesBinder.java
+++ 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/RootPersistentClassCommonValuesBinder.java
@@ -21,7 +21,7 @@ package org.grails.orm.hibernate.cfg.domainbinding.binder;
 import static java.util.Optional.ofNullable;
 
 import jakarta.annotation.Nonnull;
-import java.util.Collection;
+
 import org.grails.orm.hibernate.cfg.CacheConfig;
 import org.grails.orm.hibernate.cfg.Mapping;
 import org.grails.orm.hibernate.cfg.PersistentEntityNamingStrategy;
@@ -62,8 +62,7 @@ public class RootPersistentClassCommonValuesBinder {
   }
 
   public RootClass bindRootPersistentClassCommonValues(
-      @Nonnull GrailsHibernatePersistentEntity domainClass,
-      @Nonnull Collection<GrailsHibernatePersistentEntity> children) {
+      @Nonnull GrailsHibernatePersistentEntity domainClass) {
 
     RootClass root = new RootClass(this.metadataBuildingContext);
     root.setAbstract(domainClass.isAbstract());
@@ -108,7 +107,7 @@ public class RootPersistentClassCommonValuesBinder {
               + root.getTable().getName());
     }
 
-    identityBinder.bindIdentity(domainClass, root, mappings, gormMapping);
+    identityBinder.bindIdentity(domainClass, root, gormMapping);
     versionBinder.bindVersion(domainClass.getVersion(), root);
     root.createPrimaryKey();
     classPropertiesBinder.bindClassProperties(domainClass, root);
diff --git 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/SimpleValueBinder.java
 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/SimpleValueBinder.java
index 161ac76f3d..f4e303606e 100644
--- 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/SimpleValueBinder.java
+++ 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/SimpleValueBinder.java
@@ -24,7 +24,6 @@ import org.grails.orm.hibernate.cfg.ColumnConfig;
 import org.grails.orm.hibernate.cfg.PersistentEntityNamingStrategy;
 import org.grails.orm.hibernate.cfg.PropertyConfig;
 import 
org.grails.orm.hibernate.cfg.domainbinding.generator.GrailsSequenceWrapper;
-import 
org.grails.orm.hibernate.cfg.domainbinding.hibernate.GrailsHibernatePersistentEntity;
 import 
org.grails.orm.hibernate.cfg.domainbinding.hibernate.HibernatePersistentProperty;
 import org.hibernate.boot.spi.MetadataBuildingContext;
 import org.hibernate.engine.jdbc.env.spi.JdbcEnvironment;
@@ -76,15 +75,7 @@ public class SimpleValueBinder {
         new GrailsSequenceWrapper());
   }
 
-  /** Protected constructor for testing purposes. */
-  protected SimpleValueBinder() {
-    this.metadataBuildingContext = null;
-    this.namingStrategy = null;
-    this.columnConfigToColumnBinder = null;
-    this.columnBinder = null;
-    this.jdbcEnvironment = null;
-    this.grailsSequenceWrapper = null;
-  }
+
 
   public BasicValue bindSimpleValue(
       @jakarta.annotation.Nonnull HibernatePersistentProperty property,
@@ -92,11 +83,11 @@ public class SimpleValueBinder {
       Table table,
       String path) {
     BasicValue basicValue = new BasicValue(metadataBuildingContext, table);
-    bindSimpleValue(property, parentProperty, (SimpleValue) basicValue, path);
+    bindSimpleValue(property, parentProperty, basicValue, path);
     return basicValue;
   }
 
-  public void bindSimpleValue(
+  public SimpleValue bindSimpleValue(
       @jakarta.annotation.Nonnull HibernatePersistentProperty property,
       HibernatePersistentProperty parentProperty,
       SimpleValue simpleValue,
@@ -143,6 +134,7 @@ public class SimpleValueBinder {
                 simpleValue.addColumn(column);
               });
     }
+    return simpleValue;
   }
 
   private Generator createGenerator(
@@ -153,7 +145,7 @@ public class SimpleValueBinder {
         generatorName,
         context,
         null,
-        (GrailsHibernatePersistentEntity) property.getHibernateOwner(),
+            property.getHibernateOwner(),
         jdbcEnvironment,
         namingStrategy);
   }
diff --git 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/SingleTableSubclassBinder.java
 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/SingleTableSubclassBinder.java
index 574d99b87f..67b8866d6c 100644
--- 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/SingleTableSubclassBinder.java
+++ 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/SingleTableSubclassBinder.java
@@ -20,7 +20,7 @@ package org.grails.orm.hibernate.cfg.domainbinding.binder;
 
 import jakarta.annotation.Nonnull;
 import 
org.grails.orm.hibernate.cfg.domainbinding.hibernate.GrailsHibernatePersistentEntity;
-import org.hibernate.boot.spi.InFlightMetadataCollector;
+
 import org.hibernate.mapping.SingleTableSubclass;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -43,14 +43,12 @@ public class SingleTableSubclassBinder {
   /**
    * Binds a sub-class using table-per-hierarchy inheritance mapping
    *
-   * @param sub The Grails domain class instance representing the sub-class
+   * @param sub      The Grails domain class instance representing the 
sub-class
    * @param subClass The Hibernate SubClass instance
-   * @param mappings The mappings instance
    */
   public void bindSubClass(
       @Nonnull GrailsHibernatePersistentEntity sub,
-      SingleTableSubclass subClass,
-      @Nonnull InFlightMetadataCollector mappings) {
+      SingleTableSubclass subClass) {
     classBinder.bindClass(sub, subClass);
     subClass.setDiscriminatorValue(sub.getDiscriminatorValue());
     if (LOG.isDebugEnabled()) {
diff --git 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/SubClassBinder.java
 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/SubClassBinder.java
index 2a5b3c1495..bddd67c6f2 100644
--- 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/SubClassBinder.java
+++ 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/SubClassBinder.java
@@ -19,7 +19,6 @@
 package org.grails.orm.hibernate.cfg.domainbinding.binder;
 
 import jakarta.annotation.Nonnull;
-import java.util.Collection;
 import org.grails.orm.hibernate.cfg.MappingCacheHolder;
 import 
org.grails.orm.hibernate.cfg.domainbinding.hibernate.GrailsHibernatePersistentEntity;
 import org.grails.orm.hibernate.cfg.domainbinding.util.MultiTenantFilterBinder;
diff --git 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/SubclassMappingBinder.java
 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/SubclassMappingBinder.java
index 4ec70d17d8..0a2198460a 100644
--- 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/SubclassMappingBinder.java
+++ 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/SubclassMappingBinder.java
@@ -71,7 +71,7 @@ public class SubclassMappingBinder {
 
       var singleTableSubclass = new SingleTableSubclass(parent, 
this.metadataBuildingContext);
 
-      singleTableSubclassBinder.bindSubClass(subEntity, singleTableSubclass, 
mappings);
+      singleTableSubclassBinder.bindSubClass(subEntity, singleTableSubclass);
       subClass = singleTableSubclass;
     }
 
diff --git 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/VersionBinder.java
 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/VersionBinder.java
index fc6455c721..8dbbb308eb 100644
--- 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/VersionBinder.java
+++ 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/VersionBinder.java
@@ -21,11 +21,9 @@ package org.grails.orm.hibernate.cfg.domainbinding.binder;
 import static 
org.grails.orm.hibernate.cfg.domainbinding.binder.GrailsDomainBinder.EMPTY_PATH;
 
 import java.util.function.BiFunction;
-import org.grails.orm.hibernate.cfg.PersistentEntityNamingStrategy;
 import 
org.grails.orm.hibernate.cfg.domainbinding.hibernate.HibernatePersistentProperty;
 import org.hibernate.boot.spi.MetadataBuildingContext;
 import org.hibernate.engine.OptimisticLockStyle;
-import org.hibernate.engine.jdbc.env.spi.JdbcEnvironment;
 import org.hibernate.mapping.BasicValue;
 import org.hibernate.mapping.Property;
 import org.hibernate.mapping.RootClass;
@@ -49,16 +47,6 @@ public class VersionBinder {
     this.basicValueFactory = basicValueFactory;
   }
 
-  public VersionBinder(
-      MetadataBuildingContext metadataBuildingContext,
-      PersistentEntityNamingStrategy namingStrategy,
-      JdbcEnvironment jdbcEnvironment) {
-    this(
-        metadataBuildingContext,
-        new SimpleValueBinder(metadataBuildingContext, namingStrategy, 
jdbcEnvironment),
-        new PropertyBinder(),
-        BasicValue::new);
-  }
 
   public void bindVersion(HibernatePersistentProperty version, RootClass 
entity) {
 
diff --git 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/hibernate/HibernatePersistentEntity.java
 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/hibernate/HibernatePersistentEntity.java
index d9bc160a16..b029e1d6ec 100644
--- 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/hibernate/HibernatePersistentEntity.java
+++ 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/hibernate/HibernatePersistentEntity.java
@@ -19,6 +19,7 @@
 package org.grails.orm.hibernate.cfg.domainbinding.hibernate;
 
 import jakarta.persistence.Entity;
+import java.util.Arrays;
 import java.util.Optional;
 import org.grails.datastore.mapping.core.connections.ConnectionSourcesSupport;
 import org.grails.datastore.mapping.model.*;
@@ -35,7 +36,7 @@ public class HibernatePersistentEntity extends 
AbstractPersistentEntity<Mapping>
   private final AbstractClassMapping<Mapping> classMapping;
   private String dataSourceName;
 
-  public HibernatePersistentEntity(Class javaClass, final MappingContext 
context) {
+  public HibernatePersistentEntity(Class<?> javaClass, final MappingContext 
context) {
     super(javaClass, context);
 
     this.classMapping = new HibernateClassMapping(this, context);
@@ -51,10 +52,6 @@ public class HibernatePersistentEntity extends 
AbstractPersistentEntity<Mapping>
     return dataSourceName;
   }
 
-  @Override
-  protected boolean includeIdentifiers() {
-    return true;
-  }
 
   @Override
   public ClassMapping<Mapping> getMapping() {
@@ -73,16 +70,13 @@ public class HibernatePersistentEntity extends 
AbstractPersistentEntity<Mapping>
   @Override
   @SuppressWarnings({"PMD.DataflowAnomalyAnalysis", "PMD.NullAssignment"})
   public HibernatePersistentProperty[] getCompositeIdentity() {
-    PersistentProperty[] compositeIdentity = super.getCompositeIdentity();
+    PersistentProperty<?>[] compositeIdentity = super.getCompositeIdentity();
     if (compositeIdentity == null) {
       return new HibernatePersistentProperty[0];
     }
-    HibernatePersistentProperty[] result =
-        new HibernatePersistentProperty[compositeIdentity.length];
-    for (int i = 0; i < compositeIdentity.length; i++) {
-      result[i] = compositeIdentity[i] instanceof HibernatePersistentProperty 
ghpp ? ghpp : null;
-    }
-    return result;
+    return Arrays.stream(compositeIdentity)
+        .map(p -> (HibernatePersistentProperty) p)
+        .toArray(HibernatePersistentProperty[]::new);
   }
 
   private boolean isAnnotatedEntity() {
@@ -99,6 +93,6 @@ public class HibernatePersistentEntity extends 
AbstractPersistentEntity<Mapping>
 
   @Override
   public HibernatePersistentProperty getVersion() {
-    return version instanceof HibernatePersistentProperty ghpp ? ghpp : null;
+    return (HibernatePersistentProperty )version;
   }
 }
diff --git 
a/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/IdentityBinderSpec.groovy
 
b/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/IdentityBinderSpec.groovy
index baff483d68..d7fa1be417 100644
--- 
a/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/IdentityBinderSpec.groovy
+++ 
b/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/IdentityBinderSpec.groovy
@@ -37,7 +37,7 @@ class IdentityBinderSpec extends HibernateGormDatastoreSpec {
         domainClass.getCompositeIdentity() >> null
 
         when:
-        binder.bindIdentity(domainClass, root, mappings, null)
+        binder.bindIdentity(domainClass, root, null)
 
         then:
         1 * simpleIdBinder.bindSimpleId(domainClass, root, null, _)
@@ -52,7 +52,7 @@ class IdentityBinderSpec extends HibernateGormDatastoreSpec {
         domainClass.getCompositeIdentity() >> compositeProps
 
         when:
-        binder.bindIdentity(domainClass, root, mappings, null)
+        binder.bindIdentity(domainClass, root, null)
 
         then:
         1 * compositeIdBinder.bindCompositeId(domainClass, root, null)
@@ -68,7 +68,7 @@ class IdentityBinderSpec extends HibernateGormDatastoreSpec {
         gormMapping.getIdentity() >> compositeIdentity
 
         when:
-        binder.bindIdentity(domainClass, root, mappings, gormMapping)
+        binder.bindIdentity(domainClass, root, gormMapping)
 
         then:
         1 * compositeIdBinder.bindCompositeId(domainClass, root, 
compositeIdentity)
@@ -88,7 +88,7 @@ class IdentityBinderSpec extends HibernateGormDatastoreSpec {
         domainClass.getName() >> "MyEntity"
 
         when:
-        binder.bindIdentity(domainClass, root, mappings, gormMapping)
+        binder.bindIdentity(domainClass, root, gormMapping)
 
         then:
         1 * simpleIdBinder.bindSimpleId(domainClass, root, identity, _)
@@ -107,7 +107,7 @@ class IdentityBinderSpec extends HibernateGormDatastoreSpec 
{
         domainClass.getName() >> "MyEntity"
 
         when:
-        binder.bindIdentity(domainClass, root, mappings, gormMapping)
+        binder.bindIdentity(domainClass, root, gormMapping)
 
         then:
         1 * simpleIdBinder.bindSimpleId(domainClass, root, identity, _)
@@ -127,7 +127,7 @@ class IdentityBinderSpec extends HibernateGormDatastoreSpec 
{
         domainClass.getName() >> "MyEntity"
 
         when:
-        binder.bindIdentity(domainClass, root, mappings, gormMapping)
+        binder.bindIdentity(domainClass, root, gormMapping)
 
         then:
         identity.getName() == "MyEntity"
diff --git 
a/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/RootBinderSpec.groovy
 
b/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/RootBinderSpec.groovy
index df21696b11..790546e79d 100644
--- 
a/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/RootBinderSpec.groovy
+++ 
b/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/RootBinderSpec.groovy
@@ -57,7 +57,7 @@ class RootBinderSpec extends HibernateGormDatastoreSpec {
         binder.bindRoot(entity)
 
         then:
-        1 * 
rootPersistentClassCommonValuesBinder.bindRootPersistentClassCommonValues(entity,
 []) >> rootClass
+        1 * 
rootPersistentClassCommonValuesBinder.bindRootPersistentClassCommonValues(entity)
 >> rootClass
         0 * discriminatorPropertyBinder.bindDiscriminatorProperty(_)
         0 * subClassBinder.bindSubClass(_, _)
         1 * multiTenantFilterBinder.bind(entity, rootClass)
@@ -84,7 +84,7 @@ class RootBinderSpec extends HibernateGormDatastoreSpec {
         binder.bindRoot(entity)
 
         then:
-        1 * 
rootPersistentClassCommonValuesBinder.bindRootPersistentClassCommonValues(entity,
 [childEntity]) >> rootClass
+        1 * 
rootPersistentClassCommonValuesBinder.bindRootPersistentClassCommonValues(entity)
 >> rootClass
         1 * discriminatorPropertyBinder.bindDiscriminatorProperty(rootClass)
         1 * subClassBinder.bindSubClass(childEntity, rootClass)
         1 * multiTenantFilterBinder.bind(entity, rootClass)
diff --git 
a/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/RootPersistentClassCommonValuesBinderSpec.groovy
 
b/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/RootPersistentClassCommonValuesBinderSpec.groovy
index 49878ddaee..fbb838dbe5 100644
--- 
a/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/RootPersistentClassCommonValuesBinderSpec.groovy
+++ 
b/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/RootPersistentClassCommonValuesBinderSpec.groovy
@@ -53,7 +53,7 @@ class RootPersistentClassCommonValuesBinderSpec extends 
HibernateGormDatastoreSp
         def mappings = getCollector()
 
         when:
-        RootClass rootClass = 
binder.bindRootPersistentClassCommonValues(entity, [])
+        RootClass rootClass = 
binder.bindRootPersistentClassCommonValues(entity)
 
         then:
         1 * classPropertiesBinder.bindClassProperties(entity, _)
@@ -69,7 +69,7 @@ class RootPersistentClassCommonValuesBinderSpec extends 
HibernateGormDatastoreSp
         def mappings = getCollector()
 
         when:
-        RootClass rootClass = 
binder.bindRootPersistentClassCommonValues(entity, [])
+        RootClass rootClass = 
binder.bindRootPersistentClassCommonValues(entity)
 
         then:
         rootClass != null
diff --git 
a/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/SingleTableSubclassBinderSpec.groovy
 
b/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/SingleTableSubclassBinderSpec.groovy
index ee4844fdf0..a3bcea9100 100644
--- 
a/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/SingleTableSubclassBinderSpec.groovy
+++ 
b/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/SingleTableSubclassBinderSpec.groovy
@@ -41,7 +41,7 @@ class SingleTableSubclassBinderSpec extends 
HibernateGormDatastoreSpec {
         singleTableSubclass.setEntityName(SingleTableSubClassSub.name)
 
         when:
-        binder.bindSubClass(subEntity, singleTableSubclass, mappings)
+        binder.bindSubClass(subEntity, singleTableSubclass)
 
         then:
         singleTableSubclass.getTable() == rootTable
diff --git 
a/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/SubclassMappingBinderSpec.groovy
 
b/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/SubclassMappingBinderSpec.groovy
index 55eb97790e..fa93644daf 100644
--- 
a/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/SubclassMappingBinderSpec.groovy
+++ 
b/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/SubclassMappingBinderSpec.groovy
@@ -2,16 +2,13 @@ package org.grails.orm.hibernate.cfg.domainbinding.binder
 
 import grails.gorm.annotation.Entity
 import grails.gorm.specs.HibernateGormDatastoreSpec
-import org.grails.orm.hibernate.cfg.Mapping
+
 import org.hibernate.boot.spi.MetadataBuildingContext
 import org.hibernate.mapping.JoinedSubclass
-import org.hibernate.mapping.PersistentClass
 import org.hibernate.mapping.RootClass
 import org.hibernate.mapping.SingleTableSubclass
 import org.hibernate.mapping.Subclass
 import org.hibernate.mapping.UnionSubclass
-import 
org.grails.orm.hibernate.cfg.domainbinding.hibernate.GrailsHibernatePersistentEntity
-import spock.lang.Shared
 
 class SubclassMappingBinderSpec extends HibernateGormDatastoreSpec {
 
@@ -53,7 +50,7 @@ class SubclassMappingBinderSpec extends 
HibernateGormDatastoreSpec {
 
         then:
         subEntity != null
-        1 * singleTableSubclassBinder.bindSubClass(subEntity, _ as 
SingleTableSubclass, mappings)
+        1 * singleTableSubclassBinder.bindSubClass(subEntity, _ as 
SingleTableSubclass)
         1 * classPropertiesBinder.bindClassProperties(subEntity, _ as Subclass)
         subClass instanceof SingleTableSubclass
         subClass.getEntityName() == SMBSSingleSub.name

Reply via email to