Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
1.0
-
None
-
Operating System: other
Platform: Other
-
39193
Description
From: Guido Anzuoni <ganzuoni@gmail.com>
Here I will try to explain may changes to see if you agree to include in the trunk.
1. UberspectImpl
I need to include static methods resolution in expressions (e.g.
System.currentTimeMillis()). I patched the class to allow it.
2. JexlContext
Resolving vars using a Map is not enough flexible for my needs. I have modified
it to have a single method
public Object resolveVariable(String var);
This allows me for better flexibility in the resolution process.
I have implemented a JextContext based on a java.util.Map, an extensible
JexlContext and a delegating JexlContext.
The extensible resolver is abstract and has a "parent" context to which
delegates in the case local resolution failes.
Delegating implementation extends the extensible context and uses another
JexlContext for local resolution.
More, I have removed any reference to JexlContex.getVars() in the code.
If you wish I can send the modified classes to better evaluate my changes.