Extracted static method.

This commit is contained in:
Henrik Johansson 2012-10-26 16:33:58 +02:00 committed by Lukas Eder
parent c7936e68bb
commit 9afc994ca9

View File

@ -282,27 +282,7 @@ class DefaultBindContext extends AbstractBindContext {
else if (type.isArray()) {
switch (dialect) {
case POSTGRES: {
StringBuilder sb = new StringBuilder();
sb.append("{");
String separator = "";
for (Object o : (Object[]) value) {
sb.append(separator);
// [#753] null must be set as a literal
if (o == null) {
sb.append(o);
}
else {
sb.append("\"");
sb.append(o.toString().replaceAll("\"", "\"\""));
sb.append("\"");
}
separator = ", ";
}
sb.append("}");
StringBuilder sb = postgresArrayString(value);
stmt.setString(nextIndex(), sb.toString());
break;
}
@ -338,4 +318,29 @@ class DefaultBindContext extends AbstractBindContext {
return this;
}
/* package private */ static StringBuilder postgresArrayString(Object value) {
StringBuilder sb = new StringBuilder();
sb.append("{");
String separator = "";
for (Object o : (Object[]) value) {
sb.append(separator);
// [#753] null must be set as a literal
if (o == null) {
sb.append(o);
}
else {
sb.append("\"");
sb.append(o.toString().replaceAll("\"", "\"\""));
sb.append("\"");
}
separator = ", ";
}
sb.append("}");
return sb;
}
}