Revision: 11093
http://datanucleus.svn.sourceforge.net/datanucleus/?rev=11093&view=rev
Author: andy_jefferson
Date: 2010-11-12 07:39:50 +0000 (Fri, 12 Nov 2010)
Log Message:
-----------
Remove getQueryExpression from proposed JDO interface; implementation specific
Modified Paths:
--------------
platform/core/trunk/src/java/org/datanucleus/jdo/query/AbstractTypesafeQuery.java
platform/core/trunk/src/java/org/datanucleus/jdo/query/BooleanExpressionImpl.java
platform/core/trunk/src/java/org/datanucleus/jdo/query/CollectionExpressionImpl.java
platform/core/trunk/src/java/org/datanucleus/jdo/query/ComparableExpressionImpl.java
platform/core/trunk/src/java/org/datanucleus/jdo/query/ExpressionImpl.java
platform/core/trunk/src/java/org/datanucleus/jdo/query/JDOTypesafeQuery.java
platform/core/trunk/src/java/org/datanucleus/jdo/query/JDOTypesafeSubquery.java
platform/core/trunk/src/java/org/datanucleus/jdo/query/ListExpressionImpl.java
platform/core/trunk/src/java/org/datanucleus/jdo/query/MapExpressionImpl.java
platform/core/trunk/src/java/org/datanucleus/jdo/query/NumericExpressionImpl.java
platform/core/trunk/src/java/org/datanucleus/jdo/query/StringExpressionImpl.java
platform/core/trunk/src/java/org/datanucleus/query/typesafe/Expression.java
Modified: platform/core/trunk/src/java/org/datanucleus/jdo/query/AbstractTypesafeQuery.java
===================================================================
--- platform/core/trunk/src/java/org/datanucleus/jdo/query/AbstractTypesafeQuery.java 2010-11-12 07:36:40 UTC (rev 11092)
+++ platform/core/trunk/src/java/org/datanucleus/jdo/query/AbstractTypesafeQuery.java 2010-11-12 07:39:50 UTC (rev 11093)
@@ -32,9 +32,6 @@
import org.datanucleus.query.expression.PrimaryExpression;
import org.datanucleus.query.symbol.PropertySymbol;
import org.datanucleus.query.symbol.SymbolTable;
-import org.datanucleus.query.typesafe.BooleanExpression;
-import org.datanucleus.query.typesafe.Expression;
-import org.datanucleus.query.typesafe.OrderExpression;
import org.datanucleus.query.typesafe.OrderExpression.OrderDirection;
/**
@@ -49,22 +46,22 @@
protected String candidateAlias = null;
/** Result expression(s). */
- protected List<Expression> result;
+ protected List<ExpressionImpl> result;
/** Whether the results are distinct (no dups). */
protected Boolean resultDistinct = null;
/** Filter expression. */
- protected BooleanExpression filter;
+ protected BooleanExpressionImpl filter;
/** Grouping expression(s). */
- protected List<Expression> grouping;
+ protected List<ExpressionImpl> grouping;
/** Having expression. */
- protected Expression having;
+ protected ExpressionImpl having;
/** Ordering expression(s). */
- protected List<OrderExpression> ordering;
+ protected List<OrderExpressionImpl> ordering;
protected PersistenceManager pm;
@@ -162,14 +159,14 @@
if (ordering != null && !ordering.isEmpty())
{
orderExprs = new org.datanucleus.query.expression.Expression[ordering.size()];
- Iterator<OrderExpression> iter = ordering.iterator();
+ Iterator<OrderExpressionImpl> iter = ordering.iterator();
int i=0;
while (iter.hasNext())
{
- OrderExpression order = iter.next();
+ OrderExpressionImpl order = iter.next();
org.datanucleus.query.expression.OrderExpression orderExpr =
new org.datanucleus.query.expression.OrderExpression(
- order.getExpression().getQueryExpression(),
+ ((ExpressionImpl)order.getExpression()).getQueryExpression(),
order.getDirection() == OrderDirection.ASC ? "ascending" : "descending");
orderExpr.bind(symtbl);
orderExprs[i++] = orderExpr;
Modified: platform/core/trunk/src/java/org/datanucleus/jdo/query/BooleanExpressionImpl.java
===================================================================
--- platform/core/trunk/src/java/org/datanucleus/jdo/query/BooleanExpressionImpl.java 2010-11-12 07:36:40 UTC (rev 11092)
+++ platform/core/trunk/src/java/org/datanucleus/jdo/query/BooleanExpressionImpl.java 2010-11-12 07:39:50 UTC (rev 11093)
@@ -48,7 +48,7 @@
public BooleanExpression and(BooleanExpression expr)
{
Expression leftQueryExpr = queryExpr;
- Expression rightQueryExpr = expr.getQueryExpression();
+ Expression rightQueryExpr = ((ExpressionImpl)expr).getQueryExpression();
org.datanucleus.query.expression.Expression queryExpr =
new DyadicExpression(leftQueryExpr, org.datanucleus.query.expression.Expression.OP_AND, rightQueryExpr);
@@ -73,7 +73,7 @@
public BooleanExpression or(BooleanExpression expr)
{
Expression leftQueryExpr = queryExpr;
- Expression rightQueryExpr = expr.getQueryExpression();
+ Expression rightQueryExpr = ((ExpressionImpl)expr).getQueryExpression();
org.datanucleus.query.expression.Expression queryExpr =
new DyadicExpression(leftQueryExpr, org.datanucleus.query.expression.Expression.OP_OR, rightQueryExpr);
Modified: platform/core/trunk/src/java/org/datanucleus/jdo/query/CollectionExpressionImpl.java
===================================================================
--- platform/core/trunk/src/java/org/datanucleus/jdo/query/CollectionExpressionImpl.java 2010-11-12 07:36:40 UTC (rev 11092)
+++ platform/core/trunk/src/java/org/datanucleus/jdo/query/CollectionExpressionImpl.java 2010-11-12 07:39:50 UTC (rev 11093)
@@ -61,7 +61,7 @@
public BooleanExpression contains(Expression expr)
{
List<org.datanucleus.query.expression.Expression> args = new ArrayList();
- args.add(expr.getQueryExpression());
+ args.add(((ExpressionImpl)expr).getQueryExpression());
org.datanucleus.query.expression.Expression invokeExpr = new InvokeExpression(queryExpr, "contains", args);
return new BooleanExpressionImpl(invokeExpr);
}
Modified: platform/core/trunk/src/java/org/datanucleus/jdo/query/ComparableExpressionImpl.java
===================================================================
--- platform/core/trunk/src/java/org/datanucleus/jdo/query/ComparableExpressionImpl.java 2010-11-12 07:36:40 UTC (rev 11092)
+++ platform/core/trunk/src/java/org/datanucleus/jdo/query/ComparableExpressionImpl.java 2010-11-12 07:39:50 UTC (rev 11093)
@@ -57,7 +57,7 @@
public BooleanExpression gt(org.datanucleus.query.typesafe.ComparableExpression expr)
{
Expression leftQueryExpr = queryExpr;
- Expression rightQueryExpr = expr.getQueryExpression();
+ Expression rightQueryExpr = ((ExpressionImpl)expr).getQueryExpression();
org.datanucleus.query.expression.Expression queryExpr =
new DyadicExpression(leftQueryExpr, org.datanucleus.query.expression.Expression.OP_GT, rightQueryExpr);
@@ -83,7 +83,7 @@
public BooleanExpression gteq(org.datanucleus.query.typesafe.ComparableExpression expr)
{
Expression leftQueryExpr = queryExpr;
- Expression rightQueryExpr = expr.getQueryExpression();
+ Expression rightQueryExpr = ((ExpressionImpl)expr).getQueryExpression();
org.datanucleus.query.expression.Expression queryExpr =
new DyadicExpression(leftQueryExpr, org.datanucleus.query.expression.Expression.OP_GTEQ, rightQueryExpr);
@@ -109,7 +109,7 @@
public BooleanExpression lt(org.datanucleus.query.typesafe.ComparableExpression expr)
{
Expression leftQueryExpr = queryExpr;
- Expression rightQueryExpr = expr.getQueryExpression();
+ Expression rightQueryExpr = ((ExpressionImpl)expr).getQueryExpression();
org.datanucleus.query.expression.Expression queryExpr =
new DyadicExpression(leftQueryExpr, org.datanucleus.query.expression.Expression.OP_LT, rightQueryExpr);
@@ -135,7 +135,7 @@
public BooleanExpression lteq(org.datanucleus.query.typesafe.ComparableExpression expr)
{
Expression leftQueryExpr = queryExpr;
- Expression rightQueryExpr = expr.getQueryExpression();
+ Expression rightQueryExpr = ((ExpressionImpl)expr).getQueryExpression();
org.datanucleus.query.expression.Expression queryExpr =
new DyadicExpression(leftQueryExpr, org.datanucleus.query.expression.Expression.OP_LTEQ, rightQueryExpr);
Modified: platform/core/trunk/src/java/org/datanucleus/jdo/query/ExpressionImpl.java
===================================================================
--- platform/core/trunk/src/java/org/datanucleus/jdo/query/ExpressionImpl.java 2010-11-12 07:36:40 UTC (rev 11092)
+++ platform/core/trunk/src/java/org/datanucleus/jdo/query/ExpressionImpl.java 2010-11-12 07:39:50 UTC (rev 11093)
@@ -54,7 +54,7 @@
List<String> tuples = new ArrayList<String>();
if (parent != null)
{
- org.datanucleus.query.expression.Expression parentQueryExpr = parent.getQueryExpression();
+ org.datanucleus.query.expression.Expression parentQueryExpr = ((ExpressionImpl)parent).getQueryExpression();
if (parentQueryExpr instanceof PrimaryExpression)
{
tuples.addAll(((PrimaryExpression) parentQueryExpr).getTuples());
@@ -141,7 +141,7 @@
public BooleanExpression eq(Expression expr)
{
org.datanucleus.query.expression.Expression leftQueryExpr = queryExpr;
- org.datanucleus.query.expression.Expression rightQueryExpr = expr.getQueryExpression();
+ org.datanucleus.query.expression.Expression rightQueryExpr = ((ExpressionImpl)expr).getQueryExpression();
org.datanucleus.query.expression.Expression queryExpr =
new DyadicExpression(leftQueryExpr, org.datanucleus.query.expression.Expression.OP_EQ, rightQueryExpr);
@@ -167,7 +167,7 @@
public BooleanExpression ne(Expression expr)
{
org.datanucleus.query.expression.Expression leftQueryExpr = queryExpr;
- org.datanucleus.query.expression.Expression rightQueryExpr = expr.getQueryExpression();
+ org.datanucleus.query.expression.Expression rightQueryExpr = ((ExpressionImpl)expr).getQueryExpression();
org.datanucleus.query.expression.Expression queryExpr =
new DyadicExpression(leftQueryExpr, org.datanucleus.query.expression.Expression.OP_NOTEQ, rightQueryExpr);
Modified: platform/core/trunk/src/java/org/datanucleus/jdo/query/JDOTypesafeQuery.java
===================================================================
--- platform/core/trunk/src/java/org/datanucleus/jdo/query/JDOTypesafeQuery.java 2010-11-12 07:36:40 UTC (rev 11092)
+++ platform/core/trunk/src/java/org/datanucleus/jdo/query/JDOTypesafeQuery.java 2010-11-12 07:39:50 UTC (rev 11093)
@@ -85,16 +85,16 @@
protected Collection<T> candidates = null;
/** Range : lower limit expression. */
- protected Expression rangeLowerExpr;
+ protected ExpressionImpl rangeLowerExpr;
/** Range : upper limit expression. */
- protected Expression rangeUpperExpr;
+ protected ExpressionImpl rangeUpperExpr;
/** Any extensions */
protected Map<String, Object> extensions = null;
/** Map of parameter expression keyed by the name. */
- protected Map<String, Expression> parameterExprByName = null;
+ protected Map<String, ExpressionImpl> parameterExprByName = null;
/** Map of parameters keyed by their name/expression. */
protected Map<String, Object> parameterValuesByName = null;
@@ -159,7 +159,7 @@
{
discardCompiled();
- Expression paramExpr = null;
+ ExpressionImpl paramExpr = null;
if (type == Boolean.class || type == boolean.class)
{
paramExpr = new BooleanExpressionImpl(type, name, ExpressionType.PARAMETER);
@@ -219,7 +219,7 @@
Class qClass = om.getClassLoaderResolver().classForName(qName);
Constructor ctr = qClass.getConstructor(new Class[] {Class.class, String.class, ExpressionType.class});
Object candObj = ctr.newInstance(new Object[] {type, name, ExpressionType.PARAMETER});
- paramExpr = (Expression)candObj;
+ paramExpr = (ExpressionImpl)candObj;
}
catch (NoSuchMethodException nsme)
{
@@ -245,7 +245,7 @@
if (parameterExprByName == null)
{
- parameterExprByName = new HashMap<String, Expression>();
+ parameterExprByName = new HashMap<String, ExpressionImpl>();
}
parameterExprByName.put(name, paramExpr);
@@ -257,10 +257,10 @@
*/
public StringExpression stringParameter(String name)
{
- StringExpression paramExpr = new StringExpressionImpl(String.class, name, ExpressionType.PARAMETER);
+ StringExpressionImpl paramExpr = new StringExpressionImpl(String.class, name, ExpressionType.PARAMETER);
if (parameterExprByName == null)
{
- parameterExprByName = new HashMap<String, Expression>();
+ parameterExprByName = new HashMap<String, ExpressionImpl>();
}
parameterExprByName.put(name, paramExpr);
return paramExpr;
@@ -271,10 +271,10 @@
*/
public CharacterExpression characterParameter(String name)
{
- CharacterExpression paramExpr = new CharacterExpressionImpl(Character.class, name, ExpressionType.PARAMETER);
+ CharacterExpressionImpl paramExpr = new CharacterExpressionImpl(Character.class, name, ExpressionType.PARAMETER);
if (parameterExprByName == null)
{
- parameterExprByName = new HashMap<String, Expression>();
+ parameterExprByName = new HashMap<String, ExpressionImpl>();
}
parameterExprByName.put(name, paramExpr);
return paramExpr;
@@ -285,10 +285,10 @@
*/
public NumericExpression<Long> longParameter(String name)
{
- NumericExpression<Long> paramExpr = new NumericExpressionImpl(Long.class, name, ExpressionType.PARAMETER);
+ NumericExpressionImpl<Long> paramExpr = new NumericExpressionImpl(Long.class, name, ExpressionType.PARAMETER);
if (parameterExprByName == null)
{
- parameterExprByName = new HashMap<String, Expression>();
+ parameterExprByName = new HashMap<String, ExpressionImpl>();
}
parameterExprByName.put(name, paramExpr);
return paramExpr;
@@ -299,10 +299,10 @@
*/
public NumericExpression<Integer> integerParameter(String name)
{
- NumericExpression<Integer> paramExpr = new NumericExpressionImpl(Integer.class, name, ExpressionType.PARAMETER);
+ NumericExpressionImpl<Integer> paramExpr = new NumericExpressionImpl(Integer.class, name, ExpressionType.PARAMETER);
if (parameterExprByName == null)
{
- parameterExprByName = new HashMap<String, Expression>();
+ parameterExprByName = new HashMap<String, ExpressionImpl>();
}
parameterExprByName.put(name, paramExpr);
return paramExpr;
@@ -313,10 +313,10 @@
*/
public NumericExpression<Short> shortParameter(String name)
{
- NumericExpression<Short> paramExpr = new NumericExpressionImpl(Short.class, name, ExpressionType.PARAMETER);
+ NumericExpressionImpl<Short> paramExpr = new NumericExpressionImpl(Short.class, name, ExpressionType.PARAMETER);
if (parameterExprByName == null)
{
- parameterExprByName = new HashMap<String, Expression>();
+ parameterExprByName = new HashMap<String, ExpressionImpl>();
}
parameterExprByName.put(name, paramExpr);
return paramExpr;
@@ -327,10 +327,10 @@
*/
public NumericExpression<Double> doubleParameter(String name)
{
- NumericExpression<Double> paramExpr = new NumericExpressionImpl(Double.class, name, ExpressionType.PARAMETER);
+ NumericExpressionImpl<Double> paramExpr = new NumericExpressionImpl(Double.class, name, ExpressionType.PARAMETER);
if (parameterExprByName == null)
{
- parameterExprByName = new HashMap<String, Expression>();
+ parameterExprByName = new HashMap<String, ExpressionImpl>();
}
parameterExprByName.put(name, paramExpr);
return paramExpr;
@@ -341,10 +341,10 @@
*/
public NumericExpression<Float> floatParameter(String name)
{
- NumericExpression<Float> paramExpr = new NumericExpressionImpl(Float.class, name, ExpressionType.PARAMETER);
+ NumericExpressionImpl<Float> paramExpr = new NumericExpressionImpl(Float.class, name, ExpressionType.PARAMETER);
if (parameterExprByName == null)
{
- parameterExprByName = new HashMap<String, Expression>();
+ parameterExprByName = new HashMap<String, ExpressionImpl>();
}
parameterExprByName.put(name, paramExpr);
return paramExpr;
@@ -355,10 +355,10 @@
*/
public DateExpression<Date> dateParameter(String name)
{
- DateExpression<Date> paramExpr = new DateExpressionImpl(Date.class, name, ExpressionType.PARAMETER);
+ DateExpressionImpl paramExpr = new DateExpressionImpl(Date.class, name, ExpressionType.PARAMETER);
if (parameterExprByName == null)
{
- parameterExprByName = new HashMap<String, Expression>();
+ parameterExprByName = new HashMap<String, ExpressionImpl>();
}
parameterExprByName.put(name, paramExpr);
return paramExpr;
@@ -369,10 +369,10 @@
*/
public TimeExpression<Time> timeParameter(String name)
{
- TimeExpression paramExpr = new TimeExpressionImpl(Date.class, name, ExpressionType.PARAMETER);
+ TimeExpressionImpl paramExpr = new TimeExpressionImpl(Date.class, name, ExpressionType.PARAMETER);
if (parameterExprByName == null)
{
- parameterExprByName = new HashMap<String, Expression>();
+ parameterExprByName = new HashMap<String, ExpressionImpl>();
}
parameterExprByName.put(name, paramExpr);
return paramExpr;
@@ -383,10 +383,10 @@
*/
public DateTimeExpression<java.util.Date> datetimeParameter(String name)
{
- DateTimeExpression paramExpr = new DateTimeExpressionImpl(java.util.Date.class, name, ExpressionType.PARAMETER);
+ DateTimeExpressionImpl paramExpr = new DateTimeExpressionImpl(java.util.Date.class, name, ExpressionType.PARAMETER);
if (parameterExprByName == null)
{
- parameterExprByName = new HashMap<String, Expression>();
+ parameterExprByName = new HashMap<String, ExpressionImpl>();
}
parameterExprByName.put(name, paramExpr);
return paramExpr;
@@ -397,10 +397,10 @@
*/
public CollectionExpression collectionParameter(String name)
{
- CollectionExpression paramExpr = new CollectionExpressionImpl(java.util.Collection.class, name, ExpressionType.PARAMETER);
+ CollectionExpressionImpl paramExpr = new CollectionExpressionImpl(java.util.Collection.class, name, ExpressionType.PARAMETER);
if (parameterExprByName == null)
{
- parameterExprByName = new HashMap<String, Expression>();
+ parameterExprByName = new HashMap<String, ExpressionImpl>();
}
parameterExprByName.put(name, paramExpr);
return paramExpr;
@@ -411,10 +411,10 @@
*/
public MapExpression mapParameter(String name)
{
- MapExpression paramExpr = new MapExpressionImpl(java.util.Map.class, name, ExpressionType.PARAMETER);
+ MapExpressionImpl paramExpr = new MapExpressionImpl(java.util.Map.class, name, ExpressionType.PARAMETER);
if (parameterExprByName == null)
{
- parameterExprByName = new HashMap<String, Expression>();
+ parameterExprByName = new HashMap<String, ExpressionImpl>();
}
parameterExprByName.put(name, paramExpr);
return paramExpr;
@@ -425,10 +425,10 @@
*/
public ListExpression listParameter(String name)
{
- ListExpression paramExpr = new ListExpressionImpl(java.util.List.class, name, ExpressionType.PARAMETER);
+ ListExpressionImpl paramExpr = new ListExpressionImpl(java.util.List.class, name, ExpressionType.PARAMETER);
if (parameterExprByName == null)
{
- parameterExprByName = new HashMap<String, Expression>();
+ parameterExprByName = new HashMap<String, ExpressionImpl>();
}
parameterExprByName.put(name, paramExpr);
return paramExpr;
@@ -552,7 +552,7 @@
public TypesafeQuery<T> filter(BooleanExpression expr)
{
discardCompiled();
- this.filter = expr;
+ this.filter = (BooleanExpressionImpl)expr;
return this;
}
@@ -564,11 +564,11 @@
discardCompiled();
if (exprs != null && exprs.length > 0)
{
- grouping = new ArrayList<Expression>();
+ grouping = new ArrayList<ExpressionImpl>();
}
for (int i=0;i<exprs.length;i++)
{
- grouping.add(exprs[i]);
+ grouping.add((ExpressionImpl)exprs[i]);
}
return this;
}
@@ -579,7 +579,7 @@
public TypesafeQuery<T> having(Expression expr)
{
discardCompiled();
- this.having = expr;
+ this.having = (ExpressionImpl)expr;
return this;
}
@@ -591,11 +591,11 @@
discardCompiled();
if (exprs != null && exprs.length > 0)
{
- ordering = new ArrayList<OrderExpression>();
+ ordering = new ArrayList<OrderExpressionImpl>();
}
for (int i=0;i<exprs.length;i++)
{
- ordering.add(exprs[i]);
+ ordering.add((OrderExpressionImpl)exprs[i]);
}
return this;
}
@@ -617,8 +617,8 @@
public TypesafeQuery<T> range(NumericExpression lowerInclExpr, NumericExpression upperExclExpr)
{
discardCompiled();
- this.rangeLowerExpr = lowerInclExpr;
- this.rangeUpperExpr = upperExclExpr;
+ this.rangeLowerExpr = (ExpressionImpl)lowerInclExpr;
+ this.rangeUpperExpr = (ExpressionImpl)upperExclExpr;
return this;
}
@@ -636,8 +636,8 @@
{
throw new JDOUserException("upper exclusive expression should be a parameter");
}
- this.rangeLowerExpr = paramLowerInclExpr;
- this.rangeUpperExpr = paramUpperExclExpr;
+ this.rangeLowerExpr = (ExpressionImpl)paramLowerInclExpr;
+ this.rangeUpperExpr = (ExpressionImpl)paramUpperExclExpr;
return this;
}
@@ -676,7 +676,7 @@
{
discardCompiled();
- ParameterExpression internalParamExpr = (ParameterExpression) paramExpr.getQueryExpression();
+ ParameterExpression internalParamExpr = (ParameterExpression) ((ExpressionImpl)paramExpr).getQueryExpression();
if (parameterExprByName == null ||
(parameterExprByName != null && !parameterExprByName.containsKey(internalParamExpr.getAlias())))
{
@@ -771,10 +771,10 @@
this.result = null;
if (exprs != null && exprs.length > 0)
{
- result = new ArrayList<Expression>();
+ result = new ArrayList<ExpressionImpl>();
for (int i=0;i<exprs.length;i++)
{
- result.add(exprs[i]);
+ result.add((ExpressionImpl)exprs[i]);
}
}
this.resultClass = null;
@@ -792,10 +792,10 @@
this.result = null;
if (exprs != null && exprs.length > 0)
{
- result = new ArrayList<Expression>();
+ result = new ArrayList<ExpressionImpl>();
for (int i=0;i<exprs.length;i++)
{
- result.add(exprs[i]);
+ result.add((ExpressionImpl)exprs[i]);
}
}
this.resultClass = resultCls;
@@ -814,10 +814,10 @@
this.result = null;
if (exprs != null && exprs.length > 0)
{
- result = new ArrayList<Expression>();
+ result = new ArrayList<ExpressionImpl>();
for (int i=0;i<exprs.length;i++)
{
- result.add(exprs[i]);
+ result.add((ExpressionImpl)exprs[i]);
}
}
this.resultClass = null;
@@ -836,10 +836,10 @@
this.result = null;
if (exprs != null && exprs.length > 0)
{
- result = new ArrayList<Expression>();
+ result = new ArrayList<ExpressionImpl>();
for (int i=0;i<exprs.length;i++)
{
- result.add(exprs[i]);
+ result.add((ExpressionImpl)exprs[i]);
}
}
this.resultClass = resultCls;
@@ -1139,10 +1139,10 @@
str.append(" DISTINCT");
}
str.append(" ");
- Iterator<Expression> iter = result.iterator();
+ Iterator<ExpressionImpl> iter = result.iterator();
while (iter.hasNext())
{
- Expression resultExpr = iter.next();
+ ExpressionImpl resultExpr = iter.next();
str.append(JDOQLQueryHelper.getJDOQLForExpression(resultExpr.getQueryExpression()));
if (iter.hasNext())
{
@@ -1175,10 +1175,10 @@
if (grouping != null && !grouping.isEmpty())
{
str.append(" GROUP BY ");
- Iterator<Expression> iter = grouping.iterator();
+ Iterator<ExpressionImpl> iter = grouping.iterator();
while (iter.hasNext())
{
- Expression groupExpr = iter.next();
+ ExpressionImpl groupExpr = iter.next();
str.append(JDOQLQueryHelper.getJDOQLForExpression(groupExpr.getQueryExpression()));
if (iter.hasNext())
{
@@ -1198,11 +1198,12 @@
if (ordering != null && !ordering.isEmpty())
{
str.append(" ORDER BY ");
- Iterator<OrderExpression> iter = ordering.iterator();
+ Iterator<OrderExpressionImpl> iter = ordering.iterator();
while (iter.hasNext())
{
- OrderExpression orderExpr = iter.next();
- str.append(JDOQLQueryHelper.getJDOQLForExpression(orderExpr.getExpression().getQueryExpression()));
+ OrderExpressionImpl orderExpr = iter.next();
+ str.append(JDOQLQueryHelper.getJDOQLForExpression(
+ ((ExpressionImpl)orderExpr.getExpression()).getQueryExpression()));
str.append(" " + (orderExpr.getDirection() == OrderDirection.ASC ? "ASCENDING" : "DESCENDING"));
if (iter.hasNext())
{
Modified: platform/core/trunk/src/java/org/datanucleus/jdo/query/JDOTypesafeSubquery.java
===================================================================
--- platform/core/trunk/src/java/org/datanucleus/jdo/query/JDOTypesafeSubquery.java 2010-11-12 07:36:40 UTC (rev 11092)
+++ platform/core/trunk/src/java/org/datanucleus/jdo/query/JDOTypesafeSubquery.java 2010-11-12 07:39:50 UTC (rev 11093)
@@ -102,7 +102,7 @@
public TypesafeSubquery filter(BooleanExpression expr)
{
discardCompiled();
- this.filter = expr;
+ this.filter = (BooleanExpressionImpl)expr;
return this;
}
@@ -114,11 +114,11 @@
discardCompiled();
if (exprs != null && exprs.length > 0)
{
- grouping = new ArrayList<Expression>();
+ grouping = new ArrayList<ExpressionImpl>();
}
for (int i=0;i<exprs.length;i++)
{
- grouping.add(exprs[i]);
+ grouping.add((ExpressionImpl)exprs[i]);
}
return this;
}
@@ -129,7 +129,7 @@
public TypesafeSubquery having(Expression expr)
{
discardCompiled();
- this.having = expr;
+ this.having = (ExpressionImpl)expr;
return this;
}
@@ -191,8 +191,8 @@
protected Expression internalSelect(Expression expr, Class implClass)
{
- this.result = new ArrayList<Expression>();
- this.result.add(expr);
+ this.result = new ArrayList<ExpressionImpl>();
+ this.result.add((ExpressionImpl)expr);
VariableExpression varExpr = new VariableExpression(getAlias());
try
Modified: platform/core/trunk/src/java/org/datanucleus/jdo/query/ListExpressionImpl.java
===================================================================
--- platform/core/trunk/src/java/org/datanucleus/jdo/query/ListExpressionImpl.java 2010-11-12 07:36:40 UTC (rev 11092)
+++ platform/core/trunk/src/java/org/datanucleus/jdo/query/ListExpressionImpl.java 2010-11-12 07:39:50 UTC (rev 11093)
@@ -60,7 +60,7 @@
public Expression get(NumericExpression<Integer> posExpr)
{
List args = new ArrayList();
- args.add(posExpr.getQueryExpression());
+ args.add(((ExpressionImpl)posExpr).getQueryExpression());
org.datanucleus.query.expression.Expression invokeExpr = new InvokeExpression(queryExpr, "get", args);
return new ExpressionImpl(invokeExpr);
}
Modified: platform/core/trunk/src/java/org/datanucleus/jdo/query/MapExpressionImpl.java
===================================================================
--- platform/core/trunk/src/java/org/datanucleus/jdo/query/MapExpressionImpl.java 2010-11-12 07:36:40 UTC (rev 11092)
+++ platform/core/trunk/src/java/org/datanucleus/jdo/query/MapExpressionImpl.java 2010-11-12 07:39:50 UTC (rev 11093)
@@ -62,7 +62,7 @@
public BooleanExpression containsEntry(Expression expr)
{
List<org.datanucleus.query.expression.Expression> args = new ArrayList();
- args.add(expr.getQueryExpression());
+ args.add(((ExpressionImpl)expr).getQueryExpression());
org.datanucleus.query.expression.Expression invokeExpr = new InvokeExpression(queryExpr, "containsEntry", args);
return new BooleanExpressionImpl(invokeExpr);
}
@@ -73,7 +73,7 @@
public BooleanExpression containsKey(Expression expr)
{
List<org.datanucleus.query.expression.Expression> args = new ArrayList();
- args.add(expr.getQueryExpression());
+ args.add(((ExpressionImpl)expr).getQueryExpression());
org.datanucleus.query.expression.Expression invokeExpr = new InvokeExpression(queryExpr, "containsKey", args);
return new BooleanExpressionImpl(invokeExpr);
}
@@ -95,7 +95,7 @@
public BooleanExpression containsValue(Expression expr)
{
List<org.datanucleus.query.expression.Expression> args = new ArrayList();
- args.add(expr.getQueryExpression());
+ args.add(((ExpressionImpl)expr).getQueryExpression());
org.datanucleus.query.expression.Expression invokeExpr = new InvokeExpression(queryExpr, "containsValue", args);
return new BooleanExpressionImpl(invokeExpr);
}
Modified: platform/core/trunk/src/java/org/datanucleus/jdo/query/NumericExpressionImpl.java
===================================================================
--- platform/core/trunk/src/java/org/datanucleus/jdo/query/NumericExpressionImpl.java 2010-11-12 07:36:40 UTC (rev 11092)
+++ platform/core/trunk/src/java/org/datanucleus/jdo/query/NumericExpressionImpl.java 2010-11-12 07:39:50 UTC (rev 11093)
@@ -53,7 +53,7 @@
public NumericExpression add(Expression expr)
{
org.datanucleus.query.expression.Expression leftQueryExpr = queryExpr;
- org.datanucleus.query.expression.Expression rightQueryExpr = expr.getQueryExpression();
+ org.datanucleus.query.expression.Expression rightQueryExpr = ((ExpressionImpl)expr).getQueryExpression();
org.datanucleus.query.expression.Expression queryExpr =
new DyadicExpression(leftQueryExpr, org.datanucleus.query.expression.Expression.OP_ADD, rightQueryExpr);
@@ -79,7 +79,7 @@
public NumericExpression mul(Expression expr)
{
org.datanucleus.query.expression.Expression leftQueryExpr = queryExpr;
- org.datanucleus.query.expression.Expression rightQueryExpr = expr.getQueryExpression();
+ org.datanucleus.query.expression.Expression rightQueryExpr = ((ExpressionImpl)expr).getQueryExpression();
org.datanucleus.query.expression.Expression queryExpr =
new DyadicExpression(leftQueryExpr, org.datanucleus.query.expression.Expression.OP_MUL, rightQueryExpr);
@@ -105,7 +105,7 @@
public NumericExpression sub(Expression expr)
{
org.datanucleus.query.expression.Expression leftQueryExpr = queryExpr;
- org.datanucleus.query.expression.Expression rightQueryExpr = expr.getQueryExpression();
+ org.datanucleus.query.expression.Expression rightQueryExpr = ((ExpressionImpl)expr).getQueryExpression();
org.datanucleus.query.expression.Expression queryExpr =
new DyadicExpression(leftQueryExpr, org.datanucleus.query.expression.Expression.OP_SUB, rightQueryExpr);
@@ -131,7 +131,7 @@
public NumericExpression div(Expression expr)
{
org.datanucleus.query.expression.Expression leftQueryExpr = queryExpr;
- org.datanucleus.query.expression.Expression rightQueryExpr = expr.getQueryExpression();
+ org.datanucleus.query.expression.Expression rightQueryExpr = ((ExpressionImpl)expr).getQueryExpression();
org.datanucleus.query.expression.Expression queryExpr =
new DyadicExpression(leftQueryExpr, org.datanucleus.query.expression.Expression.OP_DIV, rightQueryExpr);
@@ -157,7 +157,7 @@
public NumericExpression mod(Expression expr)
{
org.datanucleus.query.expression.Expression leftQueryExpr = queryExpr;
- org.datanucleus.query.expression.Expression rightQueryExpr = expr.getQueryExpression();
+ org.datanucleus.query.expression.Expression rightQueryExpr = ((ExpressionImpl)expr).getQueryExpression();
org.datanucleus.query.expression.Expression queryExpr =
new DyadicExpression(leftQueryExpr, org.datanucleus.query.expression.Expression.OP_MOD, rightQueryExpr);
Modified: platform/core/trunk/src/java/org/datanucleus/jdo/query/StringExpressionImpl.java
===================================================================
--- platform/core/trunk/src/java/org/datanucleus/jdo/query/StringExpressionImpl.java 2010-11-12 07:36:40 UTC (rev 11092)
+++ platform/core/trunk/src/java/org/datanucleus/jdo/query/StringExpressionImpl.java 2010-11-12 07:39:50 UTC (rev 11093)
@@ -76,7 +76,7 @@
public CharacterExpression charAt(NumericExpression pos)
{
List<org.datanucleus.query.expression.Expression> args = new ArrayList();
- args.add(pos.getQueryExpression());
+ args.add(((ExpressionImpl)pos).getQueryExpression());
org.datanucleus.query.expression.Expression invokeExpr = new InvokeExpression(queryExpr, "charAt", args);
return new CharacterExpressionImpl(invokeExpr);
}
@@ -98,7 +98,7 @@
public BooleanExpression endsWith(StringExpression expr)
{
List<org.datanucleus.query.expression.Expression> args = new ArrayList();
- args.add(expr.getQueryExpression());
+ args.add(((ExpressionImpl)expr).getQueryExpression());
org.datanucleus.query.expression.Expression invokeExpr = new InvokeExpression(queryExpr, "endsWith", args);
return new BooleanExpressionImpl(invokeExpr);
}
@@ -120,7 +120,7 @@
public BooleanExpression equalsIgnoreCase(StringExpression expr)
{
List<org.datanucleus.query.expression.Expression> args = new ArrayList();
- args.add(expr.getQueryExpression());
+ args.add(((ExpressionImpl)expr).getQueryExpression());
org.datanucleus.query.expression.Expression invokeExpr = new InvokeExpression(queryExpr, "equalsIgnoreCase", args);
return new BooleanExpressionImpl(invokeExpr);
}
@@ -144,7 +144,7 @@
{
List<org.datanucleus.query.expression.Expression> args = new ArrayList();
args.add(new Literal(str));
- args.add(pos.getQueryExpression());
+ args.add(((ExpressionImpl)pos).getQueryExpression());
org.datanucleus.query.expression.Expression invokeExpr = new InvokeExpression(queryExpr, "indexOf", args);
return new NumericExpressionImpl<Integer>(invokeExpr);
}
@@ -166,7 +166,7 @@
public NumericExpression indexOf(StringExpression expr, int pos)
{
List<org.datanucleus.query.expression.Expression> args = new ArrayList();
- args.add(expr.getQueryExpression());
+ args.add(((ExpressionImpl)expr).getQueryExpression());
args.add(new Literal(pos));
org.datanucleus.query.expression.Expression invokeExpr = new InvokeExpression(queryExpr, "indexOf", args);
return new NumericExpressionImpl<Integer>(invokeExpr);
@@ -178,8 +178,8 @@
public NumericExpression indexOf(StringExpression expr, NumericExpression pos)
{
List<org.datanucleus.query.expression.Expression> args = new ArrayList();
- args.add(expr.getQueryExpression());
- args.add(pos.getQueryExpression());
+ args.add(((ExpressionImpl)expr).getQueryExpression());
+ args.add(((ExpressionImpl)pos).getQueryExpression());
org.datanucleus.query.expression.Expression invokeExpr = new InvokeExpression(queryExpr, "indexOf", args);
return new NumericExpressionImpl<Integer>(invokeExpr);
}
@@ -190,7 +190,7 @@
public NumericExpression indexOf(StringExpression expr)
{
List<org.datanucleus.query.expression.Expression> args = new ArrayList();
- args.add(expr.getQueryExpression());
+ args.add(((ExpressionImpl)expr).getQueryExpression());
org.datanucleus.query.expression.Expression invokeExpr = new InvokeExpression(queryExpr, "indexOf", args);
return new NumericExpressionImpl<Integer>(invokeExpr);
}
@@ -221,7 +221,7 @@
public BooleanExpression startsWith(StringExpression expr)
{
List<org.datanucleus.query.expression.Expression> args = new ArrayList();
- args.add(expr.getQueryExpression());
+ args.add(((ExpressionImpl)expr).getQueryExpression());
org.datanucleus.query.expression.Expression invokeExpr = new InvokeExpression(queryExpr, "startsWith", args);
return new BooleanExpressionImpl(invokeExpr);
}
@@ -255,8 +255,8 @@
public StringExpression substring(NumericExpression startPos, NumericExpression endPos)
{
List<org.datanucleus.query.expression.Expression> args = new ArrayList();
- args.add(startPos.getQueryExpression());
- args.add(endPos.getQueryExpression());
+ args.add(((ExpressionImpl)startPos).getQueryExpression());
+ args.add(((ExpressionImpl)endPos).getQueryExpression());
org.datanucleus.query.expression.Expression invokeExpr = new InvokeExpression(queryExpr, "substring", args);
return new StringExpressionImpl(invokeExpr);
}
@@ -267,7 +267,7 @@
public StringExpression substring(NumericExpression pos)
{
List<org.datanucleus.query.expression.Expression> args = new ArrayList();
- args.add(pos.getQueryExpression());
+ args.add(((ExpressionImpl)pos).getQueryExpression());
org.datanucleus.query.expression.Expression invokeExpr = new InvokeExpression(queryExpr, "substring", args);
return new StringExpressionImpl(invokeExpr);
}
Modified: platform/core/trunk/src/java/org/datanucleus/query/typesafe/Expression.java
===================================================================
--- platform/core/trunk/src/java/org/datanucleus/query/typesafe/Expression.java 2010-11-12 07:36:40 UTC (rev 11092)
+++ platform/core/trunk/src/java/org/datanucleus/query/typesafe/Expression.java 2010-11-12 07:39:50 UTC (rev 11093)
@@ -83,10 +83,4 @@
* @return Whether it is a variable
*/
boolean isVariable();
-
- /**
- * Accessor for the underlying (generic) query expression.
- * @return The generic query expression
- */
- org.datanucleus.query.expression.Expression getQueryExpression();
}
\ No newline at end of file
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|