diff gnv-artifacts/src/main/java/de/intevation/gnv/chart/VerticalProfileChartFactory.java @ 179:f2c76f35da5a

Added missing Class Description Values to the Horizontal Profile Charts gnv-artifacts/trunk@223 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Tim Englich <tim.englich@intevation.de>
date Thu, 15 Oct 2009 15:38:15 +0000
parents 7fb9441dd8af
children 34f233123a6f
line wrap: on
line diff
--- a/gnv-artifacts/src/main/java/de/intevation/gnv/chart/VerticalProfileChartFactory.java	Thu Oct 15 14:19:40 2009 +0000
+++ b/gnv-artifacts/src/main/java/de/intevation/gnv/chart/VerticalProfileChartFactory.java	Thu Oct 15 15:38:15 2009 +0000
@@ -63,6 +63,7 @@
                                                 ChartStyle pStyle,
                                                 Collection<KeyValueDescibeData> parameters,
                                                 Collection<KeyValueDescibeData> measurements,
+                                                Collection<KeyValueDescibeData> dates,
                                                 OutputStream outputStream,
                                                 Collection<Result> resultSet)
                                                                              throws IOException,
@@ -82,7 +83,7 @@
         if (sDebug)
             sLogger.debug("  vor createDataset()");
         XYDataset lSet = this.createDataset(resultSet, lUpperLevel,
-                lLowerLevel, parameters, measurements);
+                lLowerLevel, parameters, measurements, dates);
         if (sDebug)
             sLogger.debug("  nach createDataset()");
         final Color[] color = { Color.black, Color.red, Color.green, Color.blue };
@@ -249,7 +250,8 @@
     private XYDataset createDataset(Collection<Result> resultSet,
                                     int lUpperCut, int lLowerCut,
                                     Collection<KeyValueDescibeData> parameters,
-                                    Collection<KeyValueDescibeData> measurements)
+                                    Collection<KeyValueDescibeData> measurements,
+                                    Collection<KeyValueDescibeData> dates)
                                                                                  throws TechnicalChartException {
 
         XYSeriesCollection xyDataset = new XYSeriesCollection();
@@ -273,10 +275,7 @@
                     if (!break1.equals(row.getString("GROUP1"))
                         || !break2.equals(row.getString("GROUP2"))
                         || !break3.equals(row.getString("GROUP3"))) {
-                        String seriesName = findValueTitle(parameters, break1)
-                                            + " "
-                                            + findValueTitle(measurements,
-                                                    break2);
+                        String seriesName = this.createSeriesName(parameters, measurements, dates, break1, break2, break3);
                         sLogger.debug("Neuer Datensatz " + seriesName
                                       + "von Datensätzen " + mStart + " / "
                                       + mEnd);
@@ -294,8 +293,7 @@
                     i = i + 1;
                 }
 
-                String seriesName = findValueTitle(parameters, break1) + " "
-                                    + findValueTitle(measurements, break2);
+                String seriesName = this.createSeriesName(parameters, measurements, dates, break1, break2, break3);
                 sLogger.debug("Neuer Datensatz " + seriesName
                               + "von Datensätzen " + mStart + " / " + mEnd);
                 xyDataset.addSeries(createXYSeries(seriesName, resultSet,
@@ -308,6 +306,25 @@
         return xyDataset;
     }
 
+    /**
+     * @param parameters
+     * @param measurements
+     * @param break1
+     * @param break2
+     * @return
+     */
+    protected String createSeriesName(
+                                    Collection<KeyValueDescibeData> break1Candidates,
+                                    Collection<KeyValueDescibeData> break2Candidates,
+                                    Collection<KeyValueDescibeData> break3Candidates,
+                                    String break1, String break2, String break3) {
+        String seriesName = findValueTitle(break1Candidates, break1)
+                            + " "
+                            + findValueTitle(break2Candidates,
+                                    break2);
+        return seriesName.trim();
+    }
+
     private void encodeChart(JFreeChart pChart, ChartStyle pStyle,
                              OutputStream outputStream) throws IOException {
         if (sDebug)
@@ -325,7 +342,7 @@
 
     }
 
-    private String findValueTitle(Collection<KeyValueDescibeData> values,
+    protected String findValueTitle(Collection<KeyValueDescibeData> values,
                                   String id) {
         if (values != null) {
             Iterator<KeyValueDescibeData> it = values.iterator();
@@ -336,6 +353,6 @@
                 }
             }
         }
-        return id;
+        return "";
     }
 }

http://dive4elements.wald.intevation.org