Mercurial > dive4elements > river
annotate flys-backend/src/main/java/de/intevation/flys/importer/parsers/W80Parser.java @ 4733:e2e615109a2e
Removed superfluous imports.
author | Sascha L. Teichmann <teichmann@intevation.de> |
---|---|
date | Sun, 30 Dec 2012 10:53:24 +0100 |
parents | 0df1cac6c4b5 |
children | 94b39073f0f7 |
rev | line source |
---|---|
4728
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
1 package de.intevation.flys.importer.parsers; |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
2 |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
3 import java.util.ArrayList; |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
4 import java.util.Map; |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
5 import java.util.List; |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
6 import java.util.TreeMap; |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
7 |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
8 import java.util.regex.Pattern; |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
9 |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
10 import java.io.File; |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
11 import java.io.IOException; |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
12 |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
13 import org.apache.log4j.Logger; |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
14 |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
15 import de.intevation.flys.importer.XY; |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
16 |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
17 import de.intevation.artifacts.common.utils.FileTools; |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
18 |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
19 |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
20 /** |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
21 * To create cross-sections, generate: Map<double,list<xy>> from files |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
22 * in da66 format. |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
23 */ |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
24 public class W80Parser extends LineParser implements CrossSectionParser |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
25 { |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
26 /** Private logger. */ |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
27 private static Logger logger = Logger.getLogger(W80Parser.class); |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
28 |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
29 /** Regex to match lines of files in da66 format. */ |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
30 private static final Pattern LINE_PATTERN = |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
31 Pattern.compile("[\\p{Alnum} ]{20}" + // ID |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
32 "[0-9 ]{10} " + // GK-right |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
33 "[0-9 ]{10} " + // GK-left |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
34 "[0-9 ]{6} " + // date |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
35 "[0-9 ]{1} " + // kind of exactness of measurement |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
36 "[0-9 ]{7} " + // height |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
37 "[0-9 ]{6} " + // date of height |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
38 "[0-9 ]{1} " + // kind of exactness of height-measurement |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
39 "[0-9 ]{3} " + // kind (only for NIV-points) |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
40 "[\\p{Alnum} ]{6} " + // date of point decline |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
41 "[\\p{Alnum} ]{8} " + // note for point |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
42 "[0-9 ]{2} " // actuality |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
43 ); |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
44 |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
45 // TODO define headers regex, use regex or remove it. |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
46 |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
47 |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
48 /** The current line to which add points. */ |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
49 private List<XY> currentLine; |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
50 |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
51 |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
52 /** Data collected so far, last element will be currentLine. */ |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
53 protected Map<Double, List<XY>> data; |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
54 |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
55 |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
56 /** Trivial constructor. */ |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
57 public W80Parser() { |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
58 data = new TreeMap<Double, List<XY>>(); |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
59 } |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
60 |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
61 |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
62 /** Get the description of the cross section parsed. */ |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
63 @Override |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
64 public String getDescription() { |
4729
0df1cac6c4b5
Removed removeExtension implementations, which have been moved to FileTools,
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4728
diff
changeset
|
65 return FileTools.removeExtension(getFileName()); |
4728
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
66 } |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
67 |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
68 |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
69 /** Get the year of this cross sections measurement. */ |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
70 @Override |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
71 public Integer getYear() { |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
72 return null; |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
73 } |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
74 |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
75 |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
76 /** |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
77 * Return the data parsed. |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
78 * @return map of stations (km) to list of points. |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
79 */ |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
80 @Override |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
81 public Map<Double, List<XY>> getData() { |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
82 return data; |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
83 } |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
84 |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
85 |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
86 public void parseW80s(File root, final Callback callback) { |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
87 |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
88 // TODO use the removeExtension/guess description and date. |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
89 FileTools.walkTree(root, new FileTools.FileVisitor() { |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
90 @Override |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
91 public boolean visit(File file) { |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
92 if (file.isFile() && file.canRead() |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
93 && file.getName().toLowerCase().endsWith(".w80") |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
94 && (callback == null || callback.accept(file))) { |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
95 reset(); |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
96 try { |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
97 parse(file); |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
98 logger.info("parsing done"); |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
99 if (callback != null) { |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
100 callback.parsed(W80Parser.this); |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
101 } |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
102 } |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
103 catch (IOException ioe) { |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
104 logger.error("IOException while parsing file"); |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
105 return false; |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
106 } |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
107 } |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
108 return true; |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
109 } |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
110 }); |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
111 } |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
112 |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
113 |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
114 /** Called before consuming first line of file. */ |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
115 public void reset() { |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
116 data.clear(); |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
117 currentLine = new ArrayList<XY>(); |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
118 } |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
119 |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
120 |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
121 /** |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
122 * Called for each line. Try to extract info from a da66 line. |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
123 */ |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
124 @Override |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
125 protected void handleLine(int lineNum, String line) { |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
126 String pointId = line.substring(0,20); |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
127 String gkRight = line.substring(20,30); |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
128 String gkHigh = line.substring(30,40); |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
129 String date = line.substring(40,46); |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
130 String locType = line.substring(46,47); |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
131 String height = line.substring(47,54); |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
132 String dateH = line.substring(54,60); |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
133 String typeH = line.substring(60,61); |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
134 String kindH = line.substring(61,64); |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
135 String dateDec = line.substring(64,70); |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
136 String note = line.substring(70,78); |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
137 String actual = line.substring(78); |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
138 } |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
139 |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
140 |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
141 /** Called when file is fully consumed. */ |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
142 @Override |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
143 protected void finish() { |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
144 logger.info("Parsed " + data.size() + " lines"); |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
145 } |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
146 |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
147 |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
148 /** Parses files given as arguments. */ |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
149 public static void main(String [] args) { |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
150 |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
151 W80Parser parser = new W80Parser(); |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
152 |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
153 logger.warn("Start parsing files."); |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
154 for (String arg: args) { |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
155 parser.parseW80s(new File(arg), null); |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
156 logger.warn("Parsing a file."); |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
157 } |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
158 logger.error("Finished parsing files."); |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
159 } |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
160 } |
ccae8b43e527
Initial empty version of W80Parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
161 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |