Package org.grails.compiler.injection
Class DefaultGrailsDomainClassInjector
- java.lang.Object
-
- org.grails.compiler.injection.DefaultGrailsDomainClassInjector
-
- All Implemented Interfaces:
ClassInjector,GrailsArtefactClassInjector,GrailsDomainClassInjector
public class DefaultGrailsDomainClassInjector extends java.lang.Object implements GrailsDomainClassInjector, GrailsArtefactClassInjector
Default implementation of domain class injector interface that adds the 'id' and 'version' properties and other previously boilerplate code.- Since:
- 0.2
-
-
Field Summary
-
Fields inherited from interface grails.compiler.ast.ClassInjector
PRIVATE_STATIC_MODIFIER
-
Fields inherited from interface grails.compiler.ast.GrailsArtefactClassInjector
EMPTY_CLASS_ARRAY, ZERO_ARGS, ZERO_PARAMETERS
-
-
Constructor Summary
Constructors Constructor Description DefaultGrailsDomainClassInjector()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.String[]getArtefactTypes()voidperformInjection(org.codehaus.groovy.control.SourceUnit source, org.codehaus.groovy.ast.ClassNode classNode)Handles injection of properties, methods etc.voidperformInjection(org.codehaus.groovy.control.SourceUnit source, org.codehaus.groovy.classgen.GeneratorContext context, org.codehaus.groovy.ast.ClassNode classNode)Handles injection of properties, methods etc.voidperformInjectionOnAnnotatedClass(org.codehaus.groovy.control.SourceUnit source, org.codehaus.groovy.ast.ClassNode classNode)Handles injection of properties, methods etc.voidperformInjectionOnAnnotatedEntity(org.codehaus.groovy.ast.ClassNode classNode)Doesn't check with the specified ClassNode is a valid entity and assumes it is and proceeds with the injection regardless.booleanshouldInject(java.net.URL url)Returns whether this injector should injectprotected booleanshouldInjectClass(org.codehaus.groovy.ast.ClassNode classNode)
-
-
-
Method Detail
-
performInjection
public void performInjection(org.codehaus.groovy.control.SourceUnit source, org.codehaus.groovy.classgen.GeneratorContext context, org.codehaus.groovy.ast.ClassNode classNode)Description copied from interface:ClassInjectorHandles injection of properties, methods etc. into a class.- Specified by:
performInjectionin interfaceClassInjector- Parameters:
source- The source unitcontext- The generator contextclassNode- The ClassNode instance
-
performInjectionOnAnnotatedEntity
public void performInjectionOnAnnotatedEntity(org.codehaus.groovy.ast.ClassNode classNode)
Description copied from interface:GrailsDomainClassInjectorDoesn't check with the specified ClassNode is a valid entity and assumes it is and proceeds with the injection regardless.- Specified by:
performInjectionOnAnnotatedEntityin interfaceGrailsDomainClassInjector- Parameters:
classNode- The ClassNode
-
shouldInject
public boolean shouldInject(java.net.URL url)
Description copied from interface:ClassInjectorReturns whether this injector should inject- Specified by:
shouldInjectin interfaceClassInjector- Parameters:
url- The URL of the source file- Returns:
- true if injection should occur
-
shouldInjectClass
protected boolean shouldInjectClass(org.codehaus.groovy.ast.ClassNode classNode)
-
performInjection
public void performInjection(org.codehaus.groovy.control.SourceUnit source, org.codehaus.groovy.ast.ClassNode classNode)Description copied from interface:ClassInjectorHandles injection of properties, methods etc. into a class.- Specified by:
performInjectionin interfaceClassInjector- Parameters:
source- The source unitclassNode- The ClassNode instance
-
performInjectionOnAnnotatedClass
public void performInjectionOnAnnotatedClass(org.codehaus.groovy.control.SourceUnit source, org.codehaus.groovy.ast.ClassNode classNode)Description copied from interface:ClassInjectorHandles injection of properties, methods etc. into a class.- Specified by:
performInjectionOnAnnotatedClassin interfaceClassInjector- Parameters:
source- The source unitclassNode- The ClassNode instance
-
getArtefactTypes
public java.lang.String[] getArtefactTypes()
- Specified by:
getArtefactTypesin interfaceGrailsArtefactClassInjector
-
-