# HG changeset patch # User Felix Wolfsteller # Date 1383319519 -3600 # Node ID ab17c76611f9ae29c39eedee9365d68f62221940 # Parent 6bfa1911904053a26a3dbb7f45c4362580edb6b1 issue1658: Let SedimentYieldArtifact create facet based on Sed.L. unit. diff -r 6bfa19119040 -r ab17c76611f9 artifacts/src/main/java/org/dive4elements/river/artifacts/SedimentYieldArtifact.java --- a/artifacts/src/main/java/org/dive4elements/river/artifacts/SedimentYieldArtifact.java Fri Nov 01 16:23:32 2013 +0100 +++ b/artifacts/src/main/java/org/dive4elements/river/artifacts/SedimentYieldArtifact.java Fri Nov 01 16:25:19 2013 +0100 @@ -146,9 +146,10 @@ String code = getDatacageIDValue(data); if (code != null) { - String fraction = SedimentLoadFactory.getSedimentYieldFractionName(Integer.valueOf(code)); + int id = Integer.valueOf(code); + String fraction = SedimentLoadFactory.getSedimentYieldFractionName(id); String fractionName = Resources.getMsg(callMeta, fraction, "-"); - Date[] dates = SedimentLoadFactory.getSedimentYieldTimes(Integer.valueOf(code)); + Date[] dates = SedimentLoadFactory.getSedimentYieldTimes(id); Calendar date = Calendar.getInstance(); date.setTime(dates[0]); String name = fractionName + " - " + date.get(Calendar.YEAR); @@ -157,27 +158,65 @@ name += " - " + date.get(Calendar.YEAR); } + boolean unitIsTA = + SedimentLoadFactory.getSedimentYieldUnitName(id).startsWith("t"); + String facetType = ""; if (fraction.equals("coarse")) { - facetType = SEDIMENT_LOAD_COARSE; + if (unitIsTA) { + facetType = SEDIMENT_LOAD_TA_COARSE; + } + else { + facetType = SEDIMENT_LOAD_M3A_COARSE; + } } else if (fraction.equals("sand")) { - facetType = SEDIMENT_LOAD_SAND; + if (unitIsTA) { + facetType = SEDIMENT_LOAD_TA_SAND; + } + else { + facetType = SEDIMENT_LOAD_M3A_SAND; + } } else if (fraction.equals("fine_middle")) { - facetType = SEDIMENT_LOAD_FINEMIDDLE; + if (unitIsTA) { + facetType = SEDIMENT_LOAD_TA_FINEMIDDLE; + } + else { + facetType = SEDIMENT_LOAD_M3A_FINEMIDDLE; + } } else if (fraction.equals("susp_sand")) { - facetType = SEDIMENT_LOAD_SUSP_SAND; + if (unitIsTA) { + facetType = SEDIMENT_LOAD_TA_SUSP_SAND; + } + else { + facetType = SEDIMENT_LOAD_M3A_SAND; + } } else if (fraction.equals("susp_sand_bed")) { - facetType = SEDIMENT_LOAD_SUSP_SAND_BED; + if (unitIsTA) { + facetType = SEDIMENT_LOAD_TA_SUSP_SAND_BED; + } + else { + facetType = SEDIMENT_LOAD_M3A_SUSP_SAND_BED; + } } else if (fraction.equals("suspended_sediment")) { - facetType = SEDIMENT_LOAD_SUSP_SEDIMENT; + if (unitIsTA) { + facetType = SEDIMENT_LOAD_TA_SUSP_SEDIMENT; + } + else { + facetType = SEDIMENT_LOAD_M3A_SUSP_SEDIMENT; + } } else if (fraction.equals("total")) { - facetType = SEDIMENT_LOAD_TOTAL_LOAD; + if (unitIsTA) { + facetType = SEDIMENT_LOAD_TA_TOTAL_LOAD; + } + else { + facetType = SEDIMENT_LOAD_M3A_TOTAL_LOAD; + } } else { logger.error("Do not know fraction type " + fraction);