diff gnv-artifacts/src/main/java/de/intevation/gnv/utils/VectorDataProcessor.java @ 1071:9bb1979aabbe

Added a new output state and chart type for vertical profiles using vector data. gnv-artifacts/trunk@1168 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Mon, 07 Jun 2010 15:00:23 +0000
parents 70653c29fc1d
children 846b2b70b2e0
line wrap: on
line diff
--- a/gnv-artifacts/src/main/java/de/intevation/gnv/utils/VectorDataProcessor.java	Mon Jun 07 14:42:42 2010 +0000
+++ b/gnv-artifacts/src/main/java/de/intevation/gnv/utils/VectorDataProcessor.java	Mon Jun 07 15:00:23 2010 +0000
@@ -21,14 +21,12 @@
 
     private static Logger logger = Logger.getLogger(VectorDataProcessor.class);
 
-    public static final String[] COLUMNS = {
-       "YORDINATE", "XORDINATE", "GROUP1", "GROUP2", "GROUP3", "GAPID", "SERIES"
-    };
-
-    public static Collection<Result> process(Collection<Result> input) {
+    public static Collection<Result> process(
+        Collection<Result> input, String[] columnNames)
+    {
         logger.info("Process vector data (" + input.size() + " items)");
 
-        ResultDescriptor outDescriptor = initResultDescriptor();
+        ResultDescriptor outDescriptor = initResultDescriptor(columnNames);
         ResultDescriptor inDescriptor  = null;
         int[]            inIndices     = null;
         int              columns       = -1;
@@ -39,7 +37,7 @@
         for (Result result: input) {
             if (inDescriptor == null || inIndices == null) {
                 inDescriptor = result.getResultDescriptor();
-                inIndices    = inDescriptor.getColumnIndices(COLUMNS);
+                inIndices    = inDescriptor.getColumnIndices(columnNames);
                 columns      = inDescriptor.getColumnCount();
             }
 
@@ -47,7 +45,7 @@
             for (int i = 0; i < columns; i++) {
                 String name = inDescriptor.getColumnName(i);
 
-                if (!StringUtils.contains(COLUMNS, name)) {
+                if (!StringUtils.contains(columnNames, name)) {
                     List list = (List) series.get(name);
                     if (list == null)
                         list = new ArrayList();
@@ -90,12 +88,12 @@
     }
 
 
-    public static ResultDescriptor initResultDescriptor() {
+    public static ResultDescriptor initResultDescriptor(String[] columnNames) {
         logger.debug("Init ResultDescriptor for outgoing results.");
 
         ResultDescriptor desc = new DefaultResultDescriptor();
 
-        for (String name: COLUMNS) {
+        for (String name: columnNames) {
             desc.addColumn(name, "java.lang.String");
         }
 

http://dive4elements.wald.intevation.org