diff --git a/src/java/com/samskivert/depot/Key.java b/src/java/com/samskivert/depot/Key.java index 5132ebb..17a711c 100644 --- a/src/java/com/samskivert/depot/Key.java +++ b/src/java/com/samskivert/depot/Key.java @@ -35,7 +35,7 @@ import com.samskivert.depot.expression.ColumnExp; import com.samskivert.depot.expression.SQLExpression; import com.samskivert.depot.impl.DepotMarshaller; import com.samskivert.depot.impl.DepotUtil; -import com.samskivert.depot.impl.ExpressionVisitor; +import com.samskivert.depot.impl.FragmentVisitor; /** * A special form of {@link WhereClause} that uniquely specifies a single database row and thus @@ -60,7 +60,7 @@ public class Key extends WhereClause public Comparable[] getValues () { return _values; } - public Object accept (ExpressionVisitor builder) { + public Object accept (FragmentVisitor builder) { return builder.visit(this); } public void addClasses (Collection> classSet) { @@ -205,7 +205,7 @@ public class Key extends WhereClause } // from SQLExpression - public Object accept (ExpressionVisitor builder) + public Object accept (FragmentVisitor builder) { return builder.visit(this); } diff --git a/src/java/com/samskivert/depot/KeySet.java b/src/java/com/samskivert/depot/KeySet.java index 2d1c726..f6bb620 100644 --- a/src/java/com/samskivert/depot/KeySet.java +++ b/src/java/com/samskivert/depot/KeySet.java @@ -37,7 +37,7 @@ import com.samskivert.depot.clause.WhereClause; import com.samskivert.depot.expression.ColumnExp; import com.samskivert.depot.expression.SQLExpression; import com.samskivert.depot.impl.DepotUtil; -import com.samskivert.depot.impl.ExpressionVisitor; +import com.samskivert.depot.impl.FragmentVisitor; import com.samskivert.depot.impl.expression.LiteralExp; import com.samskivert.depot.impl.operator.In; @@ -291,7 +291,7 @@ public abstract class KeySet extends WhereClause } // from SQLExpression - public Object accept (ExpressionVisitor builder) + public Object accept (FragmentVisitor builder) { return builder.visit(this); } diff --git a/src/java/com/samskivert/depot/SQLFragment.java b/src/java/com/samskivert/depot/SQLFragment.java new file mode 100644 index 0000000..02a2989 --- /dev/null +++ b/src/java/com/samskivert/depot/SQLFragment.java @@ -0,0 +1,29 @@ +package com.samskivert.depot; + +import java.util.Collection; + +import com.samskivert.depot.impl.FragmentVisitor; +import com.samskivert.depot.impl.SQLBuilder; + +/** + * Represents a fragment of an SQL statement, generally a clause (WHERE, FROM, ...) or an + * expression (1+1, 'foo', "columnName", ...). + */ +public interface SQLFragment +{ + /** + * Most uses of this class have been implemented with a visitor pattern. Create your own + * {@link FragmentVisitor} and call this method with it. + * + * @see SQLBuilder + */ + public Object accept (FragmentVisitor visitor); + + /** + * Adds all persistent classes that are brought into the SQL context by this clause: FROM + * clauses, JOINs, UPDATEs, anything that could create a new table abbreviation. This method + * should recurse into any subordinate state that may in turn bring in new classes so that + * sub-queries work correctly. + */ + public void addClasses (Collection> classSet); +} diff --git a/src/java/com/samskivert/depot/clause/FieldDefinition.java b/src/java/com/samskivert/depot/clause/FieldDefinition.java index 5a0c307..885c5e5 100644 --- a/src/java/com/samskivert/depot/clause/FieldDefinition.java +++ b/src/java/com/samskivert/depot/clause/FieldDefinition.java @@ -25,7 +25,7 @@ import java.util.Collection; import com.samskivert.depot.PersistentRecord; import com.samskivert.depot.expression.ColumnExp; import com.samskivert.depot.expression.SQLExpression; -import com.samskivert.depot.impl.ExpressionVisitor; +import com.samskivert.depot.impl.FragmentVisitor; import com.samskivert.depot.impl.expression.LiteralExp; /** @@ -81,7 +81,7 @@ public class FieldDefinition implements QueryClause } // from SQLExpression - public Object accept (ExpressionVisitor visitor) + public Object accept (FragmentVisitor visitor) { return visitor.visit(this); } diff --git a/src/java/com/samskivert/depot/clause/ForUpdate.java b/src/java/com/samskivert/depot/clause/ForUpdate.java index fa2c77a..d318209 100644 --- a/src/java/com/samskivert/depot/clause/ForUpdate.java +++ b/src/java/com/samskivert/depot/clause/ForUpdate.java @@ -23,7 +23,7 @@ package com.samskivert.depot.clause; import java.util.Collection; import com.samskivert.depot.PersistentRecord; -import com.samskivert.depot.impl.ExpressionVisitor; +import com.samskivert.depot.impl.FragmentVisitor; /** * Represents a FOR UPDATE clause. @@ -31,7 +31,7 @@ import com.samskivert.depot.impl.ExpressionVisitor; public class ForUpdate implements QueryClause { // from SQLExpression - public Object accept (ExpressionVisitor builder) + public Object accept (FragmentVisitor builder) { return builder.visit(this); } diff --git a/src/java/com/samskivert/depot/clause/FromOverride.java b/src/java/com/samskivert/depot/clause/FromOverride.java index 90b2cd3..abf0562 100644 --- a/src/java/com/samskivert/depot/clause/FromOverride.java +++ b/src/java/com/samskivert/depot/clause/FromOverride.java @@ -27,7 +27,7 @@ import com.google.common.collect.Lists; import com.samskivert.depot.PersistentRecord; import com.samskivert.depot.impl.DepotUtil; -import com.samskivert.depot.impl.ExpressionVisitor; +import com.samskivert.depot.impl.FragmentVisitor; /** * Completely overrides the FROM clause, if it exists. @@ -63,7 +63,7 @@ public class FromOverride implements QueryClause } // from SQLExpression - public Object accept (ExpressionVisitor builder) + public Object accept (FragmentVisitor builder) { return builder.visit(this); } diff --git a/src/java/com/samskivert/depot/clause/GroupBy.java b/src/java/com/samskivert/depot/clause/GroupBy.java index 14cf118..4e5db84 100644 --- a/src/java/com/samskivert/depot/clause/GroupBy.java +++ b/src/java/com/samskivert/depot/clause/GroupBy.java @@ -24,7 +24,7 @@ import java.util.Collection; import com.samskivert.depot.PersistentRecord; import com.samskivert.depot.expression.SQLExpression; -import com.samskivert.depot.impl.ExpressionVisitor; +import com.samskivert.depot.impl.FragmentVisitor; /** * Represents a GROUP BY clause. @@ -42,7 +42,7 @@ public class GroupBy implements QueryClause } // from SQLExpression - public Object accept (ExpressionVisitor builder) + public Object accept (FragmentVisitor builder) { return builder.visit(this); } diff --git a/src/java/com/samskivert/depot/clause/InsertClause.java b/src/java/com/samskivert/depot/clause/InsertClause.java index e4f2e0d..93a6c33 100644 --- a/src/java/com/samskivert/depot/clause/InsertClause.java +++ b/src/java/com/samskivert/depot/clause/InsertClause.java @@ -24,7 +24,7 @@ import java.util.Collection; import java.util.Set; import com.samskivert.depot.PersistentRecord; -import com.samskivert.depot.impl.ExpressionVisitor; +import com.samskivert.depot.impl.FragmentVisitor; /** * Builds actual SQL given a main persistent type and some {@link QueryClause} objects. @@ -62,7 +62,7 @@ public class InsertClause implements QueryClause } // from SQLExpression - public Object accept (ExpressionVisitor builder) + public Object accept (FragmentVisitor builder) { return builder.visit(this); } diff --git a/src/java/com/samskivert/depot/clause/Join.java b/src/java/com/samskivert/depot/clause/Join.java index 77e79d0..5672f68 100644 --- a/src/java/com/samskivert/depot/clause/Join.java +++ b/src/java/com/samskivert/depot/clause/Join.java @@ -26,7 +26,7 @@ import com.samskivert.depot.PersistentRecord; import com.samskivert.depot.expression.ColumnExp; import com.samskivert.depot.expression.SQLExpression; import com.samskivert.depot.impl.DepotUtil; -import com.samskivert.depot.impl.ExpressionVisitor; +import com.samskivert.depot.impl.FragmentVisitor; import com.samskivert.depot.impl.operator.Equals; /** @@ -74,7 +74,7 @@ public class Join implements QueryClause } // from SQLExpression - public Object accept (ExpressionVisitor builder) + public Object accept (FragmentVisitor builder) { return builder.visit(this); } diff --git a/src/java/com/samskivert/depot/clause/Limit.java b/src/java/com/samskivert/depot/clause/Limit.java index d2c5b9a..33920ad 100644 --- a/src/java/com/samskivert/depot/clause/Limit.java +++ b/src/java/com/samskivert/depot/clause/Limit.java @@ -23,7 +23,7 @@ package com.samskivert.depot.clause; import java.util.Collection; import com.samskivert.depot.PersistentRecord; -import com.samskivert.depot.impl.ExpressionVisitor; +import com.samskivert.depot.impl.FragmentVisitor; /** * Represents a LIMIT/OFFSET clause, for pagination. @@ -47,7 +47,7 @@ public class Limit implements QueryClause } // from SQLExpression - public Object accept (ExpressionVisitor builder) + public Object accept (FragmentVisitor builder) { return builder.visit(this); } diff --git a/src/java/com/samskivert/depot/clause/OrderBy.java b/src/java/com/samskivert/depot/clause/OrderBy.java index 930381b..8200a3f 100644 --- a/src/java/com/samskivert/depot/clause/OrderBy.java +++ b/src/java/com/samskivert/depot/clause/OrderBy.java @@ -25,7 +25,7 @@ import java.util.Collection; import com.samskivert.depot.PersistentRecord; import com.samskivert.util.ArrayUtil; import com.samskivert.depot.expression.SQLExpression; -import com.samskivert.depot.impl.ExpressionVisitor; +import com.samskivert.depot.impl.FragmentVisitor; import com.samskivert.depot.impl.expression.LiteralExp; /** @@ -95,7 +95,7 @@ public class OrderBy implements QueryClause } // from SQLExpression - public Object accept (ExpressionVisitor builder) + public Object accept (FragmentVisitor builder) { return builder.visit(this); } diff --git a/src/java/com/samskivert/depot/clause/QueryClause.java b/src/java/com/samskivert/depot/clause/QueryClause.java index 8466133..9559e41 100644 --- a/src/java/com/samskivert/depot/clause/QueryClause.java +++ b/src/java/com/samskivert/depot/clause/QueryClause.java @@ -20,11 +20,11 @@ package com.samskivert.depot.clause; -import com.samskivert.depot.expression.SQLExpression; +import com.samskivert.depot.SQLFragment; /** * Represents a piece or modifier of an SQL query. */ -public interface QueryClause extends SQLExpression +public interface QueryClause extends SQLFragment { } diff --git a/src/java/com/samskivert/depot/clause/SelectClause.java b/src/java/com/samskivert/depot/clause/SelectClause.java index d92b7d9..7fef802 100644 --- a/src/java/com/samskivert/depot/clause/SelectClause.java +++ b/src/java/com/samskivert/depot/clause/SelectClause.java @@ -30,7 +30,7 @@ import com.google.common.collect.Maps; import com.samskivert.depot.PersistentRecord; import com.samskivert.depot.expression.ColumnExp; -import com.samskivert.depot.impl.ExpressionVisitor; +import com.samskivert.depot.impl.FragmentVisitor; /** * Represents a complete select clause. @@ -193,7 +193,7 @@ public class SelectClause } // from SQLExpression - public Object accept (ExpressionVisitor builder) + public Object accept (FragmentVisitor builder) { return builder.visit(this); } diff --git a/src/java/com/samskivert/depot/clause/Where.java b/src/java/com/samskivert/depot/clause/Where.java index 9d07d89..f35d0d1 100644 --- a/src/java/com/samskivert/depot/clause/Where.java +++ b/src/java/com/samskivert/depot/clause/Where.java @@ -26,7 +26,7 @@ import com.samskivert.depot.Ops; import com.samskivert.depot.PersistentRecord; import com.samskivert.depot.expression.ColumnExp; import com.samskivert.depot.expression.SQLExpression; -import com.samskivert.depot.impl.ExpressionVisitor; +import com.samskivert.depot.impl.FragmentVisitor; import com.samskivert.depot.impl.expression.ValueExp; import com.samskivert.depot.impl.operator.Equals; import com.samskivert.depot.impl.operator.IsNull; @@ -73,7 +73,7 @@ public class Where extends WhereClause } // from SQLExpression - public Object accept (ExpressionVisitor builder) + public Object accept (FragmentVisitor builder) { return builder.visit(this); } diff --git a/src/java/com/samskivert/depot/expression/ColumnExp.java b/src/java/com/samskivert/depot/expression/ColumnExp.java index 55010e2..c3ce189 100644 --- a/src/java/com/samskivert/depot/expression/ColumnExp.java +++ b/src/java/com/samskivert/depot/expression/ColumnExp.java @@ -24,7 +24,7 @@ import java.util.Collection; import com.samskivert.depot.PersistentRecord; import com.samskivert.depot.clause.Join; -import com.samskivert.depot.impl.ExpressionVisitor; +import com.samskivert.depot.impl.FragmentVisitor; import com.samskivert.depot.impl.operator.In; import com.samskivert.depot.impl.operator.IsNull; import com.samskivert.depot.impl.operator.Like; @@ -92,7 +92,7 @@ public class ColumnExp extends FluentExp } // from SQLExpression - public Object accept (ExpressionVisitor builder) + public Object accept (FragmentVisitor builder) { return builder.visit(this); } diff --git a/src/java/com/samskivert/depot/expression/SQLExpression.java b/src/java/com/samskivert/depot/expression/SQLExpression.java index dcf2359..6968cb6 100644 --- a/src/java/com/samskivert/depot/expression/SQLExpression.java +++ b/src/java/com/samskivert/depot/expression/SQLExpression.java @@ -20,16 +20,12 @@ package com.samskivert.depot.expression; -import java.util.Collection; - -import com.samskivert.depot.PersistentRecord; -import com.samskivert.depot.impl.ExpressionVisitor; -import com.samskivert.depot.impl.SQLBuilder; +import com.samskivert.depot.SQLFragment; /** * Represents an SQL expression, e.g. column name, function, or constant. */ -public interface SQLExpression +public interface SQLExpression extends SQLFragment { /** Used internally to represent the lack of a value. */ public static final class NoValue @@ -46,19 +42,4 @@ public interface SQLExpression protected String _reason; } - /** - * Most uses of this class have been implemented with a visitor pattern. Create your own - * {@link ExpressionVisitor} and call this method with it. - * - * @see SQLBuilder - */ - public Object accept (ExpressionVisitor visitor); - - /** - * Adds all persistent classes that are brought into the SQL context by this clause: FROM - * clauses, JOINs, UPDATEs, anything that could create a new table abbreviation. This method - * should recurse into any subordinate state that may in turn bring in new classes so that - * sub-queries work correctly. - */ - public void addClasses (Collection> classSet); } diff --git a/src/java/com/samskivert/depot/impl/BuildVisitor.java b/src/java/com/samskivert/depot/impl/BuildVisitor.java index 48511db..d8713f5 100644 --- a/src/java/com/samskivert/depot/impl/BuildVisitor.java +++ b/src/java/com/samskivert/depot/impl/BuildVisitor.java @@ -102,7 +102,7 @@ import com.samskivert.depot.impl.operator.Not; * Implements the base functionality of the SQL-building pass of {@link SQLBuilder}. Dialectal * subclasses of this should be created and returned from {@link SQLBuilder#getBuildVisitor()}. */ -public abstract class BuildVisitor implements ExpressionVisitor +public abstract class BuildVisitor implements FragmentVisitor { public String getQuery () { diff --git a/src/java/com/samskivert/depot/impl/ExpressionEvaluator.java b/src/java/com/samskivert/depot/impl/ExpressionEvaluator.java index acf1619..c527d92 100644 --- a/src/java/com/samskivert/depot/impl/ExpressionEvaluator.java +++ b/src/java/com/samskivert/depot/impl/ExpressionEvaluator.java @@ -100,7 +100,7 @@ import static com.samskivert.depot.Log.log; * TODO: that should be written. */ public class ExpressionEvaluator - implements ExpressionVisitor + implements FragmentVisitor { public ExpressionEvaluator (Class pClass, T pRec) { diff --git a/src/java/com/samskivert/depot/impl/ExpressionVisitor.java b/src/java/com/samskivert/depot/impl/FragmentVisitor.java similarity index 99% rename from src/java/com/samskivert/depot/impl/ExpressionVisitor.java rename to src/java/com/samskivert/depot/impl/FragmentVisitor.java index 541ad9e..40c31ac 100644 --- a/src/java/com/samskivert/depot/impl/ExpressionVisitor.java +++ b/src/java/com/samskivert/depot/impl/FragmentVisitor.java @@ -85,7 +85,7 @@ import com.samskivert.depot.impl.operator.Not; /** * Enumerates visitation methods for every possible SQL expression type. */ -public interface ExpressionVisitor +public interface FragmentVisitor { public T visit (FieldDefinition fieldOverride); public T visit (FromOverride fromOverride); diff --git a/src/java/com/samskivert/depot/impl/SQLBuilder.java b/src/java/com/samskivert/depot/impl/SQLBuilder.java index 2143d68..7ea24a4 100644 --- a/src/java/com/samskivert/depot/impl/SQLBuilder.java +++ b/src/java/com/samskivert/depot/impl/SQLBuilder.java @@ -39,7 +39,7 @@ import com.samskivert.util.ByteEnum; import static com.samskivert.depot.Log.log; /** - * At the heart of Depot's SQL generation, this object constructs an {@link ExpressionVisitor} + * At the heart of Depot's SQL generation, this object constructs an {@link FragmentVisitor} * object and executes it, constructing SQL and parameter bindings as it recurses. */ public abstract class SQLBuilder diff --git a/src/java/com/samskivert/depot/impl/clause/CreateIndexClause.java b/src/java/com/samskivert/depot/impl/clause/CreateIndexClause.java index 25ef813..f0f241e 100644 --- a/src/java/com/samskivert/depot/impl/clause/CreateIndexClause.java +++ b/src/java/com/samskivert/depot/impl/clause/CreateIndexClause.java @@ -30,7 +30,7 @@ import com.samskivert.depot.clause.OrderBy.Order; import com.samskivert.depot.clause.QueryClause; import com.samskivert.depot.expression.SQLExpression; -import com.samskivert.depot.impl.ExpressionVisitor; +import com.samskivert.depot.impl.FragmentVisitor; /** * Represents an CREATE INDEX instruction to the database. @@ -71,14 +71,14 @@ public class CreateIndexClause return _fields; } - // from SQLExpression + // from SQLFragment public void addClasses (Collection> classSet) { classSet.add(_pClass); } - // from SQLExpression - public Object accept (ExpressionVisitor builder) + // from SQLFragment + public Object accept (FragmentVisitor builder) { return builder.visit(this); } diff --git a/src/java/com/samskivert/depot/impl/clause/DeleteClause.java b/src/java/com/samskivert/depot/impl/clause/DeleteClause.java index c324d03..688ea51 100644 --- a/src/java/com/samskivert/depot/impl/clause/DeleteClause.java +++ b/src/java/com/samskivert/depot/impl/clause/DeleteClause.java @@ -26,7 +26,7 @@ import com.samskivert.depot.PersistentRecord; import com.samskivert.depot.clause.QueryClause; import com.samskivert.depot.clause.WhereClause; -import com.samskivert.depot.impl.ExpressionVisitor; +import com.samskivert.depot.impl.FragmentVisitor; /** * Builds actual SQL given a main persistent type and some {@link QueryClause} objects. @@ -50,14 +50,14 @@ public class DeleteClause return _where; } - // from SQLExpression + // from SQLFragment public void addClasses (Collection> classSet) { classSet.add(_pClass); } - // from SQLExpression - public Object accept (ExpressionVisitor builder) + // from SQLFragment + public Object accept (FragmentVisitor builder) { return builder.visit(this); } diff --git a/src/java/com/samskivert/depot/impl/clause/DropIndexClause.java b/src/java/com/samskivert/depot/impl/clause/DropIndexClause.java index 8241c3c..655513e 100644 --- a/src/java/com/samskivert/depot/impl/clause/DropIndexClause.java +++ b/src/java/com/samskivert/depot/impl/clause/DropIndexClause.java @@ -25,7 +25,7 @@ import java.util.Collection; import com.samskivert.depot.PersistentRecord; import com.samskivert.depot.clause.QueryClause; -import com.samskivert.depot.impl.ExpressionVisitor; +import com.samskivert.depot.impl.FragmentVisitor; /** * Represents an DROP INDEX instruction to the database. @@ -49,14 +49,14 @@ public class DropIndexClause return _name; } - // from SQLExpression + // from SQLFragment public void addClasses (Collection> classSet) { classSet.add(_pClass); } - // from SQLExpression - public Object accept (ExpressionVisitor builder) + // from SQLFragment + public Object accept (FragmentVisitor builder) { return builder.visit(this); } diff --git a/src/java/com/samskivert/depot/impl/clause/UpdateClause.java b/src/java/com/samskivert/depot/impl/clause/UpdateClause.java index 68a0313..b242b99 100644 --- a/src/java/com/samskivert/depot/impl/clause/UpdateClause.java +++ b/src/java/com/samskivert/depot/impl/clause/UpdateClause.java @@ -28,7 +28,7 @@ import com.samskivert.depot.clause.WhereClause; import com.samskivert.depot.expression.ColumnExp; import com.samskivert.depot.expression.SQLExpression; -import com.samskivert.depot.impl.ExpressionVisitor; +import com.samskivert.depot.impl.FragmentVisitor; /** * Builds actual SQL given a main persistent type and some {@link QueryClause} objects. @@ -81,7 +81,7 @@ public class UpdateClause return _pClass; } - // from SQLExpression + // from SQLFragment public void addClasses (Collection> classSet) { classSet.add(_pClass); @@ -95,8 +95,8 @@ public class UpdateClause } } - // from SQLExpression - public Object accept (ExpressionVisitor builder) + // from SQLFragment + public Object accept (FragmentVisitor builder) { return builder.visit(this); } diff --git a/src/java/com/samskivert/depot/impl/expression/AggregateFun.java b/src/java/com/samskivert/depot/impl/expression/AggregateFun.java index 6e6278e..bf8ee8c 100644 --- a/src/java/com/samskivert/depot/impl/expression/AggregateFun.java +++ b/src/java/com/samskivert/depot/impl/expression/AggregateFun.java @@ -21,7 +21,7 @@ package com.samskivert.depot.impl.expression; import com.samskivert.depot.expression.SQLExpression; -import com.samskivert.depot.impl.ExpressionVisitor; +import com.samskivert.depot.impl.FragmentVisitor; import com.samskivert.depot.impl.expression.Function.OneArgFun; public abstract class AggregateFun extends OneArgFun @@ -33,7 +33,7 @@ public abstract class AggregateFun extends OneArgFun public Average (SQLExpression argument, boolean distinct) { super(argument, distinct); } - public Object accept (ExpressionVisitor visitor) { + public Object accept (FragmentVisitor visitor) { return visitor.visit(this); } public String getCanonicalFunctionName () { @@ -48,7 +48,7 @@ public abstract class AggregateFun extends OneArgFun public Count (SQLExpression argument, boolean distinct) { super(argument, distinct); } - public Object accept (ExpressionVisitor visitor) { + public Object accept (FragmentVisitor visitor) { return visitor.visit(this); } public String getCanonicalFunctionName () { @@ -63,7 +63,7 @@ public abstract class AggregateFun extends OneArgFun public Every (SQLExpression argument, boolean distinct) { super(argument, distinct); } - public Object accept (ExpressionVisitor visitor) { + public Object accept (FragmentVisitor visitor) { return visitor.visit(this); } public String getCanonicalFunctionName () { @@ -78,7 +78,7 @@ public abstract class AggregateFun extends OneArgFun public Max (SQLExpression argument, boolean distinct) { super(argument, distinct); } - public Object accept (ExpressionVisitor visitor) { + public Object accept (FragmentVisitor visitor) { return visitor.visit(this); } public String getCanonicalFunctionName () { @@ -93,7 +93,7 @@ public abstract class AggregateFun extends OneArgFun public Min (SQLExpression argument, boolean distinct) { super(argument, distinct); } - public Object accept (ExpressionVisitor visitor) { + public Object accept (FragmentVisitor visitor) { return visitor.visit(this); } public String getCanonicalFunctionName () { @@ -108,7 +108,7 @@ public abstract class AggregateFun extends OneArgFun public Sum (SQLExpression argument, boolean distinct) { super(argument, distinct); } - public Object accept (ExpressionVisitor visitor) { + public Object accept (FragmentVisitor visitor) { return visitor.visit(this); } public String getCanonicalFunctionName () { diff --git a/src/java/com/samskivert/depot/impl/expression/ConditionalFun.java b/src/java/com/samskivert/depot/impl/expression/ConditionalFun.java index e278b40..f082330 100644 --- a/src/java/com/samskivert/depot/impl/expression/ConditionalFun.java +++ b/src/java/com/samskivert/depot/impl/expression/ConditionalFun.java @@ -21,7 +21,7 @@ package com.samskivert.depot.impl.expression; import com.samskivert.depot.expression.SQLExpression; -import com.samskivert.depot.impl.ExpressionVisitor; +import com.samskivert.depot.impl.FragmentVisitor; import com.samskivert.depot.impl.expression.Function.ManyArgFun; public abstract class ConditionalFun @@ -30,7 +30,7 @@ public abstract class ConditionalFun public Coalesce (SQLExpression... args) { super(args); } - public Object accept (ExpressionVisitor visitor) { + public Object accept (FragmentVisitor visitor) { return visitor.visit(this); } public String getCanonicalFunctionName () { @@ -42,7 +42,7 @@ public abstract class ConditionalFun public Greatest (SQLExpression... args) { super(args); } - public Object accept (ExpressionVisitor visitor) { + public Object accept (FragmentVisitor visitor) { return visitor.visit(this); } public String getCanonicalFunctionName () { @@ -54,7 +54,7 @@ public abstract class ConditionalFun public Least (SQLExpression... args) { super(args); } - public Object accept (ExpressionVisitor visitor) { + public Object accept (FragmentVisitor visitor) { return visitor.visit(this); } public String getCanonicalFunctionName () { diff --git a/src/java/com/samskivert/depot/impl/expression/DateFun.java b/src/java/com/samskivert/depot/impl/expression/DateFun.java index e16fa55..c87635b 100644 --- a/src/java/com/samskivert/depot/impl/expression/DateFun.java +++ b/src/java/com/samskivert/depot/impl/expression/DateFun.java @@ -21,7 +21,7 @@ package com.samskivert.depot.impl.expression; import com.samskivert.depot.expression.SQLExpression; -import com.samskivert.depot.impl.ExpressionVisitor; +import com.samskivert.depot.impl.FragmentVisitor; import com.samskivert.depot.impl.expression.Function.NoArgFun; import com.samskivert.depot.impl.expression.Function.OneArgFun; @@ -36,7 +36,7 @@ public abstract class DateFun super(date); _part = part; } - public Object accept (ExpressionVisitor visitor) { + public Object accept (FragmentVisitor visitor) { return visitor.visit(this); } public Part getPart () { @@ -64,7 +64,7 @@ public abstract class DateFun super(date); _truncation= truncation; } - public Object accept (ExpressionVisitor visitor) { + public Object accept (FragmentVisitor visitor) { return visitor.visit(this); } public Truncation getTruncation () { @@ -77,7 +77,7 @@ public abstract class DateFun } public static class Now extends NoArgFun { - public Object accept (ExpressionVisitor visitor) { + public Object accept (FragmentVisitor visitor) { return visitor.visit(this); } public String getCanonicalFunctionName () { diff --git a/src/java/com/samskivert/depot/impl/expression/IntervalExp.java b/src/java/com/samskivert/depot/impl/expression/IntervalExp.java index 024d4fc..6dcd069 100644 --- a/src/java/com/samskivert/depot/impl/expression/IntervalExp.java +++ b/src/java/com/samskivert/depot/impl/expression/IntervalExp.java @@ -24,7 +24,7 @@ import java.util.Collection; import com.samskivert.depot.PersistentRecord; import com.samskivert.depot.expression.SQLExpression; -import com.samskivert.depot.impl.ExpressionVisitor; +import com.samskivert.depot.impl.FragmentVisitor; /** * A code for representing a date interval. @@ -47,13 +47,13 @@ public class IntervalExp this.amount = amount; } - // from SQLExpression - public Object accept (ExpressionVisitor builder) + // from SQLFragment + public Object accept (FragmentVisitor builder) { return builder.visit(this); } - // from SQLExpression + // from SQLFragment public void addClasses (Collection> classSet) { } diff --git a/src/java/com/samskivert/depot/impl/expression/LiteralExp.java b/src/java/com/samskivert/depot/impl/expression/LiteralExp.java index e85d305..ce0532e 100644 --- a/src/java/com/samskivert/depot/impl/expression/LiteralExp.java +++ b/src/java/com/samskivert/depot/impl/expression/LiteralExp.java @@ -24,7 +24,7 @@ import java.util.Collection; import com.samskivert.depot.PersistentRecord; import com.samskivert.depot.expression.SQLExpression; -import com.samskivert.depot.impl.ExpressionVisitor; +import com.samskivert.depot.impl.FragmentVisitor; /** * An expression for things we don't support natively, e.g. COUNT(*). @@ -38,13 +38,13 @@ public class LiteralExp _text = text; } - // from SQLExpression - public Object accept (ExpressionVisitor builder) + // from SQLFragment + public Object accept (FragmentVisitor builder) { return builder.visit(this); } - // from SQLExpression + // from SQLFragment public void addClasses (Collection> classSet) { } diff --git a/src/java/com/samskivert/depot/impl/expression/NumericalFun.java b/src/java/com/samskivert/depot/impl/expression/NumericalFun.java index 6d7a452..3cd602c 100644 --- a/src/java/com/samskivert/depot/impl/expression/NumericalFun.java +++ b/src/java/com/samskivert/depot/impl/expression/NumericalFun.java @@ -21,7 +21,7 @@ package com.samskivert.depot.impl.expression; import com.samskivert.depot.expression.SQLExpression; -import com.samskivert.depot.impl.ExpressionVisitor; +import com.samskivert.depot.impl.FragmentVisitor; import com.samskivert.depot.impl.expression.Function.NoArgFun; import com.samskivert.depot.impl.expression.Function.OneArgFun; import com.samskivert.depot.impl.expression.Function.TwoArgFun; @@ -32,7 +32,7 @@ public abstract class NumericalFun public Abs (SQLExpression argument) { super(argument); } - public Object accept (ExpressionVisitor visitor) { + public Object accept (FragmentVisitor visitor) { return visitor.visit(this); } public String getCanonicalFunctionName () { @@ -44,7 +44,7 @@ public abstract class NumericalFun public Ceil (SQLExpression argument) { super(argument); } - public Object accept (ExpressionVisitor visitor) { + public Object accept (FragmentVisitor visitor) { return visitor.visit(this); } public String getCanonicalFunctionName () { @@ -56,7 +56,7 @@ public abstract class NumericalFun public Exp (SQLExpression argument) { super(argument); } - public Object accept (ExpressionVisitor visitor) { + public Object accept (FragmentVisitor visitor) { return visitor.visit(this); } public String getCanonicalFunctionName () { @@ -68,7 +68,7 @@ public abstract class NumericalFun public Floor (SQLExpression argument) { super(argument); } - public Object accept (ExpressionVisitor visitor) { + public Object accept (FragmentVisitor visitor) { return visitor.visit(this); } public String getCanonicalFunctionName () { @@ -80,7 +80,7 @@ public abstract class NumericalFun public Ln (SQLExpression argument) { super(argument); } - public Object accept (ExpressionVisitor visitor) { + public Object accept (FragmentVisitor visitor) { return visitor.visit(this); } public String getCanonicalFunctionName () { @@ -92,7 +92,7 @@ public abstract class NumericalFun public Log10 (SQLExpression value) { super(value); } - public Object accept (ExpressionVisitor visitor) { + public Object accept (FragmentVisitor visitor) { return visitor.visit(this); } public String getCanonicalFunctionName () { @@ -101,7 +101,7 @@ public abstract class NumericalFun } public static class Pi extends NoArgFun { - public Object accept (ExpressionVisitor visitor) { + public Object accept (FragmentVisitor visitor) { return visitor.visit(this); } public String getCanonicalFunctionName () { @@ -113,7 +113,7 @@ public abstract class NumericalFun public Power (SQLExpression value, SQLExpression power) { super(value, power); } - public Object accept (ExpressionVisitor visitor) { + public Object accept (FragmentVisitor visitor) { return visitor.visit(this); } public String getCanonicalFunctionName () { @@ -128,7 +128,7 @@ public abstract class NumericalFun } public static class Random extends NoArgFun { - public Object accept (ExpressionVisitor visitor) { + public Object accept (FragmentVisitor visitor) { return visitor.visit(this); } public String getCanonicalFunctionName () { @@ -140,7 +140,7 @@ public abstract class NumericalFun public Round (SQLExpression argument) { super(argument); } - public Object accept (ExpressionVisitor visitor) { + public Object accept (FragmentVisitor visitor) { return visitor.visit(this); } public String getCanonicalFunctionName () { @@ -152,7 +152,7 @@ public abstract class NumericalFun public Sign (SQLExpression argument) { super(argument); } - public Object accept (ExpressionVisitor visitor) { + public Object accept (FragmentVisitor visitor) { return visitor.visit(this); } public String getCanonicalFunctionName () { @@ -164,7 +164,7 @@ public abstract class NumericalFun public Sqrt (SQLExpression argument) { super(argument); } - public Object accept (ExpressionVisitor visitor) { + public Object accept (FragmentVisitor visitor) { return visitor.visit(this); } public String getCanonicalFunctionName () { @@ -176,7 +176,7 @@ public abstract class NumericalFun public Trunc (SQLExpression argument) { super(argument); } - public Object accept (ExpressionVisitor visitor) { + public Object accept (FragmentVisitor visitor) { return visitor.visit(this); } public String getCanonicalFunctionName () { diff --git a/src/java/com/samskivert/depot/impl/expression/StringFun.java b/src/java/com/samskivert/depot/impl/expression/StringFun.java index 05c8237..64c0227 100644 --- a/src/java/com/samskivert/depot/impl/expression/StringFun.java +++ b/src/java/com/samskivert/depot/impl/expression/StringFun.java @@ -21,7 +21,7 @@ package com.samskivert.depot.impl.expression; import com.samskivert.depot.expression.SQLExpression; -import com.samskivert.depot.impl.ExpressionVisitor; +import com.samskivert.depot.impl.FragmentVisitor; import com.samskivert.depot.impl.expression.Function.ManyArgFun; import com.samskivert.depot.impl.expression.Function.OneArgFun; import com.samskivert.depot.impl.expression.Function.TwoArgFun; @@ -32,7 +32,7 @@ public abstract class StringFun public Length (SQLExpression argument) { super(argument); } - public Object accept (ExpressionVisitor visitor) { + public Object accept (FragmentVisitor visitor) { return visitor.visit(this); } public String getCanonicalFunctionName () { @@ -44,7 +44,7 @@ public abstract class StringFun public Lower (SQLExpression argument) { super(argument); } - public Object accept (ExpressionVisitor visitor) { + public Object accept (FragmentVisitor visitor) { return visitor.visit(this); } public String getCanonicalFunctionName () { @@ -56,7 +56,7 @@ public abstract class StringFun public Position (SQLExpression substring, SQLExpression string) { super(substring, string); } - public Object accept (ExpressionVisitor visitor) { + public Object accept (FragmentVisitor visitor) { return visitor.visit(this); } public String getCanonicalFunctionName () { @@ -74,7 +74,7 @@ public abstract class StringFun public Substring (SQLExpression string, SQLExpression from, SQLExpression count) { super(string, from, count); } - public Object accept (ExpressionVisitor visitor) { + public Object accept (FragmentVisitor visitor) { return visitor.visit(this); } public String getCanonicalFunctionName () { @@ -86,7 +86,7 @@ public abstract class StringFun public Trim (SQLExpression argument) { super(argument); } - public Object accept (ExpressionVisitor visitor) { + public Object accept (FragmentVisitor visitor) { return visitor.visit(this); } public String getCanonicalFunctionName () { @@ -98,7 +98,7 @@ public abstract class StringFun public Upper (SQLExpression argument) { super(argument); } - public Object accept (ExpressionVisitor visitor) { + public Object accept (FragmentVisitor visitor) { return visitor.visit(this); } public String getCanonicalFunctionName () { diff --git a/src/java/com/samskivert/depot/impl/expression/ValueExp.java b/src/java/com/samskivert/depot/impl/expression/ValueExp.java index ce2bb5a..47bdd5d 100644 --- a/src/java/com/samskivert/depot/impl/expression/ValueExp.java +++ b/src/java/com/samskivert/depot/impl/expression/ValueExp.java @@ -24,7 +24,7 @@ import java.util.Collection; import com.samskivert.depot.PersistentRecord; import com.samskivert.depot.expression.FluentExp; -import com.samskivert.depot.impl.ExpressionVisitor; +import com.samskivert.depot.impl.FragmentVisitor; /** * A Java value that is bound as a parameter to the query, e.g. 1 or 'abc'. @@ -36,13 +36,13 @@ public class ValueExp extends FluentExp _value = value; } - // from SQLExpression - public Object accept (ExpressionVisitor builder) + // from SQLFragment + public Object accept (FragmentVisitor builder) { return builder.visit(this); } - // from SQLExpression + // from SQLFragment public void addClasses (Collection> classSet) { } diff --git a/src/java/com/samskivert/depot/impl/operator/BinaryOperator.java b/src/java/com/samskivert/depot/impl/operator/BinaryOperator.java index ea2f653..b55153f 100644 --- a/src/java/com/samskivert/depot/impl/operator/BinaryOperator.java +++ b/src/java/com/samskivert/depot/impl/operator/BinaryOperator.java @@ -4,7 +4,7 @@ package com.samskivert.depot.impl.operator; import com.samskivert.depot.expression.SQLExpression; -import com.samskivert.depot.impl.ExpressionVisitor; +import com.samskivert.depot.impl.FragmentVisitor; import com.samskivert.depot.impl.expression.ValueExp; /** @@ -32,8 +32,8 @@ public abstract class BinaryOperator extends BaseOperator */ public abstract Object evaluate (Object left, Object right); - // from SQLExpression - public Object accept (ExpressionVisitor builder) + // from SQLFragment + public Object accept (FragmentVisitor builder) { return builder.visit(this); } diff --git a/src/java/com/samskivert/depot/impl/operator/Exists.java b/src/java/com/samskivert/depot/impl/operator/Exists.java index 5235a71..1c3bae9 100644 --- a/src/java/com/samskivert/depot/impl/operator/Exists.java +++ b/src/java/com/samskivert/depot/impl/operator/Exists.java @@ -25,7 +25,7 @@ import java.util.Collection; import com.samskivert.depot.PersistentRecord; import com.samskivert.depot.clause.SelectClause; import com.samskivert.depot.expression.SQLExpression; -import com.samskivert.depot.impl.ExpressionVisitor; +import com.samskivert.depot.impl.FragmentVisitor; /** * The SQL 'exists' operator. @@ -38,7 +38,7 @@ public class Exists _clause = clause; } - public Object accept (ExpressionVisitor builder) + public Object accept (FragmentVisitor builder) { return builder.visit(this); } diff --git a/src/java/com/samskivert/depot/impl/operator/In.java b/src/java/com/samskivert/depot/impl/operator/In.java index 3148352..4c8b0bb 100644 --- a/src/java/com/samskivert/depot/impl/operator/In.java +++ b/src/java/com/samskivert/depot/impl/operator/In.java @@ -25,7 +25,7 @@ import java.util.Collection; import com.samskivert.depot.PersistentRecord; import com.samskivert.depot.expression.ColumnExp; import com.samskivert.depot.expression.SQLExpression; -import com.samskivert.depot.impl.ExpressionVisitor; +import com.samskivert.depot.impl.FragmentVisitor; /** * The SQL 'in (...)' operator. @@ -57,13 +57,13 @@ public class In return _values; } - // from SQLExpression - public Object accept (ExpressionVisitor builder) + // from SQLFragment + public Object accept (FragmentVisitor builder) { return builder.visit(this); } - // from SQLExpression + // from SQLFragment public void addClasses (Collection> classSet) { _column.addClasses(classSet); diff --git a/src/java/com/samskivert/depot/impl/operator/IsNull.java b/src/java/com/samskivert/depot/impl/operator/IsNull.java index 0358ec5..9bf9834 100644 --- a/src/java/com/samskivert/depot/impl/operator/IsNull.java +++ b/src/java/com/samskivert/depot/impl/operator/IsNull.java @@ -25,7 +25,7 @@ import java.util.Collection; import com.samskivert.depot.PersistentRecord; import com.samskivert.depot.expression.ColumnExp; import com.samskivert.depot.expression.SQLExpression; -import com.samskivert.depot.impl.ExpressionVisitor; +import com.samskivert.depot.impl.FragmentVisitor; /** * The SQL 'is null' operator. @@ -43,13 +43,13 @@ public class IsNull return _column; } - // from SQLExpression - public Object accept (ExpressionVisitor builder) + // from SQLFragment + public Object accept (FragmentVisitor builder) { return builder.visit(this); } - // from SQLExpression + // from SQLFragment public void addClasses (Collection> classSet) { } diff --git a/src/java/com/samskivert/depot/impl/operator/MultiOperator.java b/src/java/com/samskivert/depot/impl/operator/MultiOperator.java index 905fb65..571050a 100644 --- a/src/java/com/samskivert/depot/impl/operator/MultiOperator.java +++ b/src/java/com/samskivert/depot/impl/operator/MultiOperator.java @@ -7,7 +7,7 @@ import java.util.Collection; import com.samskivert.depot.PersistentRecord; import com.samskivert.depot.expression.SQLExpression; -import com.samskivert.depot.impl.ExpressionVisitor; +import com.samskivert.depot.impl.FragmentVisitor; /** * Represents an operator with any number of operands. @@ -29,13 +29,13 @@ public abstract class MultiOperator extends BaseOperator */ public abstract Object evaluate (Object[] values); - // from SQLExpression - public Object accept (ExpressionVisitor builder) + // from SQLFragment + public Object accept (FragmentVisitor builder) { return builder.visit(this); } - @Override // from SQLExpression + @Override // from SQLFragment public void addClasses (Collection> classSet) { for (SQLExpression operand : _args) { diff --git a/src/java/com/samskivert/depot/impl/operator/Not.java b/src/java/com/samskivert/depot/impl/operator/Not.java index 8c56ea7..e364298 100644 --- a/src/java/com/samskivert/depot/impl/operator/Not.java +++ b/src/java/com/samskivert/depot/impl/operator/Not.java @@ -24,7 +24,7 @@ import java.util.Collection; import com.samskivert.depot.PersistentRecord; import com.samskivert.depot.expression.SQLExpression; -import com.samskivert.depot.impl.ExpressionVisitor; +import com.samskivert.depot.impl.FragmentVisitor; /** * Represents the truth negation of another conditon. @@ -42,13 +42,13 @@ public class Not return _condition; } - // from SQLExpression - public Object accept (ExpressionVisitor builder) + // from SQLFragment + public Object accept (FragmentVisitor builder) { return builder.visit(this); } - // from SQLExpression + // from SQLFragment public void addClasses (Collection> classSet) { _condition.addClasses(classSet); diff --git a/src/java/com/samskivert/depot/operator/Case.java b/src/java/com/samskivert/depot/operator/Case.java index a0a0c35..fad06e6 100644 --- a/src/java/com/samskivert/depot/operator/Case.java +++ b/src/java/com/samskivert/depot/operator/Case.java @@ -27,7 +27,7 @@ import com.google.common.collect.Lists; import com.samskivert.depot.PersistentRecord; import com.samskivert.depot.expression.SQLExpression; -import com.samskivert.depot.impl.ExpressionVisitor; +import com.samskivert.depot.impl.FragmentVisitor; import com.samskivert.util.Tuple; /** @@ -57,7 +57,7 @@ public class Case } // from SQLExpression - public Object accept (ExpressionVisitor builder) + public Object accept (FragmentVisitor builder) { return builder.visit(this); } diff --git a/src/java/com/samskivert/depot/operator/FullText.java b/src/java/com/samskivert/depot/operator/FullText.java index af3f6a7..f686875 100644 --- a/src/java/com/samskivert/depot/operator/FullText.java +++ b/src/java/com/samskivert/depot/operator/FullText.java @@ -24,7 +24,7 @@ import java.util.Collection; import com.samskivert.depot.PersistentRecord; import com.samskivert.depot.expression.FluentExp; -import com.samskivert.depot.impl.ExpressionVisitor; +import com.samskivert.depot.impl.FragmentVisitor; /** * An attempt at a dialect-agnostic full-text search condition, such as MySQL's MATCH() and @@ -35,7 +35,7 @@ public class FullText public class Rank extends FluentExp { // from SQLExpression - public Object accept (ExpressionVisitor builder) + public Object accept (FragmentVisitor builder) { return builder.visit(this); } @@ -60,7 +60,7 @@ public class FullText public class Match extends FluentExp { // from SQLExpression - public Object accept (ExpressionVisitor builder) + public Object accept (FragmentVisitor builder) { return builder.visit(this); }