|
90 | 90 | import java.lang.reflect.Method; |
91 | 91 | import java.lang.reflect.Modifier; |
92 | 92 | import java.net.URL; |
93 | | -import java.util.ArrayList; |
94 | | -import java.util.Collection; |
95 | | -import java.util.HashMap; |
96 | | -import java.util.List; |
97 | | -import java.util.Map; |
| 93 | +import java.util.*; |
98 | 94 | import java.util.regex.Pattern; |
99 | 95 |
|
100 | 96 | import static org.codehaus.groovy.ast.tools.GeneralUtils.*; |
101 | | -import static org.grails.compiler.injection.GrailsASTUtils.applyDefaultMethodTarget; |
102 | | -import static org.grails.compiler.injection.GrailsASTUtils.applyMethodTarget; |
103 | | -import static org.grails.compiler.injection.GrailsASTUtils.buildGetMapExpression; |
104 | | -import static org.grails.compiler.injection.GrailsASTUtils.buildGetPropertyExpression; |
105 | | -import static org.grails.compiler.injection.GrailsASTUtils.buildSetPropertyExpression; |
106 | | -import static org.grails.compiler.injection.GrailsASTUtils.hasAnnotation; |
107 | | -import static org.grails.compiler.injection.GrailsASTUtils.hasParameters; |
108 | | -import static org.grails.compiler.injection.GrailsASTUtils.isInheritedFromTrait; |
109 | | -import static org.grails.compiler.injection.GrailsASTUtils.removeAnnotation; |
| 97 | +import static org.grails.compiler.injection.GrailsASTUtils.*; |
110 | 98 |
|
111 | 99 | /** |
112 | 100 | * Enhances controller classes by converting closures actions to method actions and binding |
@@ -798,14 +786,12 @@ protected void initializeAndValidateCommandObjectParameter(final BlockStatement |
798 | 786 | } |
799 | 787 |
|
800 | 788 | if (argumentIsValidateable) { |
801 | | - final MethodCallExpression validateMethodCallExpression = |
802 | | - new MethodCallExpression(new VariableExpression(paramName), "validate", EMPTY_TUPLE); |
803 | | - final MethodNode validateMethod = |
804 | | - commandObjectNode.getMethod("validate", new Parameter[0]); |
| 789 | + final MethodCallExpression validateMethodCallExpression = callX(localVarX(paramName, commandObjectNode), "validate"); |
| 790 | + final MethodNode validateMethod = commandObjectNode.getMethod("validate", new Parameter[0]); |
805 | 791 | if (validateMethod != null) { |
806 | 792 | validateMethodCallExpression.setMethodTarget(validateMethod); |
807 | 793 | } |
808 | | - final Statement ifCommandObjectIsNotNullThenValidate = new IfStatement(new BooleanExpression(new VariableExpression(paramName)), new ExpressionStatement(validateMethodCallExpression), new ExpressionStatement(new EmptyExpression())); |
| 794 | + final Statement ifCommandObjectIsNotNullThenValidate = ifS(boolX(varX(paramName)), stmt(validateMethodCallExpression)); |
809 | 795 | wrapper.addStatement(ifCommandObjectIsNotNullThenValidate); |
810 | 796 | } else { |
811 | 797 | // try to dynamically invoke the .validate() method if it is available at runtime... |
|
0 commit comments