svn commit: r1186317 - in /commons/proper/jexl/trunk/src: main/java/org/apache/commons/jexl2/ main/java/org/apache/commons/jexl2/internal/ main/java/org/apache/commons/jexl2/internal/introspection/ ma

2011-10-19 Thread henrib
Author: henrib
Date: Wed Oct 19 16:43:58 2011
New Revision: 1186317

URL: http://svn.apache.org/viewvc?rev=1186317&view=rev
Log:
JEXL-119:
* Exposed methods from internal/introspection to ease solving method * 
parameters matching;
* Modified UberspectImpl to search for "pseudo" indexed property patterns;
* Fixed Interpreter to better report property vs variable error;
* Added specific test;
* Updated changes.xml

Modified:

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/Interpreter.java

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/internal/Introspector.java

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/internal/introspection/ClassMap.java

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/internal/introspection/IntrospectorBase.java

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/internal/introspection/MethodKey.java

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/introspection/UberspectImpl.java
commons/proper/jexl/trunk/src/site/xdoc/changes.xml

commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/IssuesTest.java

Modified: 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/Interpreter.java
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/Interpreter.java?rev=1186317&r1=1186316&r2=1186317&view=diff
==
--- 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/Interpreter.java
 (original)
+++ 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/Interpreter.java
 Wed Oct 19 16:43:58 2011
@@ -1269,9 +1269,9 @@ public class Interpreter implements Pars
  || (numChildren == 1
  && node.jjtGetChild(0) instanceof ASTIdentifier
  && ((ASTIdentifier) 
node.jjtGetChild(0)).getRegister() >= 0))) {
-JexlException xjexl = propertyName != null?
-  new JexlException.Property(node, 
propertyName):
-  new JexlException.Variable(node, 
variableName.toString());
+JexlException xjexl = propertyName != null
+  ? new JexlException.Property(node, 
propertyName)
+  : new JexlException.Variable(node, 
variableName.toString());
 return unknownVariable(xjexl);
 }
 }
@@ -1482,7 +1482,6 @@ public class Interpreter implements Pars
 }
 }
 }
-
 return null;
 }
 

Modified: 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/internal/Introspector.java
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/internal/Introspector.java?rev=1186317&r1=1186316&r2=1186317&view=diff
==
--- 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/internal/Introspector.java
 (original)
+++ 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/internal/Introspector.java
 Wed Oct 19 16:43:58 2011
@@ -104,7 +104,15 @@ public class Introspector {
 base().setLoader(loader);
 }
 
-
+/**
+ * Gets a class by name through this introspector class loader.
+ * @param className the class name
+ * @return the class instance or null if it could not be found
+ */
+public Class getClassByName(String className) {
+return base().getClassByName(className);
+}
+
 /**
  * Gets the field named by key for the class c.
  *
@@ -112,7 +120,7 @@ public class Introspector {
  * @param key   Name of the field being searched for
  * @return a {@link java.lang.reflect.Field} or null if it does not exist 
or is not accessible
  * */
-protected final Field getField(Class c, String key) {
+public final Field getField(Class c, String key) {
 return base().getField(c, key);
 }
 
@@ -137,7 +145,7 @@ public class Introspector {
  * @return a {@link java.lang.reflect.Method}
  *  or null if no unambiguous method could be found through introspection.
  */
-protected final Method getMethod(Class c, String name, Object[] params) 
{
+public final Method getMethod(Class c, String name, Object[] params) {
 return base().getMethod(c, new MethodKey(name, params));
 }
 
@@ -150,7 +158,7 @@ public class Introspector {
  * @return a {@link java.lang.reflect.Method}
  *  or null if no unambiguous method could be found through introspection.
  */
-protected final Method getMethod(Class c, MethodKey key) {
+public final Method getMethod(Class c, MethodKey key) {
 return base().getMethod(c, key)

svn commit: r1186657 - /commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/introspection/UberspectImpl.java

2011-10-20 Thread henrib
Author: henrib
Date: Thu Oct 20 08:10:56 2011
New Revision: 1186657

URL: http://svn.apache.org/viewvc?rev=1186657&view=rev
Log:
JEXL-119:
* Stricter checks / defensive coding for indexed properties resolution

Modified:

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/introspection/UberspectImpl.java

Modified: 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/introspection/UberspectImpl.java
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/introspection/UberspectImpl.java?rev=1186657&r1=1186656&r2=1186657&view=diff
==
--- 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/introspection/UberspectImpl.java
 (original)
+++ 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/introspection/UberspectImpl.java
 Thu Oct 20 08:10:56 2011
@@ -16,6 +16,7 @@
  */
 package org.apache.commons.jexl2.introspection;
 
+import java.beans.IntrospectionException;
 import org.apache.commons.jexl2.internal.Introspector;
 import java.lang.reflect.Constructor;
 import java.lang.reflect.Field;
@@ -98,7 +99,7 @@ public class UberspectImpl extends Intro
 }
 return null;
 }
-
+
 /**
  * {@inheritDoc}
  */
@@ -117,7 +118,7 @@ public class UberspectImpl extends Intro
 return null;
 }
 }
-
+
 /**
  * {@inheritDoc}
  */
@@ -134,7 +135,7 @@ public class UberspectImpl extends Intro
 }
 return get;
 }
-
+
 /**
  * {@inheritDoc}
  */
@@ -150,7 +151,7 @@ public class UberspectImpl extends Intro
 }
 return set;
 }
