Add support for custom expression parsing

See gh-27604
This commit is contained in:
Xjzon 2021-10-28 00:11:59 +08:00 committed by Stephane Nicoll
parent 0416168d0e
commit 40d84c297b
1 changed files with 8 additions and 1 deletions

View File

@ -86,7 +86,7 @@ public abstract class CachedExpressionEvaluator {
ExpressionKey expressionKey = createKey(elementKey, expression); ExpressionKey expressionKey = createKey(elementKey, expression);
Expression expr = cache.get(expressionKey); Expression expr = cache.get(expressionKey);
if (expr == null) { if (expr == null) {
expr = getParser().parseExpression(expression); expr = parseExpression(expression);
cache.put(expressionKey, expr); cache.put(expressionKey, expr);
} }
return expr; return expr;
@ -96,6 +96,13 @@ public abstract class CachedExpressionEvaluator {
return new ExpressionKey(elementKey, expression); return new ExpressionKey(elementKey, expression);
} }
/**
* Parse the expression
* @param expression the expression to parse
*/
protected Expression parseExpression(String expression) {
return getParser().parseExpression(expression);
}
/** /**
* An expression key. * An expression key.