comparison artifacts/src/main/java/org/dive4elements/river/artifacts/sinfo/flowdepthminmax/FlowDepthMinMaxCalculationResult.java @ 9195:a4121ec450d6

'ca.'-issue ExportContextCSV+PDF separated uinfo.inundationduration url export
author gernotbelger
date Fri, 29 Jun 2018 14:52:54 +0200
parents 23945061daec
children 740d65e4aa14
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.BedHeightInfo; 23 import org.dive4elements.river.artifacts.sinfo.util.BedHeightInfo;
22 import org.dive4elements.river.artifacts.sinfo.util.RiverInfo; 24 import org.dive4elements.river.artifacts.sinfo.util.RiverInfo;
25 /** 27 /**
26 * Contains the results of a {@link FloodDurationCalculation}. 28 * Contains the results of a {@link FloodDurationCalculation}.
27 * 29 *
28 * @author Gernot Belger 30 * @author Gernot Belger
29 */ 31 */
30 final class FlowDepthMinMaxCalculationResult extends AbstractCalculationExportableResult<FlowDepthMinMaxCalculationResults> { 32 final class FlowDepthMinMaxCalculationResult extends AbstractCalculationExportableResult {
31 33
32 private static final long serialVersionUID = 1L; 34 private static final long serialVersionUID = 1L;
33 private static final String JASPER_FILE = "/jasper/templates/sinfo.flowdepthminmax.jrxml"; 35 private static final String JASPER_FILE = "/jasper/templates/sinfo.flowdepthminmax.jrxml";
34 36
35 private final BedHeightInfo sounding; 37 private final BedHeightInfo sounding;
44 public BedHeightInfo getSounding() { 46 public BedHeightInfo getSounding() {
45 return this.sounding; 47 return this.sounding;
46 } 48 }
47 49
48 @Override 50 @Override
49 public void writeCSVHeader(final ExportContextCSV exportContextCSV, final FlowDepthMinMaxCalculationResults results, final RiverInfo river) { 51 public void writeCSVHeader(final ExportContextCSV exportContextCSV, final RiverInfo river) {
50 52
51 final Collection<String> header = new ArrayList<>(11); 53 final Collection<String> header = new ArrayList<>(11);
52 54
53 header.add(exportContextCSV.formatCsvHeader(GeneralResultType.station)); 55 header.add(exportContextCSV.formatCsvHeader(GeneralResultType.station));
54 header.add(exportContextCSV.msgUnitCSV(SInfoResultType.flowdepthmin)); 56 header.add(exportContextCSV.msgUnitCSV(SInfoResultType.flowdepthmin));
64 exportContextCSV.writeCSVLine(header.toArray(new String[header.size()])); 66 exportContextCSV.writeCSVLine(header.toArray(new String[header.size()]));
65 67
66 } 68 }
67 69
68 @Override 70 @Override
69 protected void writeCSVResultMetadata(final ExportContextCSV exportContextCSV, final FlowDepthMinMaxCalculationResults results) { 71 protected void writeCSVResultMetadata(final ExportContextCSV exportContextCSV) {
70 72
71 exportContextCSV.writeCSVSoundingMetadata(this.sounding); 73 exportContextCSV.writeCSVSoundingMetadata(this.sounding);
72 exportContextCSV.writeBlankLine(); 74 exportContextCSV.writeBlankLine();
73 75
74 exportContextCSV.writeCSVWaterlevelMetadata(this.wst); 76 exportContextCSV.writeCSVWaterlevelMetadata(this.wst);
75 exportContextCSV.writeBlankLine(); 77 exportContextCSV.writeBlankLine();
76 78
77 } 79 }
78 80
79 @Override 81 @Override
80 protected String[] formatCSVRow(final ExportContextCSV exportContextCSV, final FlowDepthMinMaxCalculationResults results, final ResultRow row) { 82 protected String[] formatCSVRow(final ExportContextCSV exportContextCSV, final ResultRow row) {
81 83
82 return formatRow(exportContextCSV, results, row); 84 return formatRow(exportContextCSV, row);
83 } 85 }
84 86
85 @Override 87 @Override
86 protected String[] formatPDFRow(final ExportContextCSV exportContextPDF, final FlowDepthMinMaxCalculationResults results, final ResultRow row) { 88 protected String[] formatPDFRow(final ExportContextPDF exportContextPDF, final ResultRow row) {
87 89
88 return formatRow(exportContextPDF, results, row); 90 return formatRow(exportContextPDF, row);
89 } 91 }
90 92
91 @Override 93 @Override
92 protected String getJasperFile() { 94 protected String getJasperFile() {
93 return this.JASPER_FILE; 95 return this.JASPER_FILE;
94 } 96 }
95 97
96 @Override 98 @Override
97 protected void addJRTableHeader(final ExportContextCSV exportContextPDF, final MetaAndTableJRDataSource source, 99 protected void addJRTableHeader(final ExportContextPDF exportContextPDF, final MetaAndTableJRDataSource source) {
98 final FlowDepthMinMaxCalculationResults results) {
99 100
100 /* column headings */ 101 /* column headings */
101 exportContextPDF.addJRMetadata(source, "station_header", GeneralResultType.station); 102 exportContextPDF.addJRMetadata(source, "station_header", GeneralResultType.station);
102 exportContextPDF.addJRMetadata(source, "flowdepthmin_header", SInfoResultType.flowdepthmin); 103 exportContextPDF.addJRMetadata(source, "flowdepthmin_header", SInfoResultType.flowdepthmin);
103 exportContextPDF.addJRMetadata(source, "flowdepthmax_header", SInfoResultType.flowdepthmax); 104 exportContextPDF.addJRMetadata(source, "flowdepthmax_header", SInfoResultType.flowdepthmax);
109 exportContextPDF.addJRMetadata(source, "sounding_name_header", SInfoResultType.soundingLabel); 110 exportContextPDF.addJRMetadata(source, "sounding_name_header", SInfoResultType.soundingLabel);
110 exportContextPDF.addJRMetadata(source, "location_header", SInfoResultType.location); 111 exportContextPDF.addJRMetadata(source, "location_header", SInfoResultType.location);
111 112
112 } 113 }
113 114
114 protected String[] formatRow(final ExportContextCSV exportContextCSV, final FlowDepthMinMaxCalculationResults results, final ResultRow row) { 115 protected String[] formatRow(final IExportContext exportContextCSV, final ResultRow row) {
115 116
116 final Collection<String> lines = new ArrayList<>(10); 117 final Collection<String> lines = new ArrayList<>(10);
117 118
118 lines.add(exportContextCSV.formatRowValue(row, GeneralResultType.station)); 119 lines.add(exportContextCSV.formatRowValue(row, GeneralResultType.station));
119 120

http://dive4elements.wald.intevation.org