diff flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/fixation/FixationCompute.java @ 3192:cd309f8597f6

Fix for 'linecolor ignored' issue flys-artifacts/trunk@4808 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Christian Lins <christian.lins@intevation.de>
date Wed, 27 Jun 2012 11:50:24 +0000
parents c130be3fa809
children 1b9f791937c3
line wrap: on
line diff
--- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/fixation/FixationCompute.java	Wed Jun 27 09:16:28 2012 +0000
+++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/fixation/FixationCompute.java	Wed Jun 27 11:50:24 2012 +0000
@@ -63,6 +63,25 @@
 
     private static final String I18N_REFERENCEDEVIATION = "fix.reference.deviation";
 
+    public static class IdGenerator {
+	private int id;
+
+	public IdGenerator() {
+	}
+
+	public IdGenerator(int id) {
+	    this.id = id;
+	}
+
+	public int next() {
+	    return id++;
+	}
+
+	public int next(int s) {
+	    return id += s;
+	}
+    }
+
     /**
      * The default constructor that initializes an empty State object.
      */
@@ -104,8 +123,10 @@
         facets.add(
             new DataFacet(CSV, "CSV data", ComputeType.ADVANCE, hash, id));
 
+	int maxId = -100;
 
         int count = access.getAnalysisPeriods().length;
+
         for (int i = 0; i < count; i++) {
             DateRange period = access.getAnalysisPeriods()[i];
             DateFormat df = DateFormat.getDateInstance(DateFormat.MEDIUM);
@@ -131,6 +152,8 @@
                 int facetNdx = i << 2;
                 facetNdx = facetNdx | j;
 
+               if (facetNdx > maxId) maxId = facetNdx;
+
                 facets.add(
                     new FixAvSectorFacet(facetNdx,
                                          FIX_SECTOR_AVERAGE_DWT + "_" + sectorNdx,
@@ -150,6 +173,7 @@
                                          description));
 
             }
+
             String eventDesc =
                 Resources.getMsg(context.getMeta(),
                                  I18N_ANALYSIS,
@@ -166,6 +190,8 @@
                 eventDesc));
         }
 
+	IdGenerator idg = new IdGenerator(maxId);
+
         String i18n_ref = Resources.getMsg(context.getMeta(),
                 I18N_REFERENCEPERIOD,
                 I18N_REFERENCEPERIOD);
@@ -174,48 +200,53 @@
                 I18N_REFERENCEDEVIATION);
 
 
-        facets.add(new FixReferenceEventsFacet(0,
+        facets.add(new FixReferenceEventsFacet(idg.next(),
             FIX_REFERENCE_EVENTS_DWT,
             i18n_ref));
-        facets.add(new FixLongitudinalReferenceFacet(1,
+        facets.add(new FixLongitudinalReferenceFacet(idg.next(),
             FIX_REFERENCE_EVENTS_LS,
             i18n_ref));
-        facets.add(new FixReferenceEventsFacet(2,
+        facets.add(new FixReferenceEventsFacet(idg.next(),
             FIX_REFERENCE_EVENTS_WQ,
             i18n_ref));
 
-        facets.add(new FixLongitudinalDeviationFacet(0,
+        facets.add(new FixLongitudinalDeviationFacet(idg.next(),
             FIX_DEVIATION_LS,
             i18n_dev));
 
         String i18n_ana = Resources.getMsg(context.getMeta(),
                 I18N_ANALYSISPERIODS,
                 I18N_ANALYSISPERIODS);
-        facets.add(new FixAnalysisPeriodsFacet(0,
+        facets.add(new FixAnalysisPeriodsFacet(idg.next(),
             FIX_ANALYSIS_PERIODS_DWT,
             i18n_ana));
-        facets.add(new FixAnalysisPeriodsFacet(1,
+        facets.add(new FixAnalysisPeriodsFacet(idg.next(),
             FIX_ANALYSIS_PERIODS_LS,
             i18n_ana));
-        facets.add(new FixAnalysisPeriodsFacet(2,
+        facets.add(new FixAnalysisPeriodsFacet(idg.next(),
             FIX_ANALYSIS_PERIODS_WQ,
             i18n_ana));
 
-        facets.add(new FixWQCurveFacet("W/Q"));
+
+        facets.add(new FixWQCurveFacet(idg.next(), "W/Q"));
 
         Boolean preprocessing = access.getPreprocessing();
 
         if (preprocessing != null && preprocessing) {
-            facets.add(new FixOutlierFacet(FIX_OUTLIER,
+            facets.add(new FixOutlierFacet(idg.next(), FIX_OUTLIER,
                 Resources.getMsg(context.getMeta(), I18N_OUTLIER, I18N_OUTLIER)));
         }
 
-        facets.add(new FixDerivateFacet(FIX_DERIVATE,
+        facets.add(new FixDerivateFacet(
+	    idg.next(),
+	    FIX_DERIVATE,
             Resources.getMsg(context.getMeta(),
                 I18N_DERIVATIVE,
                 I18N_DERIVATIVE)));
 
-        facets.add(new FixDeviationFacet(FIX_DEVIATION_DWT,
+        facets.add(new FixDeviationFacet(
+	    idg.next(),
+	    FIX_DEVIATION_DWT,
             Resources.getMsg(context.getMeta(),
                 I18N_DEVIATION,
                 I18N_DEVIATION)));

http://dive4elements.wald.intevation.org