diff artifacts/src/main/java/org/dive4elements/river/artifacts/services/FixingsKMChartService.java @ 9415:9744ce3c3853

Rework of fixanalysis computation and dWt and WQ facets. Got rid of strange remapping and bitshifting code by explicitely saving the column information and using it in the facets. The facets also put the valid station range into their xml-metadata
author gernotbelger
date Thu, 16 Aug 2018 16:27:53 +0200
parents 740d65e4aa14
children
line wrap: on
line diff
--- a/artifacts/src/main/java/org/dive4elements/river/artifacts/services/FixingsKMChartService.java	Thu Aug 16 15:47:10 2018 +0200
+++ b/artifacts/src/main/java/org/dive4elements/river/artifacts/services/FixingsKMChartService.java	Thu Aug 16 16:27:53 2018 +0200
@@ -26,15 +26,15 @@
 import org.dive4elements.artifacts.CallMeta;
 import org.dive4elements.artifacts.GlobalContext;
 import org.dive4elements.artifacts.Service;
-import org.dive4elements.river.artifacts.model.FixingsColumn;
-import org.dive4elements.river.artifacts.model.FixingsColumnFactory;
-import org.dive4elements.river.artifacts.model.FixingsFilterBuilder;
-import org.dive4elements.river.artifacts.model.FixingsOverview;
-import org.dive4elements.river.artifacts.model.FixingsOverview.Fixing;
-import org.dive4elements.river.artifacts.model.FixingsOverviewFactory;
 import org.dive4elements.river.artifacts.model.GaugeFinder;
 import org.dive4elements.river.artifacts.model.GaugeFinderFactory;
 import org.dive4elements.river.artifacts.model.GaugeRange;
+import org.dive4elements.river.artifacts.model.fixings.FixingColumn;
+import org.dive4elements.river.artifacts.model.fixings.FixingColumnData;
+import org.dive4elements.river.artifacts.model.fixings.FixingsColumnFactory;
+import org.dive4elements.river.artifacts.model.fixings.FixingsFilterBuilder;
+import org.dive4elements.river.artifacts.model.fixings.FixingsOverview;
+import org.dive4elements.river.artifacts.model.fixings.FixingsOverviewFactory;
 import org.dive4elements.river.artifacts.model.fixings.QWI;
 import org.dive4elements.river.artifacts.resources.Resources;
 import org.dive4elements.river.backend.SessionHolder;
@@ -144,12 +144,12 @@
 
         final FixingsFilterBuilder ffb = new FixingsFilterBuilder(input);
 
-        final List<Fixing.Column> columns = overview.filter(ffb.getRange(), ffb.getFilter());
+        final List<FixingColumn> columns = overview.filter(ffb.getRange(), ffb.getFilter());
 
-        final List<Pair<Fixing.Column, FixingsColumn>> cols = new ArrayList<>();
+        final List<Pair<FixingColumn, FixingColumnData>> cols = new ArrayList<>();
 
-        for (final Fixing.Column col : columns) {
-            final FixingsColumn data = FixingsColumnFactory.INSTANCE.getColumnData(col);
+        for (final FixingColumn col : columns) {
+            final FixingColumnData data = FixingsColumnFactory.INSTANCE.getColumnData(col);
             if (data != null) {
                 cols.add(new Pair<>(col, data));
             }
@@ -176,7 +176,7 @@
         return new Output(out.toByteArray(), "image/" + format);
     }
 
-    protected static JFreeChart createChart(final List<Pair<Fixing.Column, FixingsColumn>> cols, final String river, final double km, final CallMeta callMeta) {
+    protected static JFreeChart createChart(final List<Pair<FixingColumn, FixingColumnData>> cols, final String river, final double km, final CallMeta callMeta) {
         final String labelFormat = Resources.getMsg(callMeta, I18N_CHART_LABEL_DATE, DEFAULT_CHART_LABEL_DATE);
 
         final QWSeriesCollection.LabelGenerator lg = new QWSeriesCollection.DateFormatLabelGenerator(labelFormat);
@@ -184,11 +184,11 @@
         final QWSeriesCollection dataset = new QWSeriesCollection(lg);
 
         final double[] w = new double[1];
-        for (final Pair<Fixing.Column, FixingsColumn> col : cols) {
+        for (final Pair<FixingColumn, FixingColumnData> col : cols) {
             final boolean interpolated = !col.getB().getW(km, w);
             final double q = col.getB().getQ(km);
             if (!Double.isNaN(w[0]) && !Double.isNaN(q)) {
-                final QWI qw = new QWI(q, w[0], col.getA().getDescription(), col.getA().getStartTime(), interpolated, 0);
+                final QWI qw = new QWI(q, w[0], col.getA().getStartTime(), interpolated);
                 dataset.add(qw);
             }
         }

http://dive4elements.wald.intevation.org