diff artifacts/src/main/java/org/dive4elements/river/artifacts/sinfo/common/AbstractSInfoExporter.java @ 8948:a4f1ac81f26d

Work on SINFO-FlowDepthMinMax. Also rework of result row stuff, in order to reduce abstraction, using result type concept
author gernotbelger
date Wed, 14 Mar 2018 14:10:32 +0100
parents 5d5d482da3e9
children c40db8e8dcae
line wrap: on
line diff
--- a/artifacts/src/main/java/org/dive4elements/river/artifacts/sinfo/common/AbstractSInfoExporter.java	Wed Mar 14 14:09:33 2018 +0100
+++ b/artifacts/src/main/java/org/dive4elements/river/artifacts/sinfo/common/AbstractSInfoExporter.java	Wed Mar 14 14:10:32 2018 +0100
@@ -42,7 +42,7 @@
 /**
  * @author Gernot Belger
  */
-public abstract class AbstractSInfoExporter<ROW extends AbstractSInfoResultRow, RESULT extends AbstractSInfoCalculationResult<ROW>, RESULTS extends AbstractSInfoCalculationResults<ROW, RESULT>> extends AbstractExporter {
+public abstract class AbstractSInfoExporter<RESULT extends AbstractSInfoCalculationResult, RESULTS extends AbstractSInfoCalculationResults<RESULT>> extends AbstractExporter {
 
     private static final String CSV_META_HEADER_SOUNDING = "sinfo.export.flow_depth.csv.meta.header.sounding";
 
@@ -120,9 +120,9 @@
         writeCSVResultMetadata(writer, results, result);
 
         /* nwo the value rows */
-        final Collection<ROW> rows = result.getRows();
-        for (final ROW row : rows) {
-            writeCSVRow(writer, results, row);
+        final Collection<SInfoResultRow> rows = result.getRows();
+        for (final SInfoResultRow row : rows) {
+            writeCSVRow(writer, results, result, row);
         }
     }
 
@@ -131,14 +131,14 @@
      */
     protected abstract void writeCSVResultMetadata(CSVWriter writer, RESULTS results, RESULT result);
 
-    protected final void writeCSVRow(final CSVWriter writer, final RESULTS results, final ROW row) {
+    protected final void writeCSVRow(final CSVWriter writer, final RESULTS results, final RESULT result, final SInfoResultRow row) {
         getLog().debug("writeCSVFlowDepthRow");
 
-        final String[] formattedRow = formatCSVRow(results, row);
+        final String[] formattedRow = formatCSVRow(results, result, row);
         writer.writeNext(formattedRow);
     }
 
-    protected abstract String[] formatCSVRow(RESULTS results, final ROW row);
+    protected abstract String[] formatCSVRow(RESULTS results, RESULT result, final SInfoResultRow row);
 
     @Override
     protected final void writePDF(final OutputStream outStream) {
@@ -186,18 +186,18 @@
 
     protected final void addJRTableData(final MetaAndTableJRDataSource source, final RESULTS results, final RESULT result) {
 
-        final Collection<ROW> rows = result.getRows();
+        final Collection<SInfoResultRow> rows = result.getRows();
 
-        for (final ROW row : rows) {
+        for (final SInfoResultRow row : rows) {
 
             final String[] formattedRow = formatPDFRow(results, row);
             source.addData(formattedRow);
         }
     }
 
-    protected abstract String[] formatPDFRow(RESULTS results, final ROW row);
+    protected abstract String[] formatPDFRow(RESULTS results, final SInfoResultRow row);
 
-    protected final void writeCSVGlobalMetadataDefaults(final CSVWriter writer, final AbstractSInfoCalculationResults<?, ?> results) {
+    protected final void writeCSVGlobalMetadataDefaults(final CSVWriter writer, final AbstractSInfoCalculationResults<?> results) {
 
         final String calcModeLabel = results.getCalcModeLabel();
         final RiverInfo river = results.getRiver();
@@ -261,7 +261,7 @@
             writeCSVMetaEntry(writer, SInfoI18NStrings.CSV_META_HEADER_WATERLEVEL_YEAR, Integer.toString(year));
     }
 
-    protected final void addJRMetaDataDefaults(final MetaAndTableJRDataSource source, final AbstractSInfoCalculationResults<?, ?> results) {
+    protected final void addJRMetaDataDefaults(final MetaAndTableJRDataSource source, final AbstractSInfoCalculationResults<?> results) {
 
         final RiverInfo river = results.getRiver();
         final String wstUnitName = river.getWstUnit();

http://dive4elements.wald.intevation.org