Mercurial > dive4elements > river
diff flys-artifacts/src/main/java/de/intevation/flys/utils/FLYSUtils.java @ 2552:c7dbe696286c
Refactored the wq data fields.
flys-artifacts/trunk@4065 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Raimund Renkert <raimund.renkert@intevation.de> |
---|---|
date | Thu, 16 Feb 2012 12:36:25 +0000 |
parents | d69d8dea78dc |
children | ac528b883b47 ba46af45b6e4 |
line wrap: on
line diff
--- a/flys-artifacts/src/main/java/de/intevation/flys/utils/FLYSUtils.java Thu Feb 16 12:30:33 2012 +0000 +++ b/flys-artifacts/src/main/java/de/intevation/flys/utils/FLYSUtils.java Thu Feb 16 12:36:25 2012 +0000 @@ -57,6 +57,12 @@ */ public static enum WQ_MODE { QFREE, QGAUGE, WFREE, WGAUGE, NONE }; + /** + * An enum that represents the 4 possible WQ input modes in FLYS. The 4 + * values are + * <i>ADAPTED</i> <i>SINGLE</i> <i>RANGE</i> and <i>NONE</i>. + */ + public static enum WQ_INPUT { ADAPTED, SINGLE, RANGE, NONE }; public static final Pattern NUMBERS_PATTERN = Pattern.compile("\\D*(\\d++.\\d*)\\D*"); @@ -169,16 +175,20 @@ return WQ_MODE.NONE; } - String mode = flys.getDataAsString("wq_mode"); - Boolean free = flys.getDataAsBoolean("wq_free"); - - free = free != null ? free : false; + String values = flys.getDataAsString("wq_values"); + Boolean isQ = flys.getDataAsBoolean("wq_mode"); - if (mode != null && mode.equals("Q")) { - return free ? WQ_MODE.QFREE : WQ_MODE.QGAUGE; + if (values != null) { + return isQ ? WQ_MODE.QGAUGE : WQ_MODE.WGAUGE; } - else if (mode != null && mode.equals("W")) { - return free ? WQ_MODE.WFREE : WQ_MODE.WGAUGE; + + Boolean isFree = flys.getDataAsBoolean("wq_free"); + + if (isQ) { + return isFree ? WQ_MODE.QFREE : WQ_MODE.QGAUGE; + } + else if (!isQ) { + return isFree ? WQ_MODE.WFREE : WQ_MODE.WGAUGE; } else { return WQ_MODE.NONE; @@ -186,6 +196,26 @@ } + public static WQ_INPUT getWQInputMode(FLYSArtifact flys) { + if (flys == null) { + return WQ_INPUT.NONE; + } + + Boolean selection = flys.getDataAsBoolean("wq_selection"); + String adapted = flys.getDataAsString("wq_values"); + + if(adapted != null && adapted.length() > 0) { + return WQ_INPUT.ADAPTED; + } + + if (selection != null && selection) { + return WQ_INPUT.RANGE; + } + else { + return WQ_INPUT.SINGLE; + } + } + public static KM_MODE getKmRangeMode(FLYSArtifact flys) { String mode = flys.getDataAsString("ld_mode"); @@ -337,11 +367,9 @@ * @return the Ws. */ public static double[] getWs(FLYSArtifact flys) { - double[] kmRange = getKmRange(flys); - // XXX this is not nice! if (flys instanceof WINFOArtifact) { - return ((WINFOArtifact) flys).getWs(kmRange); + return ((WINFOArtifact) flys).getWs(); } logger.warn("This method currently supports WINFOArtifact only!");