public class InMemoryExpressionEvaluator extends AbstractExpressionEvaluator
Constructor and Description |
---|
InMemoryExpressionEvaluator(ExecutionContext ec,
Map params,
Map<String,Object> state,
Imports imports,
ClassLoaderResolver clr,
String candidateAlias,
String queryLang)
Constructor for an in-memory evaluator.
|
Modifier and Type | Method and Description |
---|---|
int |
getIntegerForLiteral(Literal lit)
Convenience method to get an int value from the supplied literal.
|
Map |
getParameterValues() |
String |
getQueryLanguage() |
Object |
getValueForInvokeExpression(InvokeExpression invokeExpr)
Method to evaluate an InvokeExpression.
|
Object |
getValueForPrimaryExpression(PrimaryExpression primExpr)
Convenience method to get the value for a PrimaryExpression.
|
Object |
getValueForVariableExpression(VariableExpression varExpr)
Convenience method to get the (current) value for a VariableExpression.
|
protected Object |
processAddExpression(Expression expr)
Method to process the supplied ADD expression.
|
protected Object |
processAndExpression(Expression expr)
Method to process the supplied AND expression.
|
protected Object |
processCaseExpression(CaseExpression expr)
Method to process the supplied case expression.
|
protected Object |
processCastExpression(Expression expr)
Method to process the supplied cast expression.
|
protected Object |
processComExpression(Expression expr)
Method to process the supplied COM expression.
|
protected Object |
processCreatorExpression(CreatorExpression expr)
Method to process the supplied creator expression.
|
protected Object |
processDivExpression(Expression expr)
Method to process the supplied DIV expression.
|
protected Object |
processEqExpression(Expression expr)
Method to process the supplied EQ expression.
|
protected Object |
processGteqExpression(Expression expr)
Method to process the supplied GTEQ expression.
|
protected Object |
processGtExpression(Expression expr)
Method to process the supplied GT expression.
|
protected Object |
processInvokeExpression(InvokeExpression expr)
Method to process the supplied invoke expression.
|
protected Object |
processIsExpression(Expression expr)
Method to process the supplied IS (instanceof) expression.
|
protected Object |
processIsnotExpression(Expression expr)
Method to process the supplied ISNOT (!instanceof) expression.
|
protected Object |
processLikeExpression(Expression expr)
Method to process the supplied LIKE expression.
|
protected Object |
processLiteral(Literal expr)
Method to process the supplied invoke expression.
|
protected Object |
processLteqExpression(Expression expr)
Method to process the supplied LTEQ expression.
|
protected Object |
processLtExpression(Expression expr)
Method to process the supplied LT expression.
|
protected Object |
processModExpression(Expression expr)
Method to process the supplied MOD expression.
|
protected Object |
processMulExpression(Expression expr)
Method to process the supplied MUL expression.
|
protected Object |
processNegExpression(Expression expr)
Method to process the supplied NEG expression.
|
protected Object |
processNoteqExpression(Expression expr)
Method to process the supplied NOTEQ expression.
|
protected Object |
processNotExpression(Expression expr)
Method to process the supplied NOT expression.
|
protected Object |
processOrExpression(Expression expr)
Method to process the supplied OR expression.
|
protected Object |
processParameterExpression(ParameterExpression expr)
Method to process the supplied parameter expression.
|
protected Object |
processPrimaryExpression(PrimaryExpression expr)
Method to process the supplied primary expression.
|
protected Object |
processSubExpression(Expression expr)
Method to process the supplied SUB expression.
|
protected Object |
processVariableExpression(VariableExpression expr)
Method to process the supplied variable expression.
|
void |
removeVariableValue(String id)
Method to remove a variable value.
|
void |
setVariableValue(String id,
Object value)
Method to set the value for a variable.
|
compileAdditiveMultiplicativeExpression, compileOrAndExpression, compilePrimaryExpression, compileRelationalExpression, compileUnaryExpression, evaluate, processDistinctExpression, processInExpression, processNotInExpression, processSubqueryExpression
public InMemoryExpressionEvaluator(ExecutionContext ec, Map params, Map<String,Object> state, Imports imports, ClassLoaderResolver clr, String candidateAlias, String queryLang)
ec
- ExecutionContextparams
- Input parametersstate
- Map of state values keyed by their symbolic nameimports
- Any importsclr
- ClassLoader resolvercandidateAlias
- Alias for the candidate class. With JDOQL this is "this".queryLang
- Query language (JDOQL, JPQL etc)public Map getParameterValues()
public String getQueryLanguage()
protected Object processAndExpression(Expression expr)
AbstractExpressionEvaluator
processAndExpression
in class AbstractExpressionEvaluator
expr
- The expressionprotected Object processEqExpression(Expression expr)
AbstractExpressionEvaluator
processEqExpression
in class AbstractExpressionEvaluator
expr
- The expressionprotected Object processLikeExpression(Expression expr)
AbstractExpressionEvaluator
processLikeExpression
in class AbstractExpressionEvaluator
expr
- The expressionprotected Object processNoteqExpression(Expression expr)
AbstractExpressionEvaluator
processNoteqExpression
in class AbstractExpressionEvaluator
expr
- The expressionprotected Object processOrExpression(Expression expr)
AbstractExpressionEvaluator
processOrExpression
in class AbstractExpressionEvaluator
expr
- The expressionprotected Object processGteqExpression(Expression expr)
AbstractExpressionEvaluator
processGteqExpression
in class AbstractExpressionEvaluator
expr
- The expressionprotected Object processGtExpression(Expression expr)
AbstractExpressionEvaluator
processGtExpression
in class AbstractExpressionEvaluator
expr
- The expressionprotected Object processIsExpression(Expression expr)
AbstractExpressionEvaluator
processIsExpression
in class AbstractExpressionEvaluator
expr
- The expressionprotected Object processIsnotExpression(Expression expr)
AbstractExpressionEvaluator
processIsnotExpression
in class AbstractExpressionEvaluator
expr
- The expressionprotected Object processCastExpression(Expression expr)
AbstractExpressionEvaluator
processCastExpression
in class AbstractExpressionEvaluator
expr
- The expressionprotected Object processLteqExpression(Expression expr)
AbstractExpressionEvaluator
processLteqExpression
in class AbstractExpressionEvaluator
expr
- The expressionprotected Object processLtExpression(Expression expr)
AbstractExpressionEvaluator
processLtExpression
in class AbstractExpressionEvaluator
expr
- The expressionprotected Object processAddExpression(Expression expr)
AbstractExpressionEvaluator
processAddExpression
in class AbstractExpressionEvaluator
expr
- The expressionprotected Object processSubExpression(Expression expr)
AbstractExpressionEvaluator
processSubExpression
in class AbstractExpressionEvaluator
expr
- The expressionprotected Object processDivExpression(Expression expr)
AbstractExpressionEvaluator
processDivExpression
in class AbstractExpressionEvaluator
expr
- The expressionprotected Object processModExpression(Expression expr)
AbstractExpressionEvaluator
processModExpression
in class AbstractExpressionEvaluator
expr
- The expressionprotected Object processMulExpression(Expression expr)
AbstractExpressionEvaluator
processMulExpression
in class AbstractExpressionEvaluator
expr
- The expressionprotected Object processNegExpression(Expression expr)
AbstractExpressionEvaluator
processNegExpression
in class AbstractExpressionEvaluator
expr
- The expressionprotected Object processComExpression(Expression expr)
AbstractExpressionEvaluator
processComExpression
in class AbstractExpressionEvaluator
expr
- The expressionprotected Object processNotExpression(Expression expr)
AbstractExpressionEvaluator
processNotExpression
in class AbstractExpressionEvaluator
expr
- The expressionprotected Object processCreatorExpression(CreatorExpression expr)
AbstractExpressionEvaluator
processCreatorExpression
in class AbstractExpressionEvaluator
expr
- The expressionprotected Object processInvokeExpression(InvokeExpression expr)
AbstractExpressionEvaluator
processInvokeExpression
in class AbstractExpressionEvaluator
expr
- The expressionprotected Object processLiteral(Literal expr)
AbstractExpressionEvaluator
processLiteral
in class AbstractExpressionEvaluator
expr
- The expressionprotected Object processVariableExpression(VariableExpression expr)
processVariableExpression
in class AbstractExpressionEvaluator
expr
- The expressionprotected Object processParameterExpression(ParameterExpression expr)
AbstractExpressionEvaluator
processParameterExpression
in class AbstractExpressionEvaluator
expr
- The expressionprotected Object processPrimaryExpression(PrimaryExpression expr)
AbstractExpressionEvaluator
processPrimaryExpression
in class AbstractExpressionEvaluator
expr
- The expressionprotected Object processCaseExpression(CaseExpression expr)
AbstractExpressionEvaluator
processCaseExpression
in class AbstractExpressionEvaluator
expr
- The expressionpublic Object getValueForInvokeExpression(InvokeExpression invokeExpr)
invokeExpr
- The InvokeExpressionpublic int getIntegerForLiteral(Literal lit)
lit
- The literalNucleusException
- if impossible to convert into an intpublic Object getValueForPrimaryExpression(PrimaryExpression primExpr)
primExpr
- Expressionpublic void setVariableValue(String id, Object value)
id
- Id of the variablevalue
- The value to usepublic void removeVariableValue(String id)
id
- The id of the variablepublic Object getValueForVariableExpression(VariableExpression varExpr)
VariableNotSetException
.varExpr
- Variable ExpressionVariableNotSetException
- Thrown when the variable has no value currently set.Copyright © 2015. All rights reserved.