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);

http://dive4elements.wald.intevation.org