Mercurial > dive4elements > river
annotate artifacts/src/main/java/org/dive4elements/river/exports/minfo/BedDifferenceExporter.java @ 8587:07c9ac22f611
(issue1755) Generalise BedQuality result handling
The bedquality calculation now produces a result for each time period
which has BedQualityResultValues for each specific result type.
Formally this was split up in density, porosity and diameter classes
with some bedload diameter classes mixed in for extra fun.
The intent of this commit is to allow more shared code and generic
access patterns to the BedQuality results.
author | Andre Heinecke <andre.heinecke@intevation.de> |
---|---|
date | Wed, 18 Mar 2015 18:42:08 +0100 |
parents | ce325339e9ba |
children | 999b9ab16738 |
rev | line source |
---|---|
6667
84349d440987
BedDifferenceExporter: Added licence header.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
6248
diff
changeset
|
1 /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde |
84349d440987
BedDifferenceExporter: Added licence header.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
6248
diff
changeset
|
2 * Software engineering by Intevation GmbH |
84349d440987
BedDifferenceExporter: Added licence header.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
6248
diff
changeset
|
3 * |
84349d440987
BedDifferenceExporter: Added licence header.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
6248
diff
changeset
|
4 * This file is Free Software under the GNU AGPL (>=v3) |
84349d440987
BedDifferenceExporter: Added licence header.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
6248
diff
changeset
|
5 * and comes with ABSOLUTELY NO WARRANTY! Check out the |
84349d440987
BedDifferenceExporter: Added licence header.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
6248
diff
changeset
|
6 * documentation coming with Dive4Elements River for details. |
84349d440987
BedDifferenceExporter: Added licence header.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
6248
diff
changeset
|
7 */ |
84349d440987
BedDifferenceExporter: Added licence header.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
6248
diff
changeset
|
8 |
6217
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
9 package org.dive4elements.river.exports.minfo; |
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
10 |
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
11 import java.io.IOException; |
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
12 import java.io.OutputStream; |
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
13 import java.text.NumberFormat; |
7913
76b5add4f268
Added diff pair column to CSV export of bed height differences. TODO: same for PDF, adjust client.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7908
diff
changeset
|
14 import java.util.ArrayList; |
6217
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
15 import java.util.List; |
6242
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
16 import java.util.Map; |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
17 import java.util.HashMap; |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
18 import java.util.Locale; |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
19 import java.util.Date; |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
20 import java.text.DateFormat; |
6217
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
21 |
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
22 import org.apache.log4j.Logger; |
6242
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
23 import org.apache.commons.lang.StringUtils; |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
24 |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
25 import net.sf.jasperreports.engine.JasperExportManager; |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
26 import net.sf.jasperreports.engine.JasperFillManager; |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
27 import net.sf.jasperreports.engine.JasperPrint; |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
28 import net.sf.jasperreports.engine.JRException; |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
29 |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
30 import org.dive4elements.artifacts.CallMeta; |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
31 import org.dive4elements.river.artifacts.D4EArtifact; |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
32 import org.dive4elements.river.artifacts.access.BedDifferencesAccess; |
7915
931dffefc3dd
flys/issue1628: Adjusted the PDF export.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7914
diff
changeset
|
33 import org.dive4elements.river.artifacts.access.RiverAccess; |
8584
ce325339e9ba
(issue1754) Add range to W / Bed difference export.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8439
diff
changeset
|
34 import org.dive4elements.river.artifacts.access.RangeAccess; |
6242
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
35 import org.dive4elements.artifacts.common.utils.Config; |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
36 import org.dive4elements.river.artifacts.resources.Resources; |
6217
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
37 import org.dive4elements.river.artifacts.model.CalculationResult; |
7831
b4f806999173
Added new columns for morph active width.
Raimund Renkert <rrenkert@intevation.de>
parents:
7506
diff
changeset
|
38 import org.dive4elements.river.artifacts.model.minfo.BedDiffYearResult; |
6217
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
39 import org.dive4elements.river.artifacts.model.minfo.BedDifferencesResult; |
6242
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
40 import org.dive4elements.river.artifacts.model.minfo.BedDifferenceJRDataSource; |
6217
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
41 import org.dive4elements.river.exports.AbstractExporter; |
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
42 import org.dive4elements.river.utils.Formatter; |
6242
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
43 |
6217
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
44 import au.com.bytecode.opencsv.CSVWriter; |
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
45 |
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
46 public class BedDifferenceExporter |
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
47 extends AbstractExporter |
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
48 { |
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
49 |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7979
diff
changeset
|
50 /** Private log. */ |
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7979
diff
changeset
|
51 private static Logger log = |
6217
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
52 Logger.getLogger(BedDifferenceExporter.class); |
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
53 |
6242
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
54 private static final String CSV_HEADER_KM = |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
55 "export.minfo.beddifference.km"; |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
56 |
6217
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
57 private static final String CSV_HEADER_DIFF = |
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
58 "export.minfo.beddifference.diff"; |
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
59 |
7913
76b5add4f268
Added diff pair column to CSV export of bed height differences. TODO: same for PDF, adjust client.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7908
diff
changeset
|
60 private static final String CSV_HEADER_DIFF_PAIR = |
76b5add4f268
Added diff pair column to CSV export of bed height differences. TODO: same for PDF, adjust client.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7908
diff
changeset
|
61 "export.minfo.beddifference.diff.pair"; |
76b5add4f268
Added diff pair column to CSV export of bed height differences. TODO: same for PDF, adjust client.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7908
diff
changeset
|
62 |
8422
96bf5135cd0e
Bedheight differences exports sounding width and data gap for minuend and subtrahend.
Raimund Renkert <rrenkert@intevation.de>
parents:
8420
diff
changeset
|
63 private static final String CSV_HEADER_SOUNDING1 = |
96bf5135cd0e
Bedheight differences exports sounding width and data gap for minuend and subtrahend.
Raimund Renkert <rrenkert@intevation.de>
parents:
8420
diff
changeset
|
64 "export.minfo.beddifference.sounding1"; |
96bf5135cd0e
Bedheight differences exports sounding width and data gap for minuend and subtrahend.
Raimund Renkert <rrenkert@intevation.de>
parents:
8420
diff
changeset
|
65 |
96bf5135cd0e
Bedheight differences exports sounding width and data gap for minuend and subtrahend.
Raimund Renkert <rrenkert@intevation.de>
parents:
8420
diff
changeset
|
66 private static final String CSV_HEADER_SOUNDING2 = |
96bf5135cd0e
Bedheight differences exports sounding width and data gap for minuend and subtrahend.
Raimund Renkert <rrenkert@intevation.de>
parents:
8420
diff
changeset
|
67 "export.minfo.beddifference.sounding2"; |
96bf5135cd0e
Bedheight differences exports sounding width and data gap for minuend and subtrahend.
Raimund Renkert <rrenkert@intevation.de>
parents:
8420
diff
changeset
|
68 |
96bf5135cd0e
Bedheight differences exports sounding width and data gap for minuend and subtrahend.
Raimund Renkert <rrenkert@intevation.de>
parents:
8420
diff
changeset
|
69 private static final String CSV_HEADER_GAP1 = |
96bf5135cd0e
Bedheight differences exports sounding width and data gap for minuend and subtrahend.
Raimund Renkert <rrenkert@intevation.de>
parents:
8420
diff
changeset
|
70 "export.minfo.beddifference.gap1"; |
96bf5135cd0e
Bedheight differences exports sounding width and data gap for minuend and subtrahend.
Raimund Renkert <rrenkert@intevation.de>
parents:
8420
diff
changeset
|
71 |
96bf5135cd0e
Bedheight differences exports sounding width and data gap for minuend and subtrahend.
Raimund Renkert <rrenkert@intevation.de>
parents:
8420
diff
changeset
|
72 private static final String CSV_HEADER_GAP2 = |
96bf5135cd0e
Bedheight differences exports sounding width and data gap for minuend and subtrahend.
Raimund Renkert <rrenkert@intevation.de>
parents:
8420
diff
changeset
|
73 "export.minfo.beddifference.gap2"; |
96bf5135cd0e
Bedheight differences exports sounding width and data gap for minuend and subtrahend.
Raimund Renkert <rrenkert@intevation.de>
parents:
8420
diff
changeset
|
74 |
6242
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
75 public static final String JASPER_FILE = |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
76 "export.minfo.beddifference.pdf.file"; |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
77 |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
78 public static final String PDF_TITLE= |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
79 "export.minfo.beddifference.pdf.title"; |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
80 |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
81 public static final String PDF_HEADER_MODE= |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
82 "export.minfo.beddifference.pdf.mode"; |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
83 |
6217
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
84 private BedDifferencesResult[] results; |
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
85 |
7077
0a337f0005c2
Extended init() of OutGenerator to take name of the out to serve.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6681
diff
changeset
|
86 public BedDifferenceExporter() { |
6217
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
87 results = new BedDifferencesResult[0]; |
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
88 } |
6242
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
89 |
6217
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
90 @Override |
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
91 protected void writeCSVData(CSVWriter writer) throws IOException { |
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
92 writeCSVHeader(writer); |
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
93 |
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
94 NumberFormat kmf = Formatter.getCalculationKm(context.getMeta()); |
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
95 NumberFormat mf = Formatter.getMeterFormat(context); |
6681
e316a9c626e0
Use foreach instead of for-loop.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
6667
diff
changeset
|
96 for (BedDifferencesResult result : results) { |
7831
b4f806999173
Added new columns for morph active width.
Raimund Renkert <rrenkert@intevation.de>
parents:
7506
diff
changeset
|
97 if (result instanceof BedDiffYearResult) { |
b4f806999173
Added new columns for morph active width.
Raimund Renkert <rrenkert@intevation.de>
parents:
7506
diff
changeset
|
98 BedDiffYearResult yResult = (BedDiffYearResult) result; |
7913
76b5add4f268
Added diff pair column to CSV export of bed height differences. TODO: same for PDF, adjust client.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7908
diff
changeset
|
99 String desc = result.getDiffDescription(); |
7831
b4f806999173
Added new columns for morph active width.
Raimund Renkert <rrenkert@intevation.de>
parents:
7506
diff
changeset
|
100 double[][] kms = yResult.getDifferencesData(); |
8422
96bf5135cd0e
Bedheight differences exports sounding width and data gap for minuend and subtrahend.
Raimund Renkert <rrenkert@intevation.de>
parents:
8420
diff
changeset
|
101 double[][] sounding1 = yResult.getSoundingWidth1Data(); |
96bf5135cd0e
Bedheight differences exports sounding width and data gap for minuend and subtrahend.
Raimund Renkert <rrenkert@intevation.de>
parents:
8420
diff
changeset
|
102 double[][] sounding2 = yResult.getSoundingWidth2Data(); |
96bf5135cd0e
Bedheight differences exports sounding width and data gap for minuend and subtrahend.
Raimund Renkert <rrenkert@intevation.de>
parents:
8420
diff
changeset
|
103 double[][] gap1 = yResult.getDataGap1Data(); |
96bf5135cd0e
Bedheight differences exports sounding width and data gap for minuend and subtrahend.
Raimund Renkert <rrenkert@intevation.de>
parents:
8420
diff
changeset
|
104 double[][] gap2 = yResult.getDataGap2Data(); |
7831
b4f806999173
Added new columns for morph active width.
Raimund Renkert <rrenkert@intevation.de>
parents:
7506
diff
changeset
|
105 for (int j = 0; j < kms[0].length; j++) { |
8439
d1c9eea8aec5
Avoid encoding problem with NaN in bed difference export.
"Tom Gottfried <tom@intevation.de>"
parents:
8438
diff
changeset
|
106 String sound1 = !Double.isNaN(sounding1[1][j]) |
d1c9eea8aec5
Avoid encoding problem with NaN in bed difference export.
"Tom Gottfried <tom@intevation.de>"
parents:
8438
diff
changeset
|
107 ? mf.format(sounding1[1][j]) |
d1c9eea8aec5
Avoid encoding problem with NaN in bed difference export.
"Tom Gottfried <tom@intevation.de>"
parents:
8438
diff
changeset
|
108 : ""; |
d1c9eea8aec5
Avoid encoding problem with NaN in bed difference export.
"Tom Gottfried <tom@intevation.de>"
parents:
8438
diff
changeset
|
109 String sound2 = !Double.isNaN(sounding2[1][j]) |
d1c9eea8aec5
Avoid encoding problem with NaN in bed difference export.
"Tom Gottfried <tom@intevation.de>"
parents:
8438
diff
changeset
|
110 ? mf.format(sounding2[1][j]) |
d1c9eea8aec5
Avoid encoding problem with NaN in bed difference export.
"Tom Gottfried <tom@intevation.de>"
parents:
8438
diff
changeset
|
111 : ""; |
d1c9eea8aec5
Avoid encoding problem with NaN in bed difference export.
"Tom Gottfried <tom@intevation.de>"
parents:
8438
diff
changeset
|
112 String g1 = !Double.isNaN(gap1[1][j]) |
d1c9eea8aec5
Avoid encoding problem with NaN in bed difference export.
"Tom Gottfried <tom@intevation.de>"
parents:
8438
diff
changeset
|
113 ? mf.format(gap1[1][j]) |
d1c9eea8aec5
Avoid encoding problem with NaN in bed difference export.
"Tom Gottfried <tom@intevation.de>"
parents:
8438
diff
changeset
|
114 : ""; |
d1c9eea8aec5
Avoid encoding problem with NaN in bed difference export.
"Tom Gottfried <tom@intevation.de>"
parents:
8438
diff
changeset
|
115 String g2 = !Double.isNaN(gap2[1][j]) |
d1c9eea8aec5
Avoid encoding problem with NaN in bed difference export.
"Tom Gottfried <tom@intevation.de>"
parents:
8438
diff
changeset
|
116 ? mf.format(gap2[1][j]) |
d1c9eea8aec5
Avoid encoding problem with NaN in bed difference export.
"Tom Gottfried <tom@intevation.de>"
parents:
8438
diff
changeset
|
117 : ""; |
7831
b4f806999173
Added new columns for morph active width.
Raimund Renkert <rrenkert@intevation.de>
parents:
7506
diff
changeset
|
118 writer.writeNext(new String[] { |
b4f806999173
Added new columns for morph active width.
Raimund Renkert <rrenkert@intevation.de>
parents:
7506
diff
changeset
|
119 kmf.format(kms[0][j]), |
7914
db1a2b14c32d
Change column order in bed differences export.
Tom Gottfried <tom@intevation.de>
parents:
7913
diff
changeset
|
120 desc, |
7831
b4f806999173
Added new columns for morph active width.
Raimund Renkert <rrenkert@intevation.de>
parents:
7506
diff
changeset
|
121 mf.format(kms[1][j]), |
8439
d1c9eea8aec5
Avoid encoding problem with NaN in bed difference export.
"Tom Gottfried <tom@intevation.de>"
parents:
8438
diff
changeset
|
122 sound1, |
d1c9eea8aec5
Avoid encoding problem with NaN in bed difference export.
"Tom Gottfried <tom@intevation.de>"
parents:
8438
diff
changeset
|
123 sound2, |
d1c9eea8aec5
Avoid encoding problem with NaN in bed difference export.
"Tom Gottfried <tom@intevation.de>"
parents:
8438
diff
changeset
|
124 g1, |
d1c9eea8aec5
Avoid encoding problem with NaN in bed difference export.
"Tom Gottfried <tom@intevation.de>"
parents:
8438
diff
changeset
|
125 g2 |
7914
db1a2b14c32d
Change column order in bed differences export.
Tom Gottfried <tom@intevation.de>
parents:
7913
diff
changeset
|
126 }); |
7831
b4f806999173
Added new columns for morph active width.
Raimund Renkert <rrenkert@intevation.de>
parents:
7506
diff
changeset
|
127 } |
b4f806999173
Added new columns for morph active width.
Raimund Renkert <rrenkert@intevation.de>
parents:
7506
diff
changeset
|
128 } |
b4f806999173
Added new columns for morph active width.
Raimund Renkert <rrenkert@intevation.de>
parents:
7506
diff
changeset
|
129 else { |
b4f806999173
Added new columns for morph active width.
Raimund Renkert <rrenkert@intevation.de>
parents:
7506
diff
changeset
|
130 double[][] kms = result.getDifferencesData(); |
7913
76b5add4f268
Added diff pair column to CSV export of bed height differences. TODO: same for PDF, adjust client.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7908
diff
changeset
|
131 String desc = result.getDiffDescription(); |
7831
b4f806999173
Added new columns for morph active width.
Raimund Renkert <rrenkert@intevation.de>
parents:
7506
diff
changeset
|
132 for (int j = 0; j < kms[0].length; j++) { |
b4f806999173
Added new columns for morph active width.
Raimund Renkert <rrenkert@intevation.de>
parents:
7506
diff
changeset
|
133 writer.writeNext(new String[] { |
b4f806999173
Added new columns for morph active width.
Raimund Renkert <rrenkert@intevation.de>
parents:
7506
diff
changeset
|
134 kmf.format(kms[0][j]), |
7914
db1a2b14c32d
Change column order in bed differences export.
Tom Gottfried <tom@intevation.de>
parents:
7913
diff
changeset
|
135 desc, |
7913
76b5add4f268
Added diff pair column to CSV export of bed height differences. TODO: same for PDF, adjust client.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7908
diff
changeset
|
136 mf.format(kms[1][j]), |
7914
db1a2b14c32d
Change column order in bed differences export.
Tom Gottfried <tom@intevation.de>
parents:
7913
diff
changeset
|
137 }); |
7831
b4f806999173
Added new columns for morph active width.
Raimund Renkert <rrenkert@intevation.de>
parents:
7506
diff
changeset
|
138 } |
6217
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
139 } |
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
140 } |
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
141 } |
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
142 |
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
143 @Override |
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
144 protected void addData(Object data) { |
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
145 if (!(data instanceof CalculationResult)) { |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7979
diff
changeset
|
146 log.warn("Invalid data type."); |
6217
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
147 return; |
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
148 } |
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
149 Object[] d = (Object[])((CalculationResult)data).getData(); |
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
150 |
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
151 if (!(d instanceof BedDifferencesResult[])) { |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7979
diff
changeset
|
152 log.warn("Invalid result object."); |
6217
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
153 return; |
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
154 } |
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
155 results = (BedDifferencesResult[])d; |
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
156 } |
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
157 |
6242
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
158 protected void addMetaData(BedDifferenceJRDataSource source) { |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
159 CallMeta meta = context.getMeta(); |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
160 |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
161 D4EArtifact arti = (D4EArtifact) master; |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
162 |
7915
931dffefc3dd
flys/issue1628: Adjusted the PDF export.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7914
diff
changeset
|
163 source.addMetaData ("river", new RiverAccess(arti).getRiverName()); |
6242
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
164 |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
165 Locale locale = Resources.getLocale(meta); |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
166 DateFormat df = DateFormat.getDateInstance(DateFormat.SHORT, locale); |
8584
ce325339e9ba
(issue1754) Add range to W / Bed difference export.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8439
diff
changeset
|
167 NumberFormat kmf = Formatter.getWaterlevelKM(context); |
ce325339e9ba
(issue1754) Add range to W / Bed difference export.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8439
diff
changeset
|
168 |
ce325339e9ba
(issue1754) Add range to W / Bed difference export.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8439
diff
changeset
|
169 RangeAccess rangeAccess = new RangeAccess(arti); |
ce325339e9ba
(issue1754) Add range to W / Bed difference export.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8439
diff
changeset
|
170 double[] kms = rangeAccess.getKmRange(); |
ce325339e9ba
(issue1754) Add range to W / Bed difference export.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8439
diff
changeset
|
171 source.addMetaData("range", |
ce325339e9ba
(issue1754) Add range to W / Bed difference export.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8439
diff
changeset
|
172 kmf.format(kms[0]) + " - " + kmf.format(kms[kms.length-1])); |
6242
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
173 |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
174 source.addMetaData("date", df.format(new Date())); |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
175 |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
176 source.addMetaData("calculation", Resources.getMsg( |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
177 locale, |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
178 PDF_HEADER_MODE, |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
179 "Bedheight difference")); |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
180 |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
181 BedDifferencesAccess access = new BedDifferencesAccess(arti); |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
182 |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
183 source.addMetaData("differences", StringUtils.join( |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
184 access.getDifferenceArtifactNamePairs(), "\n")); |
7908
df9ac27d6b74
Fixed flys/issue1628. Made "unit" a configurable field in PDF export.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7906
diff
changeset
|
185 |
8438
9ab8b1146ac4
Adapt PDF-export to new columns in bed differences result.
"Tom Gottfried <tom@intevation.de>"
parents:
8433
diff
changeset
|
186 source.addMetaData("kmheader", msg(CSV_HEADER_KM)); |
9ab8b1146ac4
Adapt PDF-export to new columns in bed differences result.
"Tom Gottfried <tom@intevation.de>"
parents:
8433
diff
changeset
|
187 source.addMetaData("diffpairheader", msg(CSV_HEADER_DIFF_PAIR)); |
9ab8b1146ac4
Adapt PDF-export to new columns in bed differences result.
"Tom Gottfried <tom@intevation.de>"
parents:
8433
diff
changeset
|
188 source.addMetaData("diffheader", msg(CSV_HEADER_DIFF)); |
9ab8b1146ac4
Adapt PDF-export to new columns in bed differences result.
"Tom Gottfried <tom@intevation.de>"
parents:
8433
diff
changeset
|
189 source.addMetaData("sounding1header", msg(CSV_HEADER_SOUNDING1)); |
9ab8b1146ac4
Adapt PDF-export to new columns in bed differences result.
"Tom Gottfried <tom@intevation.de>"
parents:
8433
diff
changeset
|
190 source.addMetaData("sounding2header", msg(CSV_HEADER_SOUNDING2)); |
9ab8b1146ac4
Adapt PDF-export to new columns in bed differences result.
"Tom Gottfried <tom@intevation.de>"
parents:
8433
diff
changeset
|
191 source.addMetaData("gap1header", msg(CSV_HEADER_GAP1)); |
9ab8b1146ac4
Adapt PDF-export to new columns in bed differences result.
"Tom Gottfried <tom@intevation.de>"
parents:
8433
diff
changeset
|
192 source.addMetaData("gap2header", msg(CSV_HEADER_GAP2)); |
6242
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
193 } |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
194 |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
195 |
6217
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
196 protected void writeCSVHeader(CSVWriter writer) { |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7979
diff
changeset
|
197 log.debug("writeCSVHeader()"); |
6217
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
198 |
7913
76b5add4f268
Added diff pair column to CSV export of bed height differences. TODO: same for PDF, adjust client.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7908
diff
changeset
|
199 List<String> header = new ArrayList<String>(); |
6217
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
200 if (results != null) { |
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
201 header.add(msg(CSV_HEADER_KM, "km")); |
7914
db1a2b14c32d
Change column order in bed differences export.
Tom Gottfried <tom@intevation.de>
parents:
7913
diff
changeset
|
202 header.add(msg(CSV_HEADER_DIFF_PAIR, "difference pair")); |
7906
57cb1b7ec547
issue1628: correct unit and at least partly complete column name for CSV.
"Tom Gottfried <tom@intevation.de>"
parents:
7831
diff
changeset
|
203 header.add(msg(CSV_HEADER_DIFF, "cm")); |
7831
b4f806999173
Added new columns for morph active width.
Raimund Renkert <rrenkert@intevation.de>
parents:
7506
diff
changeset
|
204 if (results.length > 0 && |
b4f806999173
Added new columns for morph active width.
Raimund Renkert <rrenkert@intevation.de>
parents:
7506
diff
changeset
|
205 results[0] instanceof BedDiffYearResult) { |
8422
96bf5135cd0e
Bedheight differences exports sounding width and data gap for minuend and subtrahend.
Raimund Renkert <rrenkert@intevation.de>
parents:
8420
diff
changeset
|
206 header.add(msg(CSV_HEADER_SOUNDING1, "soundung width minuend [m]")); |
96bf5135cd0e
Bedheight differences exports sounding width and data gap for minuend and subtrahend.
Raimund Renkert <rrenkert@intevation.de>
parents:
8420
diff
changeset
|
207 header.add(msg(CSV_HEADER_SOUNDING2, "sounding width subtrahend [m]")); |
96bf5135cd0e
Bedheight differences exports sounding width and data gap for minuend and subtrahend.
Raimund Renkert <rrenkert@intevation.de>
parents:
8420
diff
changeset
|
208 header.add(msg(CSV_HEADER_GAP1, "data gap minuend")); |
96bf5135cd0e
Bedheight differences exports sounding width and data gap for minuend and subtrahend.
Raimund Renkert <rrenkert@intevation.de>
parents:
8420
diff
changeset
|
209 header.add(msg(CSV_HEADER_GAP2, "data gap subtrahend")); |
7831
b4f806999173
Added new columns for morph active width.
Raimund Renkert <rrenkert@intevation.de>
parents:
7506
diff
changeset
|
210 } |
6217
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
211 } |
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
212 writer.writeNext(header.toArray(new String[header.size()])); |
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
213 } |
6242
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
214 |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
215 protected BedDifferenceJRDataSource createJRData() { |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
216 BedDifferenceJRDataSource source = new BedDifferenceJRDataSource(); |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
217 |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
218 addMetaData(source); |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
219 NumberFormat kmf = Formatter.getCalculationKm(context.getMeta()); |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
220 NumberFormat mf = Formatter.getMeterFormat(context); |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
221 for (BedDifferencesResult result: results) { |
7916
c0843a658474
Adapted bed differences PDF export to CSV export and some cleanup of field names.
Tom Gottfried <tom@intevation.de>
parents:
7915
diff
changeset
|
222 BedDiffYearResult yResult = (BedDiffYearResult) result; |
6242
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
223 double[][] kms = result.getDifferencesData(); |
7915
931dffefc3dd
flys/issue1628: Adjusted the PDF export.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7914
diff
changeset
|
224 String desc = result.getDiffDescription(); |
8422
96bf5135cd0e
Bedheight differences exports sounding width and data gap for minuend and subtrahend.
Raimund Renkert <rrenkert@intevation.de>
parents:
8420
diff
changeset
|
225 double[][] sounding1 = yResult.getSoundingWidth1Data(); |
96bf5135cd0e
Bedheight differences exports sounding width and data gap for minuend and subtrahend.
Raimund Renkert <rrenkert@intevation.de>
parents:
8420
diff
changeset
|
226 double[][] sounding2 = yResult.getSoundingWidth2Data(); |
96bf5135cd0e
Bedheight differences exports sounding width and data gap for minuend and subtrahend.
Raimund Renkert <rrenkert@intevation.de>
parents:
8420
diff
changeset
|
227 double[][] gap1 = yResult.getDataGap1Data(); |
96bf5135cd0e
Bedheight differences exports sounding width and data gap for minuend and subtrahend.
Raimund Renkert <rrenkert@intevation.de>
parents:
8420
diff
changeset
|
228 double[][] gap2 = yResult.getDataGap2Data(); |
6242
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
229 for (int j = 0; j < kms[0].length; j++) { |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
230 source.addData(new String[] { |
7915
931dffefc3dd
flys/issue1628: Adjusted the PDF export.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7914
diff
changeset
|
231 kmf.format(kms[0][j]), |
7916
c0843a658474
Adapted bed differences PDF export to CSV export and some cleanup of field names.
Tom Gottfried <tom@intevation.de>
parents:
7915
diff
changeset
|
232 desc, |
7915
931dffefc3dd
flys/issue1628: Adjusted the PDF export.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7914
diff
changeset
|
233 mf.format(kms[1][j]), |
8422
96bf5135cd0e
Bedheight differences exports sounding width and data gap for minuend and subtrahend.
Raimund Renkert <rrenkert@intevation.de>
parents:
8420
diff
changeset
|
234 mf.format(sounding1[1][j]), |
96bf5135cd0e
Bedheight differences exports sounding width and data gap for minuend and subtrahend.
Raimund Renkert <rrenkert@intevation.de>
parents:
8420
diff
changeset
|
235 mf.format(sounding2[1][j]), |
96bf5135cd0e
Bedheight differences exports sounding width and data gap for minuend and subtrahend.
Raimund Renkert <rrenkert@intevation.de>
parents:
8420
diff
changeset
|
236 mf.format(gap1[1][j]), |
96bf5135cd0e
Bedheight differences exports sounding width and data gap for minuend and subtrahend.
Raimund Renkert <rrenkert@intevation.de>
parents:
8420
diff
changeset
|
237 mf.format(gap2[1][j]) |
7916
c0843a658474
Adapted bed differences PDF export to CSV export and some cleanup of field names.
Tom Gottfried <tom@intevation.de>
parents:
7915
diff
changeset
|
238 }); |
6242
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
239 } |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
240 } |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
241 return source; |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
242 } |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
243 |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
244 @Override |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
245 protected void writePDF(OutputStream out) { |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7979
diff
changeset
|
246 log.debug("write PDF"); |
6242
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
247 BedDifferenceJRDataSource source = createJRData(); |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
248 |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
249 String jasperFile = Resources.getMsg( |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
250 context.getMeta(), |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
251 JASPER_FILE, |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
252 "/jasper/beddifference_en.jasper"); |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
253 String confPath = Config.getConfigDirectory().toString(); |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
254 |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
255 |
7915
931dffefc3dd
flys/issue1628: Adjusted the PDF export.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7914
diff
changeset
|
256 Map<String, Object> parameters = new HashMap<String, Object>(); |
6242
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
257 parameters.put("ReportTitle", Resources.getMsg( |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
258 context.getMeta(), PDF_TITLE, "Exported Data")); |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
259 try { |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
260 JasperPrint print = JasperFillManager.fillReport( |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
261 confPath + jasperFile, |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
262 parameters, |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
263 source); |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
264 JasperExportManager.exportReportToPdfStream(print, out); |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
265 } |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
266 catch(JRException je) { |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7979
diff
changeset
|
267 log.warn("Error generating PDF Report!", je); |
6242
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
268 } |
34f393434913
Implement pdf export for bedheight differences
Andre Heinecke <aheinecke@intevation.de>
parents:
6217
diff
changeset
|
269 } |
6217
e213b538f78c
Added exporter for bed height differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
270 } |
6681
e316a9c626e0
Use foreach instead of for-loop.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
6667
diff
changeset
|
271 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |