comparison flys-artifacts/src/main/java/de/intevation/flys/exports/DischargeLongitudinalSectionExporter.java @ 407:9eb5f0c8fe7f

Added a CSV exporter for the discharge longitudinal section computation. flys-artifacts/trunk@1858 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Mon, 09 May 2011 09:55:47 +0000
parents
children 340dc41a7ea3
comparison
equal deleted inserted replaced
406:663aa18bee7f 407:9eb5f0c8fe7f
1 package de.intevation.flys.exports;
2
3 import org.apache.log4j.Logger;
4
5 import au.com.bytecode.opencsv.CSVWriter;
6
7 import de.intevation.artifacts.Artifact;
8
9 import de.intevation.flys.artifacts.WINFOArtifact;
10 import de.intevation.flys.artifacts.model.WQCKms;
11 import de.intevation.flys.artifacts.model.WQKms;
12
13 /**
14 * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a>
15 */
16 public class DischargeLongitudinalSectionExporter extends WaterlevelExporter {
17
18 /** The logger used in this exporter.*/
19 private static Logger logger =
20 Logger.getLogger(DischargeLongitudinalSectionExporter.class);
21
22
23 @Override
24 protected void addData(Artifact artifact) {
25 WINFOArtifact winfo = (WINFOArtifact) artifact;
26 WQKms[] wqkms = winfo.getDischargeLongitudinalSectionData();
27
28 logger.debug("Got " + wqkms != null ? wqkms.length : 0 + " WQKms obj.");
29
30 data.add(wqkms);
31 }
32
33
34 @Override
35 protected void wQKms2CSV(CSVWriter writer, WQKms wqkms) {
36 logger.debug("WaterlevelExporter.wQKms2CSV");
37
38 int size = wqkms.size();
39 double[] result = new double[4];
40
41 for (int i = 0; i < size; i ++) {
42 result = wqkms.get(i, result);
43
44 String wc = "";
45 if (wqkms instanceof WQCKms) {
46 wc = Double.toString(result[3]);
47 }
48
49 writer.writeNext(new String[] {
50 Double.toString(result[2]),
51 Double.toString(result[0]),
52 wc,
53 Double.toString(result[1])
54 });
55 }
56 }
57 }
58 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org