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

'ca.'-issue ExportContextCSV+PDF separated uinfo.inundationduration url export
author gernotbelger
date Fri, 29 Jun 2018 14:52:54 +0200
parents 1614cb14308f
children 7b2b086e45f0
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;
19 import org.dive4elements.river.artifacts.common.IExportContext;
18 import org.dive4elements.river.artifacts.common.MetaAndTableJRDataSource; 20 import org.dive4elements.river.artifacts.common.MetaAndTableJRDataSource;
19 import org.dive4elements.river.artifacts.common.ResultRow; 21 import org.dive4elements.river.artifacts.common.ResultRow;
20 import org.dive4elements.river.artifacts.sinfo.common.SInfoResultType; 22 import org.dive4elements.river.artifacts.sinfo.common.SInfoResultType;
21 import org.dive4elements.river.artifacts.sinfo.util.RiverInfo; 23 import org.dive4elements.river.artifacts.sinfo.util.RiverInfo;
22 24
23 /** 25 /**
24 * Contains the results of a {@link FloodDurationCalculation}. 26 * Contains the results of a {@link FloodDurationCalculation}.
25 * 27 *
26 * @author Gernot Belger 28 * @author Gernot Belger
27 */ 29 */
28 final class CollisionCalcDetailResult extends AbstractCalculationExportableResult<CollisionCalculationResults> { 30 final class CollisionCalcDetailResult extends AbstractCalculationExportableResult {
29 31
30 private static final long serialVersionUID = 1L; 32 private static final long serialVersionUID = 1L;
31 private static final String JASPER_FILE = "/jasper/templates/sinfo.collision.detail.jrxml"; 33 private static final String JASPER_FILE = "/jasper/templates/sinfo.collision.detail.jrxml";
32 34
33 public CollisionCalcDetailResult(final String label, final Collection<ResultRow> rows) { 35 public CollisionCalcDetailResult(final String label, final Collection<ResultRow> rows) {
34 super(label, rows); 36 super(label, rows);
35 } 37 }
36 38
37 @Override 39 @Override
38 protected void writeCSVResultMetadata(final ExportContextCSV exportContextCSV, final CollisionCalculationResults results) { 40 protected void writeCSVResultMetadata(final ExportContextCSV exportContextCSV) {
39 41
40 // do nothing so far 42 // do nothing so far
41 } 43 }
42 44
43 @Override 45 @Override
44 public void writeCSVHeader(final ExportContextCSV exportContextCSV, final CollisionCalculationResults results, final RiverInfo river) { 46 public void writeCSVHeader(final ExportContextCSV exportContextCSV, final RiverInfo river) {
45 47
46 final int colSize = 6; 48 final int colSize = 6;
47 exportContextCSV.writeTitleForTabs("sinfo.export.csv.title.collision.detail", 6); // Voraussetzung für Tabs ist, dass der Titel vor den Headern 49 exportContextCSV.writeTitleForTabs("sinfo.export.csv.title.collision.detail", 6); // Voraussetzung für Tabs ist, dass der Titel vor den Headern
48 // geschrieben wird. 50 // geschrieben wird.
49 // Das ist etwas doof. 51 // Das ist etwas doof.
59 61
60 exportContextCSV.writeCSVLine(header.toArray(new String[colSize])); 62 exportContextCSV.writeCSVLine(header.toArray(new String[colSize]));
61 } 63 }
62 64
63 @Override 65 @Override
64 protected String[] formatCSVRow(final ExportContextCSV exportContextCSV, final CollisionCalculationResults results, final ResultRow row) { 66 protected String[] formatCSVRow(final ExportContextCSV exportContextCSV, final ResultRow row) {
65 return formatRow(exportContextCSV, results, row); 67 return formatRow(exportContextCSV, row);
66 } 68 }
67 69
68 @Override 70 @Override
69 protected String[] formatPDFRow(final ExportContextCSV exportContextCSV, final CollisionCalculationResults results, final ResultRow row) { 71 protected String[] formatPDFRow(final ExportContextPDF exportContextCSV, final ResultRow row) {
70 /* 72 /*
71 * final Collection<String> lines = new ArrayList<>(6); 73 * final Collection<String> lines = new ArrayList<>(6);
72 * lines.add(exportContextCSV.formatRowValue(row, GeneralResultType.station)); 74 * lines.add(exportContextCSV.formatRowValue(row, GeneralResultType.station));
73 * return lines.toArray(new String[lines.size()]); 75 * return lines.toArray(new String[lines.size()]);
74 */ 76 */
75 return formatRow(exportContextCSV, results, row); 77 return formatRow(exportContextCSV, row);
76 } 78 }
77 79
78 private String[] formatRow(final ExportContextCSV exportContextCSV, final CollisionCalculationResults results, final ResultRow row) { 80 private String[] formatRow(final IExportContext exportContext, final ResultRow row) {
79 81
80 final Collection<String> lines = new ArrayList<>(6); 82 final Collection<String> lines = new ArrayList<>(6);
81 83
82 lines.add(exportContextCSV.formatRowValue(row, GeneralResultType.station)); 84 lines.add(exportContext.formatRowValue(row, GeneralResultType.station));
83 lines.add(exportContextCSV.formatRowValue(row, GeneralResultType.date)); 85 lines.add(exportContext.formatRowValue(row, GeneralResultType.date));
84 lines.add(exportContextCSV.formatRowValue(row, SInfoResultType.collisionGaugeW)); 86 lines.add(exportContext.formatRowValue(row, SInfoResultType.collisionGaugeW));
85 lines.add(exportContextCSV.formatRowValue(row, SInfoResultType.gaugeLabel)); 87 lines.add(exportContext.formatRowValue(row, SInfoResultType.gaugeLabel));
86 lines.add(exportContextCSV.formatRowValue(row, SInfoResultType.discharge)); 88 lines.add(exportContext.formatRowValue(row, SInfoResultType.discharge));
87 lines.add(exportContextCSV.formatRowValue(row, SInfoResultType.dischargeZone)); 89 lines.add(exportContext.formatRowValue(row, SInfoResultType.dischargeZone));
88 90
89 return lines.toArray(new String[lines.size()]); 91 return lines.toArray(new String[lines.size()]);
90 } 92 }
91 93
92 @Override 94 @Override
93 protected String getJasperFile() { 95 protected String getJasperFile() {
94 return JASPER_FILE; 96 return JASPER_FILE;
95 } 97 }
96 98
97 @Override 99 @Override
98 protected void addJRTableHeader(final ExportContextCSV exportContextCSV, final MetaAndTableJRDataSource source, final CollisionCalculationResults results) { 100 protected void addJRTableHeader(final ExportContextPDF exportContextCSV, final MetaAndTableJRDataSource source) {
99 101
100 /* column headings */ 102 /* column headings */
101 exportContextCSV.addJRMetadata(source, "station_header", GeneralResultType.station); 103 exportContextCSV.addJRMetadata(source, "station_header", GeneralResultType.station);
102 exportContextCSV.addJRMetadata(source, "date_header", GeneralResultType.date); 104 exportContextCSV.addJRMetadata(source, "date_header", GeneralResultType.date);
103 exportContextCSV.addJRMetadata(source, "gaugew_header", SInfoResultType.collisionGaugeW); 105 exportContextCSV.addJRMetadata(source, "gaugew_header", SInfoResultType.collisionGaugeW);

http://dive4elements.wald.intevation.org