This is an automated email from the ASF dual-hosted git repository. borinquenkid pushed a commit to branch merge-hibernate6 in repository https://gitbox.apache.org/repos/asf/grails-core.git
commit 603547daee3aa47930084d72984763d3245ca61c Author: Walter Duque de Estrada <[email protected]> AuthorDate: Tue Sep 30 21:14:26 2025 -0500 Clean up nonNullable checks --- .../orm/hibernate/cfg/GrailsDomainBinder.java | 79 ++++++++++------------ .../cfg/domainbinding/CascadeBehaviorFetcher.java | 2 +- .../hibernate/cfg/domainbinding/ColumnBinder.java | 6 +- .../ColumnNameForPropertyAndPathFetcher.java | 6 +- .../CompositeIdentifierToManyToOneBinder.java | 3 +- .../cfg/domainbinding/CreateKeyForProps.java | 2 +- .../domainbinding/DefaultColumnNameFetcher.java | 2 +- .../cfg/domainbinding/EnumTypeBinder.java | 4 +- .../PersistentPropertyToPropertyConfig.java | 6 +- .../cfg/domainbinding/PropertyBinder.java | 2 +- .../cfg/domainbinding/SimpleValueBinder.java | 2 +- .../cfg/domainbinding/UserTypeFetcher.java | 5 +- .../cfg/domainbinding/ColumnBinderSpec.groovy | 28 ++++---- .../ColumnNameForPropertyAndPathFetcherSpec.groovy | 4 +- ...CompositeIdentifierToManyToOneBinderSpec.groovy | 4 +- .../cfg/domainbinding/CreateKeyForPropsSpec.groovy | 12 ++-- .../cfg/domainbinding/PropertyBinderSpec.groovy | 6 +- .../cfg/domainbinding/SimpleValueBinderSpec.groovy | 13 ++-- .../cfg/domainbinding/TypeNameProviderSpec.groovy | 2 +- report02.txt | 28 ++++++++ 20 files changed, 114 insertions(+), 102 deletions(-) diff --git a/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/GrailsDomainBinder.java b/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/GrailsDomainBinder.java index 624c407351..f311f83057 100644 --- a/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/GrailsDomainBinder.java +++ b/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/GrailsDomainBinder.java @@ -269,8 +269,8 @@ public class GrailsDomainBinder implements MetadataContributor { String type = getIndexColumnType(property, STRING_TYPE); String columnName1 = getIndexColumnName(property, sessionFactoryBeanName); new SimpleValueColumnBinder().bindSimpleValue(value, type, columnName1, true); - PropertyConfig mappedForm = new PersistentPropertyToPropertyConfig().apply(property); - if (mappedForm != null && mappedForm.getIndexColumn() != null) { + PropertyConfig mappedForm = new PersistentPropertyToPropertyConfig().toPropertyConfig(property); + if (mappedForm.getIndexColumn() != null) { Column column = getColumnForSimpleValue(value); ColumnConfig columnConfig = getSingleColumnConfig(mappedForm.getIndexColumn()); new ColumnConfigToColumnBinder().bindColumnConfigToColumn(column, columnConfig, mappedForm); @@ -417,10 +417,10 @@ public class GrailsDomainBinder implements MetadataContributor { + " -> " + collection.getCollectionTable().getName()); - PropertyConfig propConfig = new PersistentPropertyToPropertyConfig().apply(property); + PropertyConfig propConfig = new PersistentPropertyToPropertyConfig().toPropertyConfig(property); PersistentEntity referenced = property.getAssociatedEntity(); - if (propConfig != null && StringUtils.hasText(propConfig.getSort())) { + if (StringUtils.hasText(propConfig.getSort())) { if (!property.isBidirectional() && (property instanceof org.grails.datastore.mapping.model.types.OneToMany)) { throw new DatastoreConfigurationException("Default sort for associations ["+property.getOwner().getName()+"->" + property.getName() + "] are not supported with unidirectional one to many relationships."); @@ -767,7 +767,7 @@ public class GrailsDomainBinder implements MetadataContributor { if (joinColumnMappingOptional.isPresent()) { Column column = getColumnForSimpleValue(element); ColumnConfig columnConfig = joinColumnMappingOptional.get(); - final PropertyConfig mappedForm = new PersistentPropertyToPropertyConfig().apply(property); + final PropertyConfig mappedForm = new PersistentPropertyToPropertyConfig().toPropertyConfig(property); new ColumnConfigToColumnBinder().bindColumnConfigToColumn(column, columnConfig, mappedForm); } } @@ -802,8 +802,8 @@ public class GrailsDomainBinder implements MetadataContributor { } private boolean shouldCollectionBindWithJoinColumn(ToMany property) { - PropertyConfig config = new PersistentPropertyToPropertyConfig().apply(property); - JoinTable jt = config != null ? config.getJoinTable() : new JoinTable(); + PropertyConfig config = new PersistentPropertyToPropertyConfig().toPropertyConfig(property); + JoinTable jt = config.getJoinTable(); return (ofNullable(property).map(PersistentProperty::isUnidirectionalOneToMany).orElse(false) || (property instanceof Basic)) && jt != null; } @@ -813,20 +813,16 @@ public class GrailsDomainBinder implements MetadataContributor { * @param manyToOne The inverse side */ private void bindUnidirectionalOneToManyInverseValues(ToMany property, ManyToOne manyToOne) { - PropertyConfig config = new PersistentPropertyToPropertyConfig().apply(property); - if (config == null) { + PropertyConfig config = new PersistentPropertyToPropertyConfig().toPropertyConfig(property); + manyToOne.setIgnoreNotFound(config.getIgnoreNotFound()); + final FetchMode fetch = config.getFetchMode(); + if(!fetch.equals(FetchMode.JOIN)) { manyToOne.setLazy(true); - } else { - manyToOne.setIgnoreNotFound(config.getIgnoreNotFound()); - final FetchMode fetch = config.getFetchMode(); - if(!fetch.equals(FetchMode.JOIN)) { - manyToOne.setLazy(true); - } + } - final Boolean lazy = config.getLazy(); - if(lazy != null) { - manyToOne.setLazy(lazy); - } + final Boolean lazy = config.getLazy(); + if(lazy != null) { + manyToOne.setLazy(lazy); } // set referenced entity @@ -1018,7 +1014,7 @@ public class GrailsDomainBinder implements MetadataContributor { String propertyName = getNameForPropertyAndPath(property, path); collection.setRole(qualify(property.getOwner().getName(), propertyName)); - PropertyConfig pc = new PersistentPropertyToPropertyConfig().apply(property); + PropertyConfig pc = new PersistentPropertyToPropertyConfig().toPropertyConfig(property); // configure eager fetching final FetchMode fetchMode = pc.getFetchMode(); if (fetchMode == FetchMode.JOIN) { @@ -1089,8 +1085,8 @@ public class GrailsDomainBinder implements MetadataContributor { Collection collection, Table ownerTable, String sessionFactoryBeanName) { String owningTableSchema = ownerTable.getSchema(); - PropertyConfig config = new PersistentPropertyToPropertyConfig().apply(property); - JoinTable jt = config != null ? config.getJoinTable() : null; + PropertyConfig config = new PersistentPropertyToPropertyConfig().toPropertyConfig(property); + JoinTable jt = config.getJoinTable(); String s = calculateTableForMany(property, sessionFactoryBeanName); String tableName = (jt != null && jt.getName() != null ? jt.getName() : getNamingStrategy().resolveTableName(s)); @@ -1123,8 +1119,8 @@ public class GrailsDomainBinder implements MetadataContributor { private String calculateTableForMany(ToMany property, String sessionFactoryBeanName) { String propertyColumnName = getNamingStrategy().resolveColumnName(property.getName()); //fix for GRAILS-5895 - PropertyConfig config = new PersistentPropertyToPropertyConfig().apply(property); - JoinTable jt = config != null ? config.getJoinTable() : null; + PropertyConfig config = new PersistentPropertyToPropertyConfig().toPropertyConfig(property); + JoinTable jt = config.getJoinTable(); boolean hasJoinTableMapping = jt != null && jt.getName() != null; PersistentEntity domainClass1 = property.getOwner(); String left = new TableNameFetcher(getNamingStrategy()).getTableName(domainClass1); @@ -1299,7 +1295,7 @@ public class GrailsDomainBinder implements MetadataContributor { } else { root.setPolymorphic(true); Mapping m = new HibernateEntityWrapper().getMappedForm(entity); - boolean tablePerSubclass = m != null && !m.getTablePerHierarchy(); + boolean tablePerSubclass = !m.getTablePerHierarchy(); if (!tablePerSubclass) { // if the root class has children create a discriminator property @@ -1415,7 +1411,7 @@ public class GrailsDomainBinder implements MetadataContributor { // value used by Hibernate to decide what the type of the class is // to perform polymorphic queries Mapping subMapping = new HibernateEntityWrapper().getMappedForm(sub); - DiscriminatorConfig discriminatorConfig = subMapping != null ? subMapping.getDiscriminator() : null; + DiscriminatorConfig discriminatorConfig = subMapping.getDiscriminator(); subClass.setDiscriminatorValue(discriminatorConfig != null && discriminatorConfig.getValue() != null ? discriminatorConfig.getValue() : fullName); configureDerivedProperties(sub, subMapping); @@ -1885,8 +1881,8 @@ public class GrailsDomainBinder implements MetadataContributor { private Class<?> getUserType(PersistentProperty currentGrailsProp) { Class<?> userType = null; - PropertyConfig config = new PersistentPropertyToPropertyConfig().apply(currentGrailsProp); - Object typeObj = config == null ? null : config.getType(); + PropertyConfig config = new PersistentPropertyToPropertyConfig().toPropertyConfig(currentGrailsProp); + Object typeObj = config.getType(); if (typeObj instanceof Class<?>) { userType = (Class<?>)typeObj; } else if (typeObj != null) { @@ -2057,7 +2053,7 @@ public class GrailsDomainBinder implements MetadataContributor { else { //TODO NOT TESTED if (property.isCircular() && (property instanceof ManyToMany)) { - PropertyConfig pc = new PersistentPropertyToPropertyConfig().apply(property); + PropertyConfig pc = new PersistentPropertyToPropertyConfig().toPropertyConfig(property); if (pc.getColumns().isEmpty()) { mapping.getColumns().put(property.getName(), pc); @@ -2069,7 +2065,6 @@ public class GrailsDomainBinder implements MetadataContributor { jt.setKey(columnConfig); pc.setJoinTable(jt); } - new PersistentPropertyToPropertyConfig().apply(property); // set type new SimpleValueBinder(namingStrategy).bindSimpleValue(property, null, manyToOne, path); } @@ -2080,11 +2075,11 @@ public class GrailsDomainBinder implements MetadataContributor { } } - PropertyConfig config = new PersistentPropertyToPropertyConfig().apply(property); + PropertyConfig config = new PersistentPropertyToPropertyConfig().toPropertyConfig(property); if ((property instanceof org.grails.datastore.mapping.model.types.OneToOne) && !isComposite) { manyToOne.setAlternateUniqueKey(true); Column c = getColumnForSimpleValue(manyToOne); - if (config != null && !config.isUniqueWithinGroup()) { + if (!config.isUniqueWithinGroup()) { c.setUnique(config.isUnique()); } else { @@ -2100,7 +2095,7 @@ public class GrailsDomainBinder implements MetadataContributor { private void bindOneToOne(final org.grails.datastore.mapping.model.types.OneToOne property, OneToOne oneToOne, String path, String sessionFactoryBeanName) { - PropertyConfig config = new PersistentPropertyToPropertyConfig().apply(property); + PropertyConfig config = new PersistentPropertyToPropertyConfig().toPropertyConfig(property); final Association otherSide = property.getInverseSide(); final boolean hasOne = otherSide.isHasOne(); @@ -2125,8 +2120,6 @@ public class GrailsDomainBinder implements MetadataContributor { if (hasOne) { //TODO NOT TESTED - PropertyConfig pc = new PersistentPropertyToPropertyConfig().apply(property); - new PersistentPropertyToPropertyConfig().apply(property); // set type new SimpleValueBinder(namingStrategy).bindSimpleValue(property, null, oneToOne, path); } @@ -2142,9 +2135,9 @@ public class GrailsDomainBinder implements MetadataContributor { /** */ private void bindManyToOneValues(org.grails.datastore.mapping.model.types.Association property, ManyToOne manyToOne) { - PropertyConfig config = new PersistentPropertyToPropertyConfig().apply(property); + PropertyConfig config = new PersistentPropertyToPropertyConfig().toPropertyConfig(property); - if (config != null && config.getFetchMode() != null) { + if (config.getFetchMode() != null) { manyToOne.setFetchMode(config.getFetchMode()); } else { @@ -2206,7 +2199,7 @@ public class GrailsDomainBinder implements MetadataContributor { InFlightMetadataCollector mappings, Identity mappedId, String sessionFactoryBeanName) { Mapping mapping = new HibernateEntityWrapper().getMappedForm(identifier.getOwner()); - boolean useSequence = mapping != null && mapping.isTablePerConcreteClass(); + boolean useSequence = mapping.isTablePerConcreteClass(); // create the id value BasicValue id = new BasicValue(metadataBuildingContext, entity.getTable()); @@ -2269,16 +2262,16 @@ public class GrailsDomainBinder implements MetadataContributor { private String getIndexColumnName(PersistentProperty property, String sessionFactoryBeanName) { - PropertyConfig pc = new PersistentPropertyToPropertyConfig().apply(property); - if (pc != null && pc.getIndexColumn() != null && pc.getIndexColumn().getColumn() != null) { + PropertyConfig pc = new PersistentPropertyToPropertyConfig().toPropertyConfig(property); + if (pc.getIndexColumn() != null && pc.getIndexColumn().getColumn() != null) { return pc.getIndexColumn().getColumn(); } return getNamingStrategy().resolveColumnName(property.getName()) + UNDERSCORE + IndexedCollection.DEFAULT_INDEX_COLUMN_NAME; } private String getIndexColumnType(PersistentProperty property, String defaultType) { - PropertyConfig pc = new PersistentPropertyToPropertyConfig().apply(property); - if (pc != null && pc.getIndexColumn() != null && pc.getIndexColumn().getType() != null) { + PropertyConfig pc = new PersistentPropertyToPropertyConfig().toPropertyConfig(property); + if (pc.getIndexColumn() != null && pc.getIndexColumn().getType() != null) { Mapping mapping =new HibernateEntityWrapper().getMappedForm(property.getOwner()); return new TypeNameProvider().getTypeName(property, mapping); } @@ -2286,7 +2279,7 @@ public class GrailsDomainBinder implements MetadataContributor { } private String getMapElementName(PersistentProperty property, String sessionFactoryBeanName) { - PropertyConfig pc = new PersistentPropertyToPropertyConfig().apply(property); + PropertyConfig pc = new PersistentPropertyToPropertyConfig().toPropertyConfig(property); if (hasJoinTableColumnNameMapping(pc)) { return pc.getJoinTable().getColumn().getName(); diff --git a/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/CascadeBehaviorFetcher.java b/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/CascadeBehaviorFetcher.java index 336d00681b..bb48b01cc4 100644 --- a/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/CascadeBehaviorFetcher.java +++ b/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/CascadeBehaviorFetcher.java @@ -37,7 +37,7 @@ public class CascadeBehaviorFetcher { } private Optional<CascadeBehavior> getDefinedBehavior(PersistentProperty<?> grailsProperty) { - return Optional.ofNullable(new PersistentPropertyToPropertyConfig().apply(grailsProperty)) + return Optional.ofNullable(new PersistentPropertyToPropertyConfig().toPropertyConfig(grailsProperty)) .map(PropertyConfig::getCascade) .map(CascadeBehavior::fromString); } diff --git a/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/ColumnBinder.java b/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/ColumnBinder.java index 574bbe3e1a..1461e1a743 100644 --- a/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/ColumnBinder.java +++ b/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/ColumnBinder.java @@ -109,10 +109,10 @@ public class ColumnBinder { // the column's length, precision, and scale Class<?> type = property.getType(); if (type != null && (String.class.isAssignableFrom(type) || byte[].class.isAssignableFrom(type))) { - if (mappedForm == null) mappedForm = persistentPropertyToPropertyConfig.apply(property); + mappedForm = persistentPropertyToPropertyConfig.toPropertyConfig(property); stringColumnConstraintsBinder.bindStringColumnConstraints(column, mappedForm); } else if (type != null && Number.class.isAssignableFrom(type)) { - if (mappedForm == null) mappedForm = persistentPropertyToPropertyConfig.apply(property); + mappedForm = persistentPropertyToPropertyConfig.toPropertyConfig(property); numericColumnConstraintsBinder.bindNumericColumnConstraints(column, cc, mappedForm); } } @@ -133,7 +133,7 @@ public class ColumnBinder { } // Apply uniqueness last to ensure it isn't overridden by downstream binders - PropertyConfig mappedFormFinal = persistentPropertyToPropertyConfig.apply(property); + PropertyConfig mappedFormFinal = persistentPropertyToPropertyConfig.toPropertyConfig(property); column.setUnique(mappedFormFinal.isUnique() && !mappedFormFinal.isUniqueWithinGroup()); if (LOG.isDebugEnabled()) diff --git a/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/ColumnNameForPropertyAndPathFetcher.java b/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/ColumnNameForPropertyAndPathFetcher.java index bab1045a85..00a7785644 100644 --- a/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/ColumnNameForPropertyAndPathFetcher.java +++ b/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/ColumnNameForPropertyAndPathFetcher.java @@ -1,10 +1,8 @@ package org.grails.orm.hibernate.cfg.domainbinding; -import org.grails.datastore.mapping.model.PersistentEntity; import org.grails.datastore.mapping.model.PersistentProperty; import org.grails.orm.hibernate.cfg.ColumnConfig; import org.grails.orm.hibernate.cfg.GrailsHibernateUtil; -import org.grails.orm.hibernate.cfg.Mapping; import org.grails.orm.hibernate.cfg.PersistentEntityNamingStrategy; import org.grails.orm.hibernate.cfg.PropertyConfig; @@ -49,7 +47,7 @@ public class ColumnNameForPropertyAndPathFetcher { // No column config given, attempt to obtain the property config directly from the property PropertyConfig c = null; try { - c = persistentPropertyToPropertyConfig.apply(grailsProp); + c = persistentPropertyToPropertyConfig.toPropertyConfig(grailsProp); } catch (Exception ignore) { // If we cannot resolve a PropertyConfig, treat as absent and fall back later } @@ -63,7 +61,7 @@ public class ColumnNameForPropertyAndPathFetcher { } else { if (grailsProp.supportsJoinColumnMapping()) { - PropertyConfig pc = persistentPropertyToPropertyConfig.apply(grailsProp); + PropertyConfig pc = persistentPropertyToPropertyConfig.toPropertyConfig(grailsProp); if (pc.hasJoinKeyMapping()) { columnName = pc.getJoinTable().getKey().getName(); } diff --git a/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/CompositeIdentifierToManyToOneBinder.java b/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/CompositeIdentifierToManyToOneBinder.java index d572808661..a1c9b91141 100644 --- a/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/CompositeIdentifierToManyToOneBinder.java +++ b/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/CompositeIdentifierToManyToOneBinder.java @@ -11,7 +11,6 @@ import org.grails.datastore.mapping.model.types.ToOne; import org.grails.orm.hibernate.cfg.ColumnConfig; import org.grails.orm.hibernate.cfg.CompositeIdentity; import org.grails.orm.hibernate.cfg.PersistentEntityNamingStrategy; -import org.grails.orm.hibernate.cfg.PropertyConfig; import static org.grails.orm.hibernate.cfg.GrailsDomainBinder.UNDERSCORE; @@ -57,7 +56,7 @@ public class CompositeIdentifierToManyToOneBinder { String path) { String[] propertyNames = compositeId.getPropertyNames(); - List<ColumnConfig> columns = persistentPropertyToPropertyConfig.apply(property).getColumns(); + List<ColumnConfig> columns = persistentPropertyToPropertyConfig.toPropertyConfig(property).getColumns(); int i = columns.size(); int expectedForeignKeyColumnLength = foreignKeyColumnCountCalculator.calculateForeignKeyColumnCount(refDomainClass, propertyNames); if (i != expectedForeignKeyColumnLength) { diff --git a/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/CreateKeyForProps.java b/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/CreateKeyForProps.java index 5eff359cd3..c44e5905ce 100644 --- a/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/CreateKeyForProps.java +++ b/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/CreateKeyForProps.java @@ -33,7 +33,7 @@ public class CreateKeyForProps { public void createKeyForProps(PersistentProperty grailsProp, String path, Table table, String columnName) { - PropertyConfig mappedForm = persistentPropertyToPropertyConfig.apply(grailsProp); + PropertyConfig mappedForm = persistentPropertyToPropertyConfig.toPropertyConfig(grailsProp); if (mappedForm.isUnique() && mappedForm.isUniqueWithinGroup()) { diff --git a/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/DefaultColumnNameFetcher.java b/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/DefaultColumnNameFetcher.java index 84ab7f0907..6d0c32d3fa 100644 --- a/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/DefaultColumnNameFetcher.java +++ b/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/DefaultColumnNameFetcher.java @@ -30,7 +30,7 @@ public class DefaultColumnNameFetcher { if (property instanceof Association) { Association association = (Association) property; boolean isBasic = property instanceof Basic; - if (isBasic && (new PersistentPropertyToPropertyConfig().apply(property)).getType() != null) { + if (isBasic && (new PersistentPropertyToPropertyConfig().toPropertyConfig(property)).getType() != null) { return columnName; } diff --git a/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/EnumTypeBinder.java b/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/EnumTypeBinder.java index db7c036a1e..2bf95a3032 100644 --- a/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/EnumTypeBinder.java +++ b/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/EnumTypeBinder.java @@ -2,7 +2,6 @@ package org.grails.orm.hibernate.cfg.domainbinding; import org.grails.datastore.mapping.model.PersistentProperty; import org.grails.orm.hibernate.cfg.ColumnConfig; -import org.grails.orm.hibernate.cfg.HibernatePersistentEntity; import org.grails.orm.hibernate.cfg.IdentityEnumType; import org.grails.orm.hibernate.cfg.Mapping; import org.grails.orm.hibernate.cfg.PropertyConfig; @@ -17,7 +16,6 @@ import org.slf4j.LoggerFactory; import java.sql.Types; import java.util.Properties; -import static org.grails.orm.hibernate.cfg.GrailsDomainBinder.DEFAULT_ENUM_TYPE; import static org.grails.orm.hibernate.cfg.GrailsDomainBinder.ENUM_CLASS_PROP; import static org.grails.orm.hibernate.cfg.GrailsDomainBinder.ENUM_TYPE_CLASS; @@ -40,7 +38,7 @@ public class EnumTypeBinder { private static final Logger LOG = LoggerFactory.getLogger(EnumTypeBinder.class); public void bindEnumType(PersistentProperty property, Class<?> propertyType, SimpleValue simpleValue, String columnName) { - PropertyConfig pc = new PersistentPropertyToPropertyConfig().apply(property); + PropertyConfig pc = new PersistentPropertyToPropertyConfig().toPropertyConfig(property); Mapping ownerMapping = new HibernateEntityWrapper().getMappedForm(property.getOwner()); String enumType = pc.getEnumType(); Properties enumProperties = new Properties(); diff --git a/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/PersistentPropertyToPropertyConfig.java b/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/PersistentPropertyToPropertyConfig.java index 3272159ae8..187137e030 100644 --- a/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/PersistentPropertyToPropertyConfig.java +++ b/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/PersistentPropertyToPropertyConfig.java @@ -5,13 +5,11 @@ import org.grails.orm.hibernate.cfg.PropertyConfig; import org.hibernate.MappingException; import java.util.Optional; -import java.util.function.Function; import jakarta.annotation.Nonnull; -public class PersistentPropertyToPropertyConfig implements Function<PersistentProperty, PropertyConfig> { - @Override - @Nonnull public PropertyConfig apply(PersistentProperty persistentProperty) { +public class PersistentPropertyToPropertyConfig { + @Nonnull public PropertyConfig toPropertyConfig(PersistentProperty persistentProperty) { return Optional.ofNullable(persistentProperty) .map(PersistentProperty::getMappedForm) .map(PropertyConfig.class::cast) diff --git a/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/PropertyBinder.java b/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/PropertyBinder.java index 07b4190917..debe4d96ce 100644 --- a/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/PropertyBinder.java +++ b/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/PropertyBinder.java @@ -41,7 +41,7 @@ public class PropertyBinder { public void bindProperty(PersistentProperty<?> persistentProperty, Property prop) { // set the property name prop.setName(persistentProperty.getName()); - var config = persistentPropertyToPropertyConfig.apply(persistentProperty); + var config = persistentPropertyToPropertyConfig.toPropertyConfig(persistentProperty); if (bidirectionalManyToOneWithListMapping.isBidirectionalManyToOneWithListMapping(persistentProperty, prop)) { prop.setInsertable(false); diff --git a/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/SimpleValueBinder.java b/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/SimpleValueBinder.java index 94fdaaab5e..d1817ea3f3 100644 --- a/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/SimpleValueBinder.java +++ b/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/SimpleValueBinder.java @@ -66,7 +66,7 @@ public class SimpleValueBinder { , SimpleValue simpleValue , String path ) { - PropertyConfig propertyConfig = persistentPropertyToPropertyConfig.apply(property); + PropertyConfig propertyConfig = persistentPropertyToPropertyConfig.toPropertyConfig(property); Mapping mapping = hibernateEntityWrapper.getMappedForm(property.getOwner()); final String typeName = typeNameProvider.getTypeName(property, mapping); if (typeName == null) { diff --git a/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/UserTypeFetcher.java b/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/UserTypeFetcher.java index cc0f6159fb..08ecbbac58 100644 --- a/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/UserTypeFetcher.java +++ b/grails-data-hibernate6/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/UserTypeFetcher.java @@ -4,7 +4,6 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.grails.datastore.mapping.model.PersistentProperty; -import org.grails.orm.hibernate.cfg.GrailsDomainBinder; import org.grails.orm.hibernate.cfg.PropertyConfig; public class UserTypeFetcher { @@ -23,8 +22,8 @@ public class UserTypeFetcher { } public Class<?> getUserType(PersistentProperty currentGrailsProp) { Class<?> userType = null; - PropertyConfig config = persistentPropertyToPropertyConfig.apply(currentGrailsProp); - Object typeObj = config == null ? null : config.getType(); + PropertyConfig config = persistentPropertyToPropertyConfig.toPropertyConfig(currentGrailsProp); + Object typeObj = config.getType(); if (typeObj instanceof Class<?>) { userType = (Class<?>)typeObj; } else if (typeObj != null) { diff --git a/grails-data-hibernate6/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/ColumnBinderSpec.groovy b/grails-data-hibernate6/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/ColumnBinderSpec.groovy index 2aadc19de0..248c8c92b6 100644 --- a/grails-data-hibernate6/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/ColumnBinderSpec.groovy +++ b/grails-data-hibernate6/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/ColumnBinderSpec.groovy @@ -49,7 +49,7 @@ class ColumnBinderSpec extends Specification { prop.isNullable() >> false prop.getOwner() >> owner owner.isRoot() >> true // skip subclass nullable logic - propToConfig.apply(prop) >> mappedForm + propToConfig.toPropertyConfig(prop) >> mappedForm mappedForm.isUnique() >> false mappedForm.isUniqueWithinGroup() >> false @@ -108,7 +108,7 @@ class ColumnBinderSpec extends Specification { owner.isRoot() >> false hibernateWrapper.getMappedForm(owner) >> mapping mapping.getTablePerHierarchy() >> true // forces nullable true for subclass - propToConfig.apply(prop) >>> [propertyConfig, propertyConfig] // called twice in code + propToConfig.toPropertyConfig(prop) >>> [propertyConfig, propertyConfig] // called twice in code // numeric constraints applied // unique settings propertyConfig.isUnique() >> true @@ -172,7 +172,7 @@ class ColumnBinderSpec extends Specification { inverse.isHasOne() >> true prop.getOwner() >> owner owner.isRoot() >> true - propToConfig.apply(prop) >> mappedForm + propToConfig.toPropertyConfig(prop) >> mappedForm mappedForm.isUnique() >> false mappedForm.isUniqueWithinGroup() >> false @@ -224,7 +224,7 @@ class ColumnBinderSpec extends Specification { prop.isNullable() >> true prop.getOwner() >> owner owner.isRoot() >> true - propToConfig.apply(prop) >>> [propertyConfig, propertyConfig] + propToConfig.toPropertyConfig(prop) >>> [propertyConfig, propertyConfig] propertyConfig.isUnique() >> false propertyConfig.isUniqueWithinGroup() >> false @@ -280,7 +280,7 @@ class ColumnBinderSpec extends Specification { inverse.isHasOne() >> false prop.getOwner() >> owner owner.isRoot() >> true - propToConfig.apply(prop) >> mappedForm + propToConfig.toPropertyConfig(prop) >> mappedForm mappedForm.isUnique() >> false mappedForm.isUniqueWithinGroup() >> false @@ -332,7 +332,7 @@ class ColumnBinderSpec extends Specification { prop.isNullable() >> false prop.getOwner() >> owner owner.isRoot() >> true - propToConfig.apply(prop) >> mappedForm + propToConfig.toPropertyConfig(prop) >> mappedForm mappedForm.isUnique() >> false mappedForm.isUniqueWithinGroup() >> false @@ -385,7 +385,7 @@ class ColumnBinderSpec extends Specification { owner.isRoot() >> true // ensure we don't hit special branches // Spock will not have methods isBidirectional, isOwningSide on Association base; not needed since code checks only if OneToOne or ToOne/circular - propToConfig.apply(prop) >> mappedForm + propToConfig.toPropertyConfig(prop) >> mappedForm mappedForm.isUnique() >> false mappedForm.isUniqueWithinGroup() >> false @@ -438,7 +438,7 @@ class ColumnBinderSpec extends Specification { parentProp.isNullable() >> false prop.getOwner() >> owner owner.isRoot() >> true - propToConfig.apply(prop) >>> [propertyConfig, propertyConfig] + propToConfig.toPropertyConfig(prop) >>> [propertyConfig, propertyConfig] propertyConfig.isUnique() >> false propertyConfig.isUniqueWithinGroup() >> false @@ -491,7 +491,7 @@ class ColumnBinderSpec extends Specification { parentProp.isNullable() >> true prop.getOwner() >> owner owner.isRoot() >> true - propToConfig.apply(prop) >>> [propertyConfig, propertyConfig] + propToConfig.toPropertyConfig(prop) >>> [propertyConfig, propertyConfig] propertyConfig.isUnique() >> false propertyConfig.isUniqueWithinGroup() >> false @@ -542,7 +542,7 @@ class ColumnBinderSpec extends Specification { parentProp.isNullable() >> false prop.getOwner() >> owner owner.isRoot() >> true - propToConfig.apply(prop) >>> [propertyConfig, propertyConfig] + propToConfig.toPropertyConfig(prop) >>> [propertyConfig, propertyConfig] propertyConfig.isUnique() >> false propertyConfig.isUniqueWithinGroup() >> false @@ -595,7 +595,7 @@ class ColumnBinderSpec extends Specification { when: // Unique true, withinGroup false => unique true def pc1 = Mock(PropertyConfig) - propToConfig.apply(prop) >>> [pc1, pc1] + propToConfig.toPropertyConfig(prop) >>> [pc1, pc1] pc1.isUnique() >> true pc1.isUniqueWithinGroup() >> false binder.bindColumn(prop, null, column, null, null, table) @@ -646,7 +646,7 @@ class ColumnBinderSpec extends Specification { // Unique true, withinGroup true => unique false def column2 = new Column() def pc2 = Mock(PropertyConfig) - propToConfig.apply(prop) >> pc2 + propToConfig.toPropertyConfig(prop) >> pc2 pc2.isUnique() >> true pc2.isUniqueWithinGroup() >> true binder.bindColumn(prop, null, column2, null, null, table) @@ -697,7 +697,7 @@ class ColumnBinderSpec extends Specification { // Unique false => unique false def column3 = new Column() def pc3 = Mock(PropertyConfig) - propToConfig.apply(prop) >>> [pc3, pc3] + propToConfig.toPropertyConfig(prop) >>> [pc3, pc3] pc3.isUnique() >> false pc3.isUniqueWithinGroup() >> false binder.bindColumn(prop, null, column3, null, null, table) @@ -745,7 +745,7 @@ class ColumnBinderSpec extends Specification { owner.isRoot() >> false hibernateWrapper.getMappedForm(owner) >> mapping mapping.getTablePerHierarchy() >> false - propToConfig.apply(prop) >>> [propertyConfig, propertyConfig] + propToConfig.toPropertyConfig(prop) >>> [propertyConfig, propertyConfig] propertyConfig.isUnique() >> false propertyConfig.isUniqueWithinGroup() >> false diff --git a/grails-data-hibernate6/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/ColumnNameForPropertyAndPathFetcherSpec.groovy b/grails-data-hibernate6/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/ColumnNameForPropertyAndPathFetcherSpec.groovy index 5b29b62f4f..57c5692c19 100644 --- a/grails-data-hibernate6/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/ColumnNameForPropertyAndPathFetcherSpec.groovy +++ b/grails-data-hibernate6/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/ColumnNameForPropertyAndPathFetcherSpec.groovy @@ -33,7 +33,7 @@ class ColumnNameForPropertyAndPathFetcherSpec extends Specification { def pc = Mock(PropertyConfig) grailsProp.supportsJoinColumnMapping() >> false - propToConfig.apply(grailsProp) >> pc + propToConfig.toPropertyConfig(grailsProp) >> pc pc.getColumn() >> "explicit_col" when: @@ -64,7 +64,7 @@ class ColumnNameForPropertyAndPathFetcherSpec extends Specification { def key = new ColumnConfig(name: "join_key_name") grailsProp.supportsJoinColumnMapping() >> true - propToConfig.apply(grailsProp) >> pc + propToConfig.toPropertyConfig(grailsProp) >> pc pc.hasJoinKeyMapping() >> true pc.getJoinTable() >> joinTable joinTable.getKey() >> key diff --git a/grails-data-hibernate6/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/CompositeIdentifierToManyToOneBinderSpec.groovy b/grails-data-hibernate6/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/CompositeIdentifierToManyToOneBinderSpec.groovy index 61bfa0d732..8455b5b8a4 100644 --- a/grails-data-hibernate6/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/CompositeIdentifierToManyToOneBinderSpec.groovy +++ b/grails-data-hibernate6/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/CompositeIdentifierToManyToOneBinderSpec.groovy @@ -39,7 +39,7 @@ class CompositeIdentifierToManyToOneBinderSpec extends Specification { // 3. Define the nested composite key scenario def propertyConfig = new PropertyConfig() - propertyConfigConverter.apply(association) >> propertyConfig + propertyConfigConverter.toPropertyConfig(association) >> propertyConfig calculator.calculateForeignKeyColumnCount(refDomainClass, propertyNames) >> 2 @@ -103,7 +103,7 @@ class CompositeIdentifierToManyToOneBinderSpec extends Specification { def propertyConfig = new PropertyConfig() propertyConfig.getColumns().add(new ColumnConfig()) propertyConfig.getColumns().add(new ColumnConfig()) - propertyConfigConverter.apply(association) >> propertyConfig + propertyConfigConverter.toPropertyConfig(association) >> propertyConfig // The calculated length is the same as the number of columns already in the config calculator.calculateForeignKeyColumnCount(refDomainClass, _ as String[]) >> 2 diff --git a/grails-data-hibernate6/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/CreateKeyForPropsSpec.groovy b/grails-data-hibernate6/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/CreateKeyForPropsSpec.groovy index 38e5d6dee8..4123697b4a 100644 --- a/grails-data-hibernate6/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/CreateKeyForPropsSpec.groovy +++ b/grails-data-hibernate6/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/CreateKeyForPropsSpec.groovy @@ -25,7 +25,7 @@ class CreateKeyForPropsSpec extends Specification { isUniqueWithinGroup() >> true getUniquenessGroup() >> ["p1", "p2"] } - propToConfig.apply(grailsProp) >> mappedForm + propToConfig.toPropertyConfig(grailsProp) >> mappedForm def otherProp1 = Mock(PersistentProperty) def otherProp2 = Mock(PersistentProperty) @@ -43,7 +43,7 @@ class CreateKeyForPropsSpec extends Specification { subject.createKeyForProps(grailsProp, path, table, baseColumnName) then: - 1 * propToConfig.apply(grailsProp) >> mappedForm + 1 * propToConfig.toPropertyConfig(grailsProp) >> mappedForm 1 * grailsProp.getOwner() >> owner 1 * mappedForm.isUnique() >> true 1 * mappedForm.isUniqueWithinGroup() >> true @@ -70,13 +70,13 @@ class CreateKeyForPropsSpec extends Specification { isUniqueWithinGroup() >> true getUniquenessGroup() >> ["p1"] } - propToConfig.apply(grailsProp) >> mappedForm + propToConfig.toPropertyConfig(grailsProp) >> mappedForm when: subject.createKeyForProps(grailsProp, null, new Table("t"), "base") then: - 1 * propToConfig.apply(grailsProp) >> mappedForm + 1 * propToConfig.toPropertyConfig(grailsProp) >> mappedForm 0 * grailsProp.getOwner() >> owner 1 * mappedForm.isUnique() >> false 0 * uniqueKeyCreator._ @@ -100,7 +100,7 @@ class CreateKeyForPropsSpec extends Specification { isUniqueWithinGroup() >> true getUniquenessGroup() >> ["missingProp"] } - propToConfig.apply(grailsProp) >> mappedForm + propToConfig.toPropertyConfig(grailsProp) >> mappedForm owner.getPropertyByName("missingProp") >> null @@ -109,7 +109,7 @@ class CreateKeyForPropsSpec extends Specification { then: thrown(MappingException) - 1 * propToConfig.apply(grailsProp) >> mappedForm + 1 * propToConfig.toPropertyConfig(grailsProp) >> mappedForm 1 * grailsProp.getOwner() >> owner 1 * mappedForm.isUnique() >> true 1 * mappedForm.isUniqueWithinGroup() >> true diff --git a/grails-data-hibernate6/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/PropertyBinderSpec.groovy b/grails-data-hibernate6/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/PropertyBinderSpec.groovy index 2ac29ec488..c44344032e 100644 --- a/grails-data-hibernate6/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/PropertyBinderSpec.groovy +++ b/grails-data-hibernate6/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/PropertyBinderSpec.groovy @@ -29,7 +29,7 @@ class PropertyBinderSpec extends HibernateGormDatastoreSpec { def config = Mock(PropertyConfig) when: - persistentPropertyToPropertyConfig.apply(persistentProperty) >> config + persistentPropertyToPropertyConfig.toPropertyConfig(persistentProperty) >> config bidirectionalManyToOneWithListMapping.isBidirectionalManyToOneWithListMapping(persistentProperty, property) >> isBidirectional config.getInsertable() >> insertable config.getUpdatable() >> updateable @@ -73,7 +73,7 @@ class PropertyBinderSpec extends HibernateGormDatastoreSpec { def config = Mock(PropertyConfig) when: - persistentPropertyToPropertyConfig.apply(association) >> config + persistentPropertyToPropertyConfig.toPropertyConfig(association) >> config config.getAccessType() >> AccessType.PROPERTY cascadeBehaviorFetcher.getCascadeBehaviour(association) >> "all-delete-orphan" binder.bindProperty(association, property) @@ -94,7 +94,7 @@ class PropertyBinderSpec extends HibernateGormDatastoreSpec { def config = Mock(PropertyConfig) when: - persistentPropertyToPropertyConfig.apply(persistentProperty) >> config + persistentPropertyToPropertyConfig.toPropertyConfig(persistentProperty) >> config config.getAccessType() >> AccessType.PROPERTY binder.bindProperty(persistentProperty, property) diff --git a/grails-data-hibernate6/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/SimpleValueBinderSpec.groovy b/grails-data-hibernate6/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/SimpleValueBinderSpec.groovy index 423b496ac5..3774d34b30 100644 --- a/grails-data-hibernate6/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/SimpleValueBinderSpec.groovy +++ b/grails-data-hibernate6/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/SimpleValueBinderSpec.groovy @@ -10,7 +10,6 @@ import org.grails.orm.hibernate.cfg.PropertyConfig import org.hibernate.id.enhanced.SequenceStyleGenerator import org.hibernate.mapping.Column import org.hibernate.mapping.SimpleValue -import org.hibernate.mapping.Table import spock.lang.Specification class SimpleValueBinderSpec extends Specification { @@ -39,7 +38,7 @@ class SimpleValueBinderSpec extends Specification { def props = new Properties(); props.setProperty('p1','v1') // stubs - persistentPropertyToPropertyConfig.apply(prop) >> pc + persistentPropertyToPropertyConfig.toPropertyConfig(prop) >> pc prop.getOwner() >> owner hibernateEntityWrapper.getMappedForm(owner) >> mapping typeNameProvider.getTypeName(prop, mapping) >> "custom.Type" @@ -68,7 +67,7 @@ class SimpleValueBinderSpec extends Specification { def sv = Mock(SimpleValue) sv.getTable() >> null - persistentPropertyToPropertyConfig.apply(prop) >> pc + persistentPropertyToPropertyConfig.toPropertyConfig(prop) >> pc prop.getOwner() >> owner hibernateEntityWrapper.getMappedForm(owner) >> mapping typeNameProvider.getTypeName(prop, mapping) >> null @@ -96,8 +95,8 @@ class SimpleValueBinderSpec extends Specification { def sv = Mock(SimpleValue) def sv2 = Mock(SimpleValue) - persistentPropertyToPropertyConfig.apply(prop) >> pc - persistentPropertyToPropertyConfig.apply(tenantProp) >> tenantPc + persistentPropertyToPropertyConfig.toPropertyConfig(prop) >> pc + persistentPropertyToPropertyConfig.toPropertyConfig(tenantProp) >> tenantPc prop.getOwner() >> owner tenantProp.getOwner() >> owner hibernateEntityWrapper.getMappedForm(owner) >> mapping @@ -133,7 +132,7 @@ class SimpleValueBinderSpec extends Specification { sv.getTable() >> null def genProps = new Properties(); genProps.setProperty('sequence','seq_name'); genProps.setProperty('foo','bar') - persistentPropertyToPropertyConfig.apply(prop) >> pc + persistentPropertyToPropertyConfig.toPropertyConfig(prop) >> pc prop.getOwner() >> owner hibernateEntityWrapper.getMappedForm(owner) >> mapping typeNameProvider.getTypeName(prop, mapping) >> 'Y' @@ -162,7 +161,7 @@ class SimpleValueBinderSpec extends Specification { def sv = Mock(SimpleValue) sv.getTable() >> null - persistentPropertyToPropertyConfig.apply(prop) >> pc + persistentPropertyToPropertyConfig.toPropertyConfig(prop) >> pc prop.getOwner() >> owner hibernateEntityWrapper.getMappedForm(owner) >> mapping typeNameProvider.getTypeName(prop, mapping) >> 'Z' diff --git a/grails-data-hibernate6/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/TypeNameProviderSpec.groovy b/grails-data-hibernate6/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/TypeNameProviderSpec.groovy index ce9f646c1f..b7e07c2bae 100644 --- a/grails-data-hibernate6/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/TypeNameProviderSpec.groovy +++ b/grails-data-hibernate6/core/src/test/groovy/org/grails/orm/hibernate/cfg/domainbinding/TypeNameProviderSpec.groovy @@ -54,7 +54,7 @@ class TypeNameProviderSpec extends HibernateGormDatastoreSpec { def property = persistentEntity.getPersistentProperties()[0] Mapping mapping = new Mapping() mapping.setUserTypes([(Salary): SalaryType]) - PropertyConfig config = new PersistentPropertyToPropertyConfig().apply(property) + PropertyConfig config = new PersistentPropertyToPropertyConfig().toPropertyConfig(property) def name = new TypeNameProvider().getTypeName(property, mapping) then: diff --git a/report02.txt b/report02.txt new file mode 100644 index 0000000000..98768c2b15 --- /dev/null +++ b/report02.txt @@ -0,0 +1,28 @@ +ByteBuddyProxySpec. Test that accessing id on a proxy does not initialize it +CompositeIdWithManyToOneAndSequenceSpec. Test composite id many to one and sequence +DataServiceSpec. test findBy dynamic finder with @Join doesn't return proxies +DataServiceSpec. test list products +DetachCriteriaSubquerySpec. test detached associated criteria in subquery +DetachCriteriaSubquerySpec. test that detached criteria subquery should create implicit alias instead of using this_ +DetachedCriteriaProjectionAliasSpec. test aliased projection in detached criteria subquery +DirtyCheckingSpec. test relationships not marked dirty when domain objects are used +EnumMappingSpec. Test enum mapping +ExecuteQueryWithinValidatorSpec. test executeQuery method executed during validation +GroovyProxySpec. Test creation and behavior of Groovy proxies +HibernateDirtyCheckingSpec. test dirty checking on embedded +HibernateEntityTransformationSpec. test hibernate entity transformation +HibernateGormStaticApiSpec. Test executeUpdate +HibernateGormStaticApiSpec. Test executeUpdate with named params +HibernateGormStaticApiSpec. Test executeUpdate with positional params +HibernateGormStaticApiSpec. test simple sql query +HibernateGormStaticApiSpec. Test withNewSession +IdentityEnumTypeSpec. test identity enum type +IdentityEnumTypeSpec. test identity enum type 2 +JoinPerfSpec. test read performance with join query +MultipleDataSourceMetadataSpec. test metadata retrieval for multiple dataSources +MultiTenancyBidirectionalManyToManySpec. test hasMany and 'in' query with multi-tenancy +MultiTenancyUnidirectionalOneToManySpec. test multi-tenancy with unidirectional one-to-many +SubqueryAliasSpec. Test subquery with root alias +TwoUnidirectionalHasManySpec. test two undirectional one to many references +UpdateWithProxyPresentSpec. Test update unidirectional oneToMany with proxy +WhereQueryWithAssociationSortSpec. Test sort with where query that queries association
