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

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

commit d3ed832bd05422dbe5a3aa09fcaab4f010f324dc
Author: Walter Duque de Estrada <[email protected]>
AuthorDate: Sat Feb 14 00:01:03 2026 -0600

    Inject BasicValueIdCreator into SimpleIdBinder.
    
    - SimpleIdBinder: Updated public constructor to accept BasicValueIdCreator 
and use the injected instance in bindSimpleId.
    - GrailsDomainBinder: Updated to instantiate and inject BasicValueIdCreator 
into SimpleIdBinder.
    - Added missing BasicValueIdCreator import in GrailsDomainBinder.
---
 .../groovy/org/grails/orm/hibernate/cfg/GrailsDomainBinder.java    | 3 ++-
 .../orm/hibernate/cfg/domainbinding/binder/SimpleIdBinder.java     | 7 +++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/GrailsDomainBinder.java
 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/GrailsDomainBinder.java
index c453c27cd6..a9ae8a7aba 100644
--- 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/GrailsDomainBinder.java
+++ 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/GrailsDomainBinder.java
@@ -28,6 +28,7 @@ import 
org.grails.orm.hibernate.cfg.domainbinding.hibernate.HibernateManyToOnePr
 import 
org.grails.orm.hibernate.cfg.domainbinding.hibernate.HibernateOneToManyProperty;
 import 
org.grails.orm.hibernate.cfg.domainbinding.hibernate.HibernateOneToOneProperty;
 import org.grails.orm.hibernate.cfg.domainbinding.util.NamingStrategyProvider;
+import org.grails.orm.hibernate.cfg.domainbinding.util.BasicValueIdCreator;
 import org.grails.orm.hibernate.cfg.domainbinding.binder.GrailsPropertyBinder;
 import org.grails.orm.hibernate.cfg.domainbinding.binder.IdentityBinder;
 import org.grails.orm.hibernate.cfg.domainbinding.binder.SimpleIdBinder;
@@ -187,7 +188,7 @@ public class GrailsDomainBinder
         this.componentPropertyBinder = new 
ComponentPropertyBinder(metadataBuildingContext, getNamingStrategy(), 
getMappingCacheHolder(), getCollectionHolder(), enumTypeBinder, 
collectionBinder, propertyFromValueCreator);
         this.grailsPropertyBinder = new 
GrailsPropertyBinder(metadataBuildingContext, getNamingStrategy(), 
getCollectionHolder(), enumTypeBinder, componentPropertyBinder, 
collectionBinder, propertyFromValueCreator);
         this.compositeIdBinder = new 
CompositeIdBinder(metadataBuildingContext, componentPropertyBinder);
-        SimpleIdBinder simpleIdBinder = new 
SimpleIdBinder(metadataBuildingContext, getNamingStrategy(), 
getJdbcEnvironment());
+        SimpleIdBinder simpleIdBinder = new 
SimpleIdBinder(metadataBuildingContext, getNamingStrategy(), 
getJdbcEnvironment(), new BasicValueIdCreator(getJdbcEnvironment()));
         this.identityBinder = new IdentityBinder(simpleIdBinder, 
compositeIdBinder);
         this.versionBinder = new VersionBinder(metadataBuildingContext, 
getNamingStrategy());
 
diff --git 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/SimpleIdBinder.java
 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/SimpleIdBinder.java
index c6cfb69cd0..2d7a664297 100644
--- 
a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/SimpleIdBinder.java
+++ 
b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/SimpleIdBinder.java
@@ -28,12 +28,12 @@ public class SimpleIdBinder {
     private final PropertyBinder propertyBinder;
     private final BasicValueIdCreator basicValueIdCreator;
 
-    public SimpleIdBinder(MetadataBuildingContext metadataBuildingContext, 
PersistentEntityNamingStrategy namingStrategy, JdbcEnvironment jdbcEnvironment) 
 {
+    public SimpleIdBinder(MetadataBuildingContext metadataBuildingContext, 
PersistentEntityNamingStrategy namingStrategy, JdbcEnvironment jdbcEnvironment, 
BasicValueIdCreator basicValueIdCreator)  {
         this.metadataBuildingContext = metadataBuildingContext;
         this.jdbcEnvironment = jdbcEnvironment;
         this.simpleValueBinder = new SimpleValueBinder(namingStrategy);
         this.propertyBinder = new PropertyBinder();
-        this.basicValueIdCreator = null;
+        this.basicValueIdCreator = basicValueIdCreator;
     }
 
     public MetadataBuildingContext getMetadataBuildingContext() {
@@ -55,8 +55,7 @@ public class SimpleIdBinder {
         boolean useSequence = result != null && 
result.isTablePerConcreteClass();
         // create the id value
 
-        BasicValueIdCreator idCreator = this.basicValueIdCreator != null ? 
this.basicValueIdCreator : new BasicValueIdCreator(jdbcEnvironment);
-        BasicValue id = idCreator.getBasicValueId(metadataBuildingContext, 
table, mappedId, domainClass, useSequence);
+        BasicValue id = 
basicValueIdCreator.getBasicValueId(metadataBuildingContext, table, mappedId, 
domainClass, useSequence);
 
         var identifier = domainClass.getIdentity();
         if (mappedId != null) {

Reply via email to