Mercurial > dive4elements > river
diff flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/WQ.java @ 2087:bda04ae1154f
#196 Localized the WQ labels in CSV exports.
flys-artifacts/trunk@3609 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Fri, 06 Jan 2012 09:38:58 +0000 |
parents | 03fbf1b30e72 |
children | 5ff481ab24a1 |
line wrap: on
line diff
--- a/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/WQ.java Fri Jan 06 08:06:00 2012 +0000 +++ b/flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/WQ.java Fri Jan 06 09:38:58 2012 +0000 @@ -1,5 +1,8 @@ package de.intevation.flys.artifacts.model; +import java.util.regex.Matcher; +import java.util.regex.Pattern; + import de.intevation.flys.utils.DataUtil; import gnu.trove.TDoubleArrayList; @@ -9,6 +12,10 @@ public class WQ extends NamedObjectImpl { + public static final Pattern NUMBERS_PATTERN = + Pattern.compile("\\D*(\\d++.\\d*)\\D*"); + + private static Logger logger = Logger.getLogger(WQ.class); // TODO: s/w/ws/g @@ -47,6 +54,30 @@ q = new TDoubleArrayList(qs); } + + public Double getRawValue() { + if (name == null || name.length() == 0) { + // this should never happen + return null; + } + + Matcher m = NUMBERS_PATTERN.matcher(name); + + if (m.matches()) { + String raw = m.group(1); + + try { + return Double.valueOf(raw); + } + catch (NumberFormatException nfe) { + // do nothing + } + } + + return null; + } + + public void add(double w, double q) { this.w.add(w); this.q.add(q);