org.codehaus.groovy.grails.compiler.gorm
Class GormValidationTransformer

java.lang.Object
  extended by org.codehaus.groovy.grails.compiler.injection.AbstractGrailsArtefactTransformer
      extended by org.codehaus.groovy.grails.compiler.gorm.GormValidationTransformer
All Implemented Interfaces:
java.lang.Comparable, org.codehaus.groovy.grails.compiler.injection.ClassInjector, org.codehaus.groovy.grails.compiler.injection.GrailsArtefactClassInjector

public class GormValidationTransformer
extends org.codehaus.groovy.grails.compiler.injection.AbstractGrailsArtefactTransformer

Makes the validate methods statically available via an AST transformation.

Since:
2.0

Field Summary
static java.lang.String HAS_ERRORS_METHOD
           
 
Fields inherited from class org.codehaus.groovy.grails.compiler.injection.AbstractGrailsArtefactTransformer
CURRENT_PREFIX, METHOD_MISSING_METHOD_NAME, OBJECT_CLASS, PUBLIC_STATIC_MODIFIER, STATIC_METHOD_MISSING_METHOD_NAME, THIS_EXPRESSION
 
Fields inherited from interface org.codehaus.groovy.grails.compiler.injection.GrailsArtefactClassInjector
EMPTY_CLASS_ARRAY, ZERO_ARGS, ZERO_PARAMETERS
 
Fields inherited from interface org.codehaus.groovy.grails.compiler.injection.ClassInjector
PRIVATE_STATIC_MODIFIER
 
Constructor Summary
GormValidationTransformer()
           
 
Method Summary
 java.lang.String getArtefactType()
           
 java.lang.Class<?> getInstanceImplementation()
           
 java.lang.Class<?> getStaticImplementation()
           
protected  boolean isCandidateInstanceMethod(org.codehaus.groovy.ast.ClassNode classNode, org.codehaus.groovy.ast.MethodNode declaredMethod)
           
protected  boolean isStaticCandidateMethod(org.codehaus.groovy.ast.ClassNode classNode, org.codehaus.groovy.ast.MethodNode declaredMethod)
           
protected  void performInjectionInternal(java.lang.String apiInstanceProperty, org.codehaus.groovy.control.SourceUnit source, org.codehaus.groovy.ast.ClassNode classNode)
           
protected  boolean requiresStaticLookupMethod()
           
 boolean shouldInject(java.net.URL url)
           
 
Methods inherited from class org.codehaus.groovy.grails.compiler.injection.AbstractGrailsArtefactTransformer
compareTo, getArtefactTypes, performInjection, performInjection, populateAutowiredApiLookupMethod, populateDefaultApiLookupMethod, requiresAutowiring
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

HAS_ERRORS_METHOD

public static final java.lang.String HAS_ERRORS_METHOD
See Also:
Constant Field Values
Constructor Detail

GormValidationTransformer

public GormValidationTransformer()
Method Detail

isStaticCandidateMethod

protected boolean isStaticCandidateMethod(org.codehaus.groovy.ast.ClassNode classNode,
                                          org.codehaus.groovy.ast.MethodNode declaredMethod)
Overrides:
isStaticCandidateMethod in class org.codehaus.groovy.grails.compiler.injection.AbstractGrailsArtefactTransformer

requiresStaticLookupMethod

protected boolean requiresStaticLookupMethod()
Overrides:
requiresStaticLookupMethod in class org.codehaus.groovy.grails.compiler.injection.AbstractGrailsArtefactTransformer

getArtefactType

public java.lang.String getArtefactType()
Overrides:
getArtefactType in class org.codehaus.groovy.grails.compiler.injection.AbstractGrailsArtefactTransformer

getInstanceImplementation

public java.lang.Class<?> getInstanceImplementation()
Specified by:
getInstanceImplementation in class org.codehaus.groovy.grails.compiler.injection.AbstractGrailsArtefactTransformer

getStaticImplementation

public java.lang.Class<?> getStaticImplementation()
Specified by:
getStaticImplementation in class org.codehaus.groovy.grails.compiler.injection.AbstractGrailsArtefactTransformer

shouldInject

public boolean shouldInject(java.net.URL url)

isCandidateInstanceMethod

protected boolean isCandidateInstanceMethod(org.codehaus.groovy.ast.ClassNode classNode,
                                            org.codehaus.groovy.ast.MethodNode declaredMethod)
Overrides:
isCandidateInstanceMethod in class org.codehaus.groovy.grails.compiler.injection.AbstractGrailsArtefactTransformer

performInjectionInternal

protected void performInjectionInternal(java.lang.String apiInstanceProperty,
                                        org.codehaus.groovy.control.SourceUnit source,
                                        org.codehaus.groovy.ast.ClassNode classNode)
Overrides:
performInjectionInternal in class org.codehaus.groovy.grails.compiler.injection.AbstractGrailsArtefactTransformer