Mercurial > dive4elements > river
comparison artifacts/src/main/java/org/dive4elements/river/artifacts/sinfo/flowdepth/FlowDepthExporter.java @ 9006:7134a4c7d1b6
U-Info S-Info general work
author | gernotbelger |
---|---|
date | Tue, 17 Apr 2018 13:20:25 +0200 |
parents | d5802f22e4f5 |
children | 23945061daec |
comparison
equal
deleted
inserted
replaced
9005:460fcc128794 | 9006:7134a4c7d1b6 |
---|---|
6 * documentation coming with Dive4Elements River for details. | 6 * documentation coming with Dive4Elements River for details. |
7 */ | 7 */ |
8 | 8 |
9 package org.dive4elements.river.artifacts.sinfo.flowdepth; | 9 package org.dive4elements.river.artifacts.sinfo.flowdepth; |
10 | 10 |
11 import java.io.OutputStream; | |
11 import java.util.ArrayList; | 12 import java.util.ArrayList; |
12 import java.util.Collection; | 13 import java.util.Collection; |
13 | 14 |
14 import org.apache.log4j.Logger; | 15 import org.apache.log4j.Logger; |
15 import org.dive4elements.river.artifacts.common.GeneralResultType; | 16 import org.dive4elements.river.artifacts.common.GeneralResultType; |
17 import org.dive4elements.river.artifacts.common.JasperDesigner; | |
18 import org.dive4elements.river.artifacts.common.JasperReporter; | |
19 import org.dive4elements.river.artifacts.common.MetaAndTableJRDataSource; | |
16 import org.dive4elements.river.artifacts.common.ResultRow; | 20 import org.dive4elements.river.artifacts.common.ResultRow; |
17 import org.dive4elements.river.artifacts.sinfo.common.AbstractSInfoExporter; | 21 import org.dive4elements.river.artifacts.sinfo.common.AbstractSInfoExporter; |
18 import org.dive4elements.river.artifacts.sinfo.common.SInfoResultType; | 22 import org.dive4elements.river.artifacts.sinfo.common.SInfoResultType; |
19 import org.dive4elements.river.artifacts.sinfo.util.BedHeightInfo; | 23 import org.dive4elements.river.artifacts.sinfo.util.BedHeightInfo; |
20 import org.dive4elements.river.artifacts.sinfo.util.MetaAndTableJRDataSource; | |
21 import org.dive4elements.river.artifacts.sinfo.util.RiverInfo; | 24 import org.dive4elements.river.artifacts.sinfo.util.RiverInfo; |
22 import org.dive4elements.river.artifacts.sinfo.util.WstInfo; | 25 import org.dive4elements.river.artifacts.sinfo.util.WstInfo; |
23 | 26 |
24 import au.com.bytecode.opencsv.CSVWriter; | 27 import au.com.bytecode.opencsv.CSVWriter; |
28 import net.sf.jasperreports.engine.JRException; | |
25 | 29 |
26 /** | 30 /** |
27 * Generates different output formats (csv, pdf) of data that resulted from a flow depths min/max computation. | 31 * Generates different output formats (csv, pdf) of data that resulted from a flow depths min/max computation. |
28 * | 32 * |
29 * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a> | 33 * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a> |
56 | 60 |
57 writer.writeNext(new String[] { "" }); // break line | 61 writer.writeNext(new String[] { "" }); // break line |
58 | 62 |
59 final WstInfo wst = result.getWst(); | 63 final WstInfo wst = result.getWst(); |
60 super.writeCSVWaterlevelMetadata(writer, wst); | 64 super.writeCSVWaterlevelMetadata(writer, wst); |
65 | |
66 writer.writeNext(new String[] { "" }); // break line | |
61 | 67 |
62 } | 68 } |
63 | 69 |
64 /** | 70 /** |
65 * Write the header, with different headings depending on whether at a | 71 * Write the header, with different headings depending on whether at a |
123 | 129 |
124 return lines.toArray(new String[lines.size()]); | 130 return lines.toArray(new String[lines.size()]); |
125 } | 131 } |
126 | 132 |
127 @Override | 133 @Override |
128 protected final String getJasperFile() { | 134 protected void writePDF(final OutputStream out) { |
129 return JASPER_FILE; | 135 |
136 try { | |
137 final MetaAndTableJRDataSource source = createJRData(this.data); | |
138 final JasperReporter reporter = new JasperReporter(); | |
139 final JasperDesigner design = reporter.addReport(JASPER_FILE, source); | |
140 | |
141 if (!getData().isUseTkh()) { | |
142 design.removeColumn("tkh"); | |
143 design.removeColumn("flowdepthtkh"); | |
144 } | |
145 reporter.exportPDF(out); | |
146 } | |
147 catch (final JRException je) { | |
148 getLog().warn("Error generating PDF Report!", je); | |
149 } | |
130 } | 150 } |
131 | 151 |
132 @Override | 152 @Override |
133 protected final void addJRMetaData(final MetaAndTableJRDataSource source, final FlowDepthCalculationResults results) { | 153 protected final void addJRMetaData(final MetaAndTableJRDataSource source, final FlowDepthCalculationResults results) { |
134 | 154 |