/** * */ package org.nightlabs.jfire.reporting.ui.viewer; import org.nightlabs.jfire.reporting.layout.render.RenderedReportLayout; import org.nightlabs.jfire.reporting.ui.layout.PreparedRenderedReportLayout; import org.nightlabs.progress.ProgressMonitor; /** * Handles {@link RenderedReportLayout}s that come from the server * as their content is specific to their format. * * @author Alexander Bieber <alex [AT] nightlabs [DOT] de> * */ public interface RenderedReportHandler { /** * Takes the given {@link RenderedReportLayout} and prepares * or unpacks it for viewing or other tasks. * A File referencing the entry of the prepared layout is returned * along with the given report layout. * * @param monitor Monitor to write progress information to * @param layout The layout to be prepared * @return A {@link PreparedRenderedReportLayout} for the given layout referencing the entry file of the prepared layout. */ public PreparedRenderedReportLayout prepareRenderedReportLayout(ProgressMonitor monitor, RenderedReportLayout layout); }