-
+
 /**
  * Returns a class field.
  * @param obj the object
@@ -163,7 +164,6 @@ public class UberspectImpl extends Intro
 return getField(clazz, name);
 }
 
-
 /**
  * Attempts to find an indexed-property getter in an object.
  * The code attempts to find the list of methods getXXX() and setXXX().
@@ -174,16 +174,17 @@ public class UberspectImpl extends Intro
  * @return a JexlPropertyGet is successfull, null otherwise
  */
 protected JexlPropertyGet getIndexedGet(Object object, String name) {
-String base = name.substring(0, 1).toUpperCase() + name.substring(1);
-final String container = name;
-final Class clazz = object.getClass();
-final Method[] getters = getMethods(object.getClass(), "get" + base);
-final Method[] setters = getMethods(object.getClass(), "set" + base);
-if (getters != null) {
-return new IndexedType(container, clazz, getters, setters);
-} else {
-return null;
+if (object != null && name != null) {
+String base = name.substring(0, 1).toUpperCase() + 
name.substring(1);
+final String container = name;
+final Class clazz = object.getClass();
+final Method[] getters = getMethods(object.getClass(), "get" + 
base);
+final Method[] setters = getMethods(object.getClass(), "set" + 
base);
+if (getters != null) {
+return new IndexedType(container, clazz, getters, setters);
+}
 }
+return null;
 }
 
 /**
@@ -219,10 +220,10 @@ public class UberspectImpl extends Intro
  * {@inheritDoc}
  */
 public Object invoke(Object obj) throws Exception {
-if (clazz.equals(obj.getClass())) {
+if (obj != null && clazz.equals(obj.getClass())) {
 return new IndexedContainer(this, obj);
 } else {
-return null;
+throw new IntrospectionException("property resolution error");
 }
 }
 
@@ -230,7 +231,7 @@ public class UberspectImpl extends Intro
  * {@inheritDoc}
  */
 public Object tryInvoke(Object obj, Object key) {
-if (clazz.equals(obj.getClass()) && 
container.equals(key.toString())) {
+if (obj != null && key != null && clazz.equals(obj.getClass()) && 
container.equals(key.toString())) {
 return new IndexedContainer(this, obj);
 } else {
 return TRY_FAILED;
@@ -253,10 +254,10 @@ public class UberspectImpl extends Intro
 
 /**
  * Gets the value of a property from a container.
- * @param object the instance owning the container
- * @param key the property key
+ * @param object the instance owning the container (not null)
+ * @param key the property key (not null)
  * @return the property value
- * @throws Exception if the property can not be resolved
+ * @throws IntrospectionException if a property getter can not be found
  */
 private Obj

svn commit: r1187454 - /commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlArithmetic.java

2011-10-21 Thread henrib
Author: henrib
Date: Fri Oct 21 16:34:33 2011
New Revision: 1187454

URL: http://svn.apache.org/viewvc?rev=1187454&view=rev
Log:
JexlArithmetic: made Double.NaN equal to itself 

Modified:

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlArithmetic.java

Modified: 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlArithmetic.java
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlArithmetic.java?rev=1187454&r1=1187453&r2=1187454&view=diff
==
--- 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlArithmetic.java
 (original)
+++ 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlArithmetic.java
 Fri Oct 21 16:34:33 2011
@@ -562,7 +562,7 @@ public class JexlArithmetic {
 byte valueAsByte = ((Byte) val).byteValue();
 return Byte.valueOf((byte) -valueAsByte);
 } else if (val instanceof Boolean) {
-return ((Boolean) val).booleanValue()? Boolean.FALSE : 
Boolean.TRUE;
+return ((Boolean) val).booleanValue() ? Boolean.FALSE : 
Boolean.TRUE;
 }
 throw new ArithmeticException("Object negation:(" + val + ")");
 }
@@ -602,7 +602,7 @@ public class JexlArithmetic {
 long r = toLong(right);
 return Long.valueOf(l & r);
 }
-
+
 /**
  * Performs a bitwise or.
  * @param left the left operand
@@ -614,8 +614,7 @@ public class JexlArithmetic {
 long r = toLong(right);
 return Long.valueOf(l | r);
 }
-  
-
+
 /**
  * Performs a bitwise xor.
  * @param left the left operand
@@ -627,7 +626,7 @@ public class JexlArithmetic {
 long r = toLong(right);
 return Long.valueOf(l ^ r);
 }
-   
+
 /**
  * Performs a bitwise complement.
  * @param val the operand
@@ -644,6 +643,7 @@ public class JexlArithmetic {
  * @param right the right operator
  * @param operator the operator
  * @return -1 if left  < right; +1 if left > > right; 0 if left == 
right
+ * @throws ArithmeticException if either left or right is null
  */
 protected int compare(Object left, Object right, String operator) {
 if (left != null && right != null) {
@@ -658,7 +658,16 @@ public class JexlArithmetic {
 } else if (isFloatingPoint(left) || isFloatingPoint(right)) {
 double lhs = toDouble(left);
 double rhs = toDouble(right);
-if (lhs < rhs) {
+if (Double.isNaN(lhs)) {
+if (Double.isNaN(rhs)) {
+return 0;
+} else {
+return -1;
+}
+} else if (Double.isNaN(rhs)) {
+// lhs is not NaN
+return +1;
+} else if (lhs < rhs) {
 return -1;
 } else if (lhs > rhs) {
 return +1;
@@ -829,7 +838,7 @@ public class JexlArithmetic {
 }
 
 throw new ArithmeticException("Integer coercion: "
-+ val.getClass().getName() + ":(" +val+")");
++ val.getClass().getName() + ":(" + val + ")");
 }
 
 /**
@@ -863,7 +872,7 @@ public class JexlArithmetic {
 }
 
 throw new ArithmeticException("Long coercion: "
-+ val.getClass().getName() + ":(" +val+")");
++ val.getClass().getName() + ":(" + val + ")");
 }
 
 /**
@@ -900,7 +909,7 @@ public class JexlArithmetic {
 }
 
 throw new ArithmeticException("BigInteger coercion: "
-+ val.getClass().getName() + ":(" +val+")");
++ val.getClass().getName() + ":(" + val + ")");
 }
 
 /**
@@ -936,7 +945,7 @@ public class JexlArithmetic {
 }
 
 throw new ArithmeticException("BigDecimal coercion: "
-+ val.getClass().getName() + ":(" +val+")");
++ val.getClass().getName() + ":(" + val + ")");
 }
 
 /**
@@ -972,7 +981,7 @@ public class JexlArithmetic {
 }
 
 throw new ArithmeticException("Double coercion: "
-+ val.getClass().getName() + ":(" +val+")");
++ val.getClass().getName() + ":(" + val + ")");
 }
 
 /**




svn commit: r1187458 - in /commons/proper/jexl/trunk/src: main/java/org/apache/commons/jexl2/UnifiedJEXL.java test/java/org/apache/commons/jexl2/UnifiedJEXLTest.java

2011-10-21 Thread henrib
Author: henrib
Date: Fri Oct 21 16:40:17 2011
New Revision: 1187458

URL: http://svn.apache.org/viewvc?rev=1187458&view=rev
Log:
Added getVariables method (similar to JexlEngine) to extract all references 
variables from an UJEXL expression; 
Fixed issue where preparing a deferred expression would not always return an 
immediate expression;
Updated test accordingly

Modified:

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/UnifiedJEXL.java

commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/UnifiedJEXLTest.java

Modified: 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/UnifiedJEXL.java
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/UnifiedJEXL.java?rev=1187458&r1=1187457&r2=1187458&view=diff
==
--- 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/UnifiedJEXL.java
 (original)
+++ 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/UnifiedJEXL.java
 Fri Oct 21 16:40:17 2011
@@ -17,6 +17,10 @@
 package org.apache.commons.jexl2;
 
 import java.util.ArrayList;
+import java.util.Collections;
+import java.util.LinkedHashSet;
+import java.util.List;
+import java.util.Set;
 import org.apache.commons.jexl2.parser.JexlNode;
 import org.apache.commons.jexl2.parser.StringParser;
 
@@ -235,6 +239,28 @@ public final class UnifiedJEXL {
 }
 
 /**
+ * Checks whether this expression is immediate.
+ * @return true if immediate, false otherwise
+ */
+public boolean isImmediate() {
+return true;
+}
+
+/**
+ * Checks whether this expression is deferred.
+ * @return true if deferred, false otherwise
+ */
+public final boolean isDeferred() {
+return !isImmediate();
+}
+
+/**
+ * Gets this expression type.
+ * @return its type
+ */
+abstract ExpressionType getType();
+
+/**
  * Formats this expression, adding its source string representation in
  * comments if available: 'expression /*= source *\/'' .
  * @return the formatted expression string
@@ -267,7 +293,26 @@ public final class UnifiedJEXL {
  * Adds this expression's string representation to a StringBuilder.
  * @param strb the builder to fill
  */
-abstract void asString(StringBuilder strb);
+public abstract StringBuilder asString(StringBuilder strb);
+
+/**
+ * Gets the list of variables accessed by this expression.
+ * This method will visit all nodes of the sub-expressions and 
extract all variables whether they
+ * are written in 'dot' or 'bracketed' notation. (a.b is equivalent to 
a['b']).
+ * @return the set of variables, each as a list of strings (ant-ish 
variables use more than 1 string)
+ * or the empty set if no variables are used
+ */
+public Set> getVariables() {
+return Collections.emptySet();
+}
+
+/**
+ * Fills up the list of variables accessed by this expression.
+ * @param refs the set of variable being filled
+ */
+protected void getVariables(Set> refs) {
+// nothing to do
+}
 
 /**
  * When the expression is dependant upon immediate and deferred 
sub-expressions,
@@ -285,7 +330,9 @@ public final class UnifiedJEXL {
  * @return  an expression or null if an error occurs and the {@link 
JexlEngine} is silent
  * @throws UnifiedJEXL.Exception if an error occurs and the {@link 
JexlEngine} is not silent
  */
-public abstract Expression prepare(JexlContext context);
+public final Expression prepare(JexlContext context) {
+return UnifiedJEXL.this.prepare(context, this);
+}
 
 /**
  * Evaluates this expression.
@@ -297,22 +344,8 @@ public final class UnifiedJEXL {
  * silent
  * @throws UnifiedJEXL.Exception if an error occurs and the {@link 
JexlEngine} is not silent
  */
-public abstract Object evaluate(JexlContext context);
-
-/**
- * Checks whether this expression is immediate.
- * @return true if immediate, false otherwise
- */
-public boolean isImmediate() {
-return true;
-}
-
-/**
- * Checks whether this expression is deferred.
- * @return true if deferred, false otherwise
- */
-public final boolean isDeferred() {
-return !isImmediate();
+public final Object evaluate(JexlContext context) {
+return UnifiedJEXL.this.evaluate(context, this);
 }
 
 /**
@@ -327,18 +360,14 @@ public final class UnifiedJEXL {
 }
 

svn commit: r1187460 - in /commons/proper/jexl/trunk/src: main/java/org/apache/commons/jexl2/ main/java/org/apache/commons/jexl2/parser/ test/java/org/apache/commons/jexl2/

2011-10-21 Thread henrib
Author: henrib
Date: Fri Oct 21 16:45:11 2011
New Revision: 1187460

URL: http://svn.apache.org/viewvc?rev=1187460&view=rev
Log:
JEXL-120:
Made simpler version of ParseException that does not need to go through 
System.getProperty;
Made error messages a bit easier to understand;

Added:

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/ParseException.java
   (with props)
Modified:

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlException.java

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/SimpleNode.java

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/TokenMgrError.java

commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/ParseFailuresTest.java

Modified: 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlException.java
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlException.java?rev=1187460&r1=1187459&r2=1187460&view=diff
==
--- 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlException.java
 (original)
+++ 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlException.java
 Fri Oct 21 16:45:11 2011
@@ -19,6 +19,8 @@ package org.apache.commons.jexl2;
 import java.lang.reflect.InvocationTargetException;
 import java.lang.reflect.UndeclaredThrowableException;
 import org.apache.commons.jexl2.parser.JexlNode;
+import org.apache.commons.jexl2.parser.ParseException;
+import org.apache.commons.jexl2.parser.TokenMgrError;
 
 /**
  * Wraps any error that might occur during interpretation of a script or 
expression.
@@ -112,8 +114,25 @@ public class JexlException extends Runti
  * @param expr the expression
  * @param cause the javacc cause
  */
-public Tokenization(JexlInfo node, CharSequence expr, Throwable cause) 
{
-super(node, expr.toString(), cause);
+public Tokenization(JexlInfo node, CharSequence expr, TokenMgrError 
cause) {
+super(merge(node, cause), expr.toString(), cause);
+}
+
+/**
+ * Merge the node info and the cause info to obtain best possible 
location.
+ * @param node the node
+ * @param cause the cause
+ * @return the info to use
+ */
+private static DebugInfo merge(JexlInfo node, TokenMgrError cause) {
+DebugInfo dbgn = node != null? node.debugInfo() : null;
+if (cause == null) {
+return dbgn;
+} else if (dbgn == null) {
+return new DebugInfo("", cause.getLine(), cause.getColumn());
+} else {
+return new DebugInfo(dbgn.getName(), cause.getLine(), 
cause.getColumn());
+}
 }
 
 /**
@@ -122,10 +141,23 @@ public class JexlException extends Runti
 public String getExpression() {
 return super.detailedMessage();
 }
-
+
 @Override
 protected String detailedMessage() {
-return "!!! " + getExpression() + " !!!" + ", tokenization failed";
+int begin = info.debugInfo().getColumn();
+int end = begin + 5;
+begin -= 5;
+if (begin < 0) {
+end += 5;
+begin = 0;
+}
+int length = getExpression().length();
+if (length < 10) {
+return "parsing error in '" + getExpression() + "'";
+} else {
+return "parsing error near '... "
+   + getExpression().substring(begin, end > length? length 
: end) + " ...'";
+}
 }
 } 
 
@@ -136,11 +168,28 @@ public class JexlException extends Runti
 /**
  * Creates a new Variable exception instance.
  * @param node the offending ASTnode
- * @param expr the unknown variable
+ * @param expr the offending source
  * @param cause the javacc cause
  */
-public Parsing(JexlInfo node, CharSequence expr, Throwable cause) {
-super(node, expr.toString(), cause);
+public Parsing(JexlInfo node, CharSequence expr, ParseException cause) 
{
+super(merge(node, cause), expr.toString(), cause);
+}
+
+/**
+ * Merge the node info and the cause info to obtain best possible 
location.
+ * @param node the node
+ * @param cause the cause
+ * @return the info to use
+ */
+private static DebugInfo merge(JexlInfo node, ParseException cause) {
+DebugInfo dbgn = node != null? node.debugInfo() : null;
+ 

svn commit: r1187462 - in /commons/proper/jexl/trunk/src: main/java/org/apache/commons/jexl2/parser/CharSequenceReader.java main/java/org/apache/commons/jexl2/parser/StringParser.java test/java/org/ap

2011-10-21 Thread henrib
Author: henrib
Date: Fri Oct 21 16:49:41 2011
New Revision: 1187462

URL: http://svn.apache.org/viewvc?rev=1187462&view=rev
Log:
Utility classes to ease UJEXL template capabilities 

Added:

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/CharSequenceReader.java
   (with props)
Modified:

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/StringParser.java

commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/parser/ParserTest.java

Added: 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/CharSequenceReader.java
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/CharSequenceReader.java?rev=1187462&view=auto
==
--- 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/CharSequenceReader.java
 (added)
+++ 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/CharSequenceReader.java
 Fri Oct 21 16:49:41 2011
@@ -0,0 +1,207 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ * 
+ *  http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.commons.jexl2.parser;
+
+import java.io.Reader;
+import java.io.Serializable;
+
+/**
+ * {@link Reader} implementation that can read from String, StringBuffer,
+ * StringBuilder or CharBuffer.
+ * 
+ * Note: Supports {@link #mark(int)} and {@link #reset()}.
+ * Extracted from Commons IO.
+ */
+public class CharSequenceReader extends Reader implements Serializable {
+private final CharSequence charSequence;
+private int idx;
+private int mark;
+
+/**
+ * Construct a new instance with the specified character sequence.
+ * 
+ * @param charSequence The character sequence, may be null
+ */
+public CharSequenceReader(CharSequence charSequence) {
+this.charSequence = (charSequence != null ? charSequence : "");
+}
+
+/**
+ * Close resets the file back to the start and removes any marked position.
+ */
+@Override
+public void close() {
+idx = 0;
+mark = 0;
+}
+
+/**
+ * Mark the current position.
+ *
+ * @param readAheadLimit ignored
+ */
+@Override
+public void mark(int readAheadLimit) {
+mark = idx;
+}
+
+/**
+ * Get the current position.
+ * @return the position
+ */
+public int position() {
+return idx;
+}
+
+/**
+ * Mark is supported (returns true).
+ *
+ * @return true
+ */
+@Override
+public boolean markSupported() {
+return true;
+}
+
+/**
+ * Read a single character.
+ *
+ * @return the next character from the character sequence
+ * or -1 if the end has been reached.
+ */
+@Override
+public int read() {
+if (idx >= charSequence.length()) {
+return -1;
+} else {
+return charSequence.charAt(idx++);
+}
+}
+
+/**
+ * Read the sepcified number of characters into the array.
+ *
+ * @param array The array to store the characters in
+ * @param offset The starting position in the array to store
+ * @param length The maximum number of characters to read
+ * @return The number of characters read or -1 if there are
+ * no more
+ */
+@Override
+public int read(char[] array, int offset, int length) {
+if (idx >= charSequence.length()) {
+return -1;
+}
+if (array == null) {
+throw new NullPointerException("Character array is missing");
+}
+if (length < 0 || (offset + length) > array.length) {
+throw new IndexOutOfBoundsException("Array Size=" + array.length
++ ", offset=" + offset + ", length=" + length);
+}
+int count = 0;
+for (int i = 0; i < length; i++) {
+int c = read();
+if (c == -1) {
+return count;
+}
+array[offset + i] = (char) c;
+count++;
+}
+return count;
+}
+
+/**
+ 

svn commit: r905709 - /commons/proper/exec/tags/COMMONS_JEXL_2_0/

2010-02-02 Thread henrib
Author: henrib
Date: Tue Feb  2 17:03:43 2010
New Revision: 905709

URL: http://svn.apache.org/viewvc?rev=905709&view=rev
Log:
The RC6 passed to vote so this will be the release tag

Added:
commons/proper/exec/tags/COMMONS_JEXL_2_0/
  - copied from r905707, commons/proper/jexl/tags/COMMONS_JEXL_2_0-RC6/



svn commit: r906928 - in /commons/proper/jexl/trunk: pom.xml xdocs/changes.xml

2010-02-05 Thread henrib
Author: henrib
Date: Fri Feb  5 13:11:26 2010
New Revision: 906928

URL: http://svn.apache.org/viewvc?rev=906928&view=rev
Log:
2.0 post-release setup.

Modified:
commons/proper/jexl/trunk/pom.xml
commons/proper/jexl/trunk/xdocs/changes.xml

Modified: commons/proper/jexl/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=906928&r1=906927&r2=906928&view=diff
==
--- commons/proper/jexl/trunk/pom.xml (original)
+++ commons/proper/jexl/trunk/pom.xml Fri Feb  5 13:11:26 2010
@@ -24,7 +24,7 @@
 4.0.0
 org.apache.commons
 commons-jexl
-2.0
+2.1-SNAPSHOT
 Commons JEXL
 2001
 Jexl is an implementation of the JSTL Expression Language 
with extensions.
@@ -115,9 +115,9 @@
 1.5
 1.5
 jexl
-2.0
+2.1
 
-RC6
+RC1
 
 JEXL
 12310479

Modified: commons/proper/jexl/trunk/xdocs/changes.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/xdocs/changes.xml?rev=906928&r1=906927&r2=906928&view=diff
==
--- commons/proper/jexl/trunk/xdocs/changes.xml (original)
+++ commons/proper/jexl/trunk/xdocs/changes.xml Fri Feb  5 13:11:26 2010
@@ -25,7 +25,7 @@
 Commons Developers
   
   
-
+
 Bean-ish & ant-ish like assignment
 Ternary operator support
 adding Perl-like regular-expression operators




svn commit: r907416 - /commons/proper/jexl/trunk/src/site/site.xml

2010-02-07 Thread henrib
Author: henrib
Date: Sun Feb  7 12:02:42 2010
New Revision: 907416

URL: http://svn.apache.org/viewvc?rev=907416&view=rev
Log:
Removed extraneous Release /  download entry from site.

Modified:
commons/proper/jexl/trunk/src/site/site.xml

Modified: commons/proper/jexl/trunk/src/site/site.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/site/site.xml?rev=907416&r1=907415&r2=907416&view=diff
==
--- commons/proper/jexl/trunk/src/site/site.xml (original)
+++ commons/proper/jexl/trunk/src/site/site.xml Sun Feb  7 12:02:42 2010
@@ -27,7 +27,6 @@
 
 
 
-
 
 
 http://wiki.apache.org/commons/JEXL"/>




svn commit: r922023 - in /commons/proper/jexl/trunk/src: main/java/org/apache/commons/jexl2/JexlException.java main/java/org/apache/commons/jexl2/parser/Parser.jjt test/java/org/apache/commons/jexl2/I

2010-03-11 Thread henrib
Author: henrib
Date: Thu Mar 11 21:13:34 2010
New Revision: 922023

URL: http://svn.apache.org/viewvc?rev=922023&view=rev
Log:
Parser.jjt modified to allow proper escaping (backslash);
Added test for JEXL-98 & JEXL-97;
Added a formatting space in JexlException
Issue #JEXL-98 - Quote escaping cannot be escaped

Modified:

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlException.java

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/Parser.jjt

commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/IssuesTest.java

Modified: 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlException.java
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlException.java?rev=922023&r1=922022&r2=922023&view=diff
==
--- 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlException.java
 (original)
+++ 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlException.java
 Thu Mar 11 21:13:34 2010
@@ -123,8 +123,9 @@ public class JexlException extends Runti
 msg.append(dbg.end());
 msg.append("]: '");
 msg.append(dbg.data());
-msg.append("' ");
+msg.append("'");
 }
+msg.append(' ');
 msg.append(super.getMessage());
 Throwable cause = getCause();
 if (cause != null && NULL_OPERAND == cause.getMessage()) {

Modified: 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/Parser.jjt
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/Parser.jjt?rev=922023&r1=922022&r2=922023&view=diff
==
--- 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/Parser.jjt
 (original)
+++ 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/Parser.jjt
 Thu Mar 11 21:13:34 2010
@@ -556,9 +556,9 @@ void Reference() : {}
 
 <*> TOKEN :
 {
-
+  < STRING_LITERAL:
+"\"" (~["\"","\\","\n","\r","\u2028","\u2029"] | "\\" 
~["\n","\r","\u2028","\u2029"])* "\""
+  |
+"'" (~["'","\\","\n","\r","\u2028","\u2029"] | "\\" 
~["\n","\r","\u2028","\u2029"])* "'"
+  >
 }

Modified: 
commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/IssuesTest.java
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/IssuesTest.java?rev=922023&r1=922022&r2=922023&view=diff
==
--- 
commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/IssuesTest.java
 (original)
+++ 
commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/IssuesTest.java
 Thu Mar 11 21:13:34 2010
@@ -332,4 +332,45 @@ public class IssuesTest extends JexlTest
 assertEquals("bye...", script.execute(ctxt));
 }
 
+public void test97() throws Exception {
+JexlContext ctxt = new MapContext();
+for(char v = 'a'; v <= 'z'; ++v) {
+ctxt.set(Character.toString(v), 10);
+}
+String input =
+
"(z+y)/x)*w)-v)*u)/t)-s)*r)/q)+p)-o)*n)-m)+l)*k)+j)/i)+h)*g)+f)/e)+d)-c)/b)+a)";
+
+JexlEngine jexl = new JexlEngine();
+Expression script;
+// Make sure everything is loaded...
+long start = System.nanoTime();
+script = jexl.createExpression(input);
+Object value = script.evaluate(ctxt);
+assertEquals(Integer.valueOf(11), value);
+long end = System.nanoTime();
+System.out.printf("Parse took %.3f seconds\n", (end-start)/1e+9);
+}
+
+public static class fn98 {
+public String replace(String str, String target, String replacement) {
+return str.replace(target, replacement);
+}
+}
+
+public void test98() throws Exception {
+String[] exprs = {
+"fn:replace('DOMAIN\\somename', '', '')",
+"fn:replace(\"DOMAIN\\somename\", \"\", \"\")",
+"fn:replace('DOMAIN\\somename', '\\u005c', '\\u005c\\u005c')"
+};
+JexlEngine jexl = new JexlEngine();
+Map funcs = new HashMap();
+funcs.put("fn", new fn98());
+jexl.setFunctions(funcs);
+for(String expr : exprs) {
+Object value = jexl.createExpression(expr).evaluate(null);
+assertEquals(expr, "DOMAINsomename", value);
+}
+}
+
 }




svn commit: r922029 - /commons/proper/jexl/trunk/jexl2-compat/pom.xml

2010-03-11 Thread henrib
Author: henrib
Date: Thu Mar 11 21:48:50 2010
New Revision: 922029

URL: http://svn.apache.org/viewvc?rev=922029&view=rev
Log:
Updated pom.xml to reflect using 2.0 release.

Modified:
commons/proper/jexl/trunk/jexl2-compat/pom.xml

Modified: commons/proper/jexl/trunk/jexl2-compat/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/jexl2-compat/pom.xml?rev=922029&r1=922028&r2=922029&view=diff
==
--- commons/proper/jexl/trunk/jexl2-compat/pom.xml (original)
+++ commons/proper/jexl/trunk/jexl2-compat/pom.xml Thu Mar 11 21:48:50 2010
@@ -80,7 +80,7 @@
 
 org.apache.commons
 commons-jexl
-2.0-SNAPSHOT
+2.0
 
 
 




svn commit: r922031 - /commons/proper/jexl/trunk/pom.xml

2010-03-11 Thread henrib
Author: henrib
Date: Thu Mar 11 21:58:17 2010
New Revision: 922031

URL: http://svn.apache.org/viewvc?rev=922031&view=rev
Log:
Prepare pom.xml for Apache JEXL 2.0.1.

Modified:
commons/proper/jexl/trunk/pom.xml

Modified: commons/proper/jexl/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=922031&r1=922030&r2=922031&view=diff
==
--- commons/proper/jexl/trunk/pom.xml (original)
+++ commons/proper/jexl/trunk/pom.xml Thu Mar 11 21:58:17 2010
@@ -24,7 +24,7 @@
 4.0.0
 org.apache.commons
 commons-jexl
-2.1-SNAPSHOT
+2.0.1-SNAPSHOT
 Commons JEXL
 2001
 Jexl is an implementation of the JSTL Expression Language 
with extensions.
@@ -117,8 +117,8 @@
 jexl
 2.0
 
-RC6
-1.1
+RC1
+2.0.1
 
 JEXL
 12310479




svn commit: r927136 - in /commons/proper/jexl/trunk: src/main/java/org/apache/commons/jexl2/JexlEngine.java xdocs/reference/examples.xml

2010-03-24 Thread henrib
Author: henrib
Date: Wed Mar 24 17:52:25 2010
New Revision: 927136

URL: http://svn.apache.org/viewvc?rev=927136&view=rev
Log:
Documentation fixes raised in JEXL-99

Modified:

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlEngine.java
commons/proper/jexl/trunk/xdocs/reference/examples.xml

Modified: 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlEngine.java
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlEngine.java?rev=927136&r1=927135&r2=927136&view=diff
==
--- 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlEngine.java
 (original)
+++ 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlEngine.java
 Wed Mar 24 17:52:25 2010
@@ -55,26 +55,27 @@ import org.apache.commons.jexl2.introspe
  *  Logging
  * 
  * 
- * The setSilentandsetLenient methods allow to 
fine-tune an engine instance behavior
- * according to various error control needs.
+ * The setSilent and setLenient methods allow to 
fine-tune an engine instance behavior
+ * according to various error control needs. The lenient/strict flag tells the 
engine when and if null as operand is
+ * considered an error, the silent/verbose flag tells the engine what to do 
with the error (log as warning or throw exception).
  * 
  * 
- * When "silent" & "lenient" (not-strict):
+ * When "silent" & "lenient":
  *  0 & null should be indicators of "default" values so that even in an 
case of error,
  * something meaningfull can still be inferred; may be convenient for 
configurations.
  * 
  * 
- * When "silent" & "strict":
+ * When "silent" & "strict":
  * One should probably consider using null as an error case - ie, every 
object
  * manipulated by JEXL should be valued; the ternary operator, especially the 
'?:' form
  * can be used to workaround exceptional cases.
  * Use case could be configuration with no implicit values or defaults.
  * 
  * 
- * When "not-silent" & "not-strict":
+ * When "verbose" & "lenient":
  * The error control grain is roughly on par with JEXL 1.0
  * 
- * When "not-silent" & "strict":
+ * When "verbose" & "strict":
  * The finest error control grain is obtained; it is the closest to Java 
code -
  * still augmented by "script" capabilities regarding automated conversions & 
type matching.
  * 
@@ -286,7 +287,9 @@ public class JexlEngine {
 }
 
 /**
- * Sets a cache of the defined size for expressions.
+ * Sets a cache for expressions of the defined size.
+ * The cache will contain at most size expressions. Note 
that
+ * all JEXL caches are held through SoftReferences and may be 
garbage-collected.
  * @param size if not strictly positive, no cache is used.
  */
 public void setCache(int size) {

Modified: commons/proper/jexl/trunk/xdocs/reference/examples.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/xdocs/reference/examples.xml?rev=927136&r1=927135&r2=927136&view=diff
==
--- commons/proper/jexl/trunk/xdocs/reference/examples.xml (original)
+++ commons/proper/jexl/trunk/xdocs/reference/examples.xml Wed Mar 24 17:52:25 
2010
@@ -34,51 +34,65 @@
   
 You can find two sample programs in JEXL's CVS repository:
 
-  http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/test/org/apache/commons/jexl/examples/ArrayTest.java?view=markup";>Using
 arrays
-  http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/test/org/apache/commons/jexl/examples/MethodPropertyTest.java?view=markup";>Accessing
 Properties and invoking methods
+  http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/examples/ArrayTest.java?view=markup";>Using
 arrays
+  http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/examples/MethodPropertyTest.java?view=markup";>Accessing
 Properties and invoking methods
 
   
   
-As well, http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/test/org/apache/commons/jexl/JexlTest.java?view=markup";>JEXL's
 Unit Tests
+As well, http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/test/org/apache/commons/jexl2/JexlTest.java?view=markup";>JEXL's
 Unit Tests
 provide handy examples of expressions. The test code also contains a
-http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/test/org/apache/commons/jexl/Jexl.java?view=markup";>simple
 class
+ 

svn commit: r927422 - /commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/IssuesTest.java

2010-03-25 Thread henrib
Author: henrib
Date: Thu Mar 25 14:27:18 2010
New Revision: 927422

URL: http://svn.apache.org/viewvc?rev=927422&view=rev
Log:
Created test for JEXL-100

Modified:

commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/IssuesTest.java

Modified: 
commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/IssuesTest.java
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/IssuesTest.java?rev=927422&r1=927421&r2=927422&view=diff
==
--- 
commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/IssuesTest.java
 (original)
+++ 
commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/IssuesTest.java
 Thu Mar 25 14:27:18 2010
@@ -373,4 +373,18 @@ public class IssuesTest extends JexlTest
 }
 }
 
+public void test100() throws Exception {
+JexlEngine jexl = new JexlEngine();
+jexl.setCache(4);
+String expr = "foo[0]";
+JexlContext ctxt = new MapContext();
+int[] foo = { 42 };
+ctxt.set("foo", foo);
+
+for(int l = 0; l < 2; ++l) {
+Object value = jexl.createExpression(expr).evaluate(ctxt);
+assertEquals(42, value);
+}
+}
+
 }




svn commit: r927892 - /commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlEngine.java

2010-03-26 Thread henrib
Author: henrib
Date: Fri Mar 26 14:56:56 2010
New Revision: 927892

URL: http://svn.apache.org/viewvc?rev=927892&view=rev
Log:
Javadoc line too long (checkstyle)

Modified:

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlEngine.java

Modified: 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlEngine.java
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlEngine.java?rev=927892&r1=927891&r2=927892&view=diff
==
--- 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlEngine.java
 (original)
+++ 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlEngine.java
 Fri Mar 26 14:56:56 2010
@@ -57,7 +57,8 @@ import org.apache.commons.jexl2.introspe
  * 
  * The setSilent and setLenient methods allow to 
fine-tune an engine instance behavior
  * according to various error control needs. The lenient/strict flag tells the 
engine when and if null as operand is
- * considered an error, the silent/verbose flag tells the engine what to do 
with the error (log as warning or throw exception).
+ * considered an error, the silent/verbose flag tells the engine what to do 
with the error
+ * (log as warning or throw exception).
  * 
  * 
  * When "silent" & "lenient":




svn commit: r927893 - /commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlArithmetic.java

2010-03-26 Thread henrib
Author: henrib
Date: Fri Mar 26 14:58:48 2010
New Revision: 927893

URL: http://svn.apache.org/viewvc?rev=927893&view=rev
Log:
Made null operands control consistent with each other.

Modified:

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlArithmetic.java

Modified: 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlArithmetic.java
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlArithmetic.java?rev=927893&r1=927892&r2=927893&view=diff
==
--- 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlArithmetic.java
 (original)
+++ 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlArithmetic.java
 Fri Mar 26 14:58:48 2010
@@ -88,7 +88,10 @@ public class JexlArithmetic {
  * @return null if strict, else Long(0)
  */
 protected Object controlNullNullOperands() {
-return strict? null : Integer.valueOf(0);
+if (strict) {
+throw new NullPointerException(JexlException.NULL_OPERAND);
+}
+return Integer.valueOf(0);
 }
 
 /**




svn commit: r927895 - in /commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2: ArithmeticTest.java junit/Asserter.java

2010-03-26 Thread henrib
Author: henrib
Date: Fri Mar 26 15:00:58 2010
New Revision: 927895

URL: http://svn.apache.org/viewvc?rev=927895&view=rev
Log:
Added tests about null operands;
Added failure handling ability in Asserter.

Modified:

commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/ArithmeticTest.java

commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/junit/Asserter.java

Modified: 
commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/ArithmeticTest.java
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/ArithmeticTest.java?rev=927895&r1=927894&r2=927895&view=diff
==
--- 
commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/ArithmeticTest.java
 (original)
+++ 
commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/ArithmeticTest.java
 Fri Mar 26 15:00:58 2010
@@ -32,6 +32,55 @@ public class ArithmeticTest extends Jexl
 asserter = new Asserter(JEXL);
 }
 
+public void testUndefinedVar() throws Exception {
+asserter.failExpression("objects[1].status", ".* undefined variable 
objects.*");
+}
+
+public void testLeftNullOperand() throws Exception {
+asserter.setVariable("left", null);
+asserter.setVariable("right", 8);
+asserter.failExpression("left + right", ".*null.*");
+asserter.failExpression("left - right", ".*null.*");
+asserter.failExpression("left * right", ".*null.*");
+asserter.failExpression("left / right", ".*null.*");
+asserter.failExpression("left % right", ".*null.*");
+asserter.failExpression("left & right", ".*null.*");
+asserter.failExpression("left | right", ".*null.*");
+asserter.failExpression("left ^ right", ".*null.*");
+}
+
+public void testRightNullOperand() throws Exception {
+asserter.setVariable("left", 9);
+asserter.setVariable("right", null);
+asserter.failExpression("left + right", ".*null.*");
+asserter.failExpression("left - right", ".*null.*");
+asserter.failExpression("left * right", ".*null.*");
+asserter.failExpression("left / right", ".*null.*");
+asserter.failExpression("left % right", ".*null.*");
+asserter.failExpression("left & right", ".*null.*");
+asserter.failExpression("left | right", ".*null.*");
+asserter.failExpression("left ^ right", ".*null.*");
+}
+
+public void testNullOperands() throws Exception {
+asserter.setVariable("left", null);
+asserter.setVariable("right", null);
+asserter.failExpression("left + right", ".*null.*");
+asserter.failExpression("left - right", ".*null.*");
+asserter.failExpression("left * right", ".*null.*");
+asserter.failExpression("left / right", ".*null.*");
+asserter.failExpression("left % right", ".*null.*");
+asserter.failExpression("left & right", ".*null.*");
+asserter.failExpression("left | right", ".*null.*");
+asserter.failExpression("left ^ right", ".*null.*");
+}
+
+public void testNullOperand() throws Exception {
+asserter.setVariable("right", null);
+asserter.failExpression("~right", ".*null.*");
+asserter.failExpression("-right", ".*number.*");
+}
+
 public void testBigDecimal() throws Exception {
 asserter.setVariable("left", new BigDecimal(2));
 asserter.setVariable("right", new BigDecimal(6));
@@ -237,12 +286,14 @@ public class ArithmeticTest extends Jexl
 }
 }
 }
-if (!jexl.isLenient())
+if (!jexl.isLenient()) {
 assertTrue("All expressions should have thrown " + zthrow + 
"/" + PERMS,
 zthrow == PERMS);
-else
+}
+else {
 assertTrue("All expressions should have zeroed " + zeval + "/" 
+ PERMS,
 zeval == PERMS);
+}
 }
 debuggerCheck(jexl);
 }

Modified: 
commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/junit/Asserter.java
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/t

svn commit: r927903 - in /commons/proper/jexl/trunk/src: main/java/org/apache/commons/jexl2/ main/java/org/apache/commons/jexl2/parser/ test/java/org/apache/commons/jexl2/

2010-03-26 Thread henrib
Author: henrib
Date: Fri Mar 26 15:08:12 2010
New Revision: 927903

URL: http://svn.apache.org/viewvc?rev=927903&view=rev
Log:
Fix JEXL-100;
Added JexlNode.Literal to improve cache abilities and usage, used as base 
for AST{Integer,String}Literal;
Reviewed assignment and reference related code to improve antish variable 
handling;
Added related tests and improve coverage

Added:

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/ASTIntegerLiteral.java
   (with props)

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/ASTStringLiteral.java
   (with props)
Modified:

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/Interpreter.java

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/JexlNode.java

commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/ArrayAccessTest.java

commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/AssignTest.java

commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/IssuesTest.java

Modified: 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/Interpreter.java
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/Interpreter.java?rev=927903&r1=927902&r2=927903&view=diff
==
--- 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/Interpreter.java
 (original)
+++ 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/Interpreter.java
 Fri Mar 26 15:08:12 2010
@@ -348,8 +348,12 @@ public class Interpreter implements Pars
 int numChildren = node.jjtGetNumChildren();
 for (int i = 1; i < numChildren; i++) {
 JexlNode nindex = node.jjtGetChild(i);
-Object index = nindex.jjtAccept(this, null);
-object = getAttribute(object, index, nindex);
+if (nindex instanceof JexlNode.Literal) {
+object = nindex.jjtAccept(this, object);
+} else {
+Object index = nindex.jjtAccept(this, null);
+object = getAttribute(object, index, nindex);
+}
 }
 
 return object;
@@ -415,34 +419,13 @@ public class Interpreter implements Pars
 }
 // 2: last objectNode will perform assignement in all cases
 propertyNode = left.jjtGetChild(last);
+boolean antVar = false;
 if (propertyNode instanceof ASTIdentifier) {
 property = ((ASTIdentifier) propertyNode).image;
-// deal with ant variable
-if (isVariable && object == null) {
-if (variableName != null) {
-if (last > 0) {
-variableName.append('.');
-}
-variableName.append(property);
-property = variableName.toString();
-}
-context.set(String.valueOf(property), right);
-return right;
-}
+antVar = true;
 } else if (propertyNode instanceof ASTIntegerLiteral) {
-property = visit((ASTIntegerLiteral) propertyNode, null);
-// deal with ant variable
-if (isVariable && object == null) {
-if (variableName != null) {
-if (last > 0) {
-variableName.append('.');
-}
-variableName.append(property);
-property = variableName.toString();
-}
-context.set(String.valueOf(property), right);
-return right;
-}
+property = ((ASTIntegerLiteral) propertyNode).getLiteral();
+antVar = true;
 } else if (propertyNode instanceof ASTArrayAccess) {
 // first objectNode is the identifier
 objectNode = propertyNode;
@@ -458,13 +441,31 @@ public class Interpreter implements Pars
 last = narray.jjtGetNumChildren() - 1;
 for (int i = 1; i < last; i++) {
 objectNode = narray.jjtGetChild(i);
-Object index = objectNode.jjtAccept(this, null);
-object = getAttribute(object, index, objectNode);
+if (objectNode instanceof JexlNode.Literal) {
+object = objectNode.jjtAccept(this, object);
+} else {
+Object index = objectNode.jjtAccept(this, null);
+object = getAttribute(object, index, objectNode);
+}
 }
 property = narray.jjtGetChild(last).jjtAccept(this, null);
 } else {
 throw new JexlException(objectNode, "illegal assignment form");
 }
+// deal with ant variable; set context
+if (antVar) {
+if 

svn commit: r927953 - in /commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser: ASTIntegerLiteral.java ASTStringLiteral.java

2010-03-26 Thread henrib
Author: henrib
Date: Fri Mar 26 16:29:54 2010
New Revision: 927953

URL: http://svn.apache.org/viewvc?rev=927953&view=rev
Log:
Per Sebb's recommendation, made those final.

Modified:

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/ASTIntegerLiteral.java

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/ASTStringLiteral.java

Modified: 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/ASTIntegerLiteral.java
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/ASTIntegerLiteral.java?rev=927953&r1=927952&r2=927953&view=diff
==
--- 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/ASTIntegerLiteral.java
 (original)
+++ 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/ASTIntegerLiteral.java
 Fri Mar 26 16:29:54 2010
@@ -16,7 +16,7 @@
  */
 package org.apache.commons.jexl2.parser;
 
-public class ASTIntegerLiteral extends JexlNode implements 
JexlNode.Literal {
+public final class ASTIntegerLiteral extends JexlNode implements 
JexlNode.Literal {
 /** The type literal value. */
 private Integer literal;
 

Modified: 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/ASTStringLiteral.java
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/ASTStringLiteral.java?rev=927953&r1=927952&r2=927953&view=diff
==
--- 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/ASTStringLiteral.java
 (original)
+++ 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/ASTStringLiteral.java
 Fri Mar 26 16:29:54 2010
@@ -16,7 +16,7 @@
  */
 package org.apache.commons.jexl2.parser;
 
-public class ASTStringLiteral extends JexlNode implements 
JexlNode.Literal {
+public final class ASTStringLiteral extends JexlNode implements 
JexlNode.Literal {
 
 public ASTStringLiteral(int id) {
 super(id);




svn commit: r927966 - in /commons/proper/jexl/trunk: pom.xml src/main/config/checkstyle.xml

2010-03-26 Thread henrib
Author: henrib
Date: Fri Mar 26 16:59:04 2010
New Revision: 927966

URL: http://svn.apache.org/viewvc?rev=927966&view=rev
Log:
Updated maven plugins versions;
Modified checkstyle config to reflect 5.0 changes

Modified:
commons/proper/jexl/trunk/pom.xml
commons/proper/jexl/trunk/src/main/config/checkstyle.xml

Modified: commons/proper/jexl/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=927966&r1=927965&r2=927966&view=diff
==
--- commons/proper/jexl/trunk/pom.xml (original)
+++ commons/proper/jexl/trunk/pom.xml Fri Mar 26 16:59:04 2010
@@ -214,7 +214,7 @@
 
 org.apache.maven.plugins
 maven-changes-plugin
-2.1
+2.3
 
 ${basedir}/xdocs/changes.xml
 %URL%/%ISSUE%
@@ -230,7 +230,7 @@
 
 org.apache.maven.plugins
 maven-checkstyle-plugin
-2.3
+2.5
 
 
${basedir}/src/main/config/checkstyle.xml
 org/apache/commons/jexl2/parser/*.java
@@ -254,7 +254,7 @@
 
 org.codehaus.mojo
 findbugs-maven-plugin
-2.1
+2.3.1
 
 
 
org/apache/commons/jexl2/parser/*.class

Modified: commons/proper/jexl/trunk/src/main/config/checkstyle.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/main/config/checkstyle.xml?rev=927966&r1=927965&r2=927966&view=diff
==
--- commons/proper/jexl/trunk/src/main/config/checkstyle.xml (original)
+++ commons/proper/jexl/trunk/src/main/config/checkstyle.xml Fri Mar 26 
16:59:04 2010
@@ -18,9 +18,8 @@
  */
  -->
 
-http://www.puppycrawl.com/dtds/configuration_1_1.dtd";>
+http://www.puppycrawl.com/dtds/configuration_1_2.dtd";>
 
 
 
-
+
+
+
 
 
 
@@ -68,6 +69,25 @@
 
 
 
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+   
+
+
+
 
 
 
@@ -94,28 +114,7 @@
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
 
 
 
@@ -126,7 +125,6 @@
 
 
 
-
 
 
 
@@ -140,8 +138,7 @@
 
 
 
-
-
+
 
 
 
@@ -149,7 +146,6 @@
 
 
 
-
 
 
 
@@ -217,4 +213,4 @@
 
 
 
-
\ No newline at end of file
+




svn commit: r927975 - /commons/proper/jexl/trunk/pom.xml

2010-03-26 Thread henrib
Author: henrib
Date: Fri Mar 26 17:31:06 2010
New Revision: 927975

URL: http://svn.apache.org/viewvc?rev=927975&view=rev
Log:
Reverted spec on bsf-api to something simpler; prepare release fails with NPE 
otherwise

Modified:
commons/proper/jexl/trunk/pom.xml

Modified: commons/proper/jexl/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=927975&r1=927974&r2=927975&view=diff
==
--- commons/proper/jexl/trunk/pom.xml (original)
+++ commons/proper/jexl/trunk/pom.xml Fri Mar 26 17:31:06 2010
@@ -106,7 +106,7 @@
 
 org.apache.bsf
 bsf-api
-[3.0-beta3,)
+3.0-beta3
 provided
 
 




svn commit: r928216 - /commons/proper/jexl/trunk/xdocs/reference/examples.xml

2010-03-27 Thread henrib
Author: henrib
Date: Sat Mar 27 15:12:45 2010
New Revision: 928216

URL: http://svn.apache.org/viewvc?rev=928216&view=rev
Log:
Added reference to package javadoc.

Modified:
commons/proper/jexl/trunk/xdocs/reference/examples.xml

Modified: commons/proper/jexl/trunk/xdocs/reference/examples.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/xdocs/reference/examples.xml?rev=928216&r1=928215&r2=928216&view=diff
==
--- commons/proper/jexl/trunk/xdocs/reference/examples.xml (original)
+++ commons/proper/jexl/trunk/xdocs/reference/examples.xml Sat Mar 27 15:12:45 
2010
@@ -44,6 +44,10 @@
 http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/test/org/apache/commons/jexl2/Jexl.java?view=markup";>simple
 class
 that evaluates its command line arguments as JEXL expressions when run.
   
+  
+  The http://commons.apache.org/jexl/apidocs/org/apache/commons/jexl2/package-summary.html#intro";>
+  package javadoc also contains useful information.
+  
 
 
   




svn commit: r928405 - in /commons/proper/jexl/trunk/src: main/java/org/apache/commons/jexl2/ main/java/org/apache/commons/jexl2/parser/ test/java/org/apache/commons/jexl2/

2010-03-28 Thread henrib
Author: henrib
Date: Sun Mar 28 14:22:06 2010
New Revision: 928405

URL: http://svn.apache.org/viewvc?rev=928405&view=rev
Log:
Updated Parser.jjt to define all acceptable tokens resulting in cleaner lexer.
Added 'register' syntax (#0-9) used by JexlEngine.{s,g}etProperty: syntax only 
valid through ALLOW_REGISTER flag and REGISTERS lexical state.
Completed literal handling (array, integer, string, float).

Added:

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/ASTArrayLiteral.java
   (with props)

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/ASTFloatLiteral.java
   (with props)
Modified:

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/Interpreter.java

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlArithmetic.java

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlEngine.java

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/ASTIntegerLiteral.java

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/ASTStringLiteral.java

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/Parser.jjt

commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/JexlTestCase.java

Modified: 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/Interpreter.java
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/Interpreter.java?rev=928405&r1=928404&r2=928405&view=diff
==
--- 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/Interpreter.java
 (original)
+++ 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/Interpreter.java
 Sun Mar 28 14:22:06 2010
@@ -181,7 +181,7 @@ public class Interpreter implements Pars
  * Sets this interpreter registers for bean access/assign expressions.
  * @param theRegisters the array of registers
  */
-protected void setRegisters(Object[] theRegisters) {
+protected void setRegisters(Object... theRegisters) {
 this.registers = theRegisters;
 }
 
@@ -361,13 +361,18 @@ public class Interpreter implements Pars
 
 /** {...@inheritdoc} */
 public Object visit(ASTArrayLiteral node, Object data) {
-int childCount = node.jjtGetNumChildren();
-Object[] array = new Object[childCount];
-for (int i = 0; i < childCount; i++) {
-Object entry = node.jjtGetChild(i).jjtAccept(this, data);
-array[i] = entry;
+Object literal = node.getLiteral();
+if (literal == null) {
+int childCount = node.jjtGetNumChildren();
+Object[] array = new Object[childCount];
+for (int i = 0; i < childCount; i++) {
+Object entry = node.jjtGetChild(i).jjtAccept(this, data);
+array[i] = entry;
+}
+literal = arithmetic.narrowArrayType(array);
+node.setLiteral(literal);
 }
-return arithmetic.narrowArrayType(array);
+return literal;
 }
 
 /** {...@inheritdoc} */
@@ -603,12 +608,10 @@ public class Interpreter implements Pars
 
 /** {...@inheritdoc} */
 public Object visit(ASTFloatLiteral node, Object data) {
-Object value = node.jjtGetValue();
-if (!(value instanceof Float)) {
-value = Float.valueOf(node.image);
-node.jjtSetValue(value);
+if (data != null) {
+return getAttribute(data, node.getLiteral(), node);
 }
-return value;
+return node.getLiteral();
 }
 
 /** {...@inheritdoc} */
@@ -677,12 +680,7 @@ public class Interpreter implements Pars
 String name = node.image;
 if (data == null) {
 if (registers != null) {
-if (registers[0].equals(name)) {
-return registers[1];
-}
-if (registers[2].equals(name)) {
-return registers[3];
-}
+return registers[name.charAt(1) - '0'];
 }
 Object value = context.get(name);
 if (value == null

Modified: 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlArithmetic.java
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlArithmetic.java?rev=928405&r1=928404&r2=928405&view=diff
==
--- 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlArithmetic.java
 (original)
+++ 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlArithmetic.java
 Sun Mar 28 14:22:06 2010
@@ -85,7 +85,8 @@ public class JexlArithmetic {
 
 /**
  * The result of +,/,-,*,% when both operands are null.
- 

svn commit: r928411 - /commons/proper/jexl/trunk/pom.xml

2010-03-28 Thread henrib
Author: henrib
Date: Sun Mar 28 14:34:54 2010
New Revision: 928411

URL: http://svn.apache.org/viewvc?rev=928411&view=rev
Log:
[maven-release-plugin] prepare release COMMONS_JEXL_2_0_1

Modified:
commons/proper/jexl/trunk/pom.xml

Modified: commons/proper/jexl/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=928411&r1=928410&r2=928411&view=diff
==
--- commons/proper/jexl/trunk/pom.xml (original)
+++ commons/proper/jexl/trunk/pom.xml Sun Mar 28 14:34:54 2010
@@ -24,7 +24,7 @@
 4.0.0
 org.apache.commons
 commons-jexl
-2.0.1-SNAPSHOT
+2.0.1
 Commons JEXL
 2001
 Jexl is an implementation of the JSTL Expression Language 
with extensions.
@@ -36,9 +36,9 @@
 
 
 
-
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/trunk
-
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/trunk
-http://svn.apache.org/viewvc/commons/proper/jexl/trunk
+
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1
+
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1
+
http://svn.apache.org/viewvc/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1
 
 
 




svn commit: r928443 - /commons/proper/jexl/trunk/pom.xml

2010-03-28 Thread henrib
Author: henrib
Date: Sun Mar 28 16:27:05 2010
New Revision: 928443

URL: http://svn.apache.org/viewvc?rev=928443&view=rev
Log:
Prepare for 2.0.1

Modified:
commons/proper/jexl/trunk/pom.xml

Modified: commons/proper/jexl/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=928443&r1=928442&r2=928443&view=diff
==
--- commons/proper/jexl/trunk/pom.xml (original)
+++ commons/proper/jexl/trunk/pom.xml Sun Mar 28 16:27:05 2010
@@ -106,7 +106,7 @@
 
 org.apache.bsf
 bsf-api
-3.0-beta3
+[3.0-beta3,)
 provided
 
 




svn commit: r928447 - /commons/proper/jexl/trunk/pom.xml

2010-03-28 Thread henrib
Author: henrib
Date: Sun Mar 28 16:37:30 2010
New Revision: 928447

URL: http://svn.apache.org/viewvc?rev=928447&view=rev
Log:
Prepare for 2.0.1

Modified:
commons/proper/jexl/trunk/pom.xml

Modified: commons/proper/jexl/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=928447&r1=928446&r2=928447&view=diff
==
--- commons/proper/jexl/trunk/pom.xml (original)
+++ commons/proper/jexl/trunk/pom.xml Sun Mar 28 16:37:30 2010
@@ -24,7 +24,7 @@
 4.0.0
 org.apache.commons
 commons-jexl
-2.0.1
+2.0.1-SNAPSHOT
 Commons JEXL
 2001
 Jexl is an implementation of the JSTL Expression Language 
with extensions.




svn commit: r928448 - /commons/proper/jexl/trunk/pom.xml

2010-03-28 Thread henrib
Author: henrib
Date: Sun Mar 28 16:39:26 2010
New Revision: 928448

URL: http://svn.apache.org/viewvc?rev=928448&view=rev
Log:
Prepare for 2.0.1

Modified:
commons/proper/jexl/trunk/pom.xml

Modified: commons/proper/jexl/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=928448&r1=928447&r2=928448&view=diff
==
--- commons/proper/jexl/trunk/pom.xml (original)
+++ commons/proper/jexl/trunk/pom.xml Sun Mar 28 16:39:26 2010
@@ -106,7 +106,7 @@
 
 org.apache.bsf
 bsf-api
-[3.0-beta3,)
+3.0-beta3
 provided
 
 




svn commit: r928452 - in /commons/proper/jexl/trunk: RELEASE-NOTES.txt xdocs/changes.xml

2010-03-28 Thread henrib
Author: henrib
Date: Sun Mar 28 16:51:48 2010
New Revision: 928452

URL: http://svn.apache.org/viewvc?rev=928452&view=rev
Log:
Prepare for 2.0.1

Modified:
commons/proper/jexl/trunk/RELEASE-NOTES.txt
commons/proper/jexl/trunk/xdocs/changes.xml

Modified: commons/proper/jexl/trunk/RELEASE-NOTES.txt
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/RELEASE-NOTES.txt?rev=928452&r1=928451&r2=928452&view=diff
==
--- commons/proper/jexl/trunk/RELEASE-NOTES.txt (original)
+++ commons/proper/jexl/trunk/RELEASE-NOTES.txt Sun Mar 28 16:51:48 2010
@@ -104,8 +104,15 @@ Error and exception handling
* Configuring the leniency and verbosity of the Jexl engine allows user 
control over the
  error handling policy
 
-Bugs fixed:
-===
+Bugs fixed in 2.0.1:
+
+
+* JEXL-100: Array access expressions fail when evaluated twice and cache 
is enabled
+* JEXL-99:  Documentation of Thread Safety / Invalid code examples on 
homepage
+* JEXL-98:  Quote escaping cannot be escaped
+
+Bugs fixed in 2.0:
+==
 
 * JEXL-90: Jexl parser allows invalid expressions, e.g. "a=1 b=2 3"
 * JEXL-88: MethodKey.java - name clash getMostSpecific() with Java 1.5.0

Modified: commons/proper/jexl/trunk/xdocs/changes.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/xdocs/changes.xml?rev=928452&r1=928451&r2=928452&view=diff
==
--- commons/proper/jexl/trunk/xdocs/changes.xml (original)
+++ commons/proper/jexl/trunk/xdocs/changes.xml Sun Mar 28 16:51:48 2010
@@ -25,6 +25,11 @@
 Commons Developers
   
   
+
+Array access 
expressions fail when evaluated twice and cache is enabled
+Documentation of Thread Safety / Invalid code examples on 
homepage
+Quote escaping cannot be escaped
+
 
 Bean-ish & ant-ish like assignment
 Ternary operator support




svn commit: r928632 - /commons/proper/jexl/trunk/pom.xml

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 08:16:25 2010
New Revision: 928632

URL: http://svn.apache.org/viewvc?rev=928632&view=rev
Log:
[maven-release-plugin] prepare release COMMONS_JEXL_2_0_1-RC1

Modified:
commons/proper/jexl/trunk/pom.xml

Modified: commons/proper/jexl/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=928632&r1=928631&r2=928632&view=diff
==
--- commons/proper/jexl/trunk/pom.xml (original)
+++ commons/proper/jexl/trunk/pom.xml Mon Mar 29 08:16:25 2010
@@ -24,7 +24,7 @@
 4.0.0
 org.apache.commons
 commons-jexl
-2.0.1-SNAPSHOT
+2.0.1-RC1
 Commons JEXL
 2001
 Jexl is an implementation of the JSTL Expression Language 
with extensions.
@@ -36,9 +36,9 @@
 
 
 
-
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1
-
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1
-
http://svn.apache.org/viewvc/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1
+
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
+
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
+
http://svn.apache.org/viewvc/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
 
 
 




svn commit: r928634 - /commons/proper/jexl/trunk/pom.xml

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 08:23:45 2010
New Revision: 928634

URL: http://svn.apache.org/viewvc?rev=928634&view=rev
Log:
Prepare for 2.0.1

Modified:
commons/proper/jexl/trunk/pom.xml

Modified: commons/proper/jexl/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=928634&r1=928633&r2=928634&view=diff
==
--- commons/proper/jexl/trunk/pom.xml (original)
+++ commons/proper/jexl/trunk/pom.xml Mon Mar 29 08:23:45 2010
@@ -24,7 +24,7 @@
 4.0.0
 org.apache.commons
 commons-jexl
-2.0.1-RC1
+2.0.1-SNAPSHOT
 Commons JEXL
 2001
 Jexl is an implementation of the JSTL Expression Language 
with extensions.
@@ -36,9 +36,9 @@
 
 
 
-
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
-
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
-
http://svn.apache.org/viewvc/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
+
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0
+
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0
+
http://svn.apache.org/viewvc/commons/proper/jexl/tags/COMMONS_JEXL_2_0
 
 
 




svn commit: r928635 - /commons/proper/jexl/trunk/pom.xml

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 08:25:25 2010
New Revision: 928635

URL: http://svn.apache.org/viewvc?rev=928635&view=rev
Log:
[maven-release-plugin] prepare release COMMONS_JEXL_2_0_1-RC1

Modified:
commons/proper/jexl/trunk/pom.xml

Modified: commons/proper/jexl/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=928635&r1=928634&r2=928635&view=diff
==
--- commons/proper/jexl/trunk/pom.xml (original)
+++ commons/proper/jexl/trunk/pom.xml Mon Mar 29 08:25:25 2010
@@ -24,7 +24,7 @@
 4.0.0
 org.apache.commons
 commons-jexl
-2.0.1-SNAPSHOT
+2.0.1-RC1
 Commons JEXL
 2001
 Jexl is an implementation of the JSTL Expression Language 
with extensions.
@@ -36,9 +36,9 @@
 
 
 
-
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0
-
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0
-
http://svn.apache.org/viewvc/commons/proper/jexl/tags/COMMONS_JEXL_2_0
+
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
+
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
+
http://svn.apache.org/viewvc/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
 
 
 




svn commit: r928636 - /commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 08:26:45 2010
New Revision: 928636

URL: http://svn.apache.org/viewvc?rev=928636&view=rev
Log:
[maven-release-plugin]  copy for tag COMMONS_JEXL_2_0_1-RC1

Added:
commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/
  - copied from r928635, commons/proper/jexl/tags/COMMONS_JEXL_2_0/



svn commit: r928637 - /commons/proper/jexl/trunk/pom.xml

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 08:26:59 2010
New Revision: 928637

URL: http://svn.apache.org/viewvc?rev=928637&view=rev
Log:
[maven-release-plugin] prepare for next development iteration

Modified:
commons/proper/jexl/trunk/pom.xml

Modified: commons/proper/jexl/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=928637&r1=928636&r2=928637&view=diff
==
--- commons/proper/jexl/trunk/pom.xml (original)
+++ commons/proper/jexl/trunk/pom.xml Mon Mar 29 08:26:59 2010
@@ -24,7 +24,7 @@
 4.0.0
 org.apache.commons
 commons-jexl
-2.0.1-RC1
+2.0.2-SNAPSHOT
 Commons JEXL
 2001
 Jexl is an implementation of the JSTL Expression Language 
with extensions.
@@ -36,9 +36,9 @@
 
 
 
-
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
-
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
-
http://svn.apache.org/viewvc/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
+
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0
+
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0
+
http://svn.apache.org/viewvc/commons/proper/jexl/tags/COMMONS_JEXL_2_0
 
 
 




svn commit: r928639 - /commons/proper/jexl/trunk/pom.xml

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 08:36:39 2010
New Revision: 928639

URL: http://svn.apache.org/viewvc?rev=928639&view=rev
Log:
Prepare for 2.0.1

Modified:
commons/proper/jexl/trunk/pom.xml

Modified: commons/proper/jexl/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=928639&r1=928638&r2=928639&view=diff
==
--- commons/proper/jexl/trunk/pom.xml (original)
+++ commons/proper/jexl/trunk/pom.xml Mon Mar 29 08:36:39 2010
@@ -24,7 +24,7 @@
 4.0.0
 org.apache.commons
 commons-jexl
-2.0.2-SNAPSHOT
+2.0.1-SNAPSHOT
 Commons JEXL
 2001
 Jexl is an implementation of the JSTL Expression Language 
with extensions.
@@ -115,10 +115,10 @@
 1.5
 1.5
 jexl
-2.0
+2.0.1
 
 RC1
-2.0.1
+2.0
 
 JEXL
 12310479




svn commit: r928640 - /commons/proper/jexl/trunk/pom.xml

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 08:38:27 2010
New Revision: 928640

URL: http://svn.apache.org/viewvc?rev=928640&view=rev
Log:
[maven-release-plugin] prepare release COMMONS_JEXL_2_0_1-RC1

Modified:
commons/proper/jexl/trunk/pom.xml

Modified: commons/proper/jexl/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=928640&r1=928639&r2=928640&view=diff
==
--- commons/proper/jexl/trunk/pom.xml (original)
+++ commons/proper/jexl/trunk/pom.xml Mon Mar 29 08:38:27 2010
@@ -24,7 +24,7 @@
 4.0.0
 org.apache.commons
 commons-jexl
-2.0.1-SNAPSHOT
+2.0.1-RC1
 Commons JEXL
 2001
 Jexl is an implementation of the JSTL Expression Language 
with extensions.
@@ -36,9 +36,9 @@
 
 
 
-
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0
-
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0
-
http://svn.apache.org/viewvc/commons/proper/jexl/tags/COMMONS_JEXL_2_0
+
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
+
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
+
http://svn.apache.org/viewvc/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
 
 
 




svn commit: r928641 - /commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/COMMONS_JEXL_2_0/

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 08:39:26 2010
New Revision: 928641

URL: http://svn.apache.org/viewvc?rev=928641&view=rev
Log:
[maven-release-plugin]  copy for tag COMMONS_JEXL_2_0_1-RC1

Added:
commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/COMMONS_JEXL_2_0/
  - copied from r928640, commons/proper/jexl/tags/COMMONS_JEXL_2_0/



svn commit: r928642 - /commons/proper/jexl/trunk/pom.xml

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 08:39:40 2010
New Revision: 928642

URL: http://svn.apache.org/viewvc?rev=928642&view=rev
Log:
[maven-release-plugin] prepare for next development iteration

Modified:
commons/proper/jexl/trunk/pom.xml

Modified: commons/proper/jexl/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=928642&r1=928641&r2=928642&view=diff
==
--- commons/proper/jexl/trunk/pom.xml (original)
+++ commons/proper/jexl/trunk/pom.xml Mon Mar 29 08:39:40 2010
@@ -24,7 +24,7 @@
 4.0.0
 org.apache.commons
 commons-jexl
-2.0.1-RC1
+2.0.2-SNAPSHOT
 Commons JEXL
 2001
 Jexl is an implementation of the JSTL Expression Language 
with extensions.
@@ -36,9 +36,9 @@
 
 
 
-
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
-
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
-
http://svn.apache.org/viewvc/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
+
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0
+
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0
+
http://svn.apache.org/viewvc/commons/proper/jexl/tags/COMMONS_JEXL_2_0
 
 
 




svn commit: r928651 - /commons/proper/jexl/trunk/pom.xml

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 08:57:19 2010
New Revision: 928651

URL: http://svn.apache.org/viewvc?rev=928651&view=rev
Log:
Prepare for 2.0.1

Modified:
commons/proper/jexl/trunk/pom.xml

Modified: commons/proper/jexl/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=928651&r1=928650&r2=928651&view=diff
==
--- commons/proper/jexl/trunk/pom.xml (original)
+++ commons/proper/jexl/trunk/pom.xml Mon Mar 29 08:57:19 2010
@@ -24,7 +24,7 @@
 4.0.0
 org.apache.commons
 commons-jexl
-2.0.2-SNAPSHOT
+2.0.1-SNAPSHOT
 Commons JEXL
 2001
 Jexl is an implementation of the JSTL Expression Language 
with extensions.
@@ -118,7 +118,7 @@
 2.0.1
 
 RC1
-2.0
+1.1
 
 JEXL
 12310479




svn commit: r928654 - /commons/proper/jexl/trunk/pom.xml

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 09:05:03 2010
New Revision: 928654

URL: http://svn.apache.org/viewvc?rev=928654&view=rev
Log:
[maven-release-plugin] prepare release COMMONS_JEXL_2_0_1-RC1

Modified:
commons/proper/jexl/trunk/pom.xml

Modified: commons/proper/jexl/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=928654&r1=928653&r2=928654&view=diff
==
--- commons/proper/jexl/trunk/pom.xml (original)
+++ commons/proper/jexl/trunk/pom.xml Mon Mar 29 09:05:03 2010
@@ -24,7 +24,7 @@
 4.0.0
 org.apache.commons
 commons-jexl
-2.0.1-SNAPSHOT
+2.0.1-RC1
 Commons JEXL
 2001
 Jexl is an implementation of the JSTL Expression Language 
with extensions.
@@ -36,9 +36,9 @@
 
 
 
-
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0
-
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0
-
http://svn.apache.org/viewvc/commons/proper/jexl/tags/COMMONS_JEXL_2_0
+
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
+
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
+
http://svn.apache.org/viewvc/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
 
 
 




svn commit: r928659 - /commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 09:14:12 2010
New Revision: 928659

URL: http://svn.apache.org/viewvc?rev=928659&view=rev
Log:
clean up previously aborted attempt

Removed:
commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/



svn commit: r928660 - /commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 09:14:59 2010
New Revision: 928660

URL: http://svn.apache.org/viewvc?rev=928660&view=rev
Log:
[maven-release-plugin]  copy for tag COMMONS_JEXL_2_0_1-RC1

Added:
commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/
  - copied from r928659, commons/proper/jexl/tags/COMMONS_JEXL_2_0/



svn commit: r928661 - /commons/proper/jexl/trunk/pom.xml

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 09:15:15 2010
New Revision: 928661

URL: http://svn.apache.org/viewvc?rev=928661&view=rev
Log:
[maven-release-plugin] prepare for next development iteration

Modified:
commons/proper/jexl/trunk/pom.xml

Modified: commons/proper/jexl/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=928661&r1=928660&r2=928661&view=diff
==
--- commons/proper/jexl/trunk/pom.xml (original)
+++ commons/proper/jexl/trunk/pom.xml Mon Mar 29 09:15:15 2010
@@ -24,7 +24,7 @@
 4.0.0
 org.apache.commons
 commons-jexl
-2.0.1-RC1
+2.0.2-SNAPSHOT
 Commons JEXL
 2001
 Jexl is an implementation of the JSTL Expression Language 
with extensions.
@@ -36,9 +36,9 @@
 
 
 
-
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
-
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
-
http://svn.apache.org/viewvc/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
+
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0
+
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0
+
http://svn.apache.org/viewvc/commons/proper/jexl/tags/COMMONS_JEXL_2_0
 
 
 




svn commit: r928668 - /commons/proper/jexl/trunk/pom.xml

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 09:54:35 2010
New Revision: 928668

URL: http://svn.apache.org/viewvc?rev=928668&view=rev
Log:
Prepare for 2.0.1 (reverting to parent-12 trying to pinpoint mvn -Prc 
release:perform pb)

Modified:
commons/proper/jexl/trunk/pom.xml

Modified: commons/proper/jexl/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=928668&r1=928667&r2=928668&view=diff
==
--- commons/proper/jexl/trunk/pom.xml (original)
+++ commons/proper/jexl/trunk/pom.xml Mon Mar 29 09:54:35 2010
@@ -19,12 +19,12 @@
 
 org.apache.commons
 commons-parent
-14
+12
 
 4.0.0
 org.apache.commons
 commons-jexl
-2.0.2-SNAPSHOT
+2.0.1-SNAPSHOT
 Commons JEXL
 2001
 Jexl is an implementation of the JSTL Expression Language 
with extensions.




svn commit: r928670 - /commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 09:57:39 2010
New Revision: 928670

URL: http://svn.apache.org/viewvc?rev=928670&view=rev
Log:
clean up previously aborted attempt

Removed:
commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/



svn commit: r928675 - /commons/proper/jexl/trunk/pom.xml

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 10:04:50 2010
New Revision: 928675

URL: http://svn.apache.org/viewvc?rev=928675&view=rev
Log:
[maven-release-plugin] prepare release COMMONS_JEXL_2_0_1-RC1

Modified:
commons/proper/jexl/trunk/pom.xml

Modified: commons/proper/jexl/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=928675&r1=928674&r2=928675&view=diff
==
--- commons/proper/jexl/trunk/pom.xml (original)
+++ commons/proper/jexl/trunk/pom.xml Mon Mar 29 10:04:50 2010
@@ -24,7 +24,7 @@
 4.0.0
 org.apache.commons
 commons-jexl
-2.0.1-SNAPSHOT
+2.0.1-RC1
 Commons JEXL
 2001
 Jexl is an implementation of the JSTL Expression Language 
with extensions.
@@ -36,9 +36,9 @@
 
 
 
-
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0
-
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0
-
http://svn.apache.org/viewvc/commons/proper/jexl/tags/COMMONS_JEXL_2_0
+
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
+
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
+
http://svn.apache.org/viewvc/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
 
 
 




svn commit: r928676 - /commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 10:05:27 2010
New Revision: 928676

URL: http://svn.apache.org/viewvc?rev=928676&view=rev
Log:
[maven-scm] copy for tag COMMONS_JEXL_2_0_1-RC1

Added:
commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/
  - copied from r928675, commons/proper/jexl/tags/COMMONS_JEXL_2_0/



svn commit: r928677 - /commons/proper/jexl/trunk/pom.xml

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 10:05:42 2010
New Revision: 928677

URL: http://svn.apache.org/viewvc?rev=928677&view=rev
Log:
[maven-release-plugin] prepare for next development iteration

Modified:
commons/proper/jexl/trunk/pom.xml

Modified: commons/proper/jexl/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=928677&r1=928676&r2=928677&view=diff
==
--- commons/proper/jexl/trunk/pom.xml (original)
+++ commons/proper/jexl/trunk/pom.xml Mon Mar 29 10:05:42 2010
@@ -24,7 +24,7 @@
 4.0.0
 org.apache.commons
 commons-jexl
-2.0.1-RC1
+2.0.2-SNAPSHOT
 Commons JEXL
 2001
 Jexl is an implementation of the JSTL Expression Language 
with extensions.
@@ -36,9 +36,9 @@
 
 
 
-
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
-
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
-
http://svn.apache.org/viewvc/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
+
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0
+
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0
+
http://svn.apache.org/viewvc/commons/proper/jexl/tags/COMMONS_JEXL_2_0
 
 
 




svn commit: r928686 - /commons/proper/jexl/trunk/pom.xml

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 10:27:58 2010
New Revision: 928686

URL: http://svn.apache.org/viewvc?rev=928686&view=rev
Log:
Prepare for 2.0.1 (reverting to parent-14)

Modified:
commons/proper/jexl/trunk/pom.xml

Modified: commons/proper/jexl/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=928686&r1=928685&r2=928686&view=diff
==
--- commons/proper/jexl/trunk/pom.xml (original)
+++ commons/proper/jexl/trunk/pom.xml Mon Mar 29 10:27:58 2010
@@ -19,12 +19,12 @@
 
 org.apache.commons
 commons-parent
-12
+14
 
 4.0.0
 org.apache.commons
 commons-jexl
-2.0.2-SNAPSHOT
+2.0.1-SNAPSHOT
 Commons JEXL
 2001
 Jexl is an implementation of the JSTL Expression Language 
with extensions.




svn commit: r928690 - /commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 10:34:58 2010
New Revision: 928690

URL: http://svn.apache.org/viewvc?rev=928690&view=rev
Log:
cleaning aborted publish attempt

Removed:
commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/



svn commit: r928717 - /commons/proper/jexl/trunk/pom.xml

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 11:20:18 2010
New Revision: 928717

URL: http://svn.apache.org/viewvc?rev=928717&view=rev
Log:
[maven-release-plugin] prepare release COMMONS_JEXL_2_0_1-RC1

Modified:
commons/proper/jexl/trunk/pom.xml

Modified: commons/proper/jexl/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=928717&r1=928716&r2=928717&view=diff
==
--- commons/proper/jexl/trunk/pom.xml (original)
+++ commons/proper/jexl/trunk/pom.xml Mon Mar 29 11:20:18 2010
@@ -24,7 +24,7 @@
 4.0.0
 org.apache.commons
 commons-jexl
-2.0.1-SNAPSHOT
+2.0.1-RC1
 Commons JEXL
 2001
 Jexl is an implementation of the JSTL Expression Language 
with extensions.
@@ -36,9 +36,9 @@
 
 
 
-
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0
-
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0
-
http://svn.apache.org/viewvc/commons/proper/jexl/tags/COMMONS_JEXL_2_0
+
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
+
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
+
http://svn.apache.org/viewvc/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
 
 
 




svn commit: r928718 - /commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 11:20:53 2010
New Revision: 928718

URL: http://svn.apache.org/viewvc?rev=928718&view=rev
Log:
[maven-release-plugin]  copy for tag COMMONS_JEXL_2_0_1-RC1

Added:
commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/
  - copied from r928717, commons/proper/jexl/tags/COMMONS_JEXL_2_0/



svn commit: r928719 - /commons/proper/jexl/trunk/pom.xml

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 11:21:09 2010
New Revision: 928719

URL: http://svn.apache.org/viewvc?rev=928719&view=rev
Log:
[maven-release-plugin] prepare for next development iteration

Modified:
commons/proper/jexl/trunk/pom.xml

Modified: commons/proper/jexl/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=928719&r1=928718&r2=928719&view=diff
==
--- commons/proper/jexl/trunk/pom.xml (original)
+++ commons/proper/jexl/trunk/pom.xml Mon Mar 29 11:21:09 2010
@@ -24,7 +24,7 @@
 4.0.0
 org.apache.commons
 commons-jexl
-2.0.1-RC1
+2.0.2-SNAPSHOT
 Commons JEXL
 2001
 Jexl is an implementation of the JSTL Expression Language 
with extensions.
@@ -36,9 +36,9 @@
 
 
 
-
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
-
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
-
http://svn.apache.org/viewvc/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
+
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0
+
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0
+
http://svn.apache.org/viewvc/commons/proper/jexl/tags/COMMONS_JEXL_2_0
 
 
 




svn commit: r928724 - /commons/proper/jexl/trunk/pom.xml

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 11:38:44 2010
New Revision: 928724

URL: http://svn.apache.org/viewvc?rev=928724&view=rev
Log:
Prepare for 2.0.1 (mvn -Prc release:perform still not working correctly with 
clean .m2 repo)

Modified:
commons/proper/jexl/trunk/pom.xml

Modified: commons/proper/jexl/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=928724&r1=928723&r2=928724&view=diff
==
--- commons/proper/jexl/trunk/pom.xml (original)
+++ commons/proper/jexl/trunk/pom.xml Mon Mar 29 11:38:44 2010
@@ -24,7 +24,7 @@
 4.0.0
 org.apache.commons
 commons-jexl
-2.0.2-SNAPSHOT
+2.0.1-SNAPSHOT
 Commons JEXL
 2001
 Jexl is an implementation of the JSTL Expression Language 
with extensions.
@@ -130,14 +130,6 @@
 
 
 
-
-${basedir}
-META-INF
-
-NOTICE.txt
-LICENSE.txt
-
-
 
 
 src/main/resources
@@ -145,6 +137,7 @@
 
 
 
+
 
 org.apache.maven.plugins
 maven-surefire-plugin




svn commit: r928726 - /commons/proper/jexl/trunk/pom.xml

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 11:42:09 2010
New Revision: 928726

URL: http://svn.apache.org/viewvc?rev=928726&view=rev
Log:
Prepare for 2.0.1

Modified:
commons/proper/jexl/trunk/pom.xml

Modified: commons/proper/jexl/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=928726&r1=928725&r2=928726&view=diff
==
--- commons/proper/jexl/trunk/pom.xml (original)
+++ commons/proper/jexl/trunk/pom.xml Mon Mar 29 11:42:09 2010
@@ -24,7 +24,7 @@
 4.0.0
 org.apache.commons
 commons-jexl
-2.0.1-SNAPSHOT
+2.0.2-SNAPSHOT
 Commons JEXL
 2001
 Jexl is an implementation of the JSTL Expression Language 
with extensions.
@@ -137,7 +137,6 @@
 
 
 
-
 
 org.apache.maven.plugins
 maven-surefire-plugin




svn commit: r928751 - /commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 12:28:19 2010
New Revision: 928751

URL: http://svn.apache.org/viewvc?rev=928751&view=rev
Log:
cleaning aborted publish attempt

Removed:
commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/



svn commit: r928754 - in /commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1: ./ pom.xml

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 12:32:41 2010
New Revision: 928754

URL: http://svn.apache.org/viewvc?rev=928754&view=rev
Log:
Prepare manual publish

Added:
commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/
  - copied from r928753, commons/proper/jexl/trunk/
Modified:
commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/pom.xml

Modified: commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/pom.xml?rev=928754&r1=928753&r2=928754&view=diff
==
--- commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/pom.xml (original)
+++ commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/pom.xml Mon Mar 29 12:32:41 
2010
@@ -24,7 +24,7 @@
 4.0.0
 org.apache.commons
 commons-jexl
-2.0.2-SNAPSHOT
+2.0.1-RC1
 Commons JEXL
 2001
 Jexl is an implementation of the JSTL Expression Language 
with extensions.
@@ -314,7 +314,7 @@
 
 apache.website
 Apache Commons Release Candidate Staging Site
-
${commons.deployment.protocol}://people.apache.org/www/people.apache.org/builds/commons/${commons.componentid}/${commons.release.version}/${commons.rc.version}/site
+
${commons.deployment.protocol}://people.apache.org/home/henrib/public_html/${commons.componentid}-${commons.release.version}-${commons.rc.version}/site
 
 
 




svn commit: r928756 - /commons/proper/jexl/trunk/pom.xml

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 12:38:41 2010
New Revision: 928756

URL: http://svn.apache.org/viewvc?rev=928756&view=rev
Log:
Prepare for 2.0.1 (manual)

Modified:
commons/proper/jexl/trunk/pom.xml

Modified: commons/proper/jexl/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=928756&r1=928755&r2=928756&view=diff
==
--- commons/proper/jexl/trunk/pom.xml (original)
+++ commons/proper/jexl/trunk/pom.xml Mon Mar 29 12:38:41 2010
@@ -24,7 +24,7 @@
 4.0.0
 org.apache.commons
 commons-jexl
-2.0.2-SNAPSHOT
+2.0.1-RC1
 Commons JEXL
 2001
 Jexl is an implementation of the JSTL Expression Language 
with extensions.
@@ -314,7 +314,7 @@
 
 apache.website
 Apache Commons Release Candidate Staging Site
-
${commons.deployment.protocol}://people.apache.org/www/people.apache.org/builds/commons/${commons.componentid}/${commons.release.version}/${commons.rc.version}/site
+
${commons.deployment.protocol}://people.apache.org/home/henrib/public_html/${commons.componentid}-${commons.release.version}-${commons.rc.version}/site
 
 
 




svn commit: r928758 - /commons/proper/jexl/trunk/pom.xml

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 12:39:59 2010
New Revision: 928758

URL: http://svn.apache.org/viewvc?rev=928758&view=rev
Log:
Prepare for 2.0.1 (manual)

Modified:
commons/proper/jexl/trunk/pom.xml

Modified: commons/proper/jexl/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=928758&r1=928757&r2=928758&view=diff
==
--- commons/proper/jexl/trunk/pom.xml (original)
+++ commons/proper/jexl/trunk/pom.xml Mon Mar 29 12:39:59 2010
@@ -36,9 +36,9 @@
 
 
 
-
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0
-
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0
-
http://svn.apache.org/viewvc/commons/proper/jexl/tags/COMMONS_JEXL_2_0
+
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
+
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
+
http://svn.apache.org/viewvc/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
 
 
 




svn commit: r928759 - /commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 12:40:48 2010
New Revision: 928759

URL: http://svn.apache.org/viewvc?rev=928759&view=rev
Log:
cleaning aborted publish attempt

Removed:
commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/



svn commit: r928761 - in /commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1: ./ pom.xml

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 12:47:53 2010
New Revision: 928761

URL: http://svn.apache.org/viewvc?rev=928761&view=rev
Log:
Prepare manual publish

Added:
commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/
  - copied from r928754, commons/proper/jexl/trunk/
commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/pom.xml
  - copied unchanged from r928758, commons/proper/jexl/trunk/pom.xml



svn commit: r928811 - /commons/proper/jexl/trunk/pom.xml

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 15:56:10 2010
New Revision: 928811

URL: http://svn.apache.org/viewvc?rev=928811&view=rev
Log:
2.0.1 build process test

Modified:
commons/proper/jexl/trunk/pom.xml

Modified: commons/proper/jexl/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=928811&r1=928810&r2=928811&view=diff
==
--- commons/proper/jexl/trunk/pom.xml (original)
+++ commons/proper/jexl/trunk/pom.xml Mon Mar 29 15:56:10 2010
@@ -19,12 +19,12 @@
 
 org.apache.commons
 commons-parent
-14
+12
 
 4.0.0
 org.apache.commons
 commons-jexl
-2.0.1-RC1
+2.0.1-SNAPSHOT
 Commons JEXL
 2001
 Jexl is an implementation of the JSTL Expression Language 
with extensions.
@@ -36,8 +36,8 @@
 
 
 
-
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
-
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
+
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0
+
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0
 
http://svn.apache.org/viewvc/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
 
 
@@ -300,10 +300,17 @@
 
 
 
+stagingSite
+Apache Commons Release Candidate Staging Site
+
${commons.deployment.protocol}://people.apache.org/home/henrib/public_html/${commons.componentid}-${commons.release.version}-${commons.rc.version}/site
+
+
 
 
 




svn commit: r928812 - /commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 15:56:39 2010
New Revision: 928812

URL: http://svn.apache.org/viewvc?rev=928812&view=rev
Log:
cleaning aborted publish attempt

Removed:
commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/



svn commit: r928816 - /commons/proper/jexl/trunk/pom.xml

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 16:04:01 2010
New Revision: 928816

URL: http://svn.apache.org/viewvc?rev=928816&view=rev
Log:
[maven-release-plugin] prepare release COMMONS_JEXL_2_0_1-RC1

Modified:
commons/proper/jexl/trunk/pom.xml

Modified: commons/proper/jexl/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=928816&r1=928815&r2=928816&view=diff
==
--- commons/proper/jexl/trunk/pom.xml (original)
+++ commons/proper/jexl/trunk/pom.xml Mon Mar 29 16:04:01 2010
@@ -24,7 +24,7 @@
 4.0.0
 org.apache.commons
 commons-jexl
-2.0.1-SNAPSHOT
+2.0.1-RC1
 Commons JEXL
 2001
 Jexl is an implementation of the JSTL Expression Language 
with extensions.
@@ -36,8 +36,8 @@
 
 
 
-
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0
-
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0
+
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
+
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
 
http://svn.apache.org/viewvc/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
 
 




svn commit: r928817 - /commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 16:04:40 2010
New Revision: 928817

URL: http://svn.apache.org/viewvc?rev=928817&view=rev
Log:
[maven-scm] copy for tag COMMONS_JEXL_2_0_1-RC1

Added:
commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/
  - copied from r928816, commons/proper/jexl/tags/COMMONS_JEXL_2_0/



svn commit: r928818 - /commons/proper/jexl/trunk/pom.xml

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 16:04:56 2010
New Revision: 928818

URL: http://svn.apache.org/viewvc?rev=928818&view=rev
Log:
[maven-release-plugin] prepare for next development iteration

Modified:
commons/proper/jexl/trunk/pom.xml

Modified: commons/proper/jexl/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=928818&r1=928817&r2=928818&view=diff
==
--- commons/proper/jexl/trunk/pom.xml (original)
+++ commons/proper/jexl/trunk/pom.xml Mon Mar 29 16:04:56 2010
@@ -24,7 +24,7 @@
 4.0.0
 org.apache.commons
 commons-jexl
-2.0.1-RC1
+2.0.2-SNAPSHOT
 Commons JEXL
 2001
 Jexl is an implementation of the JSTL Expression Language 
with extensions.
@@ -36,8 +36,8 @@
 
 
 
-
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
-
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
+
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0
+
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0
 
http://svn.apache.org/viewvc/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
 
 




svn commit: r928821 - /commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 16:22:44 2010
New Revision: 928821

URL: http://svn.apache.org/viewvc?rev=928821&view=rev
Log:
cleaning aborted publish attempt

Removed:
commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/



svn commit: r928822 - /commons/proper/jexl/trunk/pom.xml

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 16:26:36 2010
New Revision: 928822

URL: http://svn.apache.org/viewvc?rev=928822&view=rev
Log:
Prepare for 2.0.1

Modified:
commons/proper/jexl/trunk/pom.xml

Modified: commons/proper/jexl/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=928822&r1=928821&r2=928822&view=diff
==
--- commons/proper/jexl/trunk/pom.xml (original)
+++ commons/proper/jexl/trunk/pom.xml Mon Mar 29 16:26:36 2010
@@ -19,12 +19,12 @@
 
 org.apache.commons
 commons-parent
-12
+14
 
 4.0.0
 org.apache.commons
 commons-jexl
-2.0.2-SNAPSHOT
+2.0.1-SNAPSHOT
 Commons JEXL
 2001
 Jexl is an implementation of the JSTL Expression Language 
with extensions.
@@ -36,9 +36,9 @@
 
 
 
-
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0
-
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0
-
http://svn.apache.org/viewvc/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
+
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/trunk
+
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/trunk
+http://svn.apache.org/viewvc/commons/proper/jexl/trunk
 
 
 




svn commit: r928823 - /commons/proper/jexl/trunk/pom.xml

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 16:31:25 2010
New Revision: 928823

URL: http://svn.apache.org/viewvc?rev=928823&view=rev
Log:
[maven-release-plugin] prepare release COMMONS_JEXL_2_0_1-RC1

Modified:
commons/proper/jexl/trunk/pom.xml

Modified: commons/proper/jexl/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=928823&r1=928822&r2=928823&view=diff
==
--- commons/proper/jexl/trunk/pom.xml (original)
+++ commons/proper/jexl/trunk/pom.xml Mon Mar 29 16:31:25 2010
@@ -24,7 +24,7 @@
 4.0.0
 org.apache.commons
 commons-jexl
-2.0.1-SNAPSHOT
+2.0.1-RC1
 Commons JEXL
 2001
 Jexl is an implementation of the JSTL Expression Language 
with extensions.
@@ -36,9 +36,9 @@
 
 
 
-
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/trunk
-
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/trunk
-http://svn.apache.org/viewvc/commons/proper/jexl/trunk
+
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
+
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
+
http://svn.apache.org/viewvc/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
 
 
 




svn commit: r928824 - /commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 16:32:03 2010
New Revision: 928824

URL: http://svn.apache.org/viewvc?rev=928824&view=rev
Log:
[maven-release-plugin]  copy for tag COMMONS_JEXL_2_0_1-RC1

Added:
commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/
  - copied from r928823, commons/proper/jexl/trunk/



svn commit: r928825 - /commons/proper/jexl/trunk/pom.xml

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 16:32:19 2010
New Revision: 928825

URL: http://svn.apache.org/viewvc?rev=928825&view=rev
Log:
[maven-release-plugin] prepare for next development iteration

Modified:
commons/proper/jexl/trunk/pom.xml

Modified: commons/proper/jexl/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=928825&r1=928824&r2=928825&view=diff
==
--- commons/proper/jexl/trunk/pom.xml (original)
+++ commons/proper/jexl/trunk/pom.xml Mon Mar 29 16:32:19 2010
@@ -24,7 +24,7 @@
 4.0.0
 org.apache.commons
 commons-jexl
-2.0.1-RC1
+2.0.2-SNAPSHOT
 Commons JEXL
 2001
 Jexl is an implementation of the JSTL Expression Language 
with extensions.
@@ -36,9 +36,9 @@
 
 
 
-
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
-
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
-
http://svn.apache.org/viewvc/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
+
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/trunk
+
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/trunk
+http://svn.apache.org/viewvc/commons/proper/jexl/trunk
 
 
 




svn commit: r928852 - /commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 18:08:59 2010
New Revision: 928852

URL: http://svn.apache.org/viewvc?rev=928852&view=rev
Log:
cleaning aborted publish attempt

Removed:
commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/



svn commit: r928857 - /commons/proper/jexl/trunk/pom.xml

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 18:19:50 2010
New Revision: 928857

URL: http://svn.apache.org/viewvc?rev=928857&view=rev
Log:
Prepare for 2.0.1 (proper)

Modified:
commons/proper/jexl/trunk/pom.xml

Modified: commons/proper/jexl/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=928857&r1=928856&r2=928857&view=diff
==
--- commons/proper/jexl/trunk/pom.xml (original)
+++ commons/proper/jexl/trunk/pom.xml Mon Mar 29 18:19:50 2010
@@ -24,7 +24,7 @@
 4.0.0
 org.apache.commons
 commons-jexl
-2.0.2-SNAPSHOT
+2.0.1-SNAPSHOT
 Commons JEXL
 2001
 Jexl is an implementation of the JSTL Expression Language 
with extensions.
@@ -300,17 +300,10 @@
 
 
 
-stagingSite
-Apache Commons Release Candidate Staging Site
-
${commons.deployment.protocol}://people.apache.org/home/henrib/public_html/${commons.componentid}-${commons.release.version}-${commons.rc.version}/site
-
-
 
 
 
@@ -321,8 +314,7 @@
 
 apache.website
 Apache Commons Release Candidate Staging Site
-
${commons.deployment.protocol}://people.apache.org/home/henrib/public_html/${commons.componentid}-${commons.release.version}-${commons.rc.version}/site
-
+
${commons.deployment.protocol}://people.apache.org/www/people.apache.org/builds/commons/${commons.componentid}/${commons.release.version}/${commons.rc.version}/site

 
 
 




svn commit: r928892 - /commons/proper/jexl/trunk/pom.xml

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 20:18:39 2010
New Revision: 928892

URL: http://svn.apache.org/viewvc?rev=928892&view=rev
Log:
[maven-release-plugin] prepare release COMMONS_JEXL_2_0_1-RC1

Modified:
commons/proper/jexl/trunk/pom.xml

Modified: commons/proper/jexl/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=928892&r1=928891&r2=928892&view=diff
==
--- commons/proper/jexl/trunk/pom.xml (original)
+++ commons/proper/jexl/trunk/pom.xml Mon Mar 29 20:18:39 2010
@@ -24,7 +24,7 @@
 4.0.0
 org.apache.commons
 commons-jexl
-2.0.1-SNAPSHOT
+2.0.1-RC1
 Commons JEXL
 2001
 Jexl is an implementation of the JSTL Expression Language 
with extensions.
@@ -36,9 +36,9 @@
 
 
 
-
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/trunk
-
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/trunk
-http://svn.apache.org/viewvc/commons/proper/jexl/trunk
+
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
+
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
+
http://svn.apache.org/viewvc/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
 
 
 




svn commit: r928893 - /commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 20:19:14 2010
New Revision: 928893

URL: http://svn.apache.org/viewvc?rev=928893&view=rev
Log:
[maven-release-plugin]  copy for tag COMMONS_JEXL_2_0_1-RC1

Added:
commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/
  - copied from r928892, commons/proper/jexl/trunk/



svn commit: r928894 - /commons/proper/jexl/trunk/pom.xml

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 20:19:30 2010
New Revision: 928894

URL: http://svn.apache.org/viewvc?rev=928894&view=rev
Log:
[maven-release-plugin] prepare for next development iteration

Modified:
commons/proper/jexl/trunk/pom.xml

Modified: commons/proper/jexl/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=928894&r1=928893&r2=928894&view=diff
==
--- commons/proper/jexl/trunk/pom.xml (original)
+++ commons/proper/jexl/trunk/pom.xml Mon Mar 29 20:19:30 2010
@@ -24,7 +24,7 @@
 4.0.0
 org.apache.commons
 commons-jexl
-2.0.1-RC1
+2.0.2-SNAPSHOT
 Commons JEXL
 2001
 Jexl is an implementation of the JSTL Expression Language 
with extensions.
@@ -36,9 +36,9 @@
 
 
 
-
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
-
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
-
http://svn.apache.org/viewvc/commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1
+
scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/trunk
+
scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/trunk
+http://svn.apache.org/viewvc/commons/proper/jexl/trunk
 
 
 




svn commit: r928912 - /commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 21:36:31 2010
New Revision: 928912

URL: http://svn.apache.org/viewvc?rev=928912&view=rev
Log:
cleaning aborted publish attempt

Removed:
commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/



svn commit: r928913 - /commons/proper/jexl/trunk/pom.xml

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 21:38:22 2010
New Revision: 928913

URL: http://svn.apache.org/viewvc?rev=928913&view=rev
Log:
Prepare for 2.0.1 (going manual)

Modified:
commons/proper/jexl/trunk/pom.xml

Modified: commons/proper/jexl/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=928913&r1=928912&r2=928913&view=diff
==
--- commons/proper/jexl/trunk/pom.xml (original)
+++ commons/proper/jexl/trunk/pom.xml Mon Mar 29 21:38:22 2010
@@ -24,7 +24,7 @@
 4.0.0
 org.apache.commons
 commons-jexl
-2.0.2-SNAPSHOT
+2.0.1
 Commons JEXL
 2001
 Jexl is an implementation of the JSTL Expression Language 
with extensions.
@@ -321,7 +321,8 @@
 
 apache.website
 Apache Commons Release Candidate Staging Site
-
${commons.deployment.protocol}://people.apache.org/www/people.apache.org/builds/commons/${commons.componentid}/${commons.release.version}/${commons.rc.version}/site

+
${commons.deployment.protocol}://people.apache.org/www/people.apache.org/builds/commons/${commons.componentid}/${commons.release.version}/${commons.rc.version}/site
+
 
 
 




svn commit: r928914 - /commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 21:42:57 2010
New Revision: 928914

URL: http://svn.apache.org/viewvc?rev=928914&view=rev
Log:
Tagging 2.0.1 RC1

Added:
commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/
  - copied from r928913, commons/proper/jexl/trunk/



svn commit: r928931 - /commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 22:46:00 2010
New Revision: 928931

URL: http://svn.apache.org/viewvc?rev=928931&view=rev
Log:
cleaning aborted publish attempt

Removed:
commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/



svn commit: r928932 - /commons/proper/jexl/trunk/pom.xml

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 22:47:24 2010
New Revision: 928932

URL: http://svn.apache.org/viewvc?rev=928932&view=rev
Log:
Changes report conf change

Modified:
commons/proper/jexl/trunk/pom.xml

Modified: commons/proper/jexl/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=928932&r1=928931&r2=928932&view=diff
==
--- commons/proper/jexl/trunk/pom.xml (original)
+++ commons/proper/jexl/trunk/pom.xml Mon Mar 29 22:47:24 2010
@@ -215,8 +215,10 @@
 maven-changes-plugin
 2.3
 
-${basedir}/xdocs/changes.xml
-%URL%/%ISSUE%
+ ${basedir}/src/site/xdoc/changes.xml
+ 
+   %URL%/%ISSUE%
+ 
 
 
 
@@ -233,7 +235,7 @@
 
 
${basedir}/src/main/config/checkstyle.xml
 org/apache/commons/jexl2/parser/*.java
-
${basedir}/src/main/config/header.txt
+
${basedir}/src/main/config/header.txt
 false
 
 




svn commit: r928933 - /commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/

2010-03-29 Thread henrib
Author: henrib
Date: Mon Mar 29 22:48:03 2010
New Revision: 928933

URL: http://svn.apache.org/viewvc?rev=928933&view=rev
Log:
Tagging 2.0.1 RC1

Added:
commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC1/
  - copied from r928932, commons/proper/jexl/trunk/



svn commit: r929433 - in /commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser: ASTArrayLiteral.java ASTFloatLiteral.java ASTIntegerLiteral.java ASTStringLiteral.java SimpleNode.jav

2010-03-31 Thread henrib
Author: henrib
Date: Wed Mar 31 08:43:37 2010
New Revision: 929433

URL: http://svn.apache.org/viewvc?rev=929433&view=rev
Log:
Javadoc updated ( manual Checkstyle );
Added check on ASTArrayLiteral to enforce literal is array;
StringParser constants explained

Modified:

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/ASTArrayLiteral.java

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/ASTFloatLiteral.java

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/ASTIntegerLiteral.java

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/ASTStringLiteral.java

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/SimpleNode.java

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/StringParser.java

Modified: 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/ASTArrayLiteral.java
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/ASTArrayLiteral.java?rev=929433&r1=929432&r2=929433&view=diff
==
--- 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/ASTArrayLiteral.java
 (original)
+++ 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/ASTArrayLiteral.java
 Wed Mar 31 08:43:37 2010
@@ -18,30 +18,37 @@ package org.apache.commons.jexl2.parser;
 
 public final class ASTArrayLiteral extends JexlNode implements 
JexlNode.Literal {
 /** The type literal value. */
-Object literal = null;
+Object array = null;
 
-public ASTArrayLiteral(int id) {
+ASTArrayLiteral(int id) {
 super(id);
 }
 
-public ASTArrayLiteral(Parser p, int id) {
+ASTArrayLiteral(Parser p, int id) {
 super(p, id);
 }
 
+/**
+ *  Gets the literal value.
+ * @return the array literal
+ */
 public Object getLiteral() {
-return literal;
+return array;
 }
 
+/**
+ * Sets the literal value.
+ * @param literal the literal array value
+ * @throws IllegalArgumentException if literal is not an array or null
+ */
 public void setLiteral(Object literal) {
-this.literal = literal;
+if (literal != null && !literal.getClass().isArray()) {
+throw new IllegalArgumentException(literal.getClass() + " is not 
an array");
+}
+this.array = literal;
 }
 
-/**
- * Accept the visitor.
- * @param visitor the visitor
- * @param data contextual data
- * @return result of visit
- **/
+/** {...@inheritdoc} */
 @Override
 public Object jjtAccept(ParserVisitor visitor, Object data) {
 return visitor.visit(this, data);

Modified: 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/ASTFloatLiteral.java
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/ASTFloatLiteral.java?rev=929433&r1=929432&r2=929433&view=diff
==
--- 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/ASTFloatLiteral.java
 (original)
+++ 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/ASTFloatLiteral.java
 Wed Mar 31 08:43:37 2010
@@ -27,17 +27,16 @@ public final class ASTFloatLiteral exten
 public ASTFloatLiteral(Parser p, int id) {
 super(p, id);
 }
-
+
+/**
+ * Gets the literal value.
+ * @return the float literal
+ */
 public Float getLiteral() {
 return literal;
 }
 
-/**
- * Accept the visitor.
- * @param visitor the visitor
- * @param data contextual data
- * @return result of visit
- **/
+/** {...@inheritdoc} */
 @Override
 public Object jjtAccept(ParserVisitor visitor, Object data) {
 return visitor.visit(this, data);

Modified: 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/ASTIntegerLiteral.java
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/ASTIntegerLiteral.java?rev=929433&r1=929432&r2=929433&view=diff
==
--- 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/ASTIntegerLiteral.java
 (original)
+++ 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/parser/ASTIntegerLiteral.java
 Wed Mar 31 08:43:37 2010
@@ -20,24 +20,23 @@ public final class ASTIntegerLiteral ext
 /** The type literal value. */
 Integer literal = null;
 
-public ASTIntegerLiteral(int id) {
+ASTIntegerLiteral(int id) {
 super(id);
 }
 
-public ASTIntegerLiteral(Parser p, int id) {
+

svn commit: r929434 - /commons/proper/jexl/trunk/jexl2-compat/pom.xml

2010-03-31 Thread henrib
Author: henrib
Date: Wed Mar 31 08:44:48 2010
New Revision: 929434

URL: http://svn.apache.org/viewvc?rev=929434&view=rev
Log:
Updated dependency to JEXL 2.0.1

Modified:
commons/proper/jexl/trunk/jexl2-compat/pom.xml

Modified: commons/proper/jexl/trunk/jexl2-compat/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/jexl2-compat/pom.xml?rev=929434&r1=929433&r2=929434&view=diff
==
--- commons/proper/jexl/trunk/jexl2-compat/pom.xml (original)
+++ commons/proper/jexl/trunk/jexl2-compat/pom.xml Wed Mar 31 08:44:48 2010
@@ -26,7 +26,7 @@
 org.apache.commons
 commons-jexl-compat
 Commons JEXL (1.x compatibility)
-2.0-SNAPSHOT
+2.0.1
 2003
 Jexl is an implementation of the JSTL Expression Language 
with extensions.
 http://commons.apache.org/jexl/
@@ -80,7 +80,7 @@
 
 org.apache.commons
 commons-jexl
-2.0
+2.0.1
 
 
 
@@ -88,9 +88,9 @@
 1.5
 1.5
 jexl-compat
-2.0
+2.0.1
 
-RC3
+RC2
 
 JEXL
 12310479




svn commit: r929437 - in /commons/proper/jexl/trunk: pom.xml src/main/config/findbugs-exclude-filter.xml

2010-03-31 Thread henrib
Author: henrib
Date: Wed Mar 31 08:53:56 2010
New Revision: 929437

URL: http://svn.apache.org/viewvc?rev=929437&view=rev
Log:
Prepare for 2.0.1 RC2:
- Updated findbugs spec to exclude generated sources

Added:
commons/proper/jexl/trunk/src/main/config/findbugs-exclude-filter.xml   
(with props)
Modified:
commons/proper/jexl/trunk/pom.xml

Modified: commons/proper/jexl/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=929437&r1=929436&r2=929437&view=diff
==
--- commons/proper/jexl/trunk/pom.xml (original)
+++ commons/proper/jexl/trunk/pom.xml Wed Mar 31 08:53:56 2010
@@ -117,7 +117,7 @@
 jexl
 2.0.1
 
-RC1
+RC2
 1.1
 
 JEXL
@@ -257,10 +257,7 @@
 findbugs-maven-plugin
 2.3.1
 
-
-
org/apache/commons/jexl2/parser/*.class
-
org/apache/commons/jexl2/**/*Test.class
-
+   
${basedir}/src/main/config/findbugs-exclude-filter.xml
 true
 
 target/site
@@ -273,8 +270,7 @@
 
 1.5
 
-
org/apache/commons/jexl2/parser/*.class
-
org/apache/commons/jexl2/**/*Test.class
+**/generated-sources/**/*
 
 
 /rulesets/braces.xml
@@ -327,6 +323,17 @@
 
 
 
+    
+    henrib
+
+
+
+apache.website
+Apache Commons Release Candidate Staging Site
+
${commons.deployment.protocol}://people.apache.org/home/henrib/public_html/${commons.componentid}-${commons.release.version}-${commons.rc.version}/site
+
+
+
 
 
 
\ No newline at end of file

Added: commons/proper/jexl/trunk/src/main/config/findbugs-exclude-filter.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/main/config/findbugs-exclude-filter.xml?rev=929437&view=auto
==
--- commons/proper/jexl/trunk/src/main/config/findbugs-exclude-filter.xml 
(added)
+++ commons/proper/jexl/trunk/src/main/config/findbugs-exclude-filter.xml Wed 
Mar 31 08:53:56 2010
@@ -0,0 +1,42 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+

Propchange: 
commons/proper/jexl/trunk/src/main/config/findbugs-exclude-filter.xml
--
svn:eol-style = native




svn commit: r929439 - /commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC2/

2010-03-31 Thread henrib
Author: henrib
Date: Wed Mar 31 08:58:43 2010
New Revision: 929439

URL: http://svn.apache.org/viewvc?rev=929439&view=rev
Log:
Tagging 2.0.1 RC2

Added:
commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC2/
  - copied from r929438, commons/proper/jexl/trunk/



svn commit: r929642 - /commons/proper/jexl/trunk/pom.xml

2010-03-31 Thread henrib
Author: henrib
Date: Wed Mar 31 18:00:11 2010
New Revision: 929642

URL: http://svn.apache.org/viewvc?rev=929642&view=rev
Log:
Prepare for 2.0.1 RC3: removed obsolete or extraneous infos from pom

Modified:
commons/proper/jexl/trunk/pom.xml

Modified: commons/proper/jexl/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=929642&r1=929641&r2=929642&view=diff
==
--- commons/proper/jexl/trunk/pom.xml (original)
+++ commons/proper/jexl/trunk/pom.xml Wed Mar 31 18:00:11 2010
@@ -301,39 +301,4 @@
 -->
 
 
-
-
-
-
-website
-Apache Website
-
${commons.deployment.protocol}://people.apache.org/www/commons.apache.org/jexl/
-
-
-
-
-
-rc
-
-
-
-apache.website
-Apache Commons Release Candidate Staging Site
-
${commons.deployment.protocol}://people.apache.org/www/people.apache.org/builds/commons/${commons.componentid}/${commons.release.version}/${commons.rc.version}/site
-
-
-
-    
-henrib
-
-
-
-apache.website
-Apache Commons Release Candidate Staging Site
-
${commons.deployment.protocol}://people.apache.org/home/henrib/public_html/${commons.componentid}-${commons.release.version}-${commons.rc.version}/site
-
-
-
-
-
 
\ No newline at end of file




svn commit: r929643 - /commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC3/

2010-03-31 Thread henrib
Author: henrib
Date: Wed Mar 31 18:03:19 2010
New Revision: 929643

URL: http://svn.apache.org/viewvc?rev=929643&view=rev
Log:
Tagging 2.0.1 RC3

Added:
commons/proper/jexl/tags/COMMONS_JEXL_2_0_1-RC3/
  - copied from r929642, commons/proper/jexl/trunk/



svn commit: r931221 - /commons/proper/jexl/trunk/pom.xml

2010-04-06 Thread henrib
Author: henrib
Date: Tue Apr  6 16:57:08 2010
New Revision: 931221

URL: http://svn.apache.org/viewvc?rev=931221&view=rev
Log:
Post 2.0.1 release steps

Modified:
commons/proper/jexl/trunk/pom.xml

Modified: commons/proper/jexl/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=931221&r1=931220&r2=931221&view=diff
==
--- commons/proper/jexl/trunk/pom.xml (original)
+++ commons/proper/jexl/trunk/pom.xml Tue Apr  6 16:57:08 2010
@@ -24,7 +24,7 @@
 4.0.0
 org.apache.commons
 commons-jexl
-2.0.1-SNAPSHOT
+2.1-SNAPSHOT
 Commons JEXL
 2001
 Jexl is an implementation of the JSTL Expression Language 
with extensions.
@@ -41,6 +41,14 @@
 http://svn.apache.org/viewvc/commons/proper/jexl/trunk
 
 
+
+
+people.apache.org
+Commons Jexl
+scp://people.apache.org/www/commons.apache.org/jexl
+
+
+
 
 
 dIon Gillard
@@ -215,10 +223,10 @@
 maven-changes-plugin
 2.3
 
- ${basedir}/src/site/xdoc/changes.xml
- 
-   %URL%/%ISSUE%
- 
+${basedir}/src/site/xdoc/changes.xml
+
+%URL%/%ISSUE%
+
 
 
 
@@ -257,7 +265,7 @@
 findbugs-maven-plugin
 2.3.1
 
-   
${basedir}/src/main/config/findbugs-exclude-filter.xml
+
${basedir}/src/main/config/findbugs-exclude-filter.xml
 true
 
 target/site




svn commit: r931576 - /commons/proper/jexl/trunk/doap_jexl.rdf

2010-04-07 Thread henrib
Author: henrib
Date: Wed Apr  7 14:54:36 2010
New Revision: 931576

URL: http://svn.apache.org/viewvc?rev=931576&view=rev
Log:
Post 2.0.1 release steps

Modified:
commons/proper/jexl/trunk/doap_jexl.rdf

Modified: commons/proper/jexl/trunk/doap_jexl.rdf
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/doap_jexl.rdf?rev=931576&r1=931575&r2=931576&view=diff
==
--- commons/proper/jexl/trunk/doap_jexl.rdf (original)
+++ commons/proper/jexl/trunk/doap_jexl.rdf Wed Apr  7 14:54:36 2010
@@ -36,12 +36,17 @@
 
   
 commons-jexl
-2009-11-16
-2.0-RC1
+2010-04-07
+2.0.1
   
   
 commons-jexl
-2009-03-25
+2010-02-23
+2.0
+  
+  
+commons-jexl
+2006-09-12
 1.1
   
 




svn commit: r939962 - in /commons/proper/jexl/trunk/src: main/java/org/apache/commons/jexl2/internal/MethodExecutor.java main/java/org/apache/commons/jexl2/internal/introspection/MethodKey.java test/j

2010-05-01 Thread henrib
Author: henrib
Date: Sat May  1 09:48:56 2010
New Revision: 939962

URL: http://svn.apache.org/viewvc?rev=939962&view=rev
Log:
JEXL-101: fixed varargs handling in MethodExecutor and MethodKey; added test

Modified:

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/internal/MethodExecutor.java

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/internal/introspection/MethodKey.java

commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/MethodTest.java

Modified: 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/internal/MethodExecutor.java
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/internal/MethodExecutor.java?rev=939962&r1=939961&r2=939962&view=diff
==
--- 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/internal/MethodExecutor.java
 (original)
+++ 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/internal/MethodExecutor.java
 Sat May  1 09:48:56 2010
@@ -67,13 +67,13 @@ public final class MethodExecutor extend
 
 /** {...@inheritdoc} */
 @Override
-public Object tryExecute(String name, Object o, Object[] args) {
+public Object tryExecute(String name, Object obj, Object[] args) {
 MethodKey tkey = new MethodKey(name, args);
 // let's assume that invocation will fly if the declaring class is the
 // same and arguments have the same type
-if (objectClass.equals(o.getClass()) && tkey.equals(key)) {
+if (objectClass.equals(obj.getClass()) && tkey.equals(key)) {
 try {
-return execute(o, args);
+return execute(obj, args);
 } catch (InvocationTargetException xinvoke) {
 return TRY_FAILED; // fail
 } catch (IllegalAccessException xill) {
@@ -127,35 +127,28 @@ public final class MethodExecutor extend
  * to fit the method declaration.
  */
 protected Object[] handleVarArg(Class type, int index, Object[] actual) 
{
-// if no values are being passed into the vararg
-if (actual.length == index) {
-// create an empty array of the expected type
-actual = new Object[]{Array.newInstance(type, 0)};
-} else if (actual.length == index + 1) {
-// if one value is being passed into the vararg
-// make sure the last arg is an array of the expected type
-if (MethodKey.isInvocationConvertible(type,
-actual[index].getClass(),
-false)) {
-// create a 1-length array to hold and replace the last param
+final int size = actual.length - index;
+// if no values are being passed into the vararg, size == 0
+if (size == 1) {
+// if one non-null value is being passed into the vararg,
+// make the last arg an array of the expected type
+if (actual[index] != null) {
+// create a 1-length array to hold and replace the last 
argument
 Object lastActual = Array.newInstance(type, 1);
 Array.set(lastActual, 0, actual[index]);
 actual[index] = lastActual;
 }
-} else if (actual.length > index + 1) {
-// if multiple values are being passed into the vararg
-// put the last and extra actual in an array of the expected type
-int size = actual.length - index;
+} else {
+// if no or multiple values are being passed into the vararg,
+// put them in an array of the expected type
 Object lastActual = Array.newInstance(type, size);
 for (int i = 0; i < size; i++) {
 Array.set(lastActual, i, actual[index + i]);
 }
 
-// put all into a new actual array of the appropriate size
+// put all arguments into a new actual array of the appropriate 
size
 Object[] newActual = new Object[index + 1];
-for (int i = 0; i < index; i++) {
-newActual[i] = actual[i];
-}
+System.arraycopy(actual, 0, newActual, 0, index);
 newActual[index] = lastActual;
 
 // replace the old actual array

Modified: 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/internal/introspection/MethodKey.java
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/internal/introspection/MethodKey.java?rev=939962&r1=939961&r2=939962&view=diff
==
--- 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/internal/introspection/MethodKey.java
 (original)
+++ 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/

svn commit: r940507 - in /commons/proper/jexl/trunk/src: main/java/org/apache/commons/jexl2/internal/MethodExecutor.java test/java/org/apache/commons/jexl2/MethodTest.java

2010-05-03 Thread henrib
Author: henrib
Date: Mon May  3 16:42:31 2010
New Revision: 940507

URL: http://svn.apache.org/viewvc?rev=940507&view=rev
Log:
JEXL-101: Added explicit comments in code & test

Modified:

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/internal/MethodExecutor.java

commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/MethodTest.java

Modified: 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/internal/MethodExecutor.java
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/internal/MethodExecutor.java?rev=940507&r1=940506&r2=940507&view=diff
==
--- 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/internal/MethodExecutor.java
 (original)
+++ 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/internal/MethodExecutor.java
 Mon May  3 16:42:31 2010
@@ -138,6 +138,7 @@ public final class MethodExecutor extend
 Array.set(lastActual, 0, actual[index]);
 actual[index] = lastActual;
 }
+// else, the vararg is null and used as is, considered as T[]
 } else {
 // if no or multiple values are being passed into the vararg,
 // put them in an array of the expected type

Modified: 
commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/MethodTest.java
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/MethodTest.java?rev=940507&r1=940506&r2=940507&view=diff
==
--- 
commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/MethodTest.java
 (original)
+++ 
commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/MethodTest.java
 Mon May  3 16:42:31 2010
@@ -32,8 +32,12 @@ public class MethodTest extends JexlTest
 public static class VarArgs {
 public String callInts(Integer... args) {
 int result = 0;
-for (int i = 0; i < args.length; i++) {
-result += args[i].intValue();
+if (args != null) {
+for (int i = 0; i < args.length; i++) {
+result += args[i] != null ?args[i] : -100;
+}
+} else {
+result = -1000;
 }
 return "Varargs:"+result;
 }
@@ -42,8 +46,10 @@ public class MethodTest extends JexlTest
 int result = fixed.intValue();
 if (args != null) {
 for (int i = 0; i < args.length; i++) {
-result += args[i].intValue();
+result += args[i] != null ?args[i] : -100;
 }
+} else {
+result -= 1000;
 }
 return "Mixed:"+result;
 }
@@ -51,9 +57,11 @@ public class MethodTest extends JexlTest
 public String callMixed(String mixed, Integer... args) {
 int result = 0;
 if (args != null) {
-for (int arg : args) {
-result += arg;
+for (int i = 0; i < args.length; i++) {
+result += args[i] != null ?args[i] : -100;
 }
+} else {
+result = -1000;
 }
 return mixed+":"+result;
 }
@@ -98,24 +106,37 @@ public class MethodTest extends JexlTest
 }
 
 public void testCallVarArgMethod() throws Exception {
-asserter.setVariable("test", new VarArgs());
+VarArgs test = new VarArgs();
+asserter.setVariable("test", test);
 asserter.assertExpression("test.callInts()", "Varargs:0");
 asserter.assertExpression("test.callInts(1)", "Varargs:1");
 asserter.assertExpression("test.callInts(1,2,3,4,5)", "Varargs:15");
 }
 
 public void testCallMixedVarArgMethod() throws Exception {
-asserter.setVariable("test", new VarArgs());
+VarArgs test = new VarArgs();
+asserter.setVariable("test", test);
+assertEquals("Mixed:1", test.callMixed(1));
 asserter.assertExpression("test.callMixed(1)", "Mixed:1");
-asserter.assertExpression("test.callMixed(1, null)", "Mixed:1");
+// Java and JEXL equivalent behavior: 'Mixed:-999' expected
+//{
+assertEquals("Mixed:-999", test.callMixed(1, null));
+asserter.assertExpression("test.callMixed(1, null)", "Mixed:-999");
+//}
 asserter.assertExpression("test.callMixed(1,2)", "Mixed:3");
 asserter.assertExpression("test.callMixed

svn commit: r946971 - in /commons/proper/jexl/trunk/src: main/java/org/apache/commons/jexl2/scripting/JexlScriptEngineFactory.java test/java/org/apache/commons/jexl2/scripting/JexlScriptEngineTest.jav

2010-05-21 Thread henrib
Author: henrib
Date: Fri May 21 11:16:40 2010
New Revision: 946971

URL: http://svn.apache.org/viewvc?rev=946971&view=rev
Log:
JEXL-102: added jexl2 & variants as name/extension/mime for 
JexlScriptingEngineFactory

Modified:

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/scripting/JexlScriptEngineFactory.java

commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/scripting/JexlScriptEngineTest.java

Modified: 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/scripting/JexlScriptEngineFactory.java
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/scripting/JexlScriptEngineFactory.java?rev=946971&r1=946970&r2=946971&view=diff
==
--- 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/scripting/JexlScriptEngineFactory.java
 (original)
+++ 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/scripting/JexlScriptEngineFactory.java
 Fri May 21 11:16:40 2010
@@ -48,7 +48,7 @@ public class JexlScriptEngineFactory imp
 
 /** {...@inheritdoc} */
 public String getEngineVersion() {
-return "1.0"; // ensure this is updated if function changes are made 
to this class
+return "2.0"; // ensure this is updated if function changes are made 
to this class
 }
 
 /** {...@inheritdoc} */
@@ -82,17 +82,17 @@ public class JexlScriptEngineFactory imp
 
 /** {...@inheritdoc} */
 public List getExtensions() {
-return Collections.unmodifiableList(Arrays.asList("jexl"));
+return Collections.unmodifiableList(Arrays.asList("jexl", "jexl2"));
 }
 
 /** {...@inheritdoc} */
 public List getMimeTypes() {
-return 
Collections.unmodifiableList(Arrays.asList("application/x-jexl"));
+return 
Collections.unmodifiableList(Arrays.asList("application/x-jexl", 
"application/x-jexl2"));
 }
 
 /** {...@inheritdoc} */
 public List getNames() {
-return Collections.unmodifiableList(Arrays.asList("JEXL", "Jexl", 
"jexl"));
+return Collections.unmodifiableList(Arrays.asList("JEXL", "Jexl", 
"jexl", "JEXL2", "Jexl2", "jexl2"));
 }
 
 /** {...@inheritdoc} */

Modified: 
commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/scripting/JexlScriptEngineTest.java
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/scripting/JexlScriptEngineTest.java?rev=946971&r1=946970&r2=946971&view=diff
==
--- 
commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/scripting/JexlScriptEngineTest.java
 (original)
+++ 
commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/scripting/JexlScriptEngineTest.java
 Fri May 21 11:16:40 2010
@@ -20,6 +20,7 @@ package org.apache.commons.jexl2.scripti
 
 import java.io.Reader;
 import java.util.Arrays;
+import java.util.List;
 import java.util.Map;
 
 import javax.script.ScriptEngine;
@@ -27,30 +28,46 @@ import javax.script.ScriptEngineManager;
 import junit.framework.TestCase;
 
 public class JexlScriptEngineTest extends TestCase {
+private static final List NAMES = Arrays.asList("JEXL", "Jexl", 
"jexl", "JEXL2", "Jexl2", "jexl2");
+private static final List EXTENSIONS = Arrays.asList("jexl", 
"jexl2");
+private static final List MIMES = 
Arrays.asList("application/x-jexl", "application/x-jexl2");
 
 public void testScriptEngineFactory() throws Exception {
 JexlScriptEngineFactory factory = new JexlScriptEngineFactory();
 assertEquals("JEXL Engine", factory.getParameter(ScriptEngine.ENGINE));
-assertEquals("1.0", factory.getParameter(ScriptEngine.ENGINE_VERSION));
+assertEquals("2.0", factory.getParameter(ScriptEngine.ENGINE_VERSION));
 assertEquals("JEXL", factory.getParameter(ScriptEngine.LANGUAGE));
 assertEquals("2.0", 
factory.getParameter(ScriptEngine.LANGUAGE_VERSION));
-assertEquals(Arrays.asList("JEXL", "Jexl", "jexl"), 
factory.getParameter(ScriptEngine.NAME));
 assertNull(factory.getParameter("THREADING"));
-
-assertEquals(Arrays.asList("jexl"), factory.getExtensions());
-assertEquals(Arrays.asList("application/x-jexl"), 
factory.getMimeTypes());
+assertEquals(NAMES, factory.getParameter(ScriptEngine.NAME));
+assertEquals(EXTENSIONS, factory.getExtensions());
+assertEquals(MIMES, factory.getMimeTypes());
 
 

svn commit: r947036 - /commons/proper/jexl/trunk/src/site/xdoc/changes.xml

2010-05-21 Thread henrib
Author: henrib
Date: Fri May 21 15:05:15 2010
New Revision: 947036

URL: http://svn.apache.org/viewvc?rev=947036&view=rev
Log:
Reflect JEXL-10{1,2} fixes

Modified:
commons/proper/jexl/trunk/src/site/xdoc/changes.xml

Modified: commons/proper/jexl/trunk/src/site/xdoc/changes.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/site/xdoc/changes.xml?rev=947036&r1=947035&r2=947036&view=diff
==
--- commons/proper/jexl/trunk/src/site/xdoc/changes.xml (original)
+++ commons/proper/jexl/trunk/src/site/xdoc/changes.xml Fri May 21 15:05:15 2010
@@ -25,6 +25,12 @@
 Commons Developers
   
   
+
+Add 
"jexl2" as a supported name
+
+Vararg methods where the first argument is no vararg can not be 
called with only the fixed parameters given
+
+
 
 Array access 
expressions fail when evaluated twice and cache is enabled
 Documentation of Thread Safety / Invalid code examples on 
homepage




svn commit: r984516 - in /commons/proper/jexl/trunk/src: main/java/org/apache/commons/jexl2/JexlArithmetic.java test/java/org/apache/commons/jexl2/ArrayLiteralTest.java

2010-08-11 Thread henrib
Author: henrib
Date: Wed Aug 11 18:26:09 2010
New Revision: 984516

URL: http://svn.apache.org/viewvc?rev=984516&view=rev
Log:
Fix for JEXL-104

Modified:

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlArithmetic.java

commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/ArrayLiteralTest.java

Modified: 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlArithmetic.java
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlArithmetic.java?rev=984516&r1=984515&r2=984516&view=diff
==
--- 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlArithmetic.java
 (original)
+++ 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl2/JexlArithmetic.java
 Wed Aug 11 18:26:09 2010
@@ -203,24 +203,36 @@ public class JexlArithmetic {
 final int size = untyped.length;
 Class commonClass = null;
 if (size > 0) {
-// base common class on first entry
-commonClass = untyped[0].getClass();
-final boolean isNumber = 
Number.class.isAssignableFrom(commonClass);
+boolean isNumber = true;
 // for all children after first...
-for (int i = 1; i < size; i++) {
-Class eclass = untyped[i].getClass();
-// detect same type for all elements in array
-if (!Object.class.equals(commonClass) && 
!commonClass.equals(eclass)) {
-// if both are numbers...
-if (isNumber && Number.class.isAssignableFrom(eclass)) {
-commonClass = Number.class;
-} else {
-commonClass = Object.class;
+for (int u = 0; u < size && !Object.class.equals(commonClass); 
++u) {
+if (untyped[u] != null) {
+Class eclass = untyped[u].getClass();
+// base common class on first non-null entry
+if (commonClass == null) {
+commonClass = eclass;
+isNumber &= Number.class.isAssignableFrom(commonClass);
+} else if (!commonClass.equals(eclass)) {
+// if both are numbers...
+if (isNumber && Number.class.isAssignableFrom(eclass)) 
{
+commonClass = Number.class;
+} else {
+// attempt to find valid superclass
+do {
+eclass = eclass.getSuperclass();
+if (eclass == null) {
+commonClass = Object.class;
+break;
+}
+} while(!commonClass.isAssignableFrom(eclass));
+}
 }
+} else {
+isNumber = false;
 }
 }
 // convert array to the common class if not Object.class
-if (!Object.class.equals(commonClass)) {
+if (commonClass != null && !Object.class.equals(commonClass)) {
 // if the commonClass has an equivalent primitive type, get it
 if (isNumber) {
 try {

Modified: 
commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/ArrayLiteralTest.java
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/ArrayLiteralTest.java?rev=984516&r1=984515&r2=984516&view=diff
==
--- 
commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/ArrayLiteralTest.java
 (original)
+++ 
commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/ArrayLiteralTest.java
 Wed Aug 11 18:26:09 2010
@@ -49,6 +49,31 @@ public class ArrayLiteralTest extends Je
 Object o = e.evaluate( jc );
 Object[] check = { new Float(5), new Integer(10) };
 assertTrue( Arrays.equals(check, (Object[])o) );
+assertTrue (o.getClass().isArray() && 
o.getClass().getComponentType().equals(Number.class));
+}
+
+public void testLiteralWithNulls() throws Exception {
+String []exprs = {
+"[ null , 10 ]",
+"[ 10 , null ]",
+"[ 10 , null , 10]",
+"[ '10' , null ]",
+"[ null, '10' , null ]"
+}; 
+Object [][]checks = {
+{null, new Integer(10)},
+{new Integer(10), null},
+{new Integer(10), null, new Integer(10)},
+{ "10", nul

svn commit: r984564 - /commons/proper/jexl/trunk/src/site/xdoc/changes.xml

2010-08-11 Thread henrib
Author: henrib
Date: Wed Aug 11 20:01:40 2010
New Revision: 984564

URL: http://svn.apache.org/viewvc?rev=984564&view=rev
Log:
Adding JEXL-104 to list of changes

Modified:
commons/proper/jexl/trunk/src/site/xdoc/changes.xml

Modified: commons/proper/jexl/trunk/src/site/xdoc/changes.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/site/xdoc/changes.xml?rev=984564&r1=984563&r2=984564&view=diff
==
--- commons/proper/jexl/trunk/src/site/xdoc/changes.xml (original)
+++ commons/proper/jexl/trunk/src/site/xdoc/changes.xml Wed Aug 11 20:01:40 2010
@@ -26,6 +26,7 @@
   
   
 
+NPE in JexlArithmetic when an Array-Expression containing a null is 
used.
 Add 
"jexl2" as a supported name
 
 Vararg methods where the first argument is no vararg can not be 
called with only the fixed parameters given




svn commit: r1532658 - /commons/trunks-proper/CHALLENGE.txt

2013-10-16 Thread henrib
Author: henrib
Date: Wed Oct 16 07:13:21 2013
New Revision: 1532658

URL: http://svn.apache.org/r1532658
Log:
Added henrib for Jexl

Modified:
commons/trunks-proper/CHALLENGE.txt

Modified: commons/trunks-proper/CHALLENGE.txt
URL: 
http://svn.apache.org/viewvc/commons/trunks-proper/CHALLENGE.txt?rev=1532658&r1=1532657&r2=1532658&view=diff
==
--- commons/trunks-proper/CHALLENGE.txt (original)
+++ commons/trunks-proper/CHALLENGE.txt Wed Oct 16 07:13:21 2013
@@ -31,7 +31,7 @@ io=joehni,sebb,ggregory
 jci=
 jcs=
 jelly=polx,kinow
-jexl=sebb
+jexl=sebb,henrib
 jxpath=mbenson
 lang=bayard,joehni,mbenson,britter,sebb,pbenedict,ggregory
 launcher=




svn commit: r1407498 - /commons/proper/jexl/branches/2.0/src/site/xdoc/reference/syntax.xml

2012-11-09 Thread henrib
Author: henrib
Date: Fri Nov  9 15:44:03 2012
New Revision: 1407498

URL: http://svn.apache.org/viewvc?rev=1407498&view=rev
Log:
JEXL-141: fixed documentation

Modified:
commons/proper/jexl/branches/2.0/src/site/xdoc/reference/syntax.xml

Modified: commons/proper/jexl/branches/2.0/src/site/xdoc/reference/syntax.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/branches/2.0/src/site/xdoc/reference/syntax.xml?rev=1407498&r1=1407497&r2=1407498&view=diff
==
--- commons/proper/jexl/branches/2.0/src/site/xdoc/reference/syntax.xml 
(original)
+++ commons/proper/jexl/branches/2.0/src/site/xdoc/reference/syntax.xml Fri Nov 
 9 15:44:03 2012
@@ -185,8 +185,8 @@
 
 
   Big Integer Literals
-  1 or more digits from 0 to 9 suffixed 
with b or B
-  , eg 42B.
+  1 or more digits from 0 to 9 suffixed 
with h or H
+   (for Huge ala OGNL, "does not interfere with hexa-decimal digits"), 
eg 42h.
   
 
 
@@ -194,8 +194,8 @@
   
 1 or more digits from 0 to 9, followed
 by a decimal point and then one or more digits from
-0 to 9 suffixed with h or 
H (for Huge ala OGNL))
-   , eg 42.0H.
+0 to 9 suffixed with b or 
B)
+   , eg 42.0b.
   
 
 
@@ -565,7 +565,7 @@
   
 Loop through items of an Array, Collection, Map, Iterator or 
Enumeration, e.g.
 for(item : list) {
-x = x + item; 
+x = x + item;
 }
 Where item and list are variables.
 The JEXL 1.1 syntax using foreach(item in list) is 
now deprecated.
@@ -576,7 +576,7 @@
   
 Loop until a condition is satisfied, e.g.
 while (x lt 10) {
-x = x + 2; 
+x = x + 2;
 }
   
 




svn commit: r1407499 - /commons/proper/jexl/trunk/src/site/xdoc/reference/syntax.xml

2012-11-09 Thread henrib
Author: henrib
Date: Fri Nov  9 15:44:41 2012
New Revision: 1407499

URL: http://svn.apache.org/viewvc?rev=1407499&view=rev
Log:
JEXL-141: fixed documentation

Modified:
commons/proper/jexl/trunk/src/site/xdoc/reference/syntax.xml

Modified: commons/proper/jexl/trunk/src/site/xdoc/reference/syntax.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/site/xdoc/reference/syntax.xml?rev=1407499&r1=1407498&r2=1407499&view=diff
==
--- commons/proper/jexl/trunk/src/site/xdoc/reference/syntax.xml (original)
+++ commons/proper/jexl/trunk/src/site/xdoc/reference/syntax.xml Fri Nov  9 
15:44:41 2012
@@ -185,8 +185,8 @@
 
 
   Big Integer Literals
-  1 or more digits from 0 to 9 suffixed 
with b or B
-  , eg 42B.
+  1 or more digits from 0 to 9 suffixed 
with h or H
+   (for Huge ala OGNL, "does not interfere with hexa-decimal digits"), 
eg 42h.
   
 
 
@@ -194,8 +194,8 @@
   
 1 or more digits from 0 to 9, followed
 by a decimal point and then one or more digits from
-0 to 9 suffixed with h or 
H (for Huge ala OGNL))
-   , eg 42.0H.
+0 to 9 suffixed with b or 
B)
+   , eg 42.0b.
   
 
 




svn commit: r1410058 - /commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl3/internal/introspection/MethodKey.java

2012-11-15 Thread henrib
Author: henrib
Date: Thu Nov 15 22:18:20 2012
New Revision: 1410058

URL: http://svn.apache.org/viewvc?rev=1410058&view=rev
Log:
Added a check to avoid an array out of bounds when a method exists with 
multiple signatures including a vararg and a no-arg

Modified:

commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl3/internal/introspection/MethodKey.java

Modified: 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl3/internal/introspection/MethodKey.java
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl3/internal/introspection/MethodKey.java?rev=1410058&r1=1410057&r2=1410058&view=diff
==
--- 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl3/internal/introspection/MethodKey.java
 (original)
+++ 
commons/proper/jexl/trunk/src/main/java/org/apache/commons/jexl3/internal/introspection/MethodKey.java
 Thu Nov 15 22:18:20 2012
@@ -629,7 +629,7 @@ public final class MethodKey {
 // there's just one more methodArg than class arg
 // and the last methodArg is an array, then treat it as a vararg
 if (methodArgs.length == classes.length
-|| methodArgs.length == classes.length + 1 && 
methodArgs[methodArgs.length - 1].isArray()) {
+|| ((methodArgs.length == classes.length + 1) && 
methodArgs[methodArgs.length - 1].isArray())) {
 // this will properly match when the last methodArg
 // is an array/varargs and the last class is the type of array
 // (e.g. String when the method is expecting String...)
@@ -647,7 +647,7 @@ public final class MethodKey {
 return true;
 }
 // more arguments given than the method accepts; check for varargs
-if (methodArgs.length > 0) {
+if (methodArgs.length > 0 && classes.length > 0) {
 // check that the last methodArg is an array
 Class lastarg = methodArgs[methodArgs.length - 1];
 if (!lastarg.isArray()) {




svn commit: r1196677 [2/2] - in /commons/proper/jexl/trunk/src: main/java/org/apache/commons/jexl2/ main/java/org/apache/commons/jexl2/introspection/ main/java/org/apache/commons/jexl2/parser/ main/ja

2011-11-02 Thread henrib
Modified: 
commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/UnifiedJEXLTest.java
URL: 
http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/UnifiedJEXLTest.java?rev=1196677&r1=1196676&r2=1196677&view=diff
==
--- 
commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/UnifiedJEXLTest.java
 (original)
+++ 
commons/proper/jexl/trunk/src/test/java/org/apache/commons/jexl2/UnifiedJEXLTest.java
 Wed Nov  2 16:32:39 2011
@@ -15,6 +15,9 @@
  * limitations under the License.
  */
 package org.apache.commons.jexl2;
+
+import java.io.StringReader;
+import java.io.StringWriter;
 import java.util.Arrays;
 import java.util.HashMap;
 import java.util.List;
@@ -22,11 +25,13 @@ import java.util.Map;
 import java.util.Set;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
+
 /**
  * Test cases for the UnifiedEL.
  */
 public class UnifiedJEXLTest extends JexlTestCase {
 private static final JexlEngine ENGINE = createEngine(false);
+
 static {
 ENGINE.setSilent(false);
 ENGINE.setCache(128);
@@ -34,13 +39,13 @@ public class UnifiedJEXLTest extends Jex
 private static final UnifiedJEXL EL = new UnifiedJEXL(ENGINE);
 private static final Log LOG = LogFactory.getLog(UnifiedJEXL.class);
 private JexlContext context = null;
-private Map vars =null;
+private Map vars = null;
 
 @Override
 public void setUp() throws Exception {
 // ensure jul logging is only error
 
java.util.logging.Logger.getLogger(JexlEngine.class.getName()).setLevel(java.util.logging.Level.SEVERE);
-vars = new HashMap();
+vars = new HashMap();
 context = new MapContext(vars);
 }
 
@@ -49,18 +54,38 @@ public class UnifiedJEXLTest extends Jex
 debuggerCheck(ENGINE);
 super.tearDown();
 }
+
+/** Extract the source from a toString-ed expression. */
+private String getSource(String tostring) {
+int len = tostring.length();
+int sc = tostring.lastIndexOf(" /*= ");
+if (sc >= 0)  {
+sc += " /*= ".length();
+}
+int ec = tostring.lastIndexOf(" */");
+if (sc >= 0 && ec >= 0 && ec > sc && ec < len) {
+return tostring.substring(sc, ec);
+} else {
+return tostring;
+}
+
+}
 
 public static class Froboz {
 int value;
+
 public Froboz(int v) {
 value = v;
 }
+
 public void setValue(int v) {
 value = v;
 }
+
 public int getValue() {
 return value;
 }
+
 public int plus10() {
 int i = value;
 value += 10;
@@ -89,9 +114,10 @@ public class UnifiedJEXLTest extends Jex
 o = check.evaluate(context);
 assertEquals("Result is not 10", new Integer(10), o);
 }
-
+
 public void testComposite() throws Exception {
-UnifiedJEXL.Expression expr = EL.parse("Dear ${p} ${name};");
+String source = "Dear ${p} ${name};";
+UnifiedJEXL.Expression expr = EL.parse(source);
 vars.put("p", "Mr");
 vars.put("name", "Doe");
 assertTrue("expression should be immediate", expr.isImmediate());
@@ -101,18 +127,20 @@ public class UnifiedJEXLTest extends Jex
 vars.put("name", "Jones");
 o = expr.evaluate(context);
 assertEquals("Dear Ms Jones;", o);
+assertEquals(source, getSource(expr.toString()));
 }
 
 public void testPrepareEvaluate() throws Exception {
+final String source = "Dear #{p} ${name};";
 UnifiedJEXL.Expression expr = EL.parse("Dear #{p} ${name};");
 assertTrue("expression should be deferred", expr.isDeferred());
-
+
 Set> evars = expr.getVariables();
 assertEquals(1, evars.size());
 assertTrue(evars.contains(Arrays.asList("name")));
 vars.put("name", "Doe");
-UnifiedJEXL.Expression  phase1 = expr.prepare(context);
-String as = phase1.toString();
+UnifiedJEXL.Expression phase1 = expr.prepare(context);
+String as = phase1.asString();
 assertEquals("Dear ${p} Doe;", as);
 Set> evars1 = phase1.getVariables();
 assertEquals(1, evars1.size());
@@ -121,45 +149,65 @@ public class UnifiedJEXLTest extends Jex
 vars.put("name", "Should not be used in 2nd phase");
 Object o = phase1.evaluate(context);
 assertEquals("Dear Mr Doe;", o);
+
+String p1 = getSource(phase1.toString());
+assertEquals(source, getSource(phase1.toString()));
+assertEquals(source, getSource(expr.toString()));
 }
-
+
 public void testNested() throws Exception {
-UnifiedJEXL.Expression expr = EL.parse("#{${hi}+'.world'}");
-vars.put("hi", "hello");
-vars.put("hello.world", "Hello World!"

<    4   5   6   7   8   9   10   11   12   13   >