|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.ow2.jonas.lib.ejb21.sql.EjbqlAbstractVisitor
org.ow2.jonas.lib.ejb21.sql.EjbqlQueryFilterVisitor
public class EjbqlQueryFilterVisitor
Implementation of a visitor that creates the filter corresponding to the WHERE clause. Created on Sep 6, 2002
| Nested Class Summary |
|---|
| Nested classes/interfaces inherited from class org.ow2.jonas.lib.ejb21.sql.EjbqlAbstractVisitor |
|---|
EjbqlAbstractVisitor.IdValue, EjbqlAbstractVisitor.VisitorException |
| Constructor Summary | |
|---|---|
EjbqlQueryFilterVisitor(org.objectweb.jorm.api.PMapper _mapper,
Map _fields,
Class[] parameterTypes,
ASTEJBQL ejbql,
org.objectweb.medor.query.jorm.lib.QueryBuilder qb)
Constructor |
|
| Method Summary | |
|---|---|
org.objectweb.medor.expression.api.Expression |
getQueryFilter()
get the query filter that was built from visiting the syntaxic tree |
Object |
visit(ASTArithmeticExpression node,
Object data)
Push corresponding Expression to the stack. |
Object |
visit(ASTArithmeticFactor node,
Object data)
Push corresponding Expression to the stack. |
Object |
visit(ASTArithmeticLiteral node,
Object data)
Visit child nodes arithmetic_literal ::= integer_literal | floatingpoint_literal |
Object |
visit(ASTArithmeticTerm node,
Object data)
Push corresponding Expression to the stack. |
Object |
visit(ASTBetweenExpression node,
Object data)
Push corresponding Expression to the stack. |
Object |
visit(ASTBooleanExpression node,
Object data)
Visit child nodes boolean_expression ::= cmp_path_expression | boolean_literal | input_parameter |
Object |
visit(ASTBooleanLiteral node,
Object data)
Node with value set to litteral boolean. |
Object |
visit(ASTCmpPathExpression node,
Object data)
Push corresponding MedorField to the stack. |
Object |
visit(ASTCollectionMemberExpression node,
Object data)
Push corresponding Expression to the stack. |
Object |
visit(ASTCollectionValuedPathExpression node,
Object data)
Push corresponding MedorField to the stack. |
Object |
visit(ASTComparisonExpression node,
Object data)
Push corresponding Expression to the stack. |
Object |
visit(ASTConditionalExpression node,
Object data)
Push corresponding Expression to the stack. |
Object |
visit(ASTConditionalFactor node,
Object data)
Push corresponding Expression to the stack. |
Object |
visit(ASTConditionalTerm node,
Object data)
Push corresponding Expression to the stack. |
Object |
visit(ASTDatetimeExpression node,
Object data)
Visit child nodes datetime_expression ::= datetime_value | input_parameter |
Object |
visit(ASTEmptyCollectionComparisonExpression node,
Object data)
Nothing to do: Already taken into account in EjbqlVariableVisitor at the variables parsing, so, just push the OP_IGNORE in the stack empty_collection_comparison_expression ::= collection_valued_path_expression IS [ NOT ] EMPTY |
Object |
visit(ASTEntityBeanExpression node,
Object data)
Visit child nodes entity_bean_expression ::= entity_bean_value | input_parameter |
Object |
visit(ASTFloatingPointLiteral node,
Object data)
Node with value set to integer litteral arithmetic. |
Object |
visit(ASTFunctionsReturningNumerics node,
Object data)
visit child nodes Push corresponding Expression to the stack. |
Object |
visit(ASTFunctionsReturningStrings node,
Object data)
visit child nodes Push corresponding Expression to the stack. |
Object |
visit(ASTIdentificationVariable node,
Object data)
Node with value set to identification variable string. |
Object |
visit(ASTInExpression node,
Object data)
Push corresponding Expression to the stack. |
Object |
visit(ASTInputParameter node,
Object data)
Node with value set to parameter index (1..n) string. |
Object |
visit(ASTIntegerLiteral node,
Object data)
Node with value set to integer litteral arithmetic. |
Object |
visit(ASTLikeExpression node,
Object data)
Push corresponding Expression to the stack. |
Object |
visit(ASTLiteral node,
Object data)
Visit child nodes literal ::= string_literal | arithmetic_literal | boolean_literal |
Object |
visit(ASTNullComparisonExpression node,
Object data)
Push corresponding Expression to the stack. |
Object |
visit(ASTPath node,
Object data)
Push the Node to the stack |
Object |
visit(ASTSingleValuedCmrPathExpression node,
Object data)
Push corresponding MedorField to the stack. |
Object |
visit(ASTSingleValuedPathExpression node,
Object data)
Push corresponding MedorField to the stack. |
Object |
visit(ASTStringExpression node,
Object data)
Visit child nodes string_expression ::= string_primary | input_parameter |
Object |
visit(ASTStringLiteral node,
Object data)
Node with value set to litteral string. |
Object |
visit(ASTWhereClause node,
Object data)
If query contains WHERE clause, visit child nodes where_clause ::= WHERE conditional_expression |
| Methods inherited from class org.ow2.jonas.lib.ejb21.sql.EjbqlAbstractVisitor |
|---|
basePath, endsWith, mergePath, mergePath, splitPath, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public EjbqlQueryFilterVisitor(org.objectweb.jorm.api.PMapper _mapper,
Map _fields,
Class[] parameterTypes,
ASTEJBQL ejbql,
org.objectweb.medor.query.jorm.lib.QueryBuilder qb)
throws Exception
_mapper - the mapper of each fields.
Needed to build the expression for the IsNull with a reference as an operand.
This parameter may be null in case of the GenIC phase_fields - QueryTreeFields for all defined identifiers and all path expression of the queryparameterTypes - Type of paramaters of the finder/select methodejbql - root of the lexical tree of the query
Exception| Method Detail |
|---|
public org.objectweb.medor.expression.api.Expression getQueryFilter()
public Object visit(ASTWhereClause node,
Object data)
visit in interface EJBQLVisitorvisit in class EjbqlAbstractVisitornode - the node to visitdata - the current stack
public Object visit(ASTSingleValuedPathExpression node,
Object data)
visit in interface EJBQLVisitorvisit in class EjbqlAbstractVisitornode - the node to visitdata - the current stack
public Object visit(ASTCmpPathExpression node,
Object data)
visit in interface EJBQLVisitorvisit in class EjbqlAbstractVisitornode - the node to visitdata - the current stack
public Object visit(ASTSingleValuedCmrPathExpression node,
Object data)
visit in interface EJBQLVisitorvisit in class EjbqlAbstractVisitornode - the node to visitdata - the current stack
public Object visit(ASTCollectionValuedPathExpression node,
Object data)
visit in interface EJBQLVisitorvisit in class EjbqlAbstractVisitornode - the node to visitdata - the current stack
public Object visit(ASTConditionalExpression node,
Object data)
visit in interface EJBQLVisitorvisit in class EjbqlAbstractVisitornode - the node to visitdata - the current stack
public Object visit(ASTConditionalTerm node,
Object data)
visit in interface EJBQLVisitorvisit in class EjbqlAbstractVisitornode - the node to visitdata - the current stack
public Object visit(ASTConditionalFactor node,
Object data)
visit in interface EJBQLVisitorvisit in class EjbqlAbstractVisitornode - the node to visitdata - the current stack
public Object visit(ASTBetweenExpression node,
Object data)
visit in interface EJBQLVisitorvisit in class EjbqlAbstractVisitornode - the node to visitdata - the current stack
public Object visit(ASTInExpression node,
Object data)
visit in interface EJBQLVisitorvisit in class EjbqlAbstractVisitornode - the node to visitdata - the current stack
public Object visit(ASTLikeExpression node,
Object data)
visit in interface EJBQLVisitorvisit in class EjbqlAbstractVisitornode - the node to visitdata - the current stack
public Object visit(ASTNullComparisonExpression node,
Object data)
visit in interface EJBQLVisitorvisit in class EjbqlAbstractVisitornode - the node to visitdata - the current stack
public Object visit(ASTEmptyCollectionComparisonExpression node,
Object data)
visit in interface EJBQLVisitorvisit in class EjbqlAbstractVisitornode - the node to visitdata - the current stack
public Object visit(ASTCollectionMemberExpression node,
Object data)
visit in interface EJBQLVisitorvisit in class EjbqlAbstractVisitornode - the node to visitdata - the current stack
public Object visit(ASTComparisonExpression node,
Object data)
visit in interface EJBQLVisitorvisit in class EjbqlAbstractVisitornode - the node to visitdata - the current stack
public Object visit(ASTArithmeticExpression node,
Object data)
visit in interface EJBQLVisitorvisit in class EjbqlAbstractVisitornode - the node to visitdata - the current stack
public Object visit(ASTArithmeticTerm node,
Object data)
visit in interface EJBQLVisitorvisit in class EjbqlAbstractVisitornode - the node to visitdata - the current stack
public Object visit(ASTArithmeticFactor node,
Object data)
visit in interface EJBQLVisitorvisit in class EjbqlAbstractVisitornode - the node to visitdata - the current stack
public Object visit(ASTStringExpression node,
Object data)
visit in interface EJBQLVisitorvisit in class EjbqlAbstractVisitornode - the node to visitdata - the current stack
public Object visit(ASTDatetimeExpression node,
Object data)
visit in interface EJBQLVisitorvisit in class EjbqlAbstractVisitornode - the node to visitdata - the current stack
public Object visit(ASTBooleanExpression node,
Object data)
visit in interface EJBQLVisitorvisit in class EjbqlAbstractVisitornode - the node to visitdata - the current stack
public Object visit(ASTEntityBeanExpression node,
Object data)
visit in interface EJBQLVisitorvisit in class EjbqlAbstractVisitornode - the node to visitdata - the current stack
public Object visit(ASTFunctionsReturningStrings node,
Object data)
visit in interface EJBQLVisitorvisit in class EjbqlAbstractVisitornode - the node to visitdata - the current stack
public Object visit(ASTFunctionsReturningNumerics node,
Object data)
visit in interface EJBQLVisitorvisit in class EjbqlAbstractVisitornode - the node to visitdata - the current stack
public Object visit(ASTIdentificationVariable node,
Object data)
visit in interface EJBQLVisitorvisit in class EjbqlAbstractVisitornode - the node to visitdata - the current stack
public Object visit(ASTLiteral node,
Object data)
visit in interface EJBQLVisitorvisit in class EjbqlAbstractVisitornode - the node to visitdata - the current stack
public Object visit(ASTStringLiteral node,
Object data)
visit in interface EJBQLVisitorvisit in class EjbqlAbstractVisitornode - the node to visitdata - the current stack
public Object visit(ASTArithmeticLiteral node,
Object data)
visit in interface EJBQLVisitorvisit in class EjbqlAbstractVisitornode - the node to visitdata - the current stack
public Object visit(ASTIntegerLiteral node,
Object data)
visit in interface EJBQLVisitorvisit in class EjbqlAbstractVisitornode - the node to visitdata - the current stack
public Object visit(ASTFloatingPointLiteral node,
Object data)
visit in interface EJBQLVisitorvisit in class EjbqlAbstractVisitornode - the node to visitdata - the current stack
public Object visit(ASTBooleanLiteral node,
Object data)
visit in interface EJBQLVisitorvisit in class EjbqlAbstractVisitornode - the node to visitdata - the current stack
public Object visit(ASTInputParameter node,
Object data)
visit in interface EJBQLVisitorvisit in class EjbqlAbstractVisitornode - the node to visitdata - the current stack
public Object visit(ASTPath node,
Object data)
visit in interface EJBQLVisitorvisit in class EjbqlAbstractVisitornode - the node to visitdata - the current stack
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||