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 ef4765f1aec4b89c82f375efb8bc6953a71decb3 Author: Walter Duque de Estrada <[email protected]> AuthorDate: Sat Feb 14 15:55:32 2026 -0600 Refactor CollectionHolder to take MetadataBuildingContext in constructor - Update CollectionType and its subclasses to accept MetadataBuildingContext instead of GrailsDomainBinder. - Update CollectionHolder constructor to accept MetadataBuildingContext. - Remove collectionHolder field and getter from GrailsDomainBinder, making it a local variable in contribute. - Update unit tests to reflect these changes. --- .../org/grails/orm/hibernate/cfg/GrailsDomainBinder.java | 12 ++++-------- .../domainbinding/collectionType/BagCollectionType.java | 7 +++---- .../cfg/domainbinding/collectionType/CollectionHolder.java | 14 +++++++------- .../cfg/domainbinding/collectionType/CollectionType.java | 6 ++---- .../domainbinding/collectionType/ListCollectionType.java | 7 +++---- .../domainbinding/collectionType/MapCollectionType.java | 7 +++---- .../domainbinding/collectionType/SetCollectionType.java | 7 +++---- .../collectionType/SortedSetCollectionType.java | 7 +++---- .../cfg/domainbinding/CollectionBinderSpec.groovy | 6 ++++-- .../domainbinding/CollectionSecondPassBinderSpec.groovy | 6 ++++-- .../cfg/domainbinding/GrailsPropertyBinderSpec.groovy | 6 ++++-- .../cfg/domainbinding/ListSecondPassBinderSpec.groovy | 6 ++++-- .../cfg/domainbinding/MapSecondPassBinderSpec.groovy | 6 ++++-- 13 files changed, 48 insertions(+), 49 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 9e37b89f25..c17485f379 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 @@ -133,7 +133,6 @@ public class GrailsDomainBinder private PersistentEntityNamingStrategy namingStrategy; private MetadataBuildingContext metadataBuildingContext; private MappingCacheHolder mappingCacheHolder; - private CollectionHolder collectionHolder; public JdbcEnvironment getJdbcEnvironment() { @@ -152,7 +151,7 @@ public class GrailsDomainBinder this.enumTypeBinder = enumTypeBinder; this.propertyFromValueCreator = new PropertyFromValueCreator(); this.mappingCacheHolder = MappingCacheHolder.getInstance(); - this.collectionHolder = new CollectionHolder(this); + // pre-build mappings for (GrailsHibernatePersistentEntity persistentEntity : hibernateMappingContext.getHibernatePersistentEntities(dataSourceName)) { mappingCacheHolder.cacheMapping(persistentEntity); @@ -187,6 +186,7 @@ public class GrailsDomainBinder metadataCollector , null ); + CollectionHolder collectionHolder = new CollectionHolder(metadataBuildingContext); BackticksRemover backticksRemover = new BackticksRemover(); PersistentEntityNamingStrategy namingStrategy = getNamingStrategy(); JdbcEnvironment jdbcEnvironment = getJdbcEnvironment(); @@ -222,7 +222,7 @@ public class GrailsDomainBinder namingStrategy, jdbcEnvironment, getMappingCacheHolder(), - getCollectionHolder(), + collectionHolder, enumTypeBinderToUse, collectionBinder, propertyFromValueCreator, @@ -235,7 +235,7 @@ public class GrailsDomainBinder GrailsPropertyBinder grailsPropertyBinder = new GrailsPropertyBinder( metadataBuildingContext, namingStrategy, - getCollectionHolder(), + collectionHolder, enumTypeBinderToUse, componentPropertyBinder, collectionBinder, @@ -664,10 +664,6 @@ public class GrailsDomainBinder return mappingCacheHolder; } - public CollectionHolder getCollectionHolder() { - return collectionHolder; - } - public PropertyFromValueCreator getPropertyFromValueCreator() { return propertyFromValueCreator; diff --git a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/collectionType/BagCollectionType.java b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/collectionType/BagCollectionType.java index a598f8fd91..5224382135 100644 --- a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/collectionType/BagCollectionType.java +++ b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/collectionType/BagCollectionType.java @@ -3,13 +3,12 @@ package org.grails.orm.hibernate.cfg.domainbinding.collectionType; import java.util.Collection; import org.hibernate.mapping.PersistentClass; - -import org.grails.orm.hibernate.cfg.GrailsDomainBinder; +import org.hibernate.boot.spi.MetadataBuildingContext; public class BagCollectionType extends CollectionType { - public BagCollectionType(GrailsDomainBinder binder) { - super(Collection.class, binder); + public BagCollectionType(MetadataBuildingContext buildingContext) { + super(Collection.class, buildingContext); } @Override diff --git a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/collectionType/CollectionHolder.java b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/collectionType/CollectionHolder.java index 1f76cc5f92..36ccbb14ab 100644 --- a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/collectionType/CollectionHolder.java +++ b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/collectionType/CollectionHolder.java @@ -6,17 +6,17 @@ import java.util.Map; import java.util.Set; import java.util.SortedSet; -import org.grails.orm.hibernate.cfg.GrailsDomainBinder; +import org.hibernate.boot.spi.MetadataBuildingContext; public record CollectionHolder(Map<Class<?>, CollectionType> map) { - public CollectionHolder(GrailsDomainBinder binder) { + public CollectionHolder(MetadataBuildingContext buildingContext) { this(Map.ofEntries( - Map.entry(Set.class, new SetCollectionType(binder)), - Map.entry(SortedSet.class, new SetCollectionType(binder)), - Map.entry(List.class, new ListCollectionType(binder)), - Map.entry(Collection.class, new BagCollectionType(binder)), - Map.entry(Map.class, new MapCollectionType(binder)) + Map.entry(Set.class, new SetCollectionType(buildingContext)), + Map.entry(SortedSet.class, new SetCollectionType(buildingContext)), + Map.entry(List.class, new ListCollectionType(buildingContext)), + Map.entry(Collection.class, new BagCollectionType(buildingContext)), + Map.entry(Map.class, new MapCollectionType(buildingContext)) )); } diff --git a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/collectionType/CollectionType.java b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/collectionType/CollectionType.java index 4fc3c003c9..322e7d9017 100644 --- a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/collectionType/CollectionType.java +++ b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/collectionType/CollectionType.java @@ -16,7 +16,6 @@ import org.grails.orm.hibernate.cfg.domainbinding.hibernate.HibernateToManyPrope public abstract class CollectionType { protected final Class<?> clazz; - protected final GrailsDomainBinder binder; protected final MetadataBuildingContext buildingContext; public abstract Collection createCollection(PersistentClass owner); @@ -30,10 +29,9 @@ public abstract class CollectionType { return coll; } - protected CollectionType(Class<?> clazz, GrailsDomainBinder binder) { + protected CollectionType(Class<?> clazz, MetadataBuildingContext buildingContext) { this.clazz = clazz; - this.binder = binder; - this.buildingContext = binder.getMetadataBuildingContext(); + this.buildingContext = buildingContext; } @Override diff --git a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/collectionType/ListCollectionType.java b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/collectionType/ListCollectionType.java index bb37465926..1518c42c83 100644 --- a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/collectionType/ListCollectionType.java +++ b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/collectionType/ListCollectionType.java @@ -4,13 +4,12 @@ import java.util.List; import org.hibernate.mapping.Collection; import org.hibernate.mapping.PersistentClass; - -import org.grails.orm.hibernate.cfg.GrailsDomainBinder; +import org.hibernate.boot.spi.MetadataBuildingContext; public class ListCollectionType extends CollectionType { - public ListCollectionType(GrailsDomainBinder binder) { - super(List.class, binder); + public ListCollectionType(MetadataBuildingContext buildingContext) { + super(List.class, buildingContext); } @Override diff --git a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/collectionType/MapCollectionType.java b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/collectionType/MapCollectionType.java index 1756084fbe..049ea65a35 100644 --- a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/collectionType/MapCollectionType.java +++ b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/collectionType/MapCollectionType.java @@ -4,13 +4,12 @@ import java.util.Map; import org.hibernate.mapping.Collection; import org.hibernate.mapping.PersistentClass; - -import org.grails.orm.hibernate.cfg.GrailsDomainBinder; +import org.hibernate.boot.spi.MetadataBuildingContext; public class MapCollectionType extends CollectionType { - public MapCollectionType(GrailsDomainBinder binder) { - super(Map.class, binder); + public MapCollectionType(MetadataBuildingContext buildingContext) { + super(Map.class, buildingContext); } @Override diff --git a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/collectionType/SetCollectionType.java b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/collectionType/SetCollectionType.java index 5b4fc2d121..753bc0ec65 100644 --- a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/collectionType/SetCollectionType.java +++ b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/collectionType/SetCollectionType.java @@ -4,13 +4,12 @@ import java.util.Set; import org.hibernate.mapping.Collection; import org.hibernate.mapping.PersistentClass; - -import org.grails.orm.hibernate.cfg.GrailsDomainBinder; +import org.hibernate.boot.spi.MetadataBuildingContext; public class SetCollectionType extends CollectionType { - public SetCollectionType(GrailsDomainBinder binder) { - super(Set.class, binder); + public SetCollectionType(MetadataBuildingContext buildingContext) { + super(Set.class, buildingContext); } @Override diff --git a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/collectionType/SortedSetCollectionType.java b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/collectionType/SortedSetCollectionType.java index 547e63599b..2c6f32daf5 100644 --- a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/collectionType/SortedSetCollectionType.java +++ b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/collectionType/SortedSetCollectionType.java @@ -4,13 +4,12 @@ import java.util.SortedSet; import org.hibernate.mapping.Collection; import org.hibernate.mapping.PersistentClass; - -import org.grails.orm.hibernate.cfg.GrailsDomainBinder; +import org.hibernate.boot.spi.MetadataBuildingContext; public class SortedSetCollectionType extends CollectionType { - public SortedSetCollectionType(GrailsDomainBinder binder) { - super(SortedSet.class, binder); + public SortedSetCollectionType(MetadataBuildingContext buildingContext) { + super(SortedSet.class, buildingContext); } @Override diff --git a/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/CollectionBinderSpec.groovy b/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/CollectionBinderSpec.groovy index 31c0bef73a..49e798674e 100644 --- a/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/CollectionBinderSpec.groovy +++ b/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/CollectionBinderSpec.groovy @@ -31,6 +31,7 @@ import org.hibernate.mapping.BasicValue import org.grails.orm.hibernate.cfg.domainbinding.util.BackticksRemover import org.grails.orm.hibernate.cfg.domainbinding.util.DefaultColumnNameFetcher import org.grails.orm.hibernate.cfg.domainbinding.util.ColumnNameForPropertyAndPathFetcher +import org.grails.orm.hibernate.cfg.domainbinding.collectionType.CollectionHolder import org.grails.orm.hibernate.cfg.domainbinding.util.PropertyFromValueCreator import org.grails.orm.hibernate.cfg.domainbinding.binder.ComponentPropertyBinder import org.grails.orm.hibernate.cfg.domainbinding.util.BasicValueIdCreator @@ -44,6 +45,7 @@ class CollectionBinderSpec extends HibernateGormDatastoreSpec { BackticksRemover backticksRemover = new BackticksRemover() DefaultColumnNameFetcher defaultColumnNameFetcher = new DefaultColumnNameFetcher(namingStrategy, backticksRemover) ColumnNameForPropertyAndPathFetcher columnNameForPropertyAndPathFetcher = new ColumnNameForPropertyAndPathFetcher(namingStrategy, defaultColumnNameFetcher, backticksRemover) + CollectionHolder collectionHolder = new CollectionHolder(metadataBuildingContext) SimpleValueBinder simpleValueBinder = new SimpleValueBinder(namingStrategy, jdbcEnvironment) EnumTypeBinder enumTypeBinderToUse = new EnumTypeBinder() SimpleValueColumnFetcher simpleValueColumnFetcher = new SimpleValueColumnFetcher() @@ -74,7 +76,7 @@ class CollectionBinderSpec extends HibernateGormDatastoreSpec { namingStrategy, jdbcEnvironment, binder.getMappingCacheHolder(), - binder.getCollectionHolder(), + collectionHolder, enumTypeBinderToUse, collectionBinder, new PropertyFromValueCreator(), @@ -87,7 +89,7 @@ class CollectionBinderSpec extends HibernateGormDatastoreSpec { GrailsPropertyBinder propertyBinder = new GrailsPropertyBinder( metadataBuildingContext, namingStrategy, - binder.getCollectionHolder(), + collectionHolder, enumTypeBinderToUse, componentPropertyBinder, collectionBinder, diff --git a/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/CollectionSecondPassBinderSpec.groovy b/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/CollectionSecondPassBinderSpec.groovy index cd46b537a6..b9ad7a642f 100644 --- a/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/CollectionSecondPassBinderSpec.groovy +++ b/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/CollectionSecondPassBinderSpec.groovy @@ -6,6 +6,7 @@ import org.grails.orm.hibernate.cfg.GrailsHibernatePersistentEntity import org.grails.orm.hibernate.cfg.domainbinding.hibernate.HibernateToManyProperty import org.grails.orm.hibernate.cfg.domainbinding.util.BackticksRemover import org.grails.orm.hibernate.cfg.domainbinding.util.ColumnNameForPropertyAndPathFetcher +import org.grails.orm.hibernate.cfg.domainbinding.collectionType.CollectionHolder import org.grails.orm.hibernate.cfg.domainbinding.util.DefaultColumnNameFetcher import org.hibernate.mapping.RootClass @@ -46,6 +47,7 @@ class CollectionSecondPassBinderSpec extends HibernateGormDatastoreSpec { BackticksRemover backticksRemover = new BackticksRemover() DefaultColumnNameFetcher defaultColumnNameFetcher = new DefaultColumnNameFetcher(namingStrategy, backticksRemover) ColumnNameForPropertyAndPathFetcher columnNameForPropertyAndPathFetcher = new ColumnNameForPropertyAndPathFetcher(namingStrategy, defaultColumnNameFetcher, backticksRemover) + CollectionHolder collectionHolder = new CollectionHolder(metadataBuildingContext) SimpleValueBinder simpleValueBinder = new SimpleValueBinder(namingStrategy, jdbcEnvironment) EnumTypeBinder enumTypeBinderToUse = new EnumTypeBinder() SimpleValueColumnFetcher simpleValueColumnFetcher = new SimpleValueColumnFetcher() @@ -76,7 +78,7 @@ class CollectionSecondPassBinderSpec extends HibernateGormDatastoreSpec { namingStrategy, jdbcEnvironment, binder.getMappingCacheHolder(), - binder.getCollectionHolder(), + collectionHolder, enumTypeBinderToUse, collectionBinder, new PropertyFromValueCreator(), @@ -89,7 +91,7 @@ class CollectionSecondPassBinderSpec extends HibernateGormDatastoreSpec { GrailsPropertyBinder propertyBinder = new GrailsPropertyBinder( metadataBuildingContext, namingStrategy, - binder.getCollectionHolder(), + collectionHolder, enumTypeBinderToUse, componentPropertyBinder, collectionBinder, diff --git a/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/GrailsPropertyBinderSpec.groovy b/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/GrailsPropertyBinderSpec.groovy index 4449b59ca1..63b2def531 100644 --- a/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/GrailsPropertyBinderSpec.groovy +++ b/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/GrailsPropertyBinderSpec.groovy @@ -20,6 +20,7 @@ import org.grails.orm.hibernate.cfg.domainbinding.binder.OneToOneBinder import org.grails.orm.hibernate.cfg.domainbinding.binder.SimpleValueBinder import org.grails.orm.hibernate.cfg.domainbinding.util.BackticksRemover import org.grails.orm.hibernate.cfg.domainbinding.util.ColumnNameForPropertyAndPathFetcher +import org.grails.orm.hibernate.cfg.domainbinding.collectionType.CollectionHolder import org.grails.orm.hibernate.cfg.domainbinding.util.DefaultColumnNameFetcher import org.grails.orm.hibernate.cfg.domainbinding.util.PropertyFromValueCreator @@ -50,6 +51,7 @@ class GrailsPropertyBinderSpec extends HibernateGormDatastoreSpec { BackticksRemover backticksRemover = new BackticksRemover() DefaultColumnNameFetcher defaultColumnNameFetcher = new DefaultColumnNameFetcher(namingStrategy, backticksRemover) ColumnNameForPropertyAndPathFetcher columnNameForPropertyAndPathFetcher = new ColumnNameForPropertyAndPathFetcher(namingStrategy, defaultColumnNameFetcher, backticksRemover) + CollectionHolder collectionHolder = new CollectionHolder(metadataBuildingContext) SimpleValueBinder simpleValueBinder = new SimpleValueBinder(namingStrategy, jdbcEnvironment) EnumTypeBinder enumTypeBinderToUse = new EnumTypeBinder() SimpleValueColumnFetcher simpleValueColumnFetcher = new SimpleValueColumnFetcher() @@ -80,7 +82,7 @@ class GrailsPropertyBinderSpec extends HibernateGormDatastoreSpec { namingStrategy, jdbcEnvironment, binder.getMappingCacheHolder(), - binder.getCollectionHolder(), + collectionHolder, enumTypeBinderToUse, collectionBinder, new PropertyFromValueCreator(), @@ -93,7 +95,7 @@ class GrailsPropertyBinderSpec extends HibernateGormDatastoreSpec { GrailsPropertyBinder propertyBinder = new GrailsPropertyBinder( metadataBuildingContext, namingStrategy, - binder.getCollectionHolder(), + collectionHolder, enumTypeBinderToUse, componentPropertyBinder, collectionBinder, diff --git a/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/ListSecondPassBinderSpec.groovy b/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/ListSecondPassBinderSpec.groovy index 7bf27fe3e4..a850f89cc0 100644 --- a/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/ListSecondPassBinderSpec.groovy +++ b/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/ListSecondPassBinderSpec.groovy @@ -6,6 +6,7 @@ import org.grails.orm.hibernate.cfg.GrailsHibernatePersistentEntity import org.grails.orm.hibernate.cfg.domainbinding.hibernate.HibernateToManyProperty import org.grails.orm.hibernate.cfg.domainbinding.util.BackticksRemover import org.grails.orm.hibernate.cfg.domainbinding.util.ColumnNameForPropertyAndPathFetcher +import org.grails.orm.hibernate.cfg.domainbinding.collectionType.CollectionHolder import org.grails.orm.hibernate.cfg.domainbinding.util.DefaultColumnNameFetcher import org.hibernate.mapping.RootClass @@ -48,6 +49,7 @@ class ListSecondPassBinderSpec extends HibernateGormDatastoreSpec { BackticksRemover backticksRemover = new BackticksRemover() DefaultColumnNameFetcher defaultColumnNameFetcher = new DefaultColumnNameFetcher(namingStrategy, backticksRemover) ColumnNameForPropertyAndPathFetcher columnNameForPropertyAndPathFetcher = new ColumnNameForPropertyAndPathFetcher(namingStrategy, defaultColumnNameFetcher, backticksRemover) + CollectionHolder collectionHolder = new CollectionHolder(metadataBuildingContext) SimpleValueBinder simpleValueBinder = new SimpleValueBinder(namingStrategy, jdbcEnvironment) EnumTypeBinder enumTypeBinderToUse = new EnumTypeBinder() SimpleValueColumnFetcher simpleValueColumnFetcher = new SimpleValueColumnFetcher() @@ -78,7 +80,7 @@ class ListSecondPassBinderSpec extends HibernateGormDatastoreSpec { namingStrategy, jdbcEnvironment, binder.getMappingCacheHolder(), - binder.getCollectionHolder(), + collectionHolder, enumTypeBinderToUse, collectionBinder, new PropertyFromValueCreator(), @@ -91,7 +93,7 @@ class ListSecondPassBinderSpec extends HibernateGormDatastoreSpec { GrailsPropertyBinder propertyBinder = new GrailsPropertyBinder( metadataBuildingContext, namingStrategy, - binder.getCollectionHolder(), + collectionHolder, enumTypeBinderToUse, componentPropertyBinder, collectionBinder, diff --git a/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/MapSecondPassBinderSpec.groovy b/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/MapSecondPassBinderSpec.groovy index 1a921437bb..5803d6508c 100644 --- a/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/MapSecondPassBinderSpec.groovy +++ b/grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/MapSecondPassBinderSpec.groovy @@ -6,6 +6,7 @@ import org.grails.orm.hibernate.cfg.GrailsHibernatePersistentEntity import org.grails.orm.hibernate.cfg.domainbinding.hibernate.HibernateToManyProperty import org.grails.orm.hibernate.cfg.domainbinding.util.BackticksRemover import org.grails.orm.hibernate.cfg.domainbinding.util.ColumnNameForPropertyAndPathFetcher +import org.grails.orm.hibernate.cfg.domainbinding.collectionType.CollectionHolder import org.grails.orm.hibernate.cfg.domainbinding.util.DefaultColumnNameFetcher import org.hibernate.mapping.RootClass @@ -48,6 +49,7 @@ class MapSecondPassBinderSpec extends HibernateGormDatastoreSpec { BackticksRemover backticksRemover = new BackticksRemover() DefaultColumnNameFetcher defaultColumnNameFetcher = new DefaultColumnNameFetcher(namingStrategy, backticksRemover) ColumnNameForPropertyAndPathFetcher columnNameForPropertyAndPathFetcher = new ColumnNameForPropertyAndPathFetcher(namingStrategy, defaultColumnNameFetcher, backticksRemover) + CollectionHolder collectionHolder = new CollectionHolder(metadataBuildingContext) SimpleValueBinder simpleValueBinder = new SimpleValueBinder(namingStrategy, jdbcEnvironment) EnumTypeBinder enumTypeBinderToUse = new EnumTypeBinder() SimpleValueColumnFetcher simpleValueColumnFetcher = new SimpleValueColumnFetcher() @@ -78,7 +80,7 @@ class MapSecondPassBinderSpec extends HibernateGormDatastoreSpec { namingStrategy, jdbcEnvironment, binder.getMappingCacheHolder(), - binder.getCollectionHolder(), + collectionHolder, enumTypeBinderToUse, collectionBinder, new PropertyFromValueCreator(), @@ -91,7 +93,7 @@ class MapSecondPassBinderSpec extends HibernateGormDatastoreSpec { GrailsPropertyBinder propertyBinder = new GrailsPropertyBinder( metadataBuildingContext, namingStrategy, - binder.getCollectionHolder(), + collectionHolder, enumTypeBinderToUse, componentPropertyBinder, collectionBinder,
