org.objectweb.speedo.runtime.query.parser
Class SpeedoQLVariableVisitor

org.objectweb.speedo.runtime.query.parser.SpeedoQLAbstractVisitor
  |
  +--org.objectweb.speedo.runtime.query.parser.SpeedoQLVariableVisitor
All Implemented Interfaces:
SpeedoQLVisitor

public class SpeedoQLVariableVisitor
extends SpeedoQLAbstractVisitor

Implementation of a visitor that creates a map of pairs [id,JormExtent] for all defined identifiers of the query.


Inner classes inherited from class org.objectweb.speedo.runtime.query.parser.SpeedoQLAbstractVisitor
SpeedoQLAbstractVisitor.IdValue, SpeedoQLAbstractVisitor.VisitorException
 
Field Summary
 org.objectweb.medor.query.jorm.lib.ClassExtent classExtent
           
 
Fields inherited from class org.objectweb.speedo.runtime.query.parser.SpeedoQLAbstractVisitor
CONTAINS_IN, CONTAINS_MEMBEROF, curClass, JORM_NAME, lastName, logger, NAVIGATION, params, UNDEFINED, vars
 
Constructor Summary
SpeedoQLVariableVisitor(SimpleNode speedoql, org.objectweb.jorm.metainfo.api.Manager manager)
          constructor
 
Method Summary
 org.objectweb.medor.query.api.QueryTree getQueryTree()
          get the Map that was built from visiting the lexical query tree
 void startVisiting()
          The visit of the tree starts here.
 java.lang.Object visit(ASTAdditiveExpression node, java.lang.Object data)
           
 java.lang.Object visit(ASTArgumentList node, java.lang.Object data)
           
 java.lang.Object visit(ASTCastExpression node, java.lang.Object data)
           
 java.lang.Object visit(ASTLiteral node, java.lang.Object data)
           
 java.lang.Object visit(ASTPrimary node, java.lang.Object data)
           
 java.lang.Object visit(ASTQualifiedName node, java.lang.Object data)
           
 java.lang.Object visit(ASTRelationalExpression node, java.lang.Object data)
           
 java.lang.Object visit(ASTSpeedoPrimary node, java.lang.Object data)
          ********************* VISITOR METHODS ***********************************
 java.lang.Object visit(ASTSpeedoQL node, java.lang.Object data)
           
 java.lang.Object visit(ASTType node, java.lang.Object data)
           
 java.lang.Object visit(ASTUnaryExpression node, java.lang.Object data)
           
 
Methods inherited from class org.objectweb.speedo.runtime.query.parser.SpeedoQLAbstractVisitor
alias2fullname, getEndString, getLogger, getLoggerFactory, getMedorFieldFromPath, mergePath, setCurrentClass, setLogger, setLoggerFactory, setParams, setVars, splitEndPath, splitPath, visit, visit, withoutThis
 

Field Detail

classExtent

public org.objectweb.medor.query.jorm.lib.ClassExtent classExtent
Constructor Detail

SpeedoQLVariableVisitor

public SpeedoQLVariableVisitor(SimpleNode speedoql,
                               org.objectweb.jorm.metainfo.api.Manager manager)
constructor
Parameters:
speedoql - root of the lexical tree
manager - JORM meta information manager
Method Detail

startVisiting

public void startVisiting()
                   throws java.lang.Exception
The visit of the tree starts here. Please setup current class, params and vars hashtable before calling this method.

getQueryTree

public org.objectweb.medor.query.api.QueryTree getQueryTree()
get the Map that was built from visiting the lexical query tree

visit

public java.lang.Object visit(ASTSpeedoPrimary node,
                              java.lang.Object data)
********************* VISITOR METHODS ***********************************
Overrides:
visit in class SpeedoQLAbstractVisitor

visit

public java.lang.Object visit(ASTSpeedoQL node,
                              java.lang.Object data)
Overrides:
visit in class SpeedoQLAbstractVisitor

visit

public java.lang.Object visit(ASTPrimary node,
                              java.lang.Object data)
Overrides:
visit in class SpeedoQLAbstractVisitor

visit

public java.lang.Object visit(ASTRelationalExpression node,
                              java.lang.Object data)
Overrides:
visit in class SpeedoQLAbstractVisitor

visit

public java.lang.Object visit(ASTAdditiveExpression node,
                              java.lang.Object data)
Overrides:
visit in class SpeedoQLAbstractVisitor

visit

public java.lang.Object visit(ASTUnaryExpression node,
                              java.lang.Object data)
Overrides:
visit in class SpeedoQLAbstractVisitor

visit

public java.lang.Object visit(ASTCastExpression node,
                              java.lang.Object data)
Overrides:
visit in class SpeedoQLAbstractVisitor

visit

public java.lang.Object visit(ASTArgumentList node,
                              java.lang.Object data)
Overrides:
visit in class SpeedoQLAbstractVisitor

visit

public java.lang.Object visit(ASTLiteral node,
                              java.lang.Object data)
Overrides:
visit in class SpeedoQLAbstractVisitor

visit

public java.lang.Object visit(ASTType node,
                              java.lang.Object data)
Overrides:
visit in class SpeedoQLAbstractVisitor

visit

public java.lang.Object visit(ASTQualifiedName node,
                              java.lang.Object data)
Overrides:
visit in class SpeedoQLAbstractVisitor