Interface ExportStreamerInterface
- All Known Implementing Classes:
CsvExportStreamer
,ExcelFastexcelExportStreamer
,ExcelPoiBasedStreamingExportStreamer
,JsonExportStreamer
,ListOfMapsExportStreamer
public interface ExportStreamerInterface
Interface for various export formats to implement.
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addRecords
(List<QRecord> recordList) Called as records flow into the pipe.default void
addTotalsRow
(QRecord record) void
finish()
Called after all sheets are complete.default void
preRun
(ReportDestination reportDestination, List<QReportView> views) Called once, before any sheets are actually being produced.default void
setDisplayFormats
(Map<String, String> displayFormats) default void
setExportStyleCustomizer
(ExportStyleCustomizerInterface exportStyleCustomizer) void
start
(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
-