Mercurial > dive4elements > river
annotate backend/src/main/java/org/dive4elements/river/importer/parsers/DA50Parser.java @ 8031:6954ac9b7591
Renamed ImportSedimentYield to ImportSedimentLoadLS.
author | Sascha L. Teichmann <teichmann@intevation.de> |
---|---|
date | Fri, 11 Jul 2014 13:10:05 +0200 |
parents | 4c3ccf2b0304 |
children | 3bb1c62ad732 |
rev | line source |
---|---|
5844
4dd33b86dc61
Added header to river backend.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
1 /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde |
4dd33b86dc61
Added header to river backend.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
2 * Software engineering by Intevation GmbH |
4dd33b86dc61
Added header to river backend.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
3 * |
5992
4c3ccf2b0304
Removed trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5844
diff
changeset
|
4 * This file is Free Software under the GNU AGPL (>=v3) |
5844
4dd33b86dc61
Added header to river backend.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
5 * and comes with ABSOLUTELY NO WARRANTY! Check out the |
5992
4c3ccf2b0304
Removed trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5844
diff
changeset
|
6 * documentation coming with Dive4Elements River for details. |
5844
4dd33b86dc61
Added header to river backend.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
7 */ |
4dd33b86dc61
Added header to river backend.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
8 |
5829
18619c1e7c2a
Repaired internal references.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5828
diff
changeset
|
9 package org.dive4elements.river.importer.parsers; |
4730
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
10 |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
11 import java.util.ArrayList; |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
12 import java.util.Map; |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
13 import java.util.List; |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
14 import java.util.TreeMap; |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
15 |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
16 import java.io.File; |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
17 import java.io.IOException; |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
18 |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
19 import org.apache.log4j.Logger; |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
20 |
5829
18619c1e7c2a
Repaired internal references.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5828
diff
changeset
|
21 import org.dive4elements.river.importer.XY; |
4730
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
22 |
5829
18619c1e7c2a
Repaired internal references.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5828
diff
changeset
|
23 import org.dive4elements.artifacts.common.utils.FileTools; |
4730
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
24 |
5829
18619c1e7c2a
Repaired internal references.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5828
diff
changeset
|
25 import org.dive4elements.river.utils.EpsilonComparator; |
4735
94b39073f0f7
Moved EpsilonComparator to utils package becaus its not only useful for TIM parsing. Used EpsilonComparator in DA60 and DA66 case. Maybe TODO: Use in PRF, too.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4733
diff
changeset
|
26 |
4730
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
27 |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
28 /** |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
29 * To create cross-sections, generate: Map<double,list<xy>> from files |
4783
5f10f1a7456b
DA50Parser: Fix c/p errors.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4780
diff
changeset
|
30 * in da50 format. |
4730
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
31 */ |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
32 public class DA50Parser extends LineParser implements CrossSectionParser |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
33 { |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
34 /** Private logger. */ |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
35 private static Logger logger = Logger.getLogger(DA50Parser.class); |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
36 |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
37 /** The current line to which add points. */ |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
38 private List<XY> currentLine; |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
39 |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
40 /** Data collected so far, last element will be currentLine. */ |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
41 protected Map<Double, List<XY>> data; |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
42 |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
43 |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
44 /** Trivial constructor. */ |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
45 public DA50Parser() { |
4735
94b39073f0f7
Moved EpsilonComparator to utils package becaus its not only useful for TIM parsing. Used EpsilonComparator in DA60 and DA66 case. Maybe TODO: Use in PRF, too.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4733
diff
changeset
|
46 data = new TreeMap<Double, List<XY>>(EpsilonComparator.CMP); |
4730
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
47 } |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
48 |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
49 |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
50 /** Get the description of the cross section parsed. */ |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
51 @Override |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
52 public String getDescription() { |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
53 return FileTools.removeExtension(getFileName()); |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
54 } |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
55 |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
56 |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
57 /** Get the year of this cross sections measurement. */ |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
58 @Override |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
59 public Integer getYear() { |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
60 return null; |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
61 } |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
62 |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
63 |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
64 /** |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
65 * Return the data parsed. |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
66 * @return map of stations (km) to list of points. |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
67 */ |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
68 @Override |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
69 public Map<Double, List<XY>> getData() { |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
70 return data; |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
71 } |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
72 |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
73 |
4788
03c824858a40
DA50Parser: Doc, removed and added a TODO.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4784
diff
changeset
|
74 /** Walk a directory tree and attempt parsing all *.d50 files. */ |
4730
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
75 public void parseDA50s(File root, final Callback callback) { |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
76 |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
77 FileTools.walkTree(root, new FileTools.FileVisitor() { |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
78 @Override |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
79 public boolean visit(File file) { |
4788
03c824858a40
DA50Parser: Doc, removed and added a TODO.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4784
diff
changeset
|
80 // TODO check presence of TIM file. |
4730
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
81 if (file.isFile() && file.canRead() |
4780
562f631aab86
DA50Parser: Changed extension from w80 (wrong) to d50 (right).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4735
diff
changeset
|
82 && file.getName().toLowerCase().endsWith(".d50") |
4730
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
83 && (callback == null || callback.accept(file))) { |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
84 reset(); |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
85 try { |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
86 parse(file); |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
87 logger.info("parsing done"); |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
88 if (callback != null) { |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
89 callback.parsed(DA50Parser.this); |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
90 } |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
91 } |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
92 catch (IOException ioe) { |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
93 logger.error("IOException while parsing file"); |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
94 return false; |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
95 } |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
96 } |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
97 return true; |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
98 } |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
99 }); |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
100 } |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
101 |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
102 |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
103 /** Called before consuming first line of file. */ |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
104 public void reset() { |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
105 data.clear(); |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
106 currentLine = new ArrayList<XY>(); |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
107 } |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
108 |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
109 |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
110 /** |
4783
5f10f1a7456b
DA50Parser: Fix c/p errors.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4780
diff
changeset
|
111 * Called for each line. Try to extract info from a da50 line. |
4730
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
112 */ |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
113 @Override |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
114 protected void handleLine(int lineNum, String line) { |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
115 String pointId = line.substring(0,2); |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
116 String streetId = line.substring(2,9); |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
117 String station = line.substring(9,18); |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
118 String free = line.substring(18,20); |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
119 String gkLRight = line.substring(20,30); |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
120 String gkLHigh = line.substring(30,40); |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
121 String gkRRight = line.substring(40,50); |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
122 String gkRHigh = line.substring(50,60); |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
123 String distance = line.substring(60,70); |
4784
170cf87a042a
DA50Parser: Added very basic DA50 parsing (no intersetions or correlation yet
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4783
diff
changeset
|
124 |
170cf87a042a
DA50Parser: Added very basic DA50 parsing (no intersetions or correlation yet
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4783
diff
changeset
|
125 // TODO Intersect/Correlate these with e.g. TIM files. |
170cf87a042a
DA50Parser: Added very basic DA50 parsing (no intersetions or correlation yet
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4783
diff
changeset
|
126 // TODO note that as-is these points are really useless. |
170cf87a042a
DA50Parser: Added very basic DA50 parsing (no intersetions or correlation yet
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4783
diff
changeset
|
127 currentLine = new ArrayList<XY>(); |
170cf87a042a
DA50Parser: Added very basic DA50 parsing (no intersetions or correlation yet
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4783
diff
changeset
|
128 currentLine.add(new XY(0, 10,0)); |
170cf87a042a
DA50Parser: Added very basic DA50 parsing (no intersetions or correlation yet
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4783
diff
changeset
|
129 currentLine.add(new XY(Double.parseDouble(distance), 10, 1)); |
4730
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
130 } |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
131 |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
132 |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
133 /** Called when file is fully consumed. */ |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
134 @Override |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
135 protected void finish() { |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
136 logger.info("Parsed " + data.size() + " lines"); |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
137 } |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
138 |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
139 |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
140 /** Parses files given as arguments. */ |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
141 public static void main(String [] args) { |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
142 |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
143 DA50Parser parser = new DA50Parser(); |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
144 |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
145 logger.warn("Start parsing files."); |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
146 for (String arg: args) { |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
147 parser.parseDA50s(new File(arg), null); |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
148 logger.warn("Parsing a file."); |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
149 } |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
150 logger.error("Finished parsing files."); |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
151 } |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
152 } |
1aca30035932
Initial empty version of DA50Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
153 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |