|
Author: doogie
Date: Tue Dec 22 06:09:55 2009 New Revision: 893078 URL: http://svn.apache.org/viewvc?rev=893078&view=rev Log: Start of visitor support. Modified: ofbiz/trunk/framework/sql/src/org/ofbiz/sql/BetweenCondition.java ofbiz/trunk/framework/sql/src/org/ofbiz/sql/BooleanCondition.java ofbiz/trunk/framework/sql/src/org/ofbiz/sql/Condition.java ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ConditionList.java ofbiz/trunk/framework/sql/src/org/ofbiz/sql/FieldValue.java ofbiz/trunk/framework/sql/src/org/ofbiz/sql/FunctionCall.java ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ListCondition.java ofbiz/trunk/framework/sql/src/org/ofbiz/sql/MathValue.java ofbiz/trunk/framework/sql/src/org/ofbiz/sql/NumberValue.java ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ParameterValue.java ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLDelete.java ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLInsert.java ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLSelect.java ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLStatement.java ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLUpdate.java ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLView.java ofbiz/trunk/framework/sql/src/org/ofbiz/sql/StringValue.java ofbiz/trunk/framework/sql/src/org/ofbiz/sql/Value.java Modified: ofbiz/trunk/framework/sql/src/org/ofbiz/sql/BetweenCondition.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/sql/src/org/ofbiz/sql/BetweenCondition.java?rev=893078&r1=893077&r2=893078&view=diff ============================================================================== --- ofbiz/trunk/framework/sql/src/org/ofbiz/sql/BetweenCondition.java (original) +++ ofbiz/trunk/framework/sql/src/org/ofbiz/sql/BetweenCondition.java Tue Dec 22 06:09:55 2009 @@ -29,6 +29,10 @@ this.r2 = r2; } + public void accept(Visitor visitor) { + visitor.visit(this); + } + public Value getLeft() { return left; } Modified: ofbiz/trunk/framework/sql/src/org/ofbiz/sql/BooleanCondition.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/sql/src/org/ofbiz/sql/BooleanCondition.java?rev=893078&r1=893077&r2=893078&view=diff ============================================================================== --- ofbiz/trunk/framework/sql/src/org/ofbiz/sql/BooleanCondition.java (original) +++ ofbiz/trunk/framework/sql/src/org/ofbiz/sql/BooleanCondition.java Tue Dec 22 06:09:55 2009 @@ -29,6 +29,10 @@ this.right = right; } + public void accept(Visitor visitor) { + visitor.visit(this); + } + public Value getLeft() { return left; } Modified: ofbiz/trunk/framework/sql/src/org/ofbiz/sql/Condition.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/sql/src/org/ofbiz/sql/Condition.java?rev=893078&r1=893077&r2=893078&view=diff ============================================================================== --- ofbiz/trunk/framework/sql/src/org/ofbiz/sql/Condition.java (original) +++ ofbiz/trunk/framework/sql/src/org/ofbiz/sql/Condition.java Tue Dec 22 06:09:55 2009 @@ -19,4 +19,12 @@ package org.ofbiz.sql; public abstract class Condition extends Atom { + public interface Visitor { + void visit(BetweenCondition condition); + void visit(BooleanCondition condition); + void visit(ConditionList condition); + void visit(ListCondition condition); + } + + public abstract void accept(Visitor visitor); } Modified: ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ConditionList.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ConditionList.java?rev=893078&r1=893077&r2=893078&view=diff ============================================================================== --- ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ConditionList.java (original) +++ ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ConditionList.java Tue Dec 22 06:09:55 2009 @@ -32,6 +32,10 @@ this.conditions = conditions; } + public void accept(Visitor visitor) { + visitor.visit(this); + } + public void add(Condition condition) { conditions.add(condition); } Modified: ofbiz/trunk/framework/sql/src/org/ofbiz/sql/FieldValue.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/sql/src/org/ofbiz/sql/FieldValue.java?rev=893078&r1=893077&r2=893078&view=diff ============================================================================== --- ofbiz/trunk/framework/sql/src/org/ofbiz/sql/FieldValue.java (original) +++ ofbiz/trunk/framework/sql/src/org/ofbiz/sql/FieldValue.java Tue Dec 22 06:09:55 2009 @@ -26,6 +26,10 @@ this(null, fieldName); } + public void accept(Visitor visitor) { + visitor.visit(this); + } + public FieldValue(String tableName, String fieldName) { this.tableName = tableName; this.fieldName = fieldName; Modified: ofbiz/trunk/framework/sql/src/org/ofbiz/sql/FunctionCall.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/sql/src/org/ofbiz/sql/FunctionCall.java?rev=893078&r1=893077&r2=893078&view=diff ============================================================================== --- ofbiz/trunk/framework/sql/src/org/ofbiz/sql/FunctionCall.java (original) +++ ofbiz/trunk/framework/sql/src/org/ofbiz/sql/FunctionCall.java Tue Dec 22 06:09:55 2009 @@ -32,6 +32,10 @@ this.values = values; } + public void accept(Visitor visitor) { + visitor.visit(this); + } + public String getName() { return name; } Modified: ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ListCondition.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ListCondition.java?rev=893078&r1=893077&r2=893078&view=diff ============================================================================== --- ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ListCondition.java (original) +++ ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ListCondition.java Tue Dec 22 06:09:55 2009 @@ -33,6 +33,10 @@ this.values = values; } + public void accept(Visitor visitor) { + visitor.visit(this); + } + public Value getLeft() { return left; } Modified: ofbiz/trunk/framework/sql/src/org/ofbiz/sql/MathValue.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/sql/src/org/ofbiz/sql/MathValue.java?rev=893078&r1=893077&r2=893078&view=diff ============================================================================== --- ofbiz/trunk/framework/sql/src/org/ofbiz/sql/MathValue.java (original) +++ ofbiz/trunk/framework/sql/src/org/ofbiz/sql/MathValue.java Tue Dec 22 06:09:55 2009 @@ -32,6 +32,10 @@ this.values = values; } + public void accept(Visitor visitor) { + visitor.visit(this); + } + public String getOp() { return op; } Modified: ofbiz/trunk/framework/sql/src/org/ofbiz/sql/NumberValue.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/sql/src/org/ofbiz/sql/NumberValue.java?rev=893078&r1=893077&r2=893078&view=diff ============================================================================== --- ofbiz/trunk/framework/sql/src/org/ofbiz/sql/NumberValue.java (original) +++ ofbiz/trunk/framework/sql/src/org/ofbiz/sql/NumberValue.java Tue Dec 22 06:09:55 2009 @@ -25,6 +25,10 @@ this.number = number; } + public void accept(Visitor visitor) { + visitor.visit(this); + } + public N getNumber() { return number; } Modified: ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ParameterValue.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ParameterValue.java?rev=893078&r1=893077&r2=893078&view=diff ============================================================================== --- ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ParameterValue.java (original) +++ ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ParameterValue.java Tue Dec 22 06:09:55 2009 @@ -25,6 +25,10 @@ this.name = name; } + public void accept(Visitor visitor) { + visitor.visit(this); + } + public String getName() { return name; } Modified: ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLDelete.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLDelete.java?rev=893078&r1=893077&r2=893078&view=diff ============================================================================== --- ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLDelete.java (original) +++ ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLDelete.java Tue Dec 22 06:09:55 2009 @@ -27,6 +27,10 @@ this.whereCondition = whereCondition; } + public void accept(Visitor visitor) { + visitor.visit(this); + } + public Table getTable() { return table; } Modified: ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLInsert.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLInsert.java?rev=893078&r1=893077&r2=893078&view=diff ============================================================================== --- ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLInsert.java (original) +++ ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLInsert.java Tue Dec 22 06:09:55 2009 @@ -35,6 +35,10 @@ this.columns = columns; } + public void accept(Visitor visitor) { + visitor.visit(this); + } + public TableName getTableName() { return tableName; } Modified: ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLSelect.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLSelect.java?rev=893078&r1=893077&r2=893078&view=diff ============================================================================== --- ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLSelect.java (original) +++ ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLSelect.java Tue Dec 22 06:09:55 2009 @@ -51,6 +51,10 @@ this.limit = limit; } + public void accept(Visitor visitor) { + visitor.visit(this); + } + public Collection<FieldAll> getFieldAlls() { return fieldAlls; } Modified: ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLStatement.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLStatement.java?rev=893078&r1=893077&r2=893078&view=diff ============================================================================== --- ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLStatement.java (original) +++ ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLStatement.java Tue Dec 22 06:09:55 2009 @@ -19,4 +19,13 @@ package org.ofbiz.sql; public abstract class SQLStatement<S extends SQLStatement<S>> extends Atom { + public interface Visitor { + void visit(SQLDelete statement); + void visit(SQLInsert statement); + void visit(SQLSelect statement); + void visit(SQLUpdate statement); + void visit(SQLView statement); + } + + public abstract void accept(Visitor visitor); } Modified: ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLUpdate.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLUpdate.java?rev=893078&r1=893077&r2=893078&view=diff ============================================================================== --- ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLUpdate.java (original) +++ ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLUpdate.java Tue Dec 22 06:09:55 2009 @@ -34,6 +34,10 @@ this.whereCondition = whereCondition; } + public void accept(Visitor visitor) { + visitor.visit(this); + } + public Table getTable() { return table; } Modified: ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLView.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLView.java?rev=893078&r1=893077&r2=893078&view=diff ============================================================================== --- ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLView.java (original) +++ ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLView.java Tue Dec 22 06:09:55 2009 @@ -27,6 +27,10 @@ this.sqlSelect = sqlSelect; } + public void accept(Visitor visitor) { + visitor.visit(this); + } + public String getName() { return name; } Modified: ofbiz/trunk/framework/sql/src/org/ofbiz/sql/StringValue.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/sql/src/org/ofbiz/sql/StringValue.java?rev=893078&r1=893077&r2=893078&view=diff ============================================================================== --- ofbiz/trunk/framework/sql/src/org/ofbiz/sql/StringValue.java (original) +++ ofbiz/trunk/framework/sql/src/org/ofbiz/sql/StringValue.java Tue Dec 22 06:09:55 2009 @@ -25,6 +25,10 @@ this.str = str; } + public void accept(Visitor visitor) { + visitor.visit(this); + } + public String getString() { return str; } Modified: ofbiz/trunk/framework/sql/src/org/ofbiz/sql/Value.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/sql/src/org/ofbiz/sql/Value.java?rev=893078&r1=893077&r2=893078&view=diff ============================================================================== --- ofbiz/trunk/framework/sql/src/org/ofbiz/sql/Value.java (original) +++ ofbiz/trunk/framework/sql/src/org/ofbiz/sql/Value.java Tue Dec 22 06:09:55 2009 @@ -19,9 +19,29 @@ package org.ofbiz.sql; public abstract class Value extends Atom { - public static final Value NULL = new Value() { + public static final class Null extends Value { + private Null() { + } + public void accept(Visitor visitor) { + visitor.visit(this); + } + public StringBuilder appendTo(StringBuilder sb) { return sb.append("NULL"); } - }; + } + + public static final Null NULL = new Null(); + + public interface Visitor { + void visit(FieldValue value); + void visit(FunctionCall value); + void visit(MathValue value); + void visit(Null value); + void visit(NumberValue value); + void visit(ParameterValue value); + void visit(StringValue value); + } + + public abstract void accept(Visitor visitor); } |
| Free forum by Nabble | Edit this page |
