You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@grails.apache.org by bo...@apache.org on 2026/02/17 18:42:14 UTC
(grails-core) 15/26: Move table comment logic to ClassPropertiesBinder
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 fe50f572f60f97bba98f84c004d9970fb06d1c28
Author: Walter Duque de Estrada <wb...@mac.com>
AuthorDate: Mon Feb 16 15:25:20 2026 -0600
Move table comment logic to ClassPropertiesBinder
- Move table.setComment() from GrailsPropertyBinder to ClassPropertiesBinder.
- Ensure table comment is set once per entity instead of for every property.
- Update ClassPropertiesBinderSpec to initialize persistentClass with a table.
---
.../orm/hibernate/cfg/domainbinding/binder/ClassPropertiesBinder.java | 2 ++
.../orm/hibernate/cfg/domainbinding/binder/GrailsPropertyBinder.java | 2 --
.../hibernate/cfg/domainbinding/binder/ClassPropertiesBinderSpec.groovy | 1 +
3 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/ClassPropertiesBinder.java b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/ClassPropertiesBinder.java
index c46f43f44d..3e41d3fad9 100644
--- a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/ClassPropertiesBinder.java
+++ b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/ClassPropertiesBinder.java
@@ -44,6 +44,8 @@ public class ClassPropertiesBinder {
PersistentClass persistentClass,
@Nonnull InFlightMetadataCollector mappings) {
+ persistentClass.getTable().setComment(domainClass.getMappedForm().getComment());
+
for (GrailsHibernatePersistentProperty currentGrailsProp : domainClass.getPersistentPropertiesToBind()) {
Value value = grailsPropertyBinder.bindProperty(persistentClass, currentGrailsProp, mappings);
persistentClass.addProperty(propertyFromValueCreator.createProperty(value, currentGrailsProp));
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 e73e55103e..420d21fe7e 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
@@ -75,9 +75,7 @@ public class GrailsPropertyBinder {
if (LOG.isDebugEnabled()) {
LOG.debug("[GrailsPropertyBinder] Binding persistent property [" + currentGrailsProp.getName() + "]");
}
- Mapping gormMapping = currentGrailsProp.getHibernateOwner().getMappedForm();
Table table = persistentClass.getTable();
- table.setComment(gormMapping.getComment());
Value value = null;
diff --git a/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/ClassPropertiesBinderSpec.groovy b/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/ClassPropertiesBinderSpec.groovy
index 4d474be5bc..739cf51730 100644
--- a/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/ClassPropertiesBinderSpec.groovy
+++ b/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/binder/ClassPropertiesBinderSpec.groovy
@@ -21,6 +21,7 @@ class ClassPropertiesBinderSpec extends HibernateGormDatastoreSpec {
def domainClass = Mock(GrailsHibernatePersistentEntity)
def persistentClass = new RootClass(getGrailsDomainBinder().getMetadataBuildingContext())
+ persistentClass.setTable(new org.hibernate.mapping.Table("test"))
def mappings = Mock(InFlightMetadataCollector)
def sessionFactoryBeanName = "sessionFactory"