[#2072] Let UDTRecordImpl and ArrayRecordImpl.toString() return a valid

constructor expression
This commit is contained in:
Lukas Eder 2013-01-02 10:52:50 +01:00
parent cf3425f545
commit bdf031af56
2 changed files with 35 additions and 1 deletions

View File

@ -196,7 +196,21 @@ public class ArrayRecordImpl<T> extends AbstractStore implements ArrayRecord<T>
@Override
public String toString() {
return getClass().getSimpleName() + " [values=" + getList() + "]";
StringBuilder result = new StringBuilder();
String separator = "";
result.append(getName());
result.append("(");
for (T t : array) {
result.append(separator);
result.append(t);
separator = ", ";
}
result.append(")");
return result.toString();
}
@Override

View File

@ -111,4 +111,24 @@ public class UDTRecordImpl<R extends UDTRecord<R>> extends AbstractRecord implem
private final <T> void setValue(SQLOutput stream, Field<T> field) throws SQLException {
Utils.writeToSQLOutput(stream, field, getValue(field));
}
@Override
public String toString() {
StringBuilder result = new StringBuilder();
String separator = "";
result.append(create().render(getUDT()));
result.append("(");
for (Object o : intoArray()) {
result.append(separator);
result.append(o);
separator = ", ";
}
result.append(")");
return result.toString();
}
}