diff artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/salix/SalixLineState.java @ 9347:08f46ccd37ba

salix.regional refactoring
author gernotbelger
date Tue, 31 Jul 2018 16:04:01 +0200
parents a978b601a034
children 2aec052d4088
line wrap: on
line diff
--- a/artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/salix/SalixLineState.java	Tue Jul 31 15:48:35 2018 +0200
+++ b/artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/salix/SalixLineState.java	Tue Jul 31 16:04:01 2018 +0200
@@ -77,25 +77,31 @@
 
         final List<SalixLineCalculationNoScenarioResult> resultList = results.getResults();
 
+        int facetIndex = 0;
+
         if (!resultList.isEmpty()) {
-            facets.add(SalixLineProcessor.createSalixLineFacet(context, hash, this.id, resultList.get(0), 0, 0));
-            facets.add(SalixLineProcessor.createSalixMnwMwFacet(context, hash, this.id, resultList.get(0), 0, 0));
+            facets.add(SalixLineProcessor.createSalixLineFacet(context, hash, this.id, facetIndex++, 0));
+            facets.add(SalixLineProcessor.createSalixMnwMwFacet(context, hash, this.id, facetIndex++, 0));
+
             if (resultList.get(0) instanceof SalixLineCalculationRegionalResult) {
+
                 final SalixLineCalculationRegionalResult result = (SalixLineCalculationRegionalResult) resultList.get(0);
+
                 for (int i = 0; i <= result.getScenarioCount() - 1; i++) {
                     final String sublabel = Resources.getMsg(context.getMeta(), "uinfo_salix_scenario_deltaw", "uinfo_salix_scenario_deltaw",
                             result.getScenarioLabel(i));
-                    facets.add(SalixLineProcessor.createSalixScenarioFacet(context, hash, this.id, result, i, 0, sublabel));
+                    // REMARK: using data index as facetIndex, as we know there is only one result of this type. Else we should just
+                    // increment
+                    facets.add(SalixLineProcessor.createSalixScenarioFacet(context, hash, this.id, i, 0, facetIndex++, sublabel));
                 }
-            }
-            else if (resultList.get(0) instanceof SalixLineCalculationSupraRegionalResult) {
+            } else if (resultList.get(0) instanceof SalixLineCalculationSupraRegionalResult) {
                 final String sublabel = Resources.getMsg(context.getMeta(), "uinfo_salix_scenario_supraregional");
-                facets.add(SalixLineProcessor.createSalixScenarioFacet(context, hash, this.id, resultList.get(0), 0, 0, sublabel));
+                facets.add(SalixLineProcessor.createSalixScenarioFacet(context, hash, this.id, 0, 0, facetIndex++, sublabel));
             }
 
             else if (resultList.get(0) instanceof SalixLineCalculationHistoricalResult) {
                 final String sublabel = Resources.getMsg(context.getMeta(), "uinfo_salix_scenario_historical");
-                facets.add(SalixLineProcessor.createSalixScenarioFacet(context, hash, this.id, resultList.get(0), 0, 0, sublabel));
+                facets.add(SalixLineProcessor.createSalixScenarioFacet(context, hash, this.id, 0, 0, facetIndex++, sublabel));
             }
 
             final Facet csv = new DataFacet(FacetTypes.CSV, "CSV data", ComputeType.ADVANCE, hash, this.id);

http://dive4elements.wald.intevation.org