diff artifacts/src/main/java/org/dive4elements/river/artifacts/states/minfo/BedQualityState.java @ 8592:36faef4f8acb

(issue1755) Add interpolated facets and update themes accordingly
author Andre Heinecke <andre.heinecke@intevation.de>
date Thu, 19 Mar 2015 13:36:38 +0100
parents 07c9ac22f611
children dbec49147f54
line wrap: on
line diff
--- a/artifacts/src/main/java/org/dive4elements/river/artifacts/states/minfo/BedQualityState.java	Thu Mar 19 10:38:12 2015 +0100
+++ b/artifacts/src/main/java/org/dive4elements/river/artifacts/states/minfo/BedQualityState.java	Thu Mar 19 13:36:38 2015 +0100
@@ -26,6 +26,7 @@
 import org.dive4elements.river.artifacts.model.DateRange;
 import org.dive4elements.river.artifacts.model.FacetTypes;
 import org.dive4elements.river.artifacts.model.minfo.BedQualityDataFacet;
+import org.dive4elements.river.artifacts.model.minfo.BedQualityInterpolFacet;
 import org.dive4elements.river.artifacts.model.minfo.BedDiameterDataFacet;
 import org.dive4elements.river.artifacts.model.minfo.BedloadDiameterDataFacet;
 import org.dive4elements.river.artifacts.model.minfo.BedQualityCalculation;
@@ -68,7 +69,7 @@
                     Facet    facet,
                     String   output
                 ) {
-                    String name = facet.getName();
+                    String name = facet.getName().replace(".interpol","");
                     if (name.equals(BED_QUALITY_SEDIMENT_DENSITY_TOPLAYER) ||
                         name.equals(BED_QUALITY_SEDIMENT_DENSITY_SUBLAYER) ||
                         name.equals(BED_DIAMETER_DATA_TOP) ||
@@ -270,10 +271,27 @@
                     getFacetDescription(meta, range, value),
                     ComputeType.ADVANCE,
                     stateId, hash, value.getName(), value.getType()));
+                newFacets.add(new BedQualityInterpolFacet((idx << 8) + i++,
+                    getFacetName(value) + ".interpol",
+                    getFacetInterpolDescription(meta, range, value),
+                    ComputeType.ADVANCE,
+                    stateId, hash, value.getName(), value.getType()));
             }
         }
     }
 
+    protected String getFacetInterpolDescription(CallMeta meta,
+                                                 DateRange range,
+                                                 BedQualityResultValue value) {
+        String part1 = getFacetDescription(meta, range, value);
+        /* We could add a step description here */
+        return part1 + " " + Resources.getMsg(meta,
+                                              I18N_INTERPOL_SUFFIX,
+                                              I18N_INTERPOL_SUFFIX,
+                                              new Object[] {});
+    }
+
+
     protected String getFacetDescription(CallMeta meta,
                                          DateRange range,
                                          BedQualityResultValue value) {

http://dive4elements.wald.intevation.org