Mercurial > dive4elements > gnv-client
view gnv-artifacts/src/main/java/de/intevation/gnv/exports/ShapeDataCollector.java @ 778:9a828e5a2390
Removed trailing whitespace
gnv-artifacts/trunk@851 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Sascha L. Teichmann <sascha.teichmann@intevation.de> |
---|---|
date | Mon, 29 Mar 2010 07:58:51 +0000 |
parents | a0e63136954e |
children | b1f5f2a8840f |
line wrap: on
line source
package de.intevation.gnv.exports; import org.apache.log4j.Logger; import com.vividsolutions.jts.io.WKTReader; import com.vividsolutions.jts.io.ParseException; import com.vividsolutions.jts.geom.Point; import de.intevation.gnv.geobackend.base.Result; import de.intevation.gnv.state.exception.StateException; /** * This class is a specialization of {@link #DefaultDataCollector}. The * difference between these classes is, that this class extracts points served * by a wkt string. * * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a> */ public class ShapeDataCollector extends DefaultDataCollector { /** * Logger used for logging with log4j. */ private Logger log = Logger.getLogger(ShapeDataCollector.class); /** * WKTReader to parse points from wkt strings. */ protected WKTReader wktReader = new WKTReader(); /** * Constructor * * @param names Attributes used to be extracted. */ public ShapeDataCollector(String[] names) { super(names); } /** * This method takes point from wkt strings as well and split them into x * and y coordinate. * * @see de.intevation.gnv.exports.Export.DataCollector#getData(Result) */ public String[] getData(Result result) throws StateException { if (rd == null) init(result); try { String [] entries = new String[names.length+1]; int j = 0; for (int i = 0; i < names.length; i++) { if (names[i].equals("SHAPE")) { Point p = (Point)wktReader.read(result.getString("SHAPE")); entries[j++] = ""+p.getX(); entries[j++] = ""+p.getY(); } else { entries[j++] = result.getString(names[i]); } } return entries; } catch (ParseException pe) { log.error(pe, pe); throw new StateException( "Error occured while parsing a Point from WKT."); } } } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 :