in src/main/java/com/google/cloud/solutions/autotokenize/common/CsvIO.java [580:604]
public abstract Builder<T> transformFunction(
SerializableFunction<T, Iterable<CsvRow>> transformFn);
public abstract Builder<T> fileShards(Integer singleShard);
public abstract CsvWrite<T> build();
}
abstract Builder<T> toBuilder();
}
@AutoValue
public abstract static class CsvSink<T> implements FileIO.Sink<T> {
abstract boolean writeHeaderRow();
abstract CSVFormat csvFormat();
abstract SerializableFunction<T, Iterable<CsvRow>> transformFunction();
private CSVPrinter printer;
private boolean isHeaderWritten = false;
@Override
public void open(WritableByteChannel channel) throws IOException {