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@9322: exportContext.addJRMetaDataForModules(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: }