You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openjpa.apache.org by fa...@apache.org on 2009/05/14 20:45:34 UTC
svn commit: r774877 -
/openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/Expressions.java
Author: faywang
Date: Thu May 14 18:45:33 2009
New Revision: 774877
URL: http://svn.apache.org/viewvc?rev=774877&view=rev
Log:
OPENJPA-1013: case/simple case expression support
Modified:
openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/Expressions.java
Modified: openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/Expressions.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/Expressions.java?rev=774877&r1=774876&r2=774877&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/Expressions.java (original)
+++ openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/criteria/Expressions.java Thu May 14 18:45:33 2009
@@ -820,14 +820,13 @@
org.apache.openjpa.kernel.exps.Expression expr =
((Expressions.BinaryLogicalExpression)whens.get(i)).
toKernelExpression(factory, model);
- Value action = ((ExpressionImpl<?>)thens.get(i)).
- toValue(factory, model);
+ Value action = Expressions.toValue(
+ (ExpressionImpl<?>)thens.get(i), factory, model);
exps[i] = factory.whenCondition(expr, action);
}
- Value other = ((ExpressionImpl<?>)otherwise).
- toValue(factory, model);
-
+ Value other = Expressions.toValue(
+ (ExpressionImpl<?>)otherwise, factory, model);
return factory.generalCaseExpression(exps, other);
}
}
@@ -895,13 +894,13 @@
org.apache.openjpa.kernel.exps.Literal val = null;
//TODO: Boolean literal, String literal
val = factory.newLiteral(whens.get(i), Literal.TYPE_NUMBER);
- Value action = ((ExpressionImpl<?>)thens.get(i)).
- toValue(factory, model);
+ Value action = Expressions.toValue(
+ (ExpressionImpl<?>)thens.get(i), factory, model);
exps[i] = factory.whenScalar(val, action);
}
- Value other = ((ExpressionImpl<?>)otherwise).
- toValue(factory, model);
+ Value other = Expressions.toValue(
+ (ExpressionImpl<?>)otherwise, factory, model);
return factory.simpleCaseExpression(caseOperandExpr, exps, other);
}
}