Skip to content

Commit

Permalink
restSQL patch 0.8.6. Fixes #32, #34, #35.
Browse files Browse the repository at this point in the history
  • Loading branch information
restsql committed Mar 6, 2013
1 parent 697756e commit 08e6831
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 9 deletions.
2 changes: 1 addition & 1 deletion build.properties
@@ -1,5 +1,5 @@
# restsql build.properties
build.version=0.8.5
build.version=0.8.6

compile.classpath=WebContent/WEB-INF/lib/servlet-api.jar;WebContent/WEB-INF/lib/jersey-server-1.5.jar;WebContent/WEB-INF/lib/jsr311-api-1.1.1.jar;WebContent/WEB-INF/lib/commons-logging-1.1.1.jar;WebContent/WEB-INF/lib/commons-lang-2.6.jar;WebContent/WEB-INF/lib/postgresql-9.0-801.jdbc4.jar;WebContent/WEB-INF/lib/json_simple-1.1.jar

Expand Down
14 changes: 6 additions & 8 deletions src/org/restsql/core/impl/SqlBuilderImpl.java
Expand Up @@ -21,8 +21,6 @@
*
* @author Mark Sawers
* @todo optimize - save sql or change to prepared statement?
* @todo handle parameter string escaping
* @todo handle wildcard escaping
*/
public class SqlBuilderImpl implements SqlBuilder {
private static final int DEFAULT_DELETE_SIZE = 100;
Expand Down Expand Up @@ -149,7 +147,7 @@ private void buildDeleteSqlPart(final SqlResourceMetaData metaData,
} else {
sql.getClause().append(" AND ");
}
setNameValue(Request.Type.DELETE, metaData, column, nameValuePair, sql.getClause());
setNameValue(Request.Type.DELETE, metaData, column, nameValuePair, true, sql.getClause());
}
}
}
Expand Down Expand Up @@ -257,7 +255,7 @@ private void buildSelectSql(final SqlResourceMetaData metaData, final List<NameV
}
if (!column.isNonqueriedForeignKey()) {
validParamFound = true;
setNameValue(Request.Type.SELECT, metaData, column, param, sql.getClause());
setNameValue(Request.Type.SELECT, metaData, column, param, true, sql.getClause());
}
}
}
Expand Down Expand Up @@ -312,7 +310,7 @@ private Map<String, SqlStruct> buildUpdateSql(final SqlResourceMetaData metaData
}

validParamFound = true;
setNameValue(request.getType(), metaData, column, param, sql.getMain());
setNameValue(request.getType(), metaData, column, param, false, sql.getMain());
}
}
}
Expand All @@ -339,7 +337,7 @@ private Map<String, SqlStruct> buildUpdateSql(final SqlResourceMetaData metaData
sql.getClause().append(" AND ");
}
validParamFound = true;
setNameValue(request.getType(), metaData, column, resId, sql.getClause());
setNameValue(request.getType(), metaData, column, resId, true, sql.getClause());
}
}
sql.appendClauseToMain();
Expand Down Expand Up @@ -391,7 +389,7 @@ private List<TableMetaData> getWriteTables(final Type requestType, final SqlReso
* @throws InvalidRequestException if unexpected operator is found (Escaped is only for internal use)
*/
private void setNameValue(final Type requestType, final SqlResourceMetaData metaData,
final ColumnMetaData column, final NameValuePair param, final StringBuffer sql)
final ColumnMetaData column, final NameValuePair param, boolean columnIsSelector, final StringBuffer sql)
throws InvalidRequestException {
// Append the name
if (requestType == Request.Type.SELECT) {
Expand All @@ -401,7 +399,7 @@ private void setNameValue(final Type requestType, final SqlResourceMetaData meta
}

// Append the operator
if (param.getOperator() == Operator.Equals && containsWildcard(param.getValue())) {
if (columnIsSelector && param.getOperator() == Operator.Equals && containsWildcard(param.getValue())) {
sql.append(" LIKE ");
} else {
switch (param.getOperator()) {
Expand Down

0 comments on commit 08e6831

Please sign in to comment.