You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ofbiz.apache.org by do...@apache.org on 2009/12/18 06:40:53 UTC
svn commit: r892147 - in /ofbiz/trunk/framework/sql/src/org/ofbiz/sql:
BetweenCondition.java ListCondition.java ListValue.java Parser.jj
Author: doogie
Date: Fri Dec 18 05:40:52 2009
New Revision: 892147
URL: http://svn.apache.org/viewvc?rev=892147&view=rev
Log:
Remove ListValue, in preference of a more accurate object model
representation.
Added:
ofbiz/trunk/framework/sql/src/org/ofbiz/sql/BetweenCondition.java
- copied, changed from r892146, ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ListValue.java
ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ListCondition.java
- copied, changed from r892146, ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ListValue.java
Removed:
ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ListValue.java
Modified:
ofbiz/trunk/framework/sql/src/org/ofbiz/sql/Parser.jj
Copied: ofbiz/trunk/framework/sql/src/org/ofbiz/sql/BetweenCondition.java (from r892146, ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ListValue.java)
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/sql/src/org/ofbiz/sql/BetweenCondition.java?p2=ofbiz/trunk/framework/sql/src/org/ofbiz/sql/BetweenCondition.java&p1=ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ListValue.java&r1=892146&r2=892147&rev=892147&view=diff
==============================================================================
--- ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ListValue.java (original)
+++ ofbiz/trunk/framework/sql/src/org/ofbiz/sql/BetweenCondition.java Fri Dec 18 05:40:52 2009
@@ -18,26 +18,35 @@
*/
package org.ofbiz.sql;
-import java.util.Iterator;
-import java.util.List;
-
-import org.ofbiz.base.util.StringUtil;
+public final class BetweenCondition extends Condition {
+ private final Value left;
+ private final Value r1;
+ private final Value r2;
+
+ public BetweenCondition(Value left, Value r1, Value r2) {
+ this.left = left;
+ this.r1 = r1;
+ this.r2 = r2;
+ }
-public final class ListValue extends Value implements Iterable<Value> {
- private final List<Value> values;
+ public Value getLeft() {
+ return left;
+ }
- public ListValue(List<Value> values) {
- this.values = values;
+ public Value getR1() {
+ return r1;
}
- public Iterator<Value> iterator() {
- return values.iterator();
+ public Value getR2() {
+ return r2;
}
public StringBuilder appendTo(StringBuilder sb) {
- sb.append('(');
- StringUtil.appendTo(sb, values, null, null, ", ");
- sb.append(')');
+ left.appendTo(sb);
+ sb.append(" BETWEEN ");
+ r1.appendTo(sb);
+ sb.append(" AND ");
+ r2.appendTo(sb);
return sb;
}
}
Copied: ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ListCondition.java (from r892146, ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ListValue.java)
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ListCondition.java?p2=ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ListCondition.java&p1=ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ListValue.java&r1=892146&r2=892147&rev=892147&view=diff
==============================================================================
--- ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ListValue.java (original)
+++ ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ListCondition.java Fri Dec 18 05:40:52 2009
@@ -18,26 +18,37 @@
*/
package org.ofbiz.sql;
-import java.util.Iterator;
import java.util.List;
import org.ofbiz.base.util.StringUtil;
-public final class ListValue extends Value implements Iterable<Value> {
+public final class ListCondition extends Condition {
+ private final Value left;
+ private final String op;
private final List<Value> values;
- public ListValue(List<Value> values) {
+ public ListCondition(Value left, String op, List<Value> values) {
+ this.left = left;
+ this.op = op;
this.values = values;
}
- public Iterator<Value> iterator() {
- return values.iterator();
+ public Value getLeft() {
+ return left;
+ }
+
+ public String getOp() {
+ return op;
+ }
+
+ public List<Value> getValues() {
+ return values;
}
public StringBuilder appendTo(StringBuilder sb) {
- sb.append('(');
+ left.appendTo(sb);
+ sb.append(' ').append(op).append(' ');
StringUtil.appendTo(sb, values, null, null, ", ");
- sb.append(')');
return sb;
}
}
Modified: ofbiz/trunk/framework/sql/src/org/ofbiz/sql/Parser.jj
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/sql/src/org/ofbiz/sql/Parser.jj?rev=892147&r1=892146&r2=892147&view=diff
==============================================================================
--- ofbiz/trunk/framework/sql/src/org/ofbiz/sql/Parser.jj (original)
+++ ofbiz/trunk/framework/sql/src/org/ofbiz/sql/Parser.jj Fri Dec 18 05:40:52 2009
@@ -757,7 +757,7 @@
private Condition BooleanExpression():
{
- Value v1, v2, v;
+ Value v1, v2, v, r1, r2;
String op;
Condition c;
List<Value> list = FastList.newInstance();
@@ -765,10 +765,10 @@
{
v1=Value() (
<BETWEEN>
- v=RightValue() { list.add(v); }
+ r1=RightValue()
<AND>
- v=RightValue() { list.add(v); }
- { v2 = new ListValue(list); op = "between"; }
+ r2=RightValue()
+ { return new BetweenCondition(v1, r1, r2); }
| <IS> (
<NULL> { op = "="; v2 = Value.NULL; }
| <NOT> <NULL> { op = "!="; v2 = Value.NULL; }
@@ -779,7 +779,7 @@
v=RightValue() { list.add(v); }
( <COMMA> v=RightValue() { list.add(v); } )*
<CLOSE_PAREN>
- { v2 = new ListValue(list); }
+ { return new ListCondition(v1, op, list); }
)
)
{ return new BooleanCondition(v1, op, v2); }