Skip to content

Commit

Permalink
dev checkin.
Browse files Browse the repository at this point in the history
  • Loading branch information
chenson42 committed Feb 24, 2012
1 parent 895008c commit aad4e08
Showing 1 changed file with 14 additions and 7 deletions.
@@ -1,6 +1,8 @@
package org.jumpmind.symmetric.io.data.reader;

import org.apache.commons.codec.binary.Base64;
import org.apache.commons.lang.StringUtils;
import org.jumpmind.db.model.Column;
import org.jumpmind.db.model.Table;
import org.jumpmind.db.platform.IDatabasePlatform;
import org.jumpmind.db.sql.ISqlReadCursor;
Expand Down Expand Up @@ -71,17 +73,22 @@ protected void startNewCursor() {
StringUtils.isNotBlank(whereClause) ? " where " + whereClause : "");
this.cursor = platform.getSqlTemplate().queryForCursor(sql, new ISqlRowMapper<CsvData>() {
public CsvData mapRow(Row row) {
return new CsvData(DataEventType.INSERT, toPkData(row), toRowData(row));
return new CsvData(DataEventType.INSERT, toStringData(row, table.getPrimaryKeyColumns()), toStringData(row, table.getColumns()));
}
});
}

protected String[] toRowData(Row row) {
return null;
}

protected String[] toPkData(Row row) {
return null;
protected String[] toStringData(Row row, Column[] columns) {
String[] stringValues = new String[columns.length];
for (int i = 0; i < columns.length; i++) {
Object value = row.get(columns[i].getName());
if (value instanceof byte[]) {
stringValues[i] = new String(Base64.encodeBase64((byte[])value));
} else if (value != null) {
stringValues[i] = value.toString();
}
}
return stringValues;
}

public boolean requiresLobsSelectedFromSource() {
Expand Down

0 comments on commit aad4e08

Please sign in to comment.