in src/main/java/com/google/cloud/solutions/autotokenize/common/CsvIO.java [463:479]
public void readCsvFile(@Element ReadableFile file, OutputReceiver<CsvRow> outputReceiver)
throws IOException {
var csvParser = buildCsvParser(file, fileCharset(), csvFormat());
var headerMap = HashBiMap.create(firstNonNull(csvParser.getHeaderMap(), Map.of())).inverse();
var csvParserHeadersPresent = (headerMap.size() > 0);
for (var record : csvParser) {
var row =
(csvParserHeadersPresent)
? new CsvRow(record.toMap(), headerMap)
: buildIndexNumberHeaderRow(record);
outputReceiver.output(row);
}
}