You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jaxme-dev@ws.apache.org by jo...@apache.org on 2003/12/18 10:11:24 UTC
cvs commit: ws-jaxme/src/js/org/apache/ws/jaxme/sqls/impl SQLGeneratorImpl.java
jochen 2003/12/18 01:11:24
Modified: src/js/org/apache/ws/jaxme/sqls/impl SQLGeneratorImpl.java
Log:
Fixed generation of a IN (...) clause.
Revision Changes Path
1.9 +9 -9 ws-jaxme/src/js/org/apache/ws/jaxme/sqls/impl/SQLGeneratorImpl.java
Index: SQLGeneratorImpl.java
===================================================================
RCS file: /home/cvs/ws-jaxme/src/js/org/apache/ws/jaxme/sqls/impl/SQLGeneratorImpl.java,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- SQLGeneratorImpl.java 17 Dec 2003 12:36:27 -0000 1.8
+++ SQLGeneratorImpl.java 18 Dec 2003 09:11:24 -0000 1.9
@@ -66,7 +66,6 @@
import org.apache.ws.jaxme.sqls.ForeignKey;
import org.apache.ws.jaxme.sqls.Function;
import org.apache.ws.jaxme.sqls.Index;
-import org.apache.ws.jaxme.sqls.Parts;
import org.apache.ws.jaxme.sqls.RawSQLCode;
import org.apache.ws.jaxme.sqls.SQLGenerator;
import org.apache.ws.jaxme.sqls.InsertStatement;
@@ -578,13 +577,13 @@
return "'" + s + "'";
}
- protected String getParts(SelectStatementMetaData pData, Parts pParts) {
+ protected String getParts(SelectStatementMetaData pData, Iterator pParts) {
StringBuffer sb = new StringBuffer();
- for (Iterator iter = pParts.getParts(); iter.hasNext(); ) {
+ while (pParts.hasNext()) {
if (sb.length() > 0) {
sb.append(", ");
}
- sb.append(getBooleanConstraintPart(pData, iter.next()));
+ sb.append(getBooleanConstraintPart(pData, pParts.next()));
}
return sb.toString();
}
@@ -602,7 +601,7 @@
return ((RawSQLCode) o).getRawSQL();
} else if (o instanceof Function) {
Function f = (Function) o;
- return f.getName() + '(' + getParts(pData, f) + ')';
+ return f.getName() + '(' + getParts(pData, f.getParts()) + ')';
} else {
throw new IllegalArgumentException("Invalid part of a boolean constraint: " + o.getClass().getName());
}
@@ -631,14 +630,15 @@
protected String getBooleanConstraint(SelectStatementMetaData pData,
BooleanConstraint pConstraint) {
BooleanConstraint.Type type = pConstraint.getType();
- if (BooleanConstraint.Type.IN.equals(type)) {
- return "IN (" + getParts(pData, pConstraint) + ')';
- }
- StringBuffer result = new StringBuffer();
Iterator parts = pConstraint.getParts();
if (!parts.hasNext()) {
throw new NullPointerException("A boolean constraint must have its parts set.");
}
+ if (BooleanConstraint.Type.IN.equals(type)) {
+ Object o = parts.next();
+ return getBooleanConstraintPart(pData, o) + " IN (" + getParts(pData, parts) + ')';
+ }
+ StringBuffer result = new StringBuffer();
int expected;
if (BooleanConstraint.Type.EXISTS.equals(type)) {
SelectStatement selectStatement = (SelectStatement) parts.next();
---------------------------------------------------------------------
To unsubscribe, e-mail: jaxme-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: jaxme-dev-help@ws.apache.org