Mercurial > dive4elements > gnv-client
comparison gnv-artifacts/src/main/java/de/intevation/gnv/exports/DefaultDataCollector.java @ 233:2ceb4bf51cba
Added DataCollector which collects data used for exports.
gnv-artifacts/trunk@301 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Mon, 09 Nov 2009 09:43:52 +0000 |
parents | |
children | e964a3d8f7bc |
comparison
equal
deleted
inserted
replaced
232:3d6d89bcbf42 | 233:2ceb4bf51cba |
---|---|
1 package de.intevation.gnv.exports; | |
2 | |
3 import java.util.List; | |
4 import java.util.ArrayList; | |
5 | |
6 import org.apache.log4j.Logger; | |
7 | |
8 import de.intevation.gnv.geobackend.base.Result; | |
9 import de.intevation.gnv.geobackend.base.ResultDescriptor; | |
10 import de.intevation.gnv.transition.exception.TransitionException; | |
11 | |
12 | |
13 /** | |
14 * @author Ingo Weinzierl (ingo.weinzierl@intevation.de) | |
15 */ | |
16 public class DefaultDataCollector | |
17 implements Export.DataCollector | |
18 { | |
19 private Logger log = Logger.getLogger(DefaultDataCollector.class); | |
20 | |
21 protected ResultDescriptor rd; | |
22 protected String [] names; | |
23 | |
24 | |
25 public DefaultDataCollector(String[] names) { | |
26 this.names = names; | |
27 } | |
28 | |
29 public void init(Result res) { | |
30 rd = res.getResultDescriptor(); | |
31 } | |
32 | |
33 public String[] getData(Result result) | |
34 throws TransitionException { | |
35 | |
36 if (rd == null) | |
37 init(result); | |
38 | |
39 List entries = new ArrayList(); | |
40 | |
41 int[] indices = rd.getColumnIndices(names); | |
42 for (int i = 0; i < names.length; ++i) { | |
43 entries.add(result.getString(indices[i])); | |
44 } | |
45 | |
46 return (String[]) entries.toArray((new String[entries.size()])); | |
47 } | |
48 } |