@Override
protected boolean performExport( final MasterReport report, final OutputStream outputStream ) {
try {
final FlowExcelOutputProcessor target =
new FlowExcelOutputProcessor( report.getConfiguration(), outputStream, report.getResourceManager() );
final FlowReportProcessor reportProcessor = new FlowReportProcessor( report, target );
if ( isDefinedInput( AbstractJFreeReportComponent.WORKBOOK_PARAM ) ) {
try {
final InputStream inputStream = getInputStream( AbstractJFreeReportComponent.WORKBOOK_PARAM );
target.setTemplateInputStream( inputStream );
} catch ( Exception e ) {
error(
Messages.getInstance().getString( "JFreeReportExcelComponent.ERROR_0037_ERROR_READING_REPORT_INPUT" ), e ); //$NON-NLS-1$
return false;
}
}
final int yieldRate = getYieldRate();
if ( yieldRate > 0 ) {
reportProcessor.addReportProgressListener( new YieldReportListener( yieldRate ) );
}
reportProcessor.processReport();
reportProcessor.close();
outputStream.flush();
close();
return true;
} catch ( ReportProcessingException e ) {
return false;