Mercurial > dive4elements > river
annotate flys-backend/src/main/java/de/intevation/flys/importer/parsers/SQRelationParser.java @ 5429:13596605e81f
Added new columns to sq relation importer to import all values from csv and use
measurement station instead of km.
author | Raimund Renkert <rrenkert@intevation.de> |
---|---|
date | Tue, 26 Mar 2013 14:02:58 +0100 |
parents | f63b39799d2d |
children | 3bd786772798 |
rev | line source |
---|---|
3328
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
1 package de.intevation.flys.importer.parsers; |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
2 |
3329
cc8fc6b29649
Store sq relations into database after parsing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
3328
diff
changeset
|
3 import java.io.File; |
cc8fc6b29649
Store sq relations into database after parsing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
3328
diff
changeset
|
4 import java.io.IOException; |
3328
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
5 import java.text.NumberFormat; |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
6 import java.text.ParseException; |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
7 import java.util.ArrayList; |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
8 import java.util.List; |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
9 import java.util.regex.Matcher; |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
10 import java.util.regex.Pattern; |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
11 |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
12 import org.apache.log4j.Logger; |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
13 |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
14 import de.intevation.flys.importer.ImportSQRelation; |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
15 import de.intevation.flys.importer.ImportSQRelationValue; |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
16 import de.intevation.flys.importer.ImportTimeInterval; |
5429
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
17 import de.intevation.flys.model.MeasurementStation; |
3328
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
18 |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
19 |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
20 public class SQRelationParser extends LineParser { |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
21 |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
22 private static final Logger log = |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
23 Logger.getLogger(SQRelationParser.class); |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
24 |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
25 private static final Pattern TIMERANGE_REGEX = |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
26 Pattern.compile(".*Zeitraum.*\\s(\\w*)-(\\w*).*"); |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
27 |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
28 private static final NumberFormat nf = |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
29 NumberFormat.getInstance(DEFAULT_LOCALE); |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
30 |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
31 |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
32 private List<ImportSQRelation> relations; |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
33 |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
34 private ImportSQRelation current; |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
35 |
3329
cc8fc6b29649
Store sq relations into database after parsing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
3328
diff
changeset
|
36 private String currentDescription; |
cc8fc6b29649
Store sq relations into database after parsing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
3328
diff
changeset
|
37 |
3328
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
38 |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
39 public SQRelationParser() { |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
40 relations = new ArrayList<ImportSQRelation>(); |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
41 } |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
42 |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
43 |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
44 public List<ImportSQRelation> getSQRelations() { |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
45 return relations; |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
46 } |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
47 |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
48 @Override |
3329
cc8fc6b29649
Store sq relations into database after parsing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
3328
diff
changeset
|
49 public void parse(File file) throws IOException { |
cc8fc6b29649
Store sq relations into database after parsing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
3328
diff
changeset
|
50 this.currentDescription = file.getName(); |
cc8fc6b29649
Store sq relations into database after parsing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
3328
diff
changeset
|
51 super.parse(file); |
cc8fc6b29649
Store sq relations into database after parsing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
3328
diff
changeset
|
52 } |
cc8fc6b29649
Store sq relations into database after parsing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
3328
diff
changeset
|
53 |
cc8fc6b29649
Store sq relations into database after parsing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
3328
diff
changeset
|
54 |
cc8fc6b29649
Store sq relations into database after parsing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
3328
diff
changeset
|
55 @Override |
3328
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
56 protected void reset() { |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
57 current = new ImportSQRelation(); |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
58 } |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
59 |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
60 |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
61 @Override |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
62 protected void finish() { |
3329
cc8fc6b29649
Store sq relations into database after parsing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
3328
diff
changeset
|
63 if (current != null) { |
cc8fc6b29649
Store sq relations into database after parsing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
3328
diff
changeset
|
64 current.setDescription(currentDescription); |
cc8fc6b29649
Store sq relations into database after parsing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
3328
diff
changeset
|
65 relations.add(current); |
cc8fc6b29649
Store sq relations into database after parsing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
3328
diff
changeset
|
66 } |
3328
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
67 } |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
68 |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
69 |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
70 @Override |
4193
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
3329
diff
changeset
|
71 protected void handleLine(int lineNum, String line) { |
3328
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
72 if (line.startsWith(START_META_CHAR)) { |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
73 handleMetaLine(stripMetaLine(line)); |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
74 } |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
75 else { |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
76 handleDataLine(line); |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
77 } |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
78 } |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
79 |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
80 |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
81 protected void handleMetaLine(String line) { |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
82 Matcher m = TIMERANGE_REGEX.matcher(line); |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
83 |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
84 if (m.matches()) { |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
85 String lo = m.group(1); |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
86 String hi = m.group(2); |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
87 |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
88 log.debug("Found timerange " + lo + " - " + hi); |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
89 |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
90 try { |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
91 int low = nf.parse(lo).intValue(); |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
92 int high = nf.parse(hi).intValue(); |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
93 |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
94 current.setTimeInterval(new ImportTimeInterval( |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
95 getDateFromYear(low), |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
96 getDateFromYear(high) |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
97 )); |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
98 } |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
99 catch (ParseException nfe) { |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
100 log.warn("Cannot parse time range.", nfe); |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
101 } |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
102 } |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
103 } |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
104 |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
105 |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
106 protected void handleDataLine(String line) { |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
107 String[] cols = line.split(SEPERATOR_CHAR); |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
108 |
5429
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
109 if (cols.length < 14) { |
3328
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
110 log.warn("skip invalid data line: '" + line + "'"); |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
111 return; |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
112 } |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
113 |
5429
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
114 Double km = parseDouble(cols[3], line); |
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
115 Double a = parseDouble(cols[6], line); |
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
116 Double b = parseDouble(cols[7], line); |
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
117 Double qMax = parseDouble(cols[8], line); |
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
118 Double rSq = parseDouble(cols[9], line); |
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
119 Integer nTot = parseInteger(cols[10], line); |
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
120 Integer nOutlier = parseInteger(cols[11], line); |
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
121 Double cFer = parseDouble(cols[12], line); |
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
122 Double cDuan = parseDouble(cols[13], line); |
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
123 if (km == null || a == null || b == null) { |
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
124 log.error("Incomplete SQ-relation row (missing km, a or b): " |
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
125 + line); |
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
126 return; |
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
127 } |
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
128 current.addValue(new ImportSQRelationValue( |
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
129 cols[1], |
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
130 cols[2], |
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
131 km, |
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
132 a, |
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
133 b, |
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
134 qMax, |
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
135 rSq, |
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
136 nTot, |
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
137 nOutlier, |
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
138 cFer, |
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
139 cDuan)); |
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
140 } |
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
141 |
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
142 private Double parseDouble(String value, String line) { |
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
143 Double result = null; |
3328
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
144 try { |
5429
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
145 result = Double.valueOf(value.replace(",", ".")); |
3328
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
146 } |
5429
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
147 catch (NumberFormatException nfe) { |
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
148 log.warn("Error parsing " + value + " in sq relation row: " + line); |
3328
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
149 } |
5429
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
150 return result; |
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
151 } |
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
152 |
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
153 private Integer parseInteger(String value, String line) { |
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
154 Integer result = null; |
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
155 try { |
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
156 result = Integer.valueOf(value); |
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
157 } |
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
158 catch (NumberFormatException nfe) { |
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
159 log.warn("Error parsing " + value + " in sq relation row: " + line); |
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
160 } |
13596605e81f
Added new columns to sq relation importer to import all values from csv and use
Raimund Renkert <rrenkert@intevation.de>
parents:
4193
diff
changeset
|
161 return result; |
3328
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
162 } |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
163 } |
a41f279a66e2
Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
164 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |