in src/main/scala/com/gu/zuora/fullexport/Impl.scala [230:240]
def writeHeaderOnceAndAdvanceIterator(objectName: String, lines: Iterator[String]): Unit = {
lines.nextOption() match { // WARNING: It is important to advance the iterator otherwise multiple header rows might be written
case Some(header) if file"$scratchDir/$objectName-header.csv".exists =>
// do nothing
case Some(header) =>
file"$scratchDir/$objectName-header.csv".appendLines(s"IsDeleted,$header")
file"$outputDir/$objectName.csv".appendLines(s"IsDeleted,$header")
case None =>
Assert(s"Downloaded $objectName CSV file should have at least a header")
}
}