groovyx.gpars.activeobject
Class ActiveObjectASTTransformation

java.lang.Object
  extended by groovyx.gpars.activeobject.ActiveObjectASTTransformation
All Implemented Interfaces:
org.codehaus.groovy.transform.ASTTransformation

public class ActiveObjectASTTransformation
extends java.lang.Object
implements org.codehaus.groovy.transform.ASTTransformation

Transforms active objects so that their active methods can be invoked asynchronously through an internal actor.

Author:
Vaclav Pech

Inspired by org.codehaus.groovy.transform.LogASTTransformation


Nested Class Summary
private static class ActiveObjectASTTransformation.MyClassCodeExpressionTransformer
           
 
Constructor Summary
ActiveObjectASTTransformation()
           
 
Method Summary
private static boolean isRootActiveObject(org.codehaus.groovy.ast.ClassNode classNode)
           
private static java.lang.String lookupActorFieldName(org.codehaus.groovy.ast.AnnotationNode logAnnotation)
           
private static java.lang.String lookupActorGroupName(org.codehaus.groovy.ast.AnnotationNode logAnnotation)
           
 void visit(org.codehaus.groovy.ast.ASTNode[] nodes, org.codehaus.groovy.control.SourceUnit source)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ActiveObjectASTTransformation

public ActiveObjectASTTransformation()
Method Detail

visit

public void visit(org.codehaus.groovy.ast.ASTNode[] nodes,
                  org.codehaus.groovy.control.SourceUnit source)
Specified by:
visit in interface org.codehaus.groovy.transform.ASTTransformation

isRootActiveObject

private static boolean isRootActiveObject(org.codehaus.groovy.ast.ClassNode classNode)

lookupActorFieldName

private static java.lang.String lookupActorFieldName(org.codehaus.groovy.ast.AnnotationNode logAnnotation)

lookupActorGroupName

private static java.lang.String lookupActorGroupName(org.codehaus.groovy.ast.AnnotationNode logAnnotation)

Copyright © 2008–2010 Václav Pech. All Rights Reserved.