gernotbelger@8951: /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde
gernotbelger@8951: * Software engineering by Intevation GmbH
gernotbelger@8951: *
gernotbelger@8951: * This file is Free Software under the GNU AGPL (>=v3)
gernotbelger@8951: * and comes with ABSOLUTELY NO WARRANTY! Check out the
gernotbelger@8951: * documentation coming with Dive4Elements River for details.
gernotbelger@8951: */
gernotbelger@8951:
gernotbelger@8951: package org.dive4elements.river.artifacts.sinfo.flowdepthdev;
gernotbelger@8951:
gernotbelger@9150: import org.dive4elements.river.artifacts.common.AbstractCommonExporter;
gernotbelger@9150: import org.dive4elements.river.artifacts.common.ExportContextCSV;
gernotbelger@9195: import org.dive4elements.river.artifacts.common.ExportContextPDF;
gernotbelger@9195: import org.dive4elements.river.artifacts.common.JasperDesigner;
gernotbelger@9006: import org.dive4elements.river.artifacts.common.MetaAndTableJRDataSource;
gernotbelger@8951: import org.dive4elements.river.artifacts.sinfo.common.SInfoResultType;
gernotbelger@8951:
gernotbelger@8951: /**
gernotbelger@8951: * Generates different output formats (csv, pdf) of data that resulted from a flow depths computation.
gernotbelger@8951: *
gernotbelger@8951: * @author Ingo Weinzierl
gernotbelger@8951: * @author Gernot Belger
gernotbelger@8951: */
gernotbelger@8951: // REMARK: must be public because its registered in generators.xml
gernotbelger@9195: public class FlowDepthDevelopmentExporter extends AbstractCommonExporter {
gernotbelger@8951:
gernotbelger@8951: @Override
gernotbelger@9195: protected void writeCSVGlobalMetadata(final ExportContextCSV exportContext, final FlowDepthDevelopmentCalculationResults results) {
gernotbelger@9195: exportContext.writeCSVGlobalMetadataDefaults();
gernotbelger@9150:
gernotbelger@8951: }
gernotbelger@8951:
gernotbelger@8951: @Override
gernotbelger@9195: protected void writePDFGlobalMetadata(final ExportContextPDF exportContext, final MetaAndTableJRDataSource source) {
gernotbelger@9195: exportContext.addJRMetaDataUSINFO(source);
gernotbelger@9195: source.addMetaData("flowdepthdevelopment_header_label", SInfoResultType.flowdepthDevelopment.getCsvHeader(this.context.getMeta()));// (this.context.getMeta()));
gernotbelger@9150:
gernotbelger@9195: }
gernotbelger@9150:
gernotbelger@9195: @Override
gernotbelger@9195: protected void configureDesign(final FlowDepthDevelopmentCalculationResult result, final JasperDesigner design) {
gernotbelger@9195: if (result instanceof FlowDepthDevelopmentCalculationResult) { // redundant, but type might change
gernotbelger@9195: design.getSource().addMetaData("flowdepthdevelopment", result.getLabel()); // globalMeta? wrong place. only one result expected, so it works
gernotbelger@9006: }
gernotbelger@9006: }
gernotbelger@8951: }