org.sfm.csv.parser.StringArrayConsumer Maven / Gradle / Ivy
package org.sfm.csv.parser;
import java.util.ArrayList;
import java.util.List;
import org.sfm.csv.impl.cellreader.StringCellValueReader;
import org.sfm.utils.RowHandler;
public final class StringArrayConsumer> implements CellConsumer {
private final RH handler;
private final List currentRow = new ArrayList(10);
public StringArrayConsumer(RH handler) {
this.handler = handler;
}
@Override
public void newCell(char[] chars, int offset, int length) {
String str = StringCellValueReader.readString(chars, offset, length);
currentRow.add(str);
}
@Override
public void endOfRow() {
try {
handler.handle(currentRow.toArray(new String[currentRow.size()]));
currentRow.clear();
} catch (Exception e) {
throw new RuntimeException(e.getMessage(), e);
}
}
public RH handler() {
return handler;
}
@Override
public void end() {
if (!currentRow.isEmpty()) {
endOfRow();
}
}
public static > StringArrayConsumer newInstance(RH handler) {
return new StringArrayConsumer(handler);
}
} © 2015 - 2025 Weber Informatics LLC | Privacy Policy