Mercurial > dive4elements > river
view flys-artifacts/src/main/java/de/intevation/flys/exports/ATExporter.java @ 4937:ce7d8e2a7e02
Fixed mainvalues artifact.
* Use winfo artifact to get location information.
* use ld_locations as data key.
author | Raimund Renkert <rrenkert@intevation.de> |
---|---|
date | Thu, 31 Jan 2013 13:20:05 +0100 |
parents | f86c8d75fd85 |
children | b878dce3a671 |
line wrap: on
line source
package de.intevation.flys.exports; import java.io.OutputStream; import java.io.OutputStreamWriter; import java.io.IOException; import org.w3c.dom.Document; import org.apache.log4j.Logger; import de.intevation.artifacts.Artifact; import de.intevation.artifacts.CallContext; import de.intevation.artifactdatabase.state.ArtifactAndFacet; import de.intevation.artifactdatabase.state.Settings; import de.intevation.flys.artifacts.FLYSArtifact; import de.intevation.flys.artifacts.model.WQ; import de.intevation.flys.collections.FLYSArtifactCollection; import de.intevation.flys.utils.FLYSUtils; import de.intevation.flys.artifacts.access.RangeAccess; public class ATExporter implements OutGenerator { private static Logger logger = Logger.getLogger(ATExporter.class); public static final String DEFAULT_ENCODING = "UTF-8"; protected WQ data; protected CallContext context; protected OutputStream out; protected FLYSArtifact master; protected FLYSArtifactCollection collection; public ATExporter() { } @Override public void init(Document request, OutputStream out, CallContext context) { this.context = context; this.out = out; } @Override public void setMasterArtifact(Artifact master) { this.master = (FLYSArtifact) master; } @Override public void setCollection(FLYSArtifactCollection collection) { this.collection = collection; } @Override public void doOut( ArtifactAndFacet artifactf, Document attr, boolean visible ) { data = (WQ)artifactf.getData(context); } @Override public void generate() throws IOException { if (data == null) { logger.debug("no W/Q data"); return; } ATWriter at; try { at = new ATWriter(data); } catch (IllegalArgumentException iae) { logger.error("creating ATWriter failed", iae); throw new IOException(iae); } String river = FLYSUtils.getRiver(master).getName(); RangeAccess rangeAccess = new RangeAccess(master, context); double[] kms = rangeAccess.getLocations(); at.write( new OutputStreamWriter(out, DEFAULT_ENCODING), context.getMeta(), river, kms[0]); } /** * Returns an instance of <i>EmptySettings</i> currently! * * @return an instance of <i>EmptySettings</i>. */ @Override public Settings getSettings() { return new EmptySettings(); } /** * This method is not implemented! * * @param settings A settings object. */ @Override public void setSettings(Settings settings) { // do nothing here } } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :