You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by he...@apache.org on 2009/09/03 17:46:55 UTC
svn commit: r811002 - in /commons/proper/jexl/branches/2.0/src:
main/java/org/apache/commons/jexl/UnifiedJEXL.java
test/java/org/apache/commons/jexl/UnifiedJEXLTest.java
Author: henrib
Date: Thu Sep 3 15:46:55 2009
New Revision: 811002
URL: http://svn.apache.org/viewvc?rev=811002&view=rev
Log:
Allow multiple statements in UnifiedJEXL expressions (ala JEXL Script versus JEXL Expression); add test
Modified:
commons/proper/jexl/branches/2.0/src/main/java/org/apache/commons/jexl/UnifiedJEXL.java
commons/proper/jexl/branches/2.0/src/test/java/org/apache/commons/jexl/UnifiedJEXLTest.java
Modified: commons/proper/jexl/branches/2.0/src/main/java/org/apache/commons/jexl/UnifiedJEXL.java
URL: http://svn.apache.org/viewvc/commons/proper/jexl/branches/2.0/src/main/java/org/apache/commons/jexl/UnifiedJEXL.java?rev=811002&r1=811001&r2=811002&view=diff
==============================================================================
--- commons/proper/jexl/branches/2.0/src/main/java/org/apache/commons/jexl/UnifiedJEXL.java (original)
+++ commons/proper/jexl/branches/2.0/src/main/java/org/apache/commons/jexl/UnifiedJEXL.java Thu Sep 3 15:46:55 2009
@@ -823,7 +823,7 @@
* @return the AST
*/
private JexlNode toNode(CharSequence expression) throws ParseException {
- return jexl.parse(expression, null).jjtGetChild(0);
+ return jexl.parse(expression, null);
}
/**
@@ -833,7 +833,7 @@
* @return the AST
*/
private JexlNode toNode(CharSequence expression, Info info) throws ParseException {
- return jexl.parse(expression, info).jjtGetChild(0);
+ return jexl.parse(expression, info);
}
/**
Modified: commons/proper/jexl/branches/2.0/src/test/java/org/apache/commons/jexl/UnifiedJEXLTest.java
URL: http://svn.apache.org/viewvc/commons/proper/jexl/branches/2.0/src/test/java/org/apache/commons/jexl/UnifiedJEXLTest.java?rev=811002&r1=811001&r2=811002&view=diff
==============================================================================
--- commons/proper/jexl/branches/2.0/src/test/java/org/apache/commons/jexl/UnifiedJEXLTest.java (original)
+++ commons/proper/jexl/branches/2.0/src/test/java/org/apache/commons/jexl/UnifiedJEXLTest.java Thu Sep 3 15:46:55 2009
@@ -58,30 +58,10 @@
public int getValue() {
return value;
}
- }
-
- public static class Quux {
- String str;
- Froboz froboz;
- public Quux(String str, int fro) {
- this.str = str;
- froboz = new Froboz(fro);
- }
-
- public Froboz getFroboz() {
- return froboz;
- }
-
- public void setFroboz(Froboz froboz) {
- this.froboz = froboz;
- }
-
- public String getStr() {
- return str;
- }
-
- public void setStr(String str) {
- this.str = str;
+ public int plus10() {
+ int i = value;
+ value += 10;
+ return i;
}
}
@@ -89,6 +69,12 @@
super(testName);
}
+ public void testStatement() throws Exception {
+ vars.put("froboz", new Froboz(123));
+ UnifiedJEXL.Expression check = EL.parse("${froboz.value = 32; froboz.plus10(); froboz.value}");
+ Object o = check.evaluate(context);
+ assertEquals("Result is not 42", new Integer(42), o);
+ }
public void testAssign() throws Exception {
UnifiedJEXL.Expression assign = EL.parse("${froboz.value = 10}");