gernotbelger@9145: /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde
gernotbelger@9145: * Software engineering by Intevation GmbH
gernotbelger@9145: *
gernotbelger@9145: * This file is Free Software under the GNU AGPL (>=v3)
gernotbelger@9145: * and comes with ABSOLUTELY NO WARRANTY! Check out the
gernotbelger@9145: * documentation coming with Dive4Elements River for details.
gernotbelger@9145: */
gernotbelger@9145:
gernotbelger@9145: package org.dive4elements.river.artifacts.sinfo.flood_duration;
gernotbelger@9145:
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@9145: import org.dive4elements.river.artifacts.common.JasperDesigner;
gernotbelger@9145: import org.dive4elements.river.artifacts.common.MetaAndTableJRDataSource;
gernotbelger@9145:
gernotbelger@9145: /**
gernotbelger@9145: * Generates different output formats (csv, pdf) of data that resulted from a flow depths min/max computation.
gernotbelger@9145: *
gernotbelger@9145: * @author Ingo Weinzierl
gernotbelger@9145: * @author Gernot Belger
gernotbelger@9145: */
gernotbelger@9145: // REMARK: must be public because its registered in generators.xml
gernotbelger@9195:
gernotbelger@9195: public class FloodDurationExporter extends AbstractCommonExporter {
gernotbelger@9145:
gernotbelger@9145: @Override
gernotbelger@9195: protected void writeCSVGlobalMetadata(final ExportContextCSV exportContext, final FloodDurationCalculationResults results) {
gernotbelger@9195: exportContext.writeCSVGlobalMetadataDefaults();
gernotbelger@9145: }
gernotbelger@9145:
mschaefer@9176: @Override
gernotbelger@9195: protected void writePDFGlobalMetadata(final ExportContextPDF exportContext, final MetaAndTableJRDataSource source) {
gernotbelger@9195: exportContext.addJRMetaDataUSINFO(source);
gernotbelger@9195: }
mschaefer@9176:
gernotbelger@9195: @Override
gernotbelger@9195: protected void configureDesign(final FloodDurationCalculationResult result, final JasperDesigner design) {
gernotbelger@9195: if (result instanceof FloodDurationCalculationResult) { // redundant, but type might change
gernotbelger@9195: design.removeColumn("wOpt");
gernotbelger@9195: design.removeColumn("qOpt");
gernotbelger@9195: design.removeColumn("bezOpt");
gernotbelger@9195: design.removeColumn("durOpt");
mschaefer@9176: }
mschaefer@9176: }
gernotbelger@9145: }