Mercurial > dive4elements > river
diff artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/InundationDurationCalculationResult.java @ 9190:0633f963c5be
uinfo.inundationduration workflow
author | gernotbelger |
---|---|
date | Thu, 28 Jun 2018 15:10:04 +0200 |
parents | 23945061daec |
children | 787fc085459b |
line wrap: on
line diff
--- a/artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/InundationDurationCalculationResult.java Thu Jun 28 14:11:12 2018 +0200 +++ b/artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/inundationduration/InundationDurationCalculationResult.java Thu Jun 28 15:10:04 2018 +0200 @@ -9,95 +9,48 @@ */ package org.dive4elements.river.artifacts.uinfo.inundationduration; +import java.io.Serializable; import java.util.ArrayList; -import java.util.Collection; - -import org.dive4elements.river.artifacts.common.AbstractCalculationExportableResult; -import org.dive4elements.river.artifacts.common.ExportContextCSV; -import org.dive4elements.river.artifacts.common.GeneralResultType; -import org.dive4elements.river.artifacts.common.MetaAndTableJRDataSource; -import org.dive4elements.river.artifacts.common.ResultRow; -import org.dive4elements.river.artifacts.sinfo.common.SInfoResultType; -import org.dive4elements.river.artifacts.sinfo.util.RiverInfo; -import org.dive4elements.river.artifacts.sinfo.util.WstInfo; +import java.util.List; /** * @author Domenico Nardi Tironi */ -final class InundationDurationCalculationResult extends AbstractCalculationExportableResult<InundationDurationCalculationResults> { +final class InundationDurationCalculationResult implements Serializable { private static final long serialVersionUID = 1L; - private static final String JASPER_FILE = "/jasper/templates/uinfo.inundationduration.jrxml"; - - public InundationDurationCalculationResult(final String label, final WstInfo wst, final Collection<ResultRow> rows) { - super(label, rows); - } - - @Override - public void writeCSVHeader(final ExportContextCSV exportContextCSV, final InundationDurationCalculationResults results, final RiverInfo river) { - - final Collection<String> header = new ArrayList<>(11); - - header.add(exportContextCSV.formatCsvHeader(GeneralResultType.station)); - header.add(exportContextCSV.msgUnitCSV(SInfoResultType.flowdepth)); - header.add(exportContextCSV.msgUnitCSV(SInfoResultType.waterlevel, river.getWstUnit())); - header.add(exportContextCSV.msgUnitCSV(SInfoResultType.discharge)); - header.add(exportContextCSV.formatCsvHeader(SInfoResultType.waterlevelLabel)); - header.add(exportContextCSV.formatCsvHeader(SInfoResultType.gaugeLabel)); - header.add(exportContextCSV.msgUnitCSV(SInfoResultType.meanBedHeight, river.getWstUnit())); - header.add(exportContextCSV.formatCsvHeader(SInfoResultType.soundingLabel)); - header.add(exportContextCSV.formatCsvHeader(SInfoResultType.location)); + private final List<WmsLayer> layers = new ArrayList<>(); - exportContextCSV.writeCSVLine(header.toArray(new String[header.size()])); + public final static class WmsLayer { + private final String label; + private final String url; + private final boolean showLayerLink; - } + public WmsLayer(final String label, final String url, final boolean showLayerLink) { + this.label = label; + this.url = url; + this.showLayerLink = showLayerLink; + } - @Override - protected void writeCSVResultMetadata(final ExportContextCSV exportContextCSV, final InundationDurationCalculationResults results) { - // no Result metadata so far + public String getLabel() { + return this.label; + } + + public String getUrl() { + return this.url; + } + + public boolean isShowLayerLink() { + return this.showLayerLink; + } } - @Override - protected String[] formatCSVRow(final ExportContextCSV exportContextCSV, final InundationDurationCalculationResults results, final ResultRow row) { - return formatRow(exportContextCSV, results, row); - } - - @Override - protected String[] formatPDFRow(final ExportContextCSV exportContextPDF, final InundationDurationCalculationResults results, final ResultRow row) { - - return formatRow(exportContextPDF, results, row); - } - - @Override - protected String getJasperFile() { - - return JASPER_FILE; + public void addLayer(final String label, final String url, final boolean showLayerLink) { + this.layers.add(new WmsLayer(label, url, showLayerLink)); } - @Override - protected void addJRTableHeader(final ExportContextCSV exportContextPDF, final MetaAndTableJRDataSource source, - final InundationDurationCalculationResults results) { - - exportContextPDF.addJRMetadata(source, "station_header", GeneralResultType.station); + public List<WmsLayer> getLayers() { + return this.layers; } - - protected String[] formatRow(final ExportContextCSV context, final InundationDurationCalculationResults results, final ResultRow row) { - - final Collection<String> lines = new ArrayList<>(11); - - lines.add(context.formatRowValue(row, GeneralResultType.station)); - lines.add(context.formatRowValue(row, SInfoResultType.flowdepth)); - - lines.add(context.formatRowValue(row, SInfoResultType.waterlevel)); - lines.add(context.formatRowValue(row, SInfoResultType.discharge)); - lines.add(context.formatRowValue(row, SInfoResultType.waterlevelLabel)); - lines.add(context.formatRowValue(row, SInfoResultType.gaugeLabel)); - lines.add(context.formatRowValue(row, SInfoResultType.meanBedHeight)); - lines.add(context.formatRowValue(row, SInfoResultType.soundingLabel)); - lines.add(context.formatRowValue(row, SInfoResultType.location)); - - return lines.toArray(new String[lines.size()]); - } - } \ No newline at end of file