public interface ServiceEnhancer extends ServiceImplementer
Complement to the ServiceImplementer which only runs if another implementer has not already implemented the method. The ServiceEnhancer on other hand will run even if a prior implementer has implemented the method
The interface also allows implementation to differentiate between implementation and enhancement operations
| Type Params | Return Type | Name and description |
|---|---|---|
|
public boolean |
doesEnhance(org.codehaus.groovy.ast.ClassNode domainClass, org.codehaus.groovy.ast.MethodNode methodNode)Does this service enhancer enhance the method |
|
public void |
enhance(org.codehaus.groovy.ast.ClassNode domainClassNode, org.codehaus.groovy.ast.MethodNode abstractMethodNode, org.codehaus.groovy.ast.MethodNode newMethodNode, org.codehaus.groovy.ast.ClassNode targetClassNode)Enhances the method |
| Methods inherited from class | Name |
|---|---|
interface ServiceImplementer |
doesImplement, implement |
Does this service enhancer enhance the method
domainClass - The domain class that this implementor applies to. If not known will be equal to ClassHelper.OBJECT_TYPEmethodNode - The abstract method nodeEnhances the method
targetClassNode - The target class nodeabstractMethodNode - The abstract method node to implementnewMethodNode - The new method node being implemented