package org.nightlabs.jfire.reporting.ui.layout; import java.io.File; import java.net.MalformedURLException; import java.net.URL; import org.nightlabs.jfire.reporting.layout.render.RenderedReportLayout; import org.nightlabs.jfire.reporting.ui.viewer.RenderedReportHandler; /** * A {@link PreparedRenderedReportLayout} references * is created by a {@link RenderedReportHandler} and * references a file that represents the entry for the * given rendered report layout ready for use (unpacked and stored on disk). * * @author Alexander Bieber <!-- alex [AT] nightlabs [DOT] de --> * */ public class PreparedRenderedReportLayout { private File entryFile; private RenderedReportLayout renderedReportLayout; /** * */ public PreparedRenderedReportLayout() { } /** * Create a new {@link PreparedRenderedReportLayout}. * @param layout The prepared report layout. * @param entryFile The entry file of the report layout. */ public PreparedRenderedReportLayout(RenderedReportLayout layout, File entryFile) { this.renderedReportLayout = layout; this.entryFile = entryFile; } /** * @return the entryFile */ public File getEntryFile() { return entryFile; } /** * @param entryFile the entryFile to set */ public void setEntryFile(File entryFile) { this.entryFile = entryFile; } /** * @return the renderedReportLayout */ public RenderedReportLayout getRenderedReportLayout() { return renderedReportLayout; } /** * @param renderedReportLayout the renderedReportLayout to set */ public void setRenderedReportLayout(RenderedReportLayout renderedReportLayout) { this.renderedReportLayout = renderedReportLayout; } /** * Get the {@link #entryFile} of this * prepared layout as {@link URL}. * * @return The entry file as {@link URL}. */ public URL getEntryFileAsURL() { URL fileURL = null; try { fileURL = entryFile.toURI().toURL(); } catch (MalformedURLException e) { throw new RuntimeException(e); } return fileURL; } }