comparison artifacts/src/main/java/org/dive4elements/river/artifacts/sinfo/collision/CollisionCalcOverviewResult.java @ 9195:a4121ec450d6

'ca.'-issue ExportContextCSV+PDF separated uinfo.inundationduration url export
author gernotbelger
date Fri, 29 Jun 2018 14:52:54 +0200
parents 3ace6db2f87b
children 4f411c6ee3ae
comparison
equal deleted inserted replaced
9191:f692f5a0536a 9195:a4121ec450d6
12 import java.util.ArrayList; 12 import java.util.ArrayList;
13 import java.util.Collection; 13 import java.util.Collection;
14 14
15 import org.dive4elements.river.artifacts.common.AbstractCalculationExportableResult; 15 import org.dive4elements.river.artifacts.common.AbstractCalculationExportableResult;
16 import org.dive4elements.river.artifacts.common.ExportContextCSV; 16 import org.dive4elements.river.artifacts.common.ExportContextCSV;
17 import org.dive4elements.river.artifacts.common.ExportContextPDF;
17 import org.dive4elements.river.artifacts.common.GeneralResultType; 18 import org.dive4elements.river.artifacts.common.GeneralResultType;
18 import org.dive4elements.river.artifacts.common.MetaAndTableJRDataSource; 19 import org.dive4elements.river.artifacts.common.MetaAndTableJRDataSource;
19 import org.dive4elements.river.artifacts.common.ResultRow; 20 import org.dive4elements.river.artifacts.common.ResultRow;
20 import org.dive4elements.river.artifacts.sinfo.common.SInfoResultType; 21 import org.dive4elements.river.artifacts.sinfo.common.SInfoResultType;
21 import org.dive4elements.river.artifacts.sinfo.util.RiverInfo; 22 import org.dive4elements.river.artifacts.sinfo.util.RiverInfo;
23 /** 24 /**
24 * Contains the results of a {@link CollisionCalculation}. 25 * Contains the results of a {@link CollisionCalculation}.
25 * 26 *
26 * @author Gernot Belger 27 * @author Gernot Belger
27 */ 28 */
28 final public class CollisionCalcOverviewResult extends AbstractCalculationExportableResult<CollisionCalculationResults> { 29 final public class CollisionCalcOverviewResult extends AbstractCalculationExportableResult {
29 30
30 private static final long serialVersionUID = 1L; 31 private static final long serialVersionUID = 1L;
31 32
32 private static final String JASPER_FILE = "/jasper/templates/sinfo.collision.overview.jrxml"; 33 private static final String JASPER_FILE = "/jasper/templates/sinfo.collision.overview.jrxml";
33 34
34 public CollisionCalcOverviewResult(final String label, final Collection<ResultRow> rows) { 35 public CollisionCalcOverviewResult(final String label, final Collection<ResultRow> rows) {
35 super(label, rows); 36 super(label, rows);
36 } 37 }
37 38
38 @Override 39 @Override
39 protected void writeCSVResultMetadata(final ExportContextCSV exportContextCSV, final CollisionCalculationResults results) { 40 protected void writeCSVResultMetadata(final ExportContextCSV exportContextCSV) {
40 // do nothing so far 41 // do nothing so far
41 } 42 }
42 43
43 @Override 44 @Override
44 public void writeCSVHeader(final ExportContextCSV exportContextCSV, final CollisionCalculationResults results, final RiverInfo river) { 45 public void writeCSVHeader(final ExportContextCSV exportContextCSV, final RiverInfo river) {
45 final int colSize = 3; 46 final int colSize = 3;
46 exportContextCSV.writeTitleForTabs("sinfo.export.csv.title.collison.overview", 3); // Voraussetzung für Tabs ist, dass der Titel vor den Headern 47 exportContextCSV.writeTitleForTabs("sinfo.export.csv.title.collison.overview", 3); // Voraussetzung für Tabs ist, dass der Titel vor den Headern
47 // geschrieben wird. 48 // geschrieben wird.
48 // Das ist etwas doof. 49 // Das ist etwas doof.
49 50
55 56
56 exportContextCSV.writeCSVLine(header.toArray(new String[colSize])); 57 exportContextCSV.writeCSVLine(header.toArray(new String[colSize]));
57 } 58 }
58 59
59 @Override 60 @Override
60 protected String[] formatCSVRow(final ExportContextCSV exportContextCSV, final CollisionCalculationResults results, final ResultRow row) { 61 protected String[] formatCSVRow(final ExportContextCSV exportContextCSV, final ResultRow row) {
61 return formatRow(exportContextCSV, results, row); 62 return formatRow(exportContextCSV, row);
62 } 63 }
63 64
64 @Override 65 @Override
65 protected String[] formatPDFRow(final ExportContextCSV exportContextCSV, final CollisionCalculationResults results, final ResultRow row) { 66 protected String[] formatPDFRow(final ExportContextPDF exportContextPDF, final ResultRow row) {
67
66 final Collection<String> lines = new ArrayList<>(3); 68 final Collection<String> lines = new ArrayList<>(3);
67 69
68 lines.add(exportContextCSV.formatRowValue(row, GeneralResultType.station)); 70 lines.add(exportContextPDF.formatRowValue(row, GeneralResultType.station));
69 lines.add(exportContextCSV.formatRowValue(row, SInfoResultType.years)); 71 lines.add(exportContextPDF.formatRowValue(row, SInfoResultType.years));
70 lines.add(exportContextCSV.formatRowValue(row, SInfoResultType.collisionCount)); 72 lines.add(exportContextPDF.formatRowValue(row, SInfoResultType.collisionCount));
73
71 return lines.toArray(new String[lines.size()]); 74 return lines.toArray(new String[lines.size()]);
72 } 75 }
73 76
74 private String[] formatRow(final ExportContextCSV exportContextCSV, final CollisionCalculationResults results, final ResultRow row) { 77 private String[] formatRow(final ExportContextCSV exportContextCSV, final ResultRow row) {
75 78
76 final Collection<String> lines = new ArrayList<>(3); 79 final Collection<String> lines = new ArrayList<>(3);
77 80
78 lines.add(exportContextCSV.formatRowValue(row, GeneralResultType.station)); 81 lines.add(exportContextCSV.formatRowValue(row, GeneralResultType.station));
79 lines.add(exportContextCSV.formatRowValue(row, SInfoResultType.years)); 82 lines.add(exportContextCSV.formatRowValue(row, SInfoResultType.years));
86 protected String getJasperFile() { 89 protected String getJasperFile() {
87 return JASPER_FILE; 90 return JASPER_FILE;
88 } 91 }
89 92
90 @Override 93 @Override
91 protected void addJRTableHeader(final ExportContextCSV exportContextCSV, final MetaAndTableJRDataSource source, final CollisionCalculationResults results) { 94 protected void addJRTableHeader(final ExportContextPDF exportContext, final MetaAndTableJRDataSource source) {
92 95
93 /* column headings */ 96 /* column headings */
94 exportContextCSV.addJRMetadata(source, "station_header", GeneralResultType.station); 97 exportContext.addJRMetadata(source, "station_header", GeneralResultType.station);
95 exportContextCSV.addJRMetadata(source, "collision_years_header", SInfoResultType.years); 98 exportContext.addJRMetadata(source, "collision_years_header", SInfoResultType.years);
96 exportContextCSV.addJRMetadata(source, "collision_count_header", SInfoResultType.collisionCount); 99 exportContext.addJRMetadata(source, "collision_count_header", SInfoResultType.collisionCount);
97 } 100 }
98 } 101 }

http://dive4elements.wald.intevation.org