Mercurial > dive4elements > river
diff artifacts/src/main/java/org/dive4elements/river/artifacts/sinfo/flood_duration/FloodDurationProcessor.java @ 9612:f8308db94634
#20 UI, Diagramme
author | dnt_bjoernsen <d.tironi@bjoernsen.de> |
---|---|
date | Wed, 09 Oct 2019 16:17:16 +0200 |
parents | 08f46ccd37ba |
children | 26e113e8224f |
line wrap: on
line diff
--- a/artifacts/src/main/java/org/dive4elements/river/artifacts/sinfo/flood_duration/FloodDurationProcessor.java Wed Oct 09 15:58:46 2019 +0200 +++ b/artifacts/src/main/java/org/dive4elements/river/artifacts/sinfo/flood_duration/FloodDurationProcessor.java Wed Oct 09 16:17:16 2019 +0200 @@ -18,9 +18,9 @@ import org.dive4elements.artifacts.CallContext; import org.dive4elements.river.artifacts.common.AbstractCalculationResult; import org.dive4elements.river.artifacts.common.AbstractProcessor; -import org.dive4elements.river.artifacts.common.ResultFacet; import org.dive4elements.river.artifacts.resources.Resources; import org.dive4elements.river.artifacts.sinfo.common.SInfoResultType; +import org.dive4elements.river.artifacts.sinfo.flood_duration.FloodDurationCalculationResult.Infrastructure; import org.dive4elements.river.artifacts.sinfo.flood_duration.FloodDurationCalculationResult.ValueGetter; import org.dive4elements.river.artifacts.states.DefaultState.ComputeType; import org.dive4elements.river.exports.DiagramGenerator; @@ -39,8 +39,6 @@ private static final String FACET_FLOOD_DURATION_RIGHT = "sinfo_facet_flood_duration.right"; - private static final String FACET_FLOOD_DURATION_DESCRIPTION = "sinfo_facet_flood_duration.description"; - private static final String FACET_MAIN_VALUE_DURATION = "mainvalue.duration"; private static final String FACET_MAIN_VALUE_DURATION_DESCRIPTION = "mainvalue.duration.description"; @@ -60,18 +58,11 @@ } public static Facet createFloodDurationFacet(final CallContext context, final String hash, final String id, final AbstractCalculationResult result, - final int facetIndex, final int resultIndex) { + final int facetIndex, final int resultIndex, final Infrastructure infrastructure) { - if (facetIndex == 0) { - final String description = Resources.getMsg(context.getMeta(), FACET_FLOOD_DURATION_DESCRIPTION, FACET_FLOOD_DURATION_DESCRIPTION, - SInfoResultType.localizeRiverside(context, AttributeKey.LEFT)); - return new ResultFacet(facetIndex, resultIndex, FACET_FLOOD_DURATION_LEFT, description, I18N_AXIS_LABEL, ComputeType.ADVANCE, id, hash); - } - else { - final String description = Resources.getMsg(context.getMeta(), FACET_FLOOD_DURATION_DESCRIPTION, FACET_FLOOD_DURATION_DESCRIPTION, - SInfoResultType.localizeRiverside(context, AttributeKey.RIGHT)); - return new ResultFacet(facetIndex, resultIndex, FACET_FLOOD_DURATION_RIGHT, description, I18N_AXIS_LABEL, ComputeType.ADVANCE, id, hash); - } + final String description = infrastructure.getFloodDurationLabel(context); + final String facetName = infrastructure.getRiverside() == AttributeKey.LEFT ? FACET_FLOOD_DURATION_LEFT : FACET_FLOOD_DURATION_RIGHT; + return new InfrastructureResultFacet(facetIndex, resultIndex, facetName, description, I18N_AXIS_LABEL, id, hash, infrastructure); } public static Facet createMainValueDurationFacet(final CallContext context, final String hash, final String id, final FloodDurationCalculationResult result, @@ -89,12 +80,8 @@ final String facetName = bundle.getFacetName(); - if (FACET_FLOOD_DURATION_LEFT.contentEquals(facetName)) { - return buildInfrastructureSeries(generator, bundle, theme, visible, AttributeKey.LEFT); - } - - if (FACET_FLOOD_DURATION_RIGHT.contentEquals(facetName)) - return buildInfrastructureSeries(generator, bundle, theme, visible, AttributeKey.RIGHT); + if (FACET_FLOOD_DURATION_LEFT.contentEquals(facetName) || FACET_FLOOD_DURATION_RIGHT.contentEquals(facetName)) + return buildInfrastructureSeries(generator, bundle, theme, visible); if (FACET_MAIN_VALUE_DURATION.contentEquals(facetName)) { @@ -119,12 +106,15 @@ throw new UnsupportedOperationException(error); } - private String buildInfrastructureSeries(final DiagramGenerator generator, final ArtifactAndFacet bundle, final ThemeDocument theme, final boolean visible, - final AttributeKey riverside) { + private String buildInfrastructureSeries(final DiagramGenerator generator, final ArtifactAndFacet bundle, final ThemeDocument theme, + final boolean visible) { + + final InfrastructureResultFacet infFacet = (InfrastructureResultFacet) bundle.getFacet(); + final Infrastructure infrastructure = infFacet.getInfrastructure(); final FloodDurationCalculationResult data = (FloodDurationCalculationResult) getResult(generator, bundle); - final double[][] points = data.getInfrastructurePoints(SInfoResultType.floodDuration, riverside); + final double[][] points = data.getInfrastructurePoints(SInfoResultType.floodDuration, infrastructure); return buildSeriesForPoints(points, generator, bundle, theme, visible, null); }