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

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

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

Transforms GORM entities making the GORM API available to Java.

Since:
2.0

Field Summary
static java.lang.String NEW_INSTANCE_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
GormTransformer()
           
 
Method Summary
 java.lang.String getArtefactType()
           
 java.lang.Class<?> getInstanceImplementation()
           
 java.lang.Class<?> getStaticImplementation()
           
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  org.codehaus.groovy.ast.MethodNode populateAutowiredApiLookupMethod(org.codehaus.groovy.ast.ClassNode classNode, org.codehaus.groovy.ast.ClassNode implementationNode, java.lang.String apiInstanceProperty, java.lang.String methodName, org.codehaus.groovy.ast.stmt.BlockStatement methodBody)
           
protected  boolean requiresStaticLookupMethod()
           
 boolean shouldInject(java.net.URL url)
           
 
Methods inherited from class org.codehaus.groovy.grails.compiler.injection.AbstractGrailsArtefactTransformer
compareTo, getArtefactTypes, isCandidateInstanceMethod, performInjection, performInjection, populateDefaultApiLookupMethod, requiresAutowiring
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

NEW_INSTANCE_METHOD

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

GormTransformer

public GormTransformer()
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

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

requiresStaticLookupMethod

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

populateAutowiredApiLookupMethod

protected org.codehaus.groovy.ast.MethodNode populateAutowiredApiLookupMethod(org.codehaus.groovy.ast.ClassNode classNode,
                                                                              org.codehaus.groovy.ast.ClassNode implementationNode,
                                                                              java.lang.String apiInstanceProperty,
                                                                              java.lang.String methodName,
                                                                              org.codehaus.groovy.ast.stmt.BlockStatement methodBody)
Overrides:
populateAutowiredApiLookupMethod 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

shouldInject

public boolean shouldInject(java.net.URL url)