Author: jgrassel
Date: Thu Sep 13 18:37:15 2012
New Revision: 1384462
URL: http://svn.apache.org/viewvc?rev=1384462&view=rev
Log:
OPENJPA-2149: Revert Changes
Modified:
openjpa/branches/2.1.x/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/kernel/exps/Args.java
openjpa/branches/2.1.x/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/kernel/exps/DatastoreFunction.java
openjpa/branches/2.1.x/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/kernel/exps/UnaryOp.java
Modified:
openjpa/branches/2.1.x/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/kernel/exps/Args.java
URL:
http://svn.apache.org/viewvc/openjpa/branches/2.1.x/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/kernel/exps/Args.java?rev=1384462&r1=1384461&r2=1384462&view=diff
==============================================================================
---
openjpa/branches/2.1.x/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/kernel/exps/Args.java
(original)
+++
openjpa/branches/2.1.x/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/kernel/exps/Args.java
Thu Sep 13 18:37:15 2012
@@ -171,17 +171,11 @@ public class Args
return 0;
}
- public void appendTo(Select sel, ExpContext ctx, ExpState state, SQLBuffer
sql, int index) {
- appendTo(sel, ctx, state, sql, index, null);
- }
-
- public void appendTo(Select sel, ExpContext ctx, ExpState state, SQLBuffer
sql, int index, String operator) {
+ public void appendTo(Select sel, ExpContext ctx, ExpState state,
+ SQLBuffer sql, int index) {
ArgsExpState astate = (ArgsExpState) state;
for (int i = 0; i < _args.length; i++) {
_args[i].appendTo(sel, ctx, astate.states[i], sql, index);
- if( operator != null ) {
- sql.addCastForParam(operator, _args[i]);
- }
if (i < _args.length-1)
sql.append(", ");
}
Modified:
openjpa/branches/2.1.x/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/kernel/exps/DatastoreFunction.java
URL:
http://svn.apache.org/viewvc/openjpa/branches/2.1.x/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/kernel/exps/DatastoreFunction.java?rev=1384462&r1=1384461&r2=1384462&view=diff
==============================================================================
---
openjpa/branches/2.1.x/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/kernel/exps/DatastoreFunction.java
(original)
+++
openjpa/branches/2.1.x/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/kernel/exps/DatastoreFunction.java
Thu Sep 13 18:37:15 2012
@@ -46,12 +46,16 @@ public class DatastoreFunction extends U
public void appendTo(Select sel, ExpContext ctx, ExpState state,
SQLBuffer sql, int index) {
Args args = (Args) getValue();
- if (!ctx.store.getDBDictionary().requiresCastForMathFunctions ||
args.getValues().length == 1) {
+ if (!ctx.store.getDBDictionary().requiresCastForMathFunctions ||
args.getValues().length == 1)
super.appendTo(sel, ctx, state, sql, index);
- } else {
+ else {
sql.append(getOperator());
sql.append("(");
- args.appendTo(sel, ctx, state, sql, 0, getOperator());
+ args.appendTo(sel, ctx, state, sql, 0);
+ Val[] vals = args.getVals();
+ for (int i = 1; i < vals.length; i++) {
+ sql.addCastForParam(getOperator(), vals[i]);
+ }
sql.append(")");
}
}
Modified:
openjpa/branches/2.1.x/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/kernel/exps/UnaryOp.java
URL:
http://svn.apache.org/viewvc/openjpa/branches/2.1.x/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/kernel/exps/UnaryOp.java?rev=1384462&r1=1384461&r2=1384462&view=diff
==============================================================================
---
openjpa/branches/2.1.x/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/kernel/exps/UnaryOp.java
(original)
+++
openjpa/branches/2.1.x/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/kernel/exps/UnaryOp.java
Thu Sep 13 18:37:15 2012
@@ -139,16 +139,7 @@ abstract class UnaryOp
sql.append(getOperator());
sql.append(_noParen ? " " : "(");
_val.appendTo(sel, ctx, state, sql, 0);
-
- // OPENJPA-2149: If _val (Val) is an 'Arg', we need to get the Val[]
- // from it, and the single element it contains because the
- // 'addCastForParam' method gets the 'type' from the Val it receives.
- // In the case where _val is an Arg, when addCastForParam gets the
- // type, it will be getting the type of the Val (an Object) rather
- // the type of the Arg.
- sql.addCastForParam(getOperator(),
- (_val instanceof Args) ? (((Args) _val).getVals())[0]
- : _val);
+ sql.addCastForParam(getOperator(), _val);
if (!_noParen)
sql.append(")");
}