Interface ExportStreamerInterface
- All Known Implementing Classes:
CsvExportStreamer,ExcelFastexcelExportStreamer,ExcelPoiBasedStreamingExportStreamer,JsonExportStreamer,ListOfMapsExportStreamer,TsvExportStreamer
public interface ExportStreamerInterface
Interface for various export formats to implement.
-
Method Summary
Modifier and TypeMethodDescriptionvoidaddRecords(List<QRecord> recordList) Called as records flow into the pipe.default voidaddTotalsRow(QRecord record) voidfinish()Called after all sheets are complete.default voidpreRun(ReportDestination reportDestination, List<QReportView> views) Called once, before any sheets are actually being produced.default voidsetDisplayFormats(Map<String, String> displayFormats) default voidsetExportStyleCustomizer(ExportStyleCustomizerInterface exportStyleCustomizer) voidstart(ExportInput exportInput, List<QFieldMetaData> fields, String label, QReportView view) Called once per sheet, before any rows are available.
-
Method Details
-
preRun
default void preRun(ReportDestination reportDestination, List<QReportView> views) throws QReportingException Called once, before any sheets are actually being produced.- Throws:
QReportingException
-
setDisplayFormats
-
setExportStyleCustomizer
-
start
void start(ExportInput exportInput, List<QFieldMetaData> fields, String label, QReportView view) throws QReportingException Called once per sheet, before any rows are available. Meant to write a header, for example. If multiple sheets are being created, there is no separate end-sheet call. Rather, a new one will just get started...- Throws:
QReportingException
-
addRecords
Called as records flow into the pipe.- Throws:
QReportingException
-
addTotalsRow
- Throws:
QReportingException
-
finish
Called after all sheets are complete. Meant to do a final write, or close resources, for example.- Throws:
QReportingException
-