org.codehaus.aspectwerkz.expression
Class AdvisedClassFilterExpressionVisitor

java.lang.Object
  extended byorg.codehaus.aspectwerkz.expression.AdvisedClassFilterExpressionVisitor
All Implemented Interfaces:
ExpressionParserVisitor
Direct Known Subclasses:
AdvisedCflowClassFilterExpressionVisitor

public class AdvisedClassFilterExpressionVisitor
extends Object
implements ExpressionParserVisitor

The advised class filter visitor. Visit() methods are returning Boolean.TRUE/FALSE or null when decision cannot be taken. Using null allow composition of OR/AND with NOT in the best way.

Author:
Jonas Bonér , Alexandre Vasseur , Michael Nascimento

Field Summary
protected  String m_expression
           
protected  String m_namespace
           
protected  ASTRoot m_root
           
 
Constructor Summary
AdvisedClassFilterExpressionVisitor(String expression, String namespace, ASTRoot root)
          Creates a new expression.
 
Method Summary
 boolean match(ExpressionContext context)
          Matches the expression context.
 String toString()
          Returns the string representation of the AST.
 Object visit(ASTAnd node, Object data)
           
 Object visit(ASTArgParameter node, Object data)
           
 Object visit(ASTArgs node, Object data)
           
 Object visit(ASTAttribute node, Object data)
           
 Object visit(ASTCall node, Object data)
           
 Object visit(ASTCflowBelow node, Object data)
           
 Object visit(ASTCflow node, Object data)
           
 Object visit(ASTClassPattern node, Object data)
           
 Object visit(ASTConstructorPattern node, Object data)
           
 Object visit(ASTExecution node, Object data)
           
 Object visit(ASTExpression node, Object data)
           
 Object visit(ASTFieldPattern node, Object data)
           
 Object visit(ASTGet node, Object data)
           
 Object visit(ASTHandler node, Object data)
           
 Object visit(ASTHasField node, Object data)
           
 Object visit(ASTHasMethod node, Object data)
           
 Object visit(ASTMethodPattern node, Object data)
           
 Object visit(ASTModifier node, Object data)
           
 Object visit(ASTNot node, Object data)
           
 Object visit(ASTOr node, Object data)
           
 Object visit(ASTParameter node, Object data)
           
 Object visit(ASTPointcutReference node, Object data)
           
 Object visit(ASTRoot node, Object data)
           
 Object visit(ASTSet node, Object data)
           
 Object visit(ASTStaticInitialization node, Object data)
           
 Object visit(ASTWithinCode node, Object data)
           
 Object visit(ASTWithin node, Object data)
           
 Object visit(SimpleNode node, Object data)
           
protected  boolean visitAttributes(SimpleNode node, ReflectionInfo refInfo)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

m_root

protected final ASTRoot m_root

m_expression

protected final String m_expression

m_namespace

protected final String m_namespace
Constructor Detail

AdvisedClassFilterExpressionVisitor

public AdvisedClassFilterExpressionVisitor(String expression,
                                           String namespace,
                                           ASTRoot root)
Creates a new expression.

Parameters:
expression - the expression as a string
namespace - the namespace
root - the AST root
Method Detail

match

public boolean match(ExpressionContext context)
Matches the expression context.

Parameters:
context -
Returns:

visit

public Object visit(SimpleNode node,
                    Object data)
Specified by:
visit in interface ExpressionParserVisitor

visit

public Object visit(ASTRoot node,
                    Object data)
Specified by:
visit in interface ExpressionParserVisitor

visit

public Object visit(ASTExpression node,
                    Object data)
Specified by:
visit in interface ExpressionParserVisitor

visit

public Object visit(ASTOr node,
                    Object data)
Specified by:
visit in interface ExpressionParserVisitor

visit

public Object visit(ASTAnd node,
                    Object data)
Specified by:
visit in interface ExpressionParserVisitor

visit

public Object visit(ASTNot node,
                    Object data)
Specified by:
visit in interface ExpressionParserVisitor

visit

public Object visit(ASTPointcutReference node,
                    Object data)
Specified by:
visit in interface ExpressionParserVisitor

visit

public Object visit(ASTExecution node,
                    Object data)
Specified by:
visit in interface ExpressionParserVisitor

visit

public Object visit(ASTCall node,
                    Object data)
Specified by:
visit in interface ExpressionParserVisitor

visit

public Object visit(ASTSet node,
                    Object data)
Specified by:
visit in interface ExpressionParserVisitor

visit

public Object visit(ASTGet node,
                    Object data)
Specified by:
visit in interface ExpressionParserVisitor

visit

public Object visit(ASTHandler node,
                    Object data)
Specified by:
visit in interface ExpressionParserVisitor

visit

public Object visit(ASTStaticInitialization node,
                    Object data)
Specified by:
visit in interface ExpressionParserVisitor

visit

public Object visit(ASTWithin node,
                    Object data)
Specified by:
visit in interface ExpressionParserVisitor

visit

public Object visit(ASTWithinCode node,
                    Object data)
Specified by:
visit in interface ExpressionParserVisitor

visit

public Object visit(ASTCflow node,
                    Object data)
Specified by:
visit in interface ExpressionParserVisitor

visit

public Object visit(ASTCflowBelow node,
                    Object data)
Specified by:
visit in interface ExpressionParserVisitor

visit

public Object visit(ASTArgs node,
                    Object data)
Specified by:
visit in interface ExpressionParserVisitor

visit

public Object visit(ASTHasMethod node,
                    Object data)
Specified by:
visit in interface ExpressionParserVisitor

visit

public Object visit(ASTHasField node,
                    Object data)
Specified by:
visit in interface ExpressionParserVisitor

visit

public Object visit(ASTClassPattern node,
                    Object data)
Specified by:
visit in interface ExpressionParserVisitor

visit

public Object visit(ASTMethodPattern node,
                    Object data)
Specified by:
visit in interface ExpressionParserVisitor

visit

public Object visit(ASTConstructorPattern node,
                    Object data)
Specified by:
visit in interface ExpressionParserVisitor

visit

public Object visit(ASTFieldPattern node,
                    Object data)
Specified by:
visit in interface ExpressionParserVisitor

visit

public Object visit(ASTParameter node,
                    Object data)
Specified by:
visit in interface ExpressionParserVisitor

visit

public Object visit(ASTArgParameter node,
                    Object data)
Specified by:
visit in interface ExpressionParserVisitor

visit

public Object visit(ASTAttribute node,
                    Object data)
Specified by:
visit in interface ExpressionParserVisitor

visit

public Object visit(ASTModifier node,
                    Object data)
Specified by:
visit in interface ExpressionParserVisitor

toString

public String toString()
Returns the string representation of the AST.

Returns:

visitAttributes

protected boolean visitAttributes(SimpleNode node,
                                  ReflectionInfo refInfo)


Copyright © 2002-2004 Jonas Bonér, Alexandre Vasseur. All Rights Reserved.