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 c4fbe5f0856478f3b6a3bee037fe95c0edd2db16 Author: Walter Duque de Estrada <[email protected]> AuthorDate: Sat Mar 7 11:54:12 2026 -0600 hibernate7: codenarc --- .../hibernate/support/HibernateRuntimeUtils.groovy | 62 +++++++++++----------- 1 file changed, 31 insertions(+), 31 deletions(-) diff --git a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/support/HibernateRuntimeUtils.groovy b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/support/HibernateRuntimeUtils.groovy index edd3afde28..7c6b39223a 100644 --- a/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/support/HibernateRuntimeUtils.groovy +++ b/grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/support/HibernateRuntimeUtils.groovy @@ -1,20 +1,22 @@ package org.grails.orm.hibernate.support import groovy.transform.CompileStatic -import org.grails.datastore.gorm.GormValidateable -import org.grails.datastore.mapping.model.config.GormProperties -import org.grails.datastore.mapping.proxy.ProxyHandler -import org.grails.datastore.mapping.validation.ValidationErrors import org.codehaus.groovy.runtime.StringGroovyMethods -import org.grails.datastore.mapping.model.PersistentEntity -import org.grails.datastore.mapping.model.types.Association -import org.grails.datastore.mapping.model.types.OneToOne + import org.hibernate.Session import org.hibernate.SessionFactory + import org.springframework.core.convert.ConversionService import org.springframework.validation.Errors import org.springframework.validation.FieldError +import org.springframework.validation.ObjectError +import org.grails.datastore.gorm.GormValidateable +import org.grails.datastore.mapping.model.PersistentEntity +import org.grails.datastore.mapping.model.config.GormProperties +import org.grails.datastore.mapping.model.types.Association +import org.grails.datastore.mapping.model.types.OneToOne +import org.grails.datastore.mapping.validation.ValidationErrors /** * Utility methods used at runtime by the GORM for Hibernate implementation * @@ -24,14 +26,14 @@ import org.springframework.validation.FieldError @CompileStatic class HibernateRuntimeUtils { - private static final String DYNAMIC_FILTER_ENABLER = "dynamicFilterEnabler"; + private static final String DYNAMIC_FILTER_ENABLER = "dynamicFilterEnabler" @SuppressWarnings("rawtypes") - public static void enableDynamicFilterEnablerIfPresent(SessionFactory sessionFactory, Session session) { + static void enableDynamicFilterEnablerIfPresent(SessionFactory sessionFactory, Session session) { if (sessionFactory != null && session != null) { - final Set definedFilterNames = sessionFactory.getDefinedFilterNames(); + final Set definedFilterNames = sessionFactory.getDefinedFilterNames() if (definedFilterNames != null && definedFilterNames.contains(DYNAMIC_FILTER_ENABLER)) - session.enableFilter(DYNAMIC_FILTER_ENABLER); // work around for HHH-2624 + session.enableFilter(DYNAMIC_FILTER_ENABLER) // work around for HHH-2624 } } @@ -43,14 +45,14 @@ class HibernateRuntimeUtils { * @param target object to initialize * @return the new Errors object */ - public static Errors setupErrorsProperty(Object target) { + static Errors setupErrorsProperty(Object target) { + MetaClass metaClass = GroovySystem.metaClassRegistry.getMetaClass(target.getClass()) boolean isGormValidateable = target instanceof GormValidateable - MetaClass mc = isGormValidateable ? null : GroovySystem.metaClassRegistry.getMetaClass(target.getClass()) def errors = new ValidationErrors(target) - Errors originalErrors = isGormValidateable ? ((GormValidateable)target).getErrors() : (Errors) mc.getProperty(target, GormProperties.ERRORS) + Errors originalErrors = isGormValidateable ? ((GormValidateable)target).getErrors() : (Errors) metaClass.getProperty(target, GormProperties.ERRORS) // Copy binding failures and any existing object-level errors for (Object o in originalErrors.allErrors) { if (o instanceof FieldError) { @@ -65,7 +67,7 @@ class HibernateRuntimeUtils { fe.defaultMessage)) } } else { - errors.addError((org.springframework.validation.ObjectError) o) + errors.addError((ObjectError) o) } } @@ -73,12 +75,12 @@ class HibernateRuntimeUtils { ((GormValidateable)target).setErrors(errors) } else { - mc.setProperty(target, GormProperties.ERRORS, errors); + metaClass.setProperty(target, GormProperties.ERRORS, errors) } - return errors; + return errors } - public static void autoAssociateBidirectionalOneToOnes(PersistentEntity entity, Object target) { + static void autoAssociateBidirectionalOneToOnes(PersistentEntity entity, Object target) { def mappingContext = entity.mappingContext for (Association association : entity.associations) { if (!(association instanceof OneToOne) || !association.bidirectional || !association.owningSide) { @@ -111,36 +113,34 @@ class HibernateRuntimeUtils { } } - static Object convertValueToType(Object passedValue, Class targetType, ConversionService conversionService) { - // workaround for GROOVY-6127, do not assign directly in parameters before it's fixed - Object value = passedValue - if(targetType != null && value != null && !(value in targetType)) { + static Object convertValueToType(Object value, Class targetType, ConversionService conversionService) { + if (targetType != null && value != null && !targetType.isInstance(value)) { if (value instanceof CharSequence) { value = value.toString() - if(value in targetType) { + if (targetType.isInstance(value)) { return value } } try { - if (value instanceof Number && (targetType==Long || targetType==Integer)) { - if(targetType == Long) { - value = ((Number)value).toLong() + if (value instanceof Number && (targetType == Long || targetType == Integer)) { + if (targetType == Long) { + value = ((Number) value).toLong() } else { - value = ((Number)value).toInteger() + value = ((Number) value).toInteger() } - } else if (value instanceof String && targetType in Number) { + } else if (value instanceof String && Number.isAssignableFrom(targetType)) { String strValue = value.trim() - if(targetType == Long) { + if (targetType == Long) { value = Long.parseLong(strValue) } else if (targetType == Integer) { value = Integer.parseInt(strValue) } else { - value = StringGroovyMethods.asType(strValue, targetType) + value = StringGroovyMethods.asType(strValue, targetType as Class<Object>) } } else { value = conversionService.convert(value, targetType) } - } catch (e) { + } catch (ignored) { // ignore } }
