Mercurial > dive4elements > river
diff artifacts/src/main/java/org/dive4elements/river/artifacts/states/DischargeState.java @ 9390:f575ff573cbb
"Name der Peilung" columname minfo.
author | gernotbelger |
---|---|
date | Thu, 09 Aug 2018 15:22:31 +0200 |
parents | e4606eae8ea5 |
children |
line wrap: on
line diff
--- a/artifacts/src/main/java/org/dive4elements/river/artifacts/states/DischargeState.java Thu Aug 09 12:03:30 2018 +0200 +++ b/artifacts/src/main/java/org/dive4elements/river/artifacts/states/DischargeState.java Thu Aug 09 15:22:31 2018 +0200 @@ -8,85 +8,72 @@ package org.dive4elements.river.artifacts.states; -import java.util.List; import java.util.Collections; import java.util.Comparator; +import java.util.List; import org.apache.log4j.Logger; - import org.dive4elements.artifacts.Artifact; import org.dive4elements.artifacts.CallContext; - import org.dive4elements.artifacts.common.model.KVP; - +import org.dive4elements.river.artifacts.D4EArtifact; import org.dive4elements.river.model.DischargeZone; import org.dive4elements.river.model.River; - -import org.dive4elements.river.artifacts.D4EArtifact; import org.dive4elements.river.utils.RiverUtils; - public class DischargeState extends MultiIntArrayState { - public static final String MAIN_CHANNEL = "main_channel"; + public static final String MAIN_CHANNEL = "main_channel"; public static final String TOTAL_CHANNEL = "total_channel"; - private static final Logger log = Logger.getLogger(DischargeState.class); - /** Let client display a matrix. */ @Override public String getUIProvider() { - return "parameter-matrix"; + return "parameter-matrix-flowvelocity"; } - /** * This method fetches all DischargeZones for a given river (extracted from * <i>artifact</i>) and returns a KVP[] where the key is the ID of the * DischargeZone and the value is a string that consists of lower discharge * and upper discharge. * - * @param artifact Needs to be a D4EArtifact that provides river - * information. - * @param parameterName The name of a parameter. + * @param artifact + * Needs to be a D4EArtifact that provides river + * information. + * @param parameterName + * The name of a parameter. * * @return a KVP[]. */ @Override - protected KVP<Integer, String>[] getOptions( - Artifact artifact, - String parameterName - ) - throws IllegalArgumentException - { + protected KVP<Integer, String>[] getOptions(final Artifact artifact, final String parameterName) throws IllegalArgumentException { if (!testParameterName(parameterName)) { - throw new IllegalArgumentException( - "Invalid parameter for state: '" + parameterName + "'"); + throw new IllegalArgumentException("Invalid parameter for state: '" + parameterName + "'"); } - List<DischargeZone> zones = getDischargeZones(artifact); + final List<DischargeZone> zones = getDischargeZones(artifact); - KVP[] kvp = new KVP[zones.size()]; + final KVP[] kvp = new KVP[zones.size()]; Collections.sort(zones, new Comparator<DischargeZone>() { @Override - public int compare(DischargeZone a, DischargeZone b) { + public int compare(final DischargeZone a, final DischargeZone b) { return a.getValue().compareTo(b.getValue()); } }); int i = 0; - for (DischargeZone zone: zones) { - String lower = zone.getLowerDischarge(); - String upper = zone.getUpperDischarge(); + for (final DischargeZone zone : zones) { + final String lower = zone.getLowerDischarge(); + final String upper = zone.getUpperDischarge(); if (lower.equals(upper)) { kvp[i] = new KVP(zone.getId(), lower); - } - else { + } else { kvp[i] = new KVP(zone.getId(), lower + " - " + upper); } i++; @@ -95,81 +82,67 @@ return kvp; } - @Override - protected String getLabelFor( - CallContext cc, - String parameterName, - int value - ) throws IllegalArgumentException - { + protected String getLabelFor(final CallContext cc, final String parameterName, final int value) throws IllegalArgumentException { if (!testParameterName(parameterName)) { - throw new IllegalArgumentException( - "Invalid parameter for state: '" + parameterName + "'"); + throw new IllegalArgumentException("Invalid parameter for state: '" + parameterName + "'"); } - DischargeZone zone = DischargeZone.getDischargeZoneById(value); + final DischargeZone zone = DischargeZone.getDischargeZoneById(value); if (zone == null) { - throw new IllegalArgumentException( - "Invalid id for DischargeZone: '" + value + "'"); + throw new IllegalArgumentException("Invalid id for DischargeZone: '" + value + "'"); } - String lo = zone.getLowerDischarge(); - String hi = zone.getUpperDischarge(); + final String lo = zone.getLowerDischarge(); + final String hi = zone.getUpperDischarge(); - return hi != null && !lo.equals(hi) - ? lo + " - " + hi - : lo; + return hi != null && !lo.equals(hi) ? lo + " - " + hi : lo; } - /** * This method might be used to test, if a parameter name is handled by this * state. * - * @param parameterName The name of a parameter. + * @param parameterName + * The name of a parameter. * * @return true, if parameterName is one of <i>MAIN_CHANNEL</i> or - * <i>TOTAL_CHANNEL</i>. Otherwise false. + * <i>TOTAL_CHANNEL</i>. Otherwise false. */ - protected boolean testParameterName(String parameterName) { + protected boolean testParameterName(final String parameterName) { if (parameterName == null || parameterName.length() == 0) { return false; - } - else if (parameterName.equals(MAIN_CHANNEL)) { + } else if (parameterName.equals(MAIN_CHANNEL)) { return true; - } - else if (parameterName.equals(TOTAL_CHANNEL)) { + } else if (parameterName.equals(TOTAL_CHANNEL)) { return true; - } - else { + } else { return false; } } - /** * Returns all discharge zones for a given river. The river information is * extracted from <i>artifact</i> using RiverUtils.getRiver(). * - * @param artifact Needs to be a D4EArtifact that stores a rivername. + * @param artifact + * Needs to be a D4EArtifact that stores a rivername. * * @return a list of DischargeZones. * - * @throws IllegalArgumentException if no river information is provided by - * <i>artifact</i>. + * @throws IllegalArgumentException + * if no river information is provided by + * <i>artifact</i>. */ - protected List<DischargeZone> getDischargeZones(Artifact artifact) - throws IllegalArgumentException - { - River river = RiverUtils.getRiver((D4EArtifact) artifact); + protected List<DischargeZone> getDischargeZones(final Artifact artifact) throws IllegalArgumentException { + final River river = RiverUtils.getRiver((D4EArtifact) artifact); if (river == null) { throw new IllegalArgumentException("No river found"); } - List<DischargeZone> zones = DischargeZone.getDischargeZones(river); + final List<DischargeZone> zones = DischargeZone.getDischargeZones(river); log.debug("Found " + zones.size() + " DischargeZones.");