This is an automated email from the ASF dual-hosted git repository. borinquenkid pushed a commit to branch test/document-datamapping-core-finders in repository https://gitbox.apache.org/repos/asf/grails-core.git
commit 71cdca8d119f3513c7d04a1890e871725af41519 Author: Walter Duque de Estrada <[email protected]> AuthorDate: Sat Aug 15 14:58:33 2026 -0500 Fix remaining IntelliJ warnings on DynamicFinder - getInitializedExpression's return value is now unused at both call sites (the last commit dropped the self-reassignments) - change it to void and drop the stale "@return"/removed-IsNull-path Javadoc that no longer matched the commented-out code. - Both populateArgumentsForCriteria overloads wrapped their sort-object instanceof chain in a redundant "if (sortObject != null)" guard - instanceof already returns false for null, so the wrapper is eliminable without changing behavior. Co-Authored-By: Claude Sonnet 5 <[email protected]> --- .../datastore/gorm/finders/DynamicFinder.java | 48 +++++++++------------- 1 file changed, 20 insertions(+), 28 deletions(-) diff --git a/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/finders/DynamicFinder.java b/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/finders/DynamicFinder.java index c5fd28e2e8..1cd8dfac6d 100644 --- a/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/finders/DynamicFinder.java +++ b/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/finders/DynamicFinder.java @@ -395,25 +395,23 @@ public class DynamicFinder implements FinderGrammar { Object sortObject = argMap.get(ARGUMENT_SORT); boolean ignoreCase = !argMap.containsKey(ARGUMENT_IGNORE_CASE) || ClassUtils.getBooleanFromMap(ARGUMENT_IGNORE_CASE, argMap); - if (sortObject != null) { - if (sortObject instanceof CharSequence) { - final String sort = sortObject.toString(); + if (sortObject instanceof CharSequence) { + final String sort = sortObject.toString(); + final Query.Order order = ORDER_DESC.equalsIgnoreCase(orderParam) ? Query.Order.desc(sort) : Query.Order.asc(sort); + if (ignoreCase) { + order.ignoreCase(); + } + query.order(order); + } + else if (sortObject instanceof Map sortMap) { + for (Object key : sortMap.keySet()) { + String sort = key.toString(); final Query.Order order = ORDER_DESC.equalsIgnoreCase(orderParam) ? Query.Order.desc(sort) : Query.Order.asc(sort); if (ignoreCase) { order.ignoreCase(); } query.order(order); } - else if (sortObject instanceof Map sortMap) { - for (Object key : sortMap.keySet()) { - String sort = key.toString(); - final Query.Order order = ORDER_DESC.equalsIgnoreCase(orderParam) ? Query.Order.desc(sort) : Query.Order.asc(sort); - if (ignoreCase) { - order.ignoreCase(); - } - query.order(order); - } - } } if (query instanceof QueryArgumentsAware) { @@ -463,15 +461,13 @@ public class DynamicFinder implements FinderGrammar { Object sortObject = argMap.get(ARGUMENT_SORT); boolean ignoreCase = !argMap.containsKey(ARGUMENT_IGNORE_CASE) || ClassUtils.getBooleanFromMap(ARGUMENT_IGNORE_CASE, argMap); - if (sortObject != null) { - if (sortObject instanceof CharSequence) { - final String sort = sortObject.toString(); - final String order = ORDER_DESC.equalsIgnoreCase(orderParam) ? ORDER_DESC : ORDER_ASC; - addSimpleSort(query, sort, order, ignoreCase); - } - else if (sortObject instanceof Map sortMap) { - applySortForMap(query, sortMap, ignoreCase); - } + if (sortObject instanceof CharSequence) { + final String sort = sortObject.toString(); + final String order = ORDER_DESC.equalsIgnoreCase(orderParam) ? ORDER_DESC : ORDER_ASC; + addSimpleSort(query, sort, order, ignoreCase); + } + else if (sortObject instanceof Map sortMap) { + applySortForMap(query, sortMap, ignoreCase); } if (query instanceof QueryArgumentsAware) { @@ -743,21 +739,17 @@ public class DynamicFinder implements FinderGrammar { } /** - * Initializes the arguments of the specified expression with the specified arguments. If the - * expression is an Equal expression and the argument is null then a new expression is created - * and returned of type IsNull. + * Initializes the arguments of the specified expression with the specified arguments. * * @param expression expression to initialize * @param arguments arguments to the expression - * @return the initialized expression */ - private MethodExpression getInitializedExpression(MethodExpression expression, Object[] arguments) { + private void getInitializedExpression(MethodExpression expression, Object[] arguments) { // if (expression instanceof Equal && arguments.length == 1 && arguments[0] == null) { // logic moved directly to Equal.createCriterion // expression = new IsNull(expression.propertyName); // } else { expression.setArguments(arguments); // } - return expression; } @Override
