annotate flys-backend/src/main/java/de/intevation/flys/importer/ImportRiver.java @ 5027:25c180fa6162

Use BWASTRParser to set official numbers on rivers.
author Felix Wolfsteller <felix.wolfsteller@intevation.de>
date Tue, 19 Feb 2013 16:41:00 +0100
parents 443c173f043a
children e6dc908297e8
rev   line source
177
31895d24387e Importer: Added info gew parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
1 package de.intevation.flys.importer;
31895d24387e Importer: Added info gew parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
2
31895d24387e Importer: Added info gew parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
3 import java.io.File;
184
4ab2c3bd474c Added parsing of PEGEL.GLT files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 177
diff changeset
4 import java.io.IOException;
2809
f283212966e8 Finished work on MINFO bed heights (single).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2806
diff changeset
5 import java.sql.SQLException;
3320
8f905390c10d Removed superfluous imports.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2860
diff changeset
6 import java.util.ArrayList;
8f905390c10d Removed superfluous imports.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2860
diff changeset
7 import java.util.Calendar;
8f905390c10d Removed superfluous imports.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2860
diff changeset
8 import java.util.Date;
8f905390c10d Removed superfluous imports.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2860
diff changeset
9 import java.util.HashSet;
8f905390c10d Removed superfluous imports.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2860
diff changeset
10 import java.util.List;
8f905390c10d Removed superfluous imports.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2860
diff changeset
11 import java.util.Map;
8f905390c10d Removed superfluous imports.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2860
diff changeset
12 import java.util.Set;
8f905390c10d Removed superfluous imports.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2860
diff changeset
13
184
4ab2c3bd474c Added parsing of PEGEL.GLT files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 177
diff changeset
14 import org.apache.log4j.Logger;
3320
8f905390c10d Removed superfluous imports.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2860
diff changeset
15 import org.hibernate.Query;
8f905390c10d Removed superfluous imports.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2860
diff changeset
16 import org.hibernate.Session;
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: 3660
diff changeset
17 import org.hibernate.exception.ConstraintViolationException;
177
31895d24387e Importer: Added info gew parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
18
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: 3660
diff changeset
19 import de.intevation.artifacts.common.utils.FileTools;
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: 3660
diff changeset
20 import de.intevation.artifacts.common.utils.FileTools.HashedFile;
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: 3660
diff changeset
21 import de.intevation.flys.importer.parsers.AnnotationClassifier;
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: 3660
diff changeset
22 import de.intevation.flys.importer.parsers.AnnotationsParser;
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: 3660
diff changeset
23 import de.intevation.flys.importer.parsers.BedHeightEpochParser;
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: 3660
diff changeset
24 import de.intevation.flys.importer.parsers.BedHeightSingleParser;
4716
6016b9aa827a Adjust callbacks after Parsers new interface implementation, re-enable file hashing for da66s.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4712
diff changeset
25 import de.intevation.flys.importer.parsers.CrossSectionParser;
4782
696285cef182 ImportRiver: Trigger basic (useless) da50 parsing.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4781
diff changeset
26 import de.intevation.flys.importer.parsers.DA50Parser;
4706
e7b238247c4e Documentation added.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4678
diff changeset
27 import de.intevation.flys.importer.parsers.DA66Parser;
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: 3660
diff changeset
28 import de.intevation.flys.importer.parsers.FlowVelocityMeasurementParser;
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: 3660
diff changeset
29 import de.intevation.flys.importer.parsers.FlowVelocityModelParser;
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: 3660
diff changeset
30 import de.intevation.flys.importer.parsers.HYKParser;
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: 3660
diff changeset
31 import de.intevation.flys.importer.parsers.MeasurementStationsParser;
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: 3660
diff changeset
32 import de.intevation.flys.importer.parsers.MorphologicalWidthParser;
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: 3660
diff changeset
33 import de.intevation.flys.importer.parsers.PRFParser;
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: 3660
diff changeset
34 import de.intevation.flys.importer.parsers.PegelGltParser;
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: 3660
diff changeset
35 import de.intevation.flys.importer.parsers.SQRelationParser;
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: 3660
diff changeset
36 import de.intevation.flys.importer.parsers.SedimentDensityParser;
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: 3660
diff changeset
37 import de.intevation.flys.importer.parsers.SedimentYieldParser;
4767
03246a8b3869 ImportRiver: Added w80 and hook for da50 parsing (not implemented).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4735
diff changeset
38 import de.intevation.flys.importer.parsers.W80Parser;
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: 3660
diff changeset
39 import de.intevation.flys.importer.parsers.WaterlevelDifferencesParser;
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: 3660
diff changeset
40 import de.intevation.flys.importer.parsers.WaterlevelParser;
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: 3660
diff changeset
41 import de.intevation.flys.importer.parsers.WstParser;
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: 3660
diff changeset
42 import de.intevation.flys.model.River;
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: 3660
diff changeset
43 import de.intevation.flys.model.Unit;
188
003ac16812dd Store annotations in backend.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 186
diff changeset
44
4706
e7b238247c4e Documentation added.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4678
diff changeset
45
e7b238247c4e Documentation added.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4678
diff changeset
46 /** Import all river-related data (files) that can be found. */
177
31895d24387e Importer: Added info gew parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
47 public class ImportRiver
31895d24387e Importer: Added info gew parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
48 {
5016
255898799ed9 Minimal whitespace and doc cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4808
diff changeset
49 /** Private logger. */
184
4ab2c3bd474c Added parsing of PEGEL.GLT files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 177
diff changeset
50 private static Logger log = Logger.getLogger(ImportRiver.class);
4ab2c3bd474c Added parsing of PEGEL.GLT files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 177
diff changeset
51
4ab2c3bd474c Added parsing of PEGEL.GLT files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 177
diff changeset
52 public static final String PEGEL_GLT = "PEGEL.GLT";
4ab2c3bd474c Added parsing of PEGEL.GLT files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 177
diff changeset
53
483
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
54 public static final String FIXATIONS = "Fixierungen";
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
55
482
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
56 public static final String EXTRA_LONGITUDINALS =
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
57 "Zus.L\u00e4ngsschnitte";
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
58
484
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
59 public static final String [] OFFICIAL_LINES_FOLDERS = {
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
60 "Basisdaten",
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
61 "Fixierungen" };
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
62
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
63 public static final String OFFICIAL_LINES =
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
64 "Amtl_Linien.wst";
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
65
490
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
66 public static final String FLOOD_WATER = "HW-Marken";
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
67
494
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
68 public static final String FLOOD_PROTECTION =
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
69 "HW-Schutzanlagen";
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
70
2806
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
71 public static final String MINFO_DIR = "Morphologie";
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
72
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
73 public static final String BED_HEIGHT_DIR = "Sohlhoehen";
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
74
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
75 public static final String BED_HEIGHT_SINGLE_DIR = "Einzeljahre";
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
76
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
77 public static final String BED_HEIGHT_EPOCH_DIR = "Epochen";
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
78
2815
3febaed762b8 Added new parser (stub) to read MINFO sediment density files; prepared import process to handle those files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2811
diff changeset
79 public static final String SEDIMENT_DENSITY_DIR = "Sedimentdichte";
3febaed762b8 Added new parser (stub) to read MINFO sediment density files; prepared import process to handle those files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2811
diff changeset
80
2821
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
81 public static final String MORPHOLOGICAL_WIDTH_DIR = "morphologische_Breite";
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
82
2826
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
83 public static final String FLOW_VELOCITY_DIR = "Geschwindigkeit_Schubspannung";
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
84
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
85 public static final String FLOW_VELOCITY_MODEL = "Modellrechnungen";
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
86
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
87 public static final String FLOW_VELOCITY_MEASUREMENTS = "v-Messungen";
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
88
2839
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
89 public static final String SEDIMENT_YIELD_DIR = "Fracht";
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
90
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
91 public static final String SEDIMENT_YIELD_SINGLE_DIR = "Einzeljahre";
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
92
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
93 public static final String SEDIMENT_YIELD_EPOCH_DIR = "Epochen";
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
94
2844
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
95 public static final String MINFO_FIXATIONS_DIR = "Fixierungsanalyse";
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
96
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
97 public static final String MINFO_WATERLEVELS_DIR = "Wasserspiegellagen";
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
98
2851
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
99 public static final String MINFO_WATERLEVEL_DIFF_DIR = "Wasserspiegeldifferenzen";
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
100
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: 3660
diff changeset
101 public static final String MINFO_BASE_DIR = "Basisdaten";
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: 3660
diff changeset
102
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: 3660
diff changeset
103 public static final String MINFO_CORE_DATA_FILE = "Stammdaten_Messstellen.csv";
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: 3660
diff changeset
104
3328
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
105 public static final String MINFO_SQ_DIR = "Feststofftransport-Abfluss-Beziehung";
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
106
177
31895d24387e Importer: Added info gew parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
107 protected String name;
31895d24387e Importer: Added info gew parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
108
5020
443c173f043a ImportRiver: Added officialNumber field.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5017
diff changeset
109 protected Long officialNumber;
177
31895d24387e Importer: Added info gew parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
110
5020
443c173f043a ImportRiver: Added officialNumber field.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5017
diff changeset
111 protected File wstFile;
443c173f043a ImportRiver: Added officialNumber field.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5017
diff changeset
112
443c173f043a ImportRiver: Added officialNumber field.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5017
diff changeset
113 protected File bbInfoFile;
177
31895d24387e Importer: Added info gew parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
114
184
4ab2c3bd474c Added parsing of PEGEL.GLT files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 177
diff changeset
115 protected List<ImportGauge> gauges;
4ab2c3bd474c Added parsing of PEGEL.GLT files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 177
diff changeset
116
186
cf8cbcb6a10d Added parser to read *.KM files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 184
diff changeset
117 protected List<ImportAnnotation> annotations;
cf8cbcb6a10d Added parser to read *.KM files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 184
diff changeset
118
1220
3c860d3e79d9 Importer: Parse HYKs from importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1211
diff changeset
119 protected List<ImportHYK> hyks;
3c860d3e79d9 Importer: Parse HYKs from importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1211
diff changeset
120
1204
22858e7cca79 Integrated PRF parsing into importer. Needs testing!
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 766
diff changeset
121 protected List<ImportCrossSection> crossSections;
22858e7cca79 Integrated PRF parsing into importer. Needs testing!
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 766
diff changeset
122
482
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
123 protected List<ImportWst> extraWsts;
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
124
483
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
125 protected List<ImportWst> fixations;
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
126
484
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
127 protected List<ImportWst> officialLines;
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
128
490
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
129 protected List<ImportWst> floodWater;
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
130
494
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
131 protected List<ImportWst> floodProtection;
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
132
2811
8926571e47fb Finished importing MINFO bed heights (single and epoch).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2810
diff changeset
133 protected List<ImportBedHeight> bedHeightSingles;
2806
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
134
2811
8926571e47fb Finished importing MINFO bed heights (single and epoch).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2810
diff changeset
135 protected List<ImportBedHeight> bedHeightEpochs;
2806
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
136
2815
3febaed762b8 Added new parser (stub) to read MINFO sediment density files; prepared import process to handle those files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2811
diff changeset
137 protected List<ImportSedimentDensity> sedimentDensities;
3febaed762b8 Added new parser (stub) to read MINFO sediment density files; prepared import process to handle those files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2811
diff changeset
138
2821
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
139 protected List<ImportMorphWidth> morphologicalWidths;
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
140
2827
85b25e74594f Added temp classes used during the import process of flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2826
diff changeset
141 protected List<ImportFlowVelocityModel> flowVelocityModels;
85b25e74594f Added temp classes used during the import process of flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2826
diff changeset
142
2832
ac5bd90697c1 Added new parser for flow velocity measurements and fixed some smaller bugs while importing flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2828
diff changeset
143 protected List<ImportFlowVelocityMeasurement> flowVelocityMeasurements;
ac5bd90697c1 Added new parser for flow velocity measurements and fixed some smaller bugs while importing flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2828
diff changeset
144
2839
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
145 protected List<ImportSedimentYield> sedimentYields;
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
146
2844
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
147 protected List<ImportWaterlevel> waterlevels;
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
148
2851
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
149 protected List<ImportWaterlevelDifference> waterlevelDiffs;
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
150
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: 3660
diff changeset
151 protected List<ImportMeasurementStation> measurementStations;
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: 3660
diff changeset
152
3328
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
153 protected List<ImportSQRelation> sqRelations;
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
154
201
3169b559ca3c Build models for wsts, wst columns and q ranges and store them in the backend.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 197
diff changeset
155 protected ImportWst wst;
3169b559ca3c Build models for wsts, wst columns and q ranges and store them in the backend.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 197
diff changeset
156
2347
0acf28a3d28a Removed the Unit from Wsts - added a WstUnit column to rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1234
diff changeset
157 protected ImportUnit wstUnit;
0acf28a3d28a Removed the Unit from Wsts - added a WstUnit column to rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1234
diff changeset
158
765
763c4137d6e1 Added classification of annotation types. Needs testing!
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 503
diff changeset
159 protected AnnotationClassifier annotationClassifier;
763c4137d6e1 Added classification of annotation types. Needs testing!
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 503
diff changeset
160
5017
51a353887871 Tiny doc.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5016
diff changeset
161 /** Database-mapped River instance. */
188
003ac16812dd Store annotations in backend.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 186
diff changeset
162 protected River peer;
003ac16812dd Store annotations in backend.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 186
diff changeset
163
4778
a70de5298248 ImportRiver: Add helper implementation of a CrossSectionParserCallback.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4767
diff changeset
164
a70de5298248 ImportRiver: Add helper implementation of a CrossSectionParserCallback.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4767
diff changeset
165 /** Callback-implementation for CrossSectionParsers. */
a70de5298248 ImportRiver: Add helper implementation of a CrossSectionParserCallback.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4767
diff changeset
166 class ImportRiverCrossSectionParserCallback implements CrossSectionParser.Callback {
a70de5298248 ImportRiver: Add helper implementation of a CrossSectionParserCallback.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4767
diff changeset
167 Set<HashedFile> files = new HashSet<HashedFile>();
a70de5298248 ImportRiver: Add helper implementation of a CrossSectionParserCallback.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4767
diff changeset
168 String type;
a70de5298248 ImportRiver: Add helper implementation of a CrossSectionParserCallback.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4767
diff changeset
169
a70de5298248 ImportRiver: Add helper implementation of a CrossSectionParserCallback.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4767
diff changeset
170
a70de5298248 ImportRiver: Add helper implementation of a CrossSectionParserCallback.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4767
diff changeset
171 /**
a70de5298248 ImportRiver: Add helper implementation of a CrossSectionParserCallback.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4767
diff changeset
172 * Create new Callback, given type which is used for logging
a70de5298248 ImportRiver: Add helper implementation of a CrossSectionParserCallback.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4767
diff changeset
173 * purposes only.
a70de5298248 ImportRiver: Add helper implementation of a CrossSectionParserCallback.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4767
diff changeset
174 */
a70de5298248 ImportRiver: Add helper implementation of a CrossSectionParserCallback.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4767
diff changeset
175 public ImportRiverCrossSectionParserCallback (String type) {
a70de5298248 ImportRiver: Add helper implementation of a CrossSectionParserCallback.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4767
diff changeset
176 this.type = type;
a70de5298248 ImportRiver: Add helper implementation of a CrossSectionParserCallback.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4767
diff changeset
177 }
a70de5298248 ImportRiver: Add helper implementation of a CrossSectionParserCallback.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4767
diff changeset
178
a70de5298248 ImportRiver: Add helper implementation of a CrossSectionParserCallback.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4767
diff changeset
179
a70de5298248 ImportRiver: Add helper implementation of a CrossSectionParserCallback.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4767
diff changeset
180 /** Accept file if not duplicate. */
a70de5298248 ImportRiver: Add helper implementation of a CrossSectionParserCallback.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4767
diff changeset
181 public boolean accept(File file) {
a70de5298248 ImportRiver: Add helper implementation of a CrossSectionParserCallback.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4767
diff changeset
182 HashedFile hf = new HashedFile(file);
a70de5298248 ImportRiver: Add helper implementation of a CrossSectionParserCallback.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4767
diff changeset
183 boolean success = files.add(hf);
a70de5298248 ImportRiver: Add helper implementation of a CrossSectionParserCallback.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4767
diff changeset
184 if (!success) {
a70de5298248 ImportRiver: Add helper implementation of a CrossSectionParserCallback.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4767
diff changeset
185 log.warn(type + " file '" + file + "' seems to be a duplicate.");
a70de5298248 ImportRiver: Add helper implementation of a CrossSectionParserCallback.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4767
diff changeset
186 }
a70de5298248 ImportRiver: Add helper implementation of a CrossSectionParserCallback.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4767
diff changeset
187 return success;
a70de5298248 ImportRiver: Add helper implementation of a CrossSectionParserCallback.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4767
diff changeset
188 }
a70de5298248 ImportRiver: Add helper implementation of a CrossSectionParserCallback.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4767
diff changeset
189
a70de5298248 ImportRiver: Add helper implementation of a CrossSectionParserCallback.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4767
diff changeset
190
a70de5298248 ImportRiver: Add helper implementation of a CrossSectionParserCallback.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4767
diff changeset
191 /** Add crosssection. */
a70de5298248 ImportRiver: Add helper implementation of a CrossSectionParserCallback.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4767
diff changeset
192 public void parsed(CrossSectionParser parser) {
a70de5298248 ImportRiver: Add helper implementation of a CrossSectionParserCallback.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4767
diff changeset
193 log.debug("callback from " + type + " parser");
a70de5298248 ImportRiver: Add helper implementation of a CrossSectionParserCallback.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4767
diff changeset
194
a70de5298248 ImportRiver: Add helper implementation of a CrossSectionParserCallback.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4767
diff changeset
195 addCrossSections(parser);
a70de5298248 ImportRiver: Add helper implementation of a CrossSectionParserCallback.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4767
diff changeset
196 }
4808
05ff91146ddd Comment added.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4782
diff changeset
197 } // ImportRiverCrossSectionParserCallback
4778
a70de5298248 ImportRiver: Add helper implementation of a CrossSectionParserCallback.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4767
diff changeset
198
a70de5298248 ImportRiver: Add helper implementation of a CrossSectionParserCallback.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4767
diff changeset
199
177
31895d24387e Importer: Added info gew parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
200 public ImportRiver() {
2832
ac5bd90697c1 Added new parser for flow velocity measurements and fixed some smaller bugs while importing flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2828
diff changeset
201 hyks = new ArrayList<ImportHYK>();
ac5bd90697c1 Added new parser for flow velocity measurements and fixed some smaller bugs while importing flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2828
diff changeset
202 crossSections = new ArrayList<ImportCrossSection>();
ac5bd90697c1 Added new parser for flow velocity measurements and fixed some smaller bugs while importing flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2828
diff changeset
203 extraWsts = new ArrayList<ImportWst>();
ac5bd90697c1 Added new parser for flow velocity measurements and fixed some smaller bugs while importing flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2828
diff changeset
204 fixations = new ArrayList<ImportWst>();
ac5bd90697c1 Added new parser for flow velocity measurements and fixed some smaller bugs while importing flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2828
diff changeset
205 officialLines = new ArrayList<ImportWst>();
ac5bd90697c1 Added new parser for flow velocity measurements and fixed some smaller bugs while importing flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2828
diff changeset
206 floodWater = new ArrayList<ImportWst>();
ac5bd90697c1 Added new parser for flow velocity measurements and fixed some smaller bugs while importing flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2828
diff changeset
207 floodProtection = new ArrayList<ImportWst>();
ac5bd90697c1 Added new parser for flow velocity measurements and fixed some smaller bugs while importing flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2828
diff changeset
208 sedimentDensities = new ArrayList<ImportSedimentDensity>();
ac5bd90697c1 Added new parser for flow velocity measurements and fixed some smaller bugs while importing flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2828
diff changeset
209 morphologicalWidths = new ArrayList<ImportMorphWidth>();
ac5bd90697c1 Added new parser for flow velocity measurements and fixed some smaller bugs while importing flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2828
diff changeset
210 flowVelocityModels = new ArrayList<ImportFlowVelocityModel>();
ac5bd90697c1 Added new parser for flow velocity measurements and fixed some smaller bugs while importing flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2828
diff changeset
211 flowVelocityMeasurements = new ArrayList<ImportFlowVelocityMeasurement>();
2839
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
212 sedimentYields = new ArrayList<ImportSedimentYield>();
2844
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
213 waterlevels = new ArrayList<ImportWaterlevel>();
2851
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
214 waterlevelDiffs = new ArrayList<ImportWaterlevelDifference>();
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: 3660
diff changeset
215 measurementStations = new ArrayList<ImportMeasurementStation>();
3328
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
216 sqRelations = new ArrayList<ImportSQRelation>();
177
31895d24387e Importer: Added info gew parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
217 }
31895d24387e Importer: Added info gew parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
218
766
aa9e3da95c31 Importer: Fix import of annotation type classification.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 765
diff changeset
219 public ImportRiver(
aa9e3da95c31 Importer: Fix import of annotation type classification.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 765
diff changeset
220 String name,
aa9e3da95c31 Importer: Fix import of annotation type classification.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 765
diff changeset
221 File wstFile,
aa9e3da95c31 Importer: Fix import of annotation type classification.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 765
diff changeset
222 File bbInfoFile,
aa9e3da95c31 Importer: Fix import of annotation type classification.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 765
diff changeset
223 AnnotationClassifier annotationClassifier
aa9e3da95c31 Importer: Fix import of annotation type classification.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 765
diff changeset
224 ) {
482
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
225 this();
766
aa9e3da95c31 Importer: Fix import of annotation type classification.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 765
diff changeset
226 this.name = name;
aa9e3da95c31 Importer: Fix import of annotation type classification.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 765
diff changeset
227 this.wstFile = wstFile;
aa9e3da95c31 Importer: Fix import of annotation type classification.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 765
diff changeset
228 this.bbInfoFile = bbInfoFile;
aa9e3da95c31 Importer: Fix import of annotation type classification.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 765
diff changeset
229 this.annotationClassifier = annotationClassifier;
177
31895d24387e Importer: Added info gew parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
230 }
31895d24387e Importer: Added info gew parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
231
31895d24387e Importer: Added info gew parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
232 public String getName() {
31895d24387e Importer: Added info gew parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
233 return name;
31895d24387e Importer: Added info gew parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
234 }
31895d24387e Importer: Added info gew parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
235
31895d24387e Importer: Added info gew parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
236 public void setName(String name) {
31895d24387e Importer: Added info gew parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
237 this.name = name;
31895d24387e Importer: Added info gew parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
238 }
31895d24387e Importer: Added info gew parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
239
5020
443c173f043a ImportRiver: Added officialNumber field.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5017
diff changeset
240 public Long getOfficialNumber() {
443c173f043a ImportRiver: Added officialNumber field.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5017
diff changeset
241 return this.officialNumber;
443c173f043a ImportRiver: Added officialNumber field.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5017
diff changeset
242 }
443c173f043a ImportRiver: Added officialNumber field.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5017
diff changeset
243
443c173f043a ImportRiver: Added officialNumber field.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5017
diff changeset
244 public void setOfficialNumber(Long officialNumber) {
443c173f043a ImportRiver: Added officialNumber field.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5017
diff changeset
245 this.officialNumber = officialNumber;
443c173f043a ImportRiver: Added officialNumber field.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5017
diff changeset
246 }
443c173f043a ImportRiver: Added officialNumber field.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5017
diff changeset
247
177
31895d24387e Importer: Added info gew parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
248 public File getWstFile() {
31895d24387e Importer: Added info gew parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
249 return wstFile;
31895d24387e Importer: Added info gew parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
250 }
31895d24387e Importer: Added info gew parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
251
31895d24387e Importer: Added info gew parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
252 public void setWstFile(File wstFile) {
31895d24387e Importer: Added info gew parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
253 this.wstFile = wstFile;
31895d24387e Importer: Added info gew parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
254 }
31895d24387e Importer: Added info gew parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
255
31895d24387e Importer: Added info gew parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
256 public File getBBInfo() {
31895d24387e Importer: Added info gew parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
257 return bbInfoFile;
31895d24387e Importer: Added info gew parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
258 }
31895d24387e Importer: Added info gew parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
259
31895d24387e Importer: Added info gew parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
260 public void setBBInfo(File bbInfoFile) {
31895d24387e Importer: Added info gew parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
261 this.bbInfoFile = bbInfoFile;
31895d24387e Importer: Added info gew parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
262 }
184
4ab2c3bd474c Added parsing of PEGEL.GLT files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 177
diff changeset
263
201
3169b559ca3c Build models for wsts, wst columns and q ranges and store them in the backend.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 197
diff changeset
264 public ImportWst getWst() {
3169b559ca3c Build models for wsts, wst columns and q ranges and store them in the backend.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 197
diff changeset
265 return wst;
3169b559ca3c Build models for wsts, wst columns and q ranges and store them in the backend.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 197
diff changeset
266 }
3169b559ca3c Build models for wsts, wst columns and q ranges and store them in the backend.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 197
diff changeset
267
3169b559ca3c Build models for wsts, wst columns and q ranges and store them in the backend.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 197
diff changeset
268 public void setWst(ImportWst wst) {
3169b559ca3c Build models for wsts, wst columns and q ranges and store them in the backend.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 197
diff changeset
269 this.wst = wst;
3169b559ca3c Build models for wsts, wst columns and q ranges and store them in the backend.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 197
diff changeset
270 }
3169b559ca3c Build models for wsts, wst columns and q ranges and store them in the backend.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 197
diff changeset
271
2806
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
272 public File getMinfoDir() {
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
273 File riverDir = wstFile.getParentFile().getParentFile().getParentFile();
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
274 return new File(riverDir, MINFO_DIR);
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
275 }
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
276
186
cf8cbcb6a10d Added parser to read *.KM files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 184
diff changeset
277 public void parseDependencies() throws IOException {
cf8cbcb6a10d Added parser to read *.KM files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 184
diff changeset
278 parseGauges();
cf8cbcb6a10d Added parser to read *.KM files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 184
diff changeset
279 parseAnnotations();
1204
22858e7cca79 Integrated PRF parsing into importer. Needs testing!
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 766
diff changeset
280 parsePRFs();
4712
70842db72ee4 Include improved DA66Parser into importer.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4706
diff changeset
281 parseDA66s();
4767
03246a8b3869 ImportRiver: Added w80 and hook for da50 parsing (not implemented).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4735
diff changeset
282 parseDA50s();
03246a8b3869 ImportRiver: Added w80 and hook for da50 parsing (not implemented).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4735
diff changeset
283 parseW80s();
1220
3c860d3e79d9 Importer: Parse HYKs from importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1211
diff changeset
284 parseHYKs();
197
c0dcc2357106 Added stub for WST parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 194
diff changeset
285 parseWst();
482
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
286 parseExtraWsts();
483
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
287 parseFixations();
484
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
288 parseOfficialLines();
490
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
289 parseFloodWater();
494
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
290 parseFloodProtection();
2806
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
291 parseBedHeight();
2815
3febaed762b8 Added new parser (stub) to read MINFO sediment density files; prepared import process to handle those files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2811
diff changeset
292 parseSedimentDensity();
2821
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
293 parseMorphologicalWidth();
2826
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
294 parseFlowVelocity();
2839
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
295 parseSedimentYield();
2844
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
296 parseWaterlevels();
2851
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
297 parseWaterlevelDifferences();
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: 3660
diff changeset
298 parseMeasurementStations();
3328
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
299 parseSQRelation();
5027
25c180fa6162 Use BWASTRParser to set official numbers on rivers.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5020
diff changeset
300 storeOfficialNumber();
494
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
301 }
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
302
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
303 public void parseFloodProtection() throws IOException {
1223
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
304 if (Config.INSTANCE.skipFloodProtection()) {
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
305 log.info("skip parsing flood protection");
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
306 return;
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
307 }
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
308
494
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
309 log.info("Parse flood protection wst file");
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
310
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
311 File riverDir = wstFile.getParentFile().getParentFile();
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
312
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
313 File dir = FileTools.repair(new File(riverDir, FLOOD_PROTECTION));
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
314
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
315 if (!dir.isDirectory() || !dir.canRead()) {
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
316 log.info("no directory '" + dir + "' found");
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
317 return;
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
318 }
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
319
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
320 File [] files = dir.listFiles();
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
321
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
322 if (files == null) {
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
323 log.warn("cannot read '" + dir + "'");
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
324 return;
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
325 }
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
326
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
327 for (File file: files) {
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
328 if (!file.isFile() || !file.canRead()) {
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
329 continue;
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
330 }
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
331 String name = file.getName().toLowerCase();
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
332 if (!(name.endsWith(".zus") || name.endsWith(".wst"))) {
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
333 continue;
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
334 }
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
335 log.info("found file '" + file.getName() + "'");
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
336 WstParser wstParser = new WstParser();
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
337 wstParser.parse(file);
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
338 ImportWst iw = wstParser.getWst();
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
339 iw.setKind(5);
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
340 iw.setDescription(FLOOD_PROTECTION + "/" + iw.getDescription());
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
341 floodProtection.add(iw);
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
342 }
490
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
343 }
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
344
5027
25c180fa6162 Use BWASTRParser to set official numbers on rivers.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5020
diff changeset
345 public void storeOfficialNumber() {
25c180fa6162 Use BWASTRParser to set official numbers on rivers.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5020
diff changeset
346 if (Config.INSTANCE.skipBWASTR()) {
25c180fa6162 Use BWASTRParser to set official numbers on rivers.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5020
diff changeset
347 log.info("skip storing official number.");
25c180fa6162 Use BWASTRParser to set official numbers on rivers.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5020
diff changeset
348 return;
25c180fa6162 Use BWASTRParser to set official numbers on rivers.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5020
diff changeset
349 }
25c180fa6162 Use BWASTRParser to set official numbers on rivers.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5020
diff changeset
350 getPeer().setOfficialNumber(officialNumber);
25c180fa6162 Use BWASTRParser to set official numbers on rivers.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5020
diff changeset
351 }
2806
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
352
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
353 public void parseBedHeight() throws IOException {
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
354 File minfoDir = getMinfoDir();
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
355 File bedHeightDir = new File(minfoDir, BED_HEIGHT_DIR);
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
356 File singlesDir = new File(bedHeightDir, BED_HEIGHT_SINGLE_DIR);
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
357 File epochDir = new File(bedHeightDir, BED_HEIGHT_EPOCH_DIR);
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
358
2810
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
359 if (Config.INSTANCE.skipBedHeightSingle()) {
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
360 log.info("skip parsing bed height single.");
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
361 }
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
362 else {
2844
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
363 log.info("Parse bed height single.");
2810
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
364 parseBedHeightSingles(singlesDir);
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
365 }
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
366
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
367 if (Config.INSTANCE.skipBedHeightEpoch()) {
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
368 log.info("skip parsing bed height epochs.");
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
369 }
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
370 else {
2844
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
371 log.info("Parse bed height epochs.");
2810
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
372 parseBedHeightEpochs(epochDir);
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
373 }
2806
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
374 }
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
375
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
376
2815
3febaed762b8 Added new parser (stub) to read MINFO sediment density files; prepared import process to handle those files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2811
diff changeset
377 protected void parseSedimentDensity() throws IOException {
3febaed762b8 Added new parser (stub) to read MINFO sediment density files; prepared import process to handle those files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2811
diff changeset
378 if (Config.INSTANCE.skipSedimentDensity()) {
3febaed762b8 Added new parser (stub) to read MINFO sediment density files; prepared import process to handle those files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2811
diff changeset
379 log.info("skip parsing sediment density.");
3febaed762b8 Added new parser (stub) to read MINFO sediment density files; prepared import process to handle those files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2811
diff changeset
380 return;
3febaed762b8 Added new parser (stub) to read MINFO sediment density files; prepared import process to handle those files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2811
diff changeset
381 }
3febaed762b8 Added new parser (stub) to read MINFO sediment density files; prepared import process to handle those files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2811
diff changeset
382
3327
bf8d9a4f4cd4 Cleared some irritating debug messages.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3320
diff changeset
383 log.debug("Parse sediment density");
bf8d9a4f4cd4 Cleared some irritating debug messages.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3320
diff changeset
384
2815
3febaed762b8 Added new parser (stub) to read MINFO sediment density files; prepared import process to handle those files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2811
diff changeset
385 File minfoDir = getMinfoDir();
3febaed762b8 Added new parser (stub) to read MINFO sediment density files; prepared import process to handle those files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2811
diff changeset
386 File sediment = new File(minfoDir, SEDIMENT_DENSITY_DIR);
3febaed762b8 Added new parser (stub) to read MINFO sediment density files; prepared import process to handle those files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2811
diff changeset
387
3febaed762b8 Added new parser (stub) to read MINFO sediment density files; prepared import process to handle those files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2811
diff changeset
388 File[] files = sediment.listFiles();
3febaed762b8 Added new parser (stub) to read MINFO sediment density files; prepared import process to handle those files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2811
diff changeset
389
3febaed762b8 Added new parser (stub) to read MINFO sediment density files; prepared import process to handle those files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2811
diff changeset
390 if (files == null) {
3660
976ead36192d backend: Mention backend warnings in importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3659
diff changeset
391 log.warn("Cannot read directory '" + sediment + "'");
2815
3febaed762b8 Added new parser (stub) to read MINFO sediment density files; prepared import process to handle those files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2811
diff changeset
392 return;
3febaed762b8 Added new parser (stub) to read MINFO sediment density files; prepared import process to handle those files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2811
diff changeset
393 }
3febaed762b8 Added new parser (stub) to read MINFO sediment density files; prepared import process to handle those files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2811
diff changeset
394
3febaed762b8 Added new parser (stub) to read MINFO sediment density files; prepared import process to handle those files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2811
diff changeset
395 SedimentDensityParser parser = new SedimentDensityParser();
3febaed762b8 Added new parser (stub) to read MINFO sediment density files; prepared import process to handle those files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2811
diff changeset
396
3febaed762b8 Added new parser (stub) to read MINFO sediment density files; prepared import process to handle those files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2811
diff changeset
397 for (File file: files) {
3febaed762b8 Added new parser (stub) to read MINFO sediment density files; prepared import process to handle those files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2811
diff changeset
398 parser.parse(file);
3febaed762b8 Added new parser (stub) to read MINFO sediment density files; prepared import process to handle those files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2811
diff changeset
399 }
3febaed762b8 Added new parser (stub) to read MINFO sediment density files; prepared import process to handle those files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2811
diff changeset
400
3febaed762b8 Added new parser (stub) to read MINFO sediment density files; prepared import process to handle those files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2811
diff changeset
401 sedimentDensities = parser.getSedimentDensities();
3febaed762b8 Added new parser (stub) to read MINFO sediment density files; prepared import process to handle those files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2811
diff changeset
402
3febaed762b8 Added new parser (stub) to read MINFO sediment density files; prepared import process to handle those files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2811
diff changeset
403 log.info("Parsed " + sedimentDensities.size() + " sediment densities.");
3febaed762b8 Added new parser (stub) to read MINFO sediment density files; prepared import process to handle those files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2811
diff changeset
404 }
3febaed762b8 Added new parser (stub) to read MINFO sediment density files; prepared import process to handle those files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2811
diff changeset
405
3febaed762b8 Added new parser (stub) to read MINFO sediment density files; prepared import process to handle those files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2811
diff changeset
406
2821
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
407 protected void parseMorphologicalWidth() throws IOException {
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
408 if (Config.INSTANCE.skipMorphologicalWidth()) {
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
409 log.info("skip parsing morphological width.");
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
410 return;
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
411 }
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
412
3327
bf8d9a4f4cd4 Cleared some irritating debug messages.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3320
diff changeset
413 log.debug("Parse morphological width");
bf8d9a4f4cd4 Cleared some irritating debug messages.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3320
diff changeset
414
2821
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
415 File minfoDir = getMinfoDir();
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
416 File morphDir = new File(minfoDir, MORPHOLOGICAL_WIDTH_DIR);
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
417
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
418 File[] files = morphDir.listFiles();
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
419
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
420 if (files == null) {
3660
976ead36192d backend: Mention backend warnings in importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3659
diff changeset
421 log.warn("Cannot read directory '" + morphDir + "'");
2821
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
422 return;
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
423 }
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
424
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
425 MorphologicalWidthParser parser = new MorphologicalWidthParser();
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
426
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
427 for (File file: files) {
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
428 parser.parse(file);
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
429 }
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
430
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
431 morphologicalWidths = parser.getMorphologicalWidths();
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
432
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
433 log.info("Parsed " + morphologicalWidths.size() + " morph. widths files.");
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
434 }
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
435
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
436
2826
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
437 protected void parseFlowVelocity() throws IOException {
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
438 if (Config.INSTANCE.skipFlowVelocity()) {
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
439 log.info("skip parsing flow velocity");
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
440 return;
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
441 }
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
442
3328
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
443 log.debug("Parse flow velocity");
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
444
2826
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
445 File minfoDir = getMinfoDir();
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
446 File flowDir = new File(minfoDir, FLOW_VELOCITY_DIR);
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
447 File modelDir = new File(flowDir, FLOW_VELOCITY_MODEL);
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
448 File measureDir = new File(flowDir, FLOW_VELOCITY_MEASUREMENTS);
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
449
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
450 File[] modelFiles = modelDir.listFiles();
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
451 File[] measureFiles = measureDir.listFiles();
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
452
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
453 if (modelFiles == null) {
3660
976ead36192d backend: Mention backend warnings in importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3659
diff changeset
454 log.warn("Cannot read directory '" + modelDir + "'");
2826
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
455 }
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
456 else {
2828
ac13e466a55e Added a parser for flow velocity model data and adjusted the db relation schema (missing q column).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2827
diff changeset
457 FlowVelocityModelParser parser = new FlowVelocityModelParser();
ac13e466a55e Added a parser for flow velocity model data and adjusted the db relation schema (missing q column).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2827
diff changeset
458
2826
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
459 for (File model: modelFiles) {
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
460 log.debug("Parse file '" + model + "'");
2828
ac13e466a55e Added a parser for flow velocity model data and adjusted the db relation schema (missing q column).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2827
diff changeset
461 parser.parse(model);
2826
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
462 }
2828
ac13e466a55e Added a parser for flow velocity model data and adjusted the db relation schema (missing q column).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2827
diff changeset
463
ac13e466a55e Added a parser for flow velocity model data and adjusted the db relation schema (missing q column).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2827
diff changeset
464 flowVelocityModels = parser.getModels();
2826
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
465 }
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
466
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
467 if (measureFiles == null) {
3660
976ead36192d backend: Mention backend warnings in importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3659
diff changeset
468 log.warn("Cannot read directory '" + measureDir + "'");
2826
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
469 }
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
470 else {
2832
ac5bd90697c1 Added new parser for flow velocity measurements and fixed some smaller bugs while importing flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2828
diff changeset
471 FlowVelocityMeasurementParser parser =
ac5bd90697c1 Added new parser for flow velocity measurements and fixed some smaller bugs while importing flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2828
diff changeset
472 new FlowVelocityMeasurementParser();
ac5bd90697c1 Added new parser for flow velocity measurements and fixed some smaller bugs while importing flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2828
diff changeset
473
2826
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
474 for (File measurement: measureFiles) {
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
475 log.debug("Parse file '" + measurement + "'");
2832
ac5bd90697c1 Added new parser for flow velocity measurements and fixed some smaller bugs while importing flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2828
diff changeset
476 parser.parse(measurement);
2826
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
477 }
2832
ac5bd90697c1 Added new parser for flow velocity measurements and fixed some smaller bugs while importing flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2828
diff changeset
478
ac5bd90697c1 Added new parser for flow velocity measurements and fixed some smaller bugs while importing flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2828
diff changeset
479 flowVelocityMeasurements = parser.getMeasurements();
2826
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
480 }
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
481 }
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
482
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
483
2839
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
484 protected void parseSedimentYield() throws IOException {
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
485 if (Config.INSTANCE.skipSedimentYield()) {
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
486 log.info("skip parsing sediment yield data");
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
487 return;
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
488 }
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
489
3327
bf8d9a4f4cd4 Cleared some irritating debug messages.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3320
diff changeset
490 log.debug("Parse sediment yield data");
bf8d9a4f4cd4 Cleared some irritating debug messages.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3320
diff changeset
491
2839
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
492 File minfoDir = getMinfoDir();
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
493 File sedimentYieldDir = new File(minfoDir, SEDIMENT_YIELD_DIR);
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
494
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
495 File singleDir = new File(sedimentYieldDir, SEDIMENT_YIELD_SINGLE_DIR);
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
496 File epochDir = new File(sedimentYieldDir, SEDIMENT_YIELD_EPOCH_DIR);
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
497
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
498 File[] singles = singleDir.listFiles();
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
499 File[] epochs = epochDir.listFiles();
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
500
2840
71175502d868 Added a parser for sediment yield files; started parsing and store values in db.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2839
diff changeset
501 SedimentYieldParser parser = new SedimentYieldParser();
71175502d868 Added a parser for sediment yield files; started parsing and store values in db.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2839
diff changeset
502
2839
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
503 if (singles == null || singles.length == 0) {
3660
976ead36192d backend: Mention backend warnings in importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3659
diff changeset
504 log.warn("Cannot read directory '" + singleDir + "'");
2839
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
505 }
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
506 else {
2840
71175502d868 Added a parser for sediment yield files; started parsing and store values in db.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2839
diff changeset
507 for (File file: singles) {
71175502d868 Added a parser for sediment yield files; started parsing and store values in db.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2839
diff changeset
508 if (file.isDirectory()) {
71175502d868 Added a parser for sediment yield files; started parsing and store values in db.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2839
diff changeset
509 for (File child: file.listFiles()) {
71175502d868 Added a parser for sediment yield files; started parsing and store values in db.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2839
diff changeset
510 parser.parse(child);
71175502d868 Added a parser for sediment yield files; started parsing and store values in db.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2839
diff changeset
511 }
71175502d868 Added a parser for sediment yield files; started parsing and store values in db.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2839
diff changeset
512 }
71175502d868 Added a parser for sediment yield files; started parsing and store values in db.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2839
diff changeset
513 else {
71175502d868 Added a parser for sediment yield files; started parsing and store values in db.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2839
diff changeset
514 parser.parse(file);
71175502d868 Added a parser for sediment yield files; started parsing and store values in db.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2839
diff changeset
515 }
71175502d868 Added a parser for sediment yield files; started parsing and store values in db.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2839
diff changeset
516 }
2839
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
517 }
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
518
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
519 if (epochs == null || epochs.length == 0) {
3660
976ead36192d backend: Mention backend warnings in importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3659
diff changeset
520 log.warn("Cannot read directory '" + epochDir + "'");
2839
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
521 }
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
522 else {
2840
71175502d868 Added a parser for sediment yield files; started parsing and store values in db.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2839
diff changeset
523 for (File file: epochs) {
71175502d868 Added a parser for sediment yield files; started parsing and store values in db.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2839
diff changeset
524 if (file.isDirectory()) {
71175502d868 Added a parser for sediment yield files; started parsing and store values in db.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2839
diff changeset
525 for (File child: file.listFiles()) {
71175502d868 Added a parser for sediment yield files; started parsing and store values in db.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2839
diff changeset
526 parser.parse(child);
71175502d868 Added a parser for sediment yield files; started parsing and store values in db.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2839
diff changeset
527 }
71175502d868 Added a parser for sediment yield files; started parsing and store values in db.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2839
diff changeset
528 }
71175502d868 Added a parser for sediment yield files; started parsing and store values in db.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2839
diff changeset
529 else {
71175502d868 Added a parser for sediment yield files; started parsing and store values in db.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2839
diff changeset
530 parser.parse(file);
71175502d868 Added a parser for sediment yield files; started parsing and store values in db.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2839
diff changeset
531 }
71175502d868 Added a parser for sediment yield files; started parsing and store values in db.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2839
diff changeset
532 }
2839
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
533 }
2840
71175502d868 Added a parser for sediment yield files; started parsing and store values in db.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2839
diff changeset
534
71175502d868 Added a parser for sediment yield files; started parsing and store values in db.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2839
diff changeset
535 sedimentYields = parser.getSedimentYields();
2839
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
536 }
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
537
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
538
2844
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
539 protected void parseWaterlevels() throws IOException {
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
540 if (Config.INSTANCE.skipWaterlevels()) {
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
541 log.info("skip parsing waterlevels");
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
542 return;
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
543 }
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
544
2851
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
545 log.info("Parse waterlevels");
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
546
2844
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
547 File minfo = getMinfoDir();
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
548 File fixDir = new File(minfo, MINFO_FIXATIONS_DIR);
2845
a65b5b0ade6f Completed the MINFO waterlevel import.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2844
diff changeset
549 File wspDir = new File(fixDir, MINFO_WATERLEVELS_DIR);
2844
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
550
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
551 File[] files = wspDir.listFiles();
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
552
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
553 if (files == null) {
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
554 log.warn("Cannot read directory '" + wspDir + "'");
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
555 return;
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
556 }
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
557
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
558 WaterlevelParser parser = new WaterlevelParser();
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
559
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
560 for (File file: files) {
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
561 parser.parse(file);
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
562 }
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
563
2851
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
564 waterlevels = parser.getWaterlevels();
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
565 }
2844
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
566
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: 3660
diff changeset
567 protected void parseMeasurementStations() throws IOException {
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: 3660
diff changeset
568 if (Config.INSTANCE.skipMeasurementStations()) {
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: 3660
diff changeset
569 log.info("skip parsing measurement stations");
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: 3660
diff changeset
570 return;
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: 3660
diff changeset
571 }
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: 3660
diff changeset
572
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: 3660
diff changeset
573 log.info("Parse measurement stations");
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: 3660
diff changeset
574
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: 3660
diff changeset
575 File minfo = getMinfoDir();
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: 3660
diff changeset
576 File minfoBaseDir = new File(minfo, MINFO_BASE_DIR);
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: 3660
diff changeset
577 File coredataFile = new File(minfoBaseDir, MINFO_CORE_DATA_FILE);
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: 3660
diff changeset
578
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: 3660
diff changeset
579 if (coredataFile == null || !coredataFile.exists()) {
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: 3660
diff changeset
580 log.warn("No core data file '" + MINFO_CORE_DATA_FILE + "' found");
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: 3660
diff changeset
581 return;
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: 3660
diff changeset
582 }
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: 3660
diff changeset
583
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: 3660
diff changeset
584 MeasurementStationsParser parser = new MeasurementStationsParser();
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: 3660
diff changeset
585 try {
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: 3660
diff changeset
586 parser.parse(coredataFile);
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: 3660
diff changeset
587 measurementStations = parser.getMeasurementStations();
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: 3660
diff changeset
588
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: 3660
diff changeset
589 log.info("Successfully parsed " + measurementStations.size() + " measurement stations.");
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: 3660
diff changeset
590 }
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: 3660
diff changeset
591 catch (IOException ioe) {
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: 3660
diff changeset
592 log.error("unable to parse file '" + coredataFile.getName() +
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: 3660
diff changeset
593 ": " + ioe.getMessage());
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: 3660
diff changeset
594 }
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: 3660
diff changeset
595 }
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: 3660
diff changeset
596
2851
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
597
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
598 protected void parseWaterlevelDifferences() throws IOException {
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
599 if (Config.INSTANCE.skipWaterlevelDifferences()) {
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
600 log.info("skip parsing waterlevel differences");
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
601 return;
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
602 }
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
603
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
604 log.info("Parse waterlevel differences");
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
605
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
606 File minfo = getMinfoDir();
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
607 File fixDir = new File(minfo, MINFO_FIXATIONS_DIR);
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
608 File diffDir = new File(fixDir, MINFO_WATERLEVEL_DIFF_DIR);
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
609
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
610 File[] files = diffDir.listFiles();
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
611
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
612 if (files == null) {
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
613 log.warn("Cannot read directory '" + diffDir + "'");
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
614 return;
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
615 }
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
616
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
617 WaterlevelDifferencesParser parser = new WaterlevelDifferencesParser();
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
618
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
619 for (File file: files) {
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
620 parser.parse(file);
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
621 }
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
622
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
623 waterlevelDiffs = parser.getDifferences();
2844
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
624 }
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
625
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
626
3328
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
627 protected void parseSQRelation() throws IOException {
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
628 if (Config.INSTANCE.skipSQRelation()) {
3329
cc8fc6b29649 Store sq relations into database after parsing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3328
diff changeset
629 log.info("skip parsing sq relation");
3328
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
630 return;
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
631 }
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
632
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
633 log.info("Parse sq relations");
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
634
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
635 File minfo = getMinfoDir();
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
636 File sqDir = new File(minfo, MINFO_SQ_DIR);
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
637
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
638 File[] files = sqDir.listFiles();
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
639
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
640 if (files == null) {
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
641 log.warn("Cannot read directory '" + sqDir + "'");
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
642 return;
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
643 }
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
644
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
645 SQRelationParser parser = new SQRelationParser();
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
646
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
647 for (File file: files) {
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
648 parser.parse(file);
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
649 }
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
650
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
651 sqRelations = parser.getSQRelations();
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
652
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
653 log.debug("Parsed " + sqRelations.size() + " SQ relations.");
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
654 }
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
655
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
656
2806
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
657 protected void parseBedHeightSingles(File dir) throws IOException {
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
658 log.debug("Parse bed height singles");
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
659
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
660 File[] files = dir.listFiles();
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
661
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
662 if (files == null) {
3660
976ead36192d backend: Mention backend warnings in importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3659
diff changeset
663 log.warn("Cannot read directory '" + dir + "'");
2806
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
664 return;
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
665 }
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
666
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
667 BedHeightSingleParser parser = new BedHeightSingleParser();
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
668
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
669 for (File file: files) {
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
670 parser.parse(file);
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
671 }
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
672
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
673 bedHeightSingles = parser.getBedHeights();
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
674 }
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
675
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
676
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
677 protected void parseBedHeightEpochs(File dir) throws IOException {
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
678 log.debug("Parse bed height epochs");
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
679
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
680 File[] files = dir.listFiles();
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
681
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
682 if (files == null) {
3660
976ead36192d backend: Mention backend warnings in importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3659
diff changeset
683 log.warn("Cannot read directory '" + dir + "'");
2806
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
684 return;
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
685 }
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
686
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
687 BedHeightEpochParser parser = new BedHeightEpochParser();
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
688
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
689 for (File file: files) {
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
690 parser.parse(file);
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
691 }
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
692
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
693 bedHeightEpochs = parser.getBedHeights();
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
694 }
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
695
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
696
490
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
697 public void parseFloodWater() throws IOException {
1223
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
698 if (Config.INSTANCE.skipFloodWater()) {
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
699 log.info("skip parsing flod water");
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
700 return;
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
701 }
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
702
490
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
703 log.info("Parse flood water wst file");
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
704
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
705 File riverDir = wstFile.getParentFile().getParentFile();
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
706
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
707 File dir = FileTools.repair(new File(riverDir, FLOOD_WATER));
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
708
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
709 if (!dir.isDirectory() || !dir.canRead()) {
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
710 log.info("no directory '" + dir + "' found");
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
711 return;
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
712 }
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
713
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
714 File [] files = dir.listFiles();
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
715
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
716 if (files == null) {
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
717 log.warn("cannot read '" + dir + "'");
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
718 return;
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
719 }
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
720
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
721 for (File file: files) {
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
722 if (!file.isFile() || !file.canRead()) {
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
723 continue;
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
724 }
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
725 String name = file.getName().toLowerCase();
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
726 if (!(name.endsWith(".zus") || name.endsWith(".wst"))) {
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
727 continue;
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
728 }
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
729 log.info("found file '" + file.getName() + "'");
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
730 WstParser wstParser = new WstParser();
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
731 wstParser.parse(file);
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
732 ImportWst iw = wstParser.getWst();
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
733 iw.setKind(4);
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
734 iw.setDescription(FLOOD_WATER + "/" + iw.getDescription());
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
735 floodWater.add(iw);
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
736 }
484
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
737 }
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
738
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
739 public void parseOfficialLines() throws IOException {
1223
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
740 if (Config.INSTANCE.skipOfficialLines()) {
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
741 log.info("skip parsing official lines");
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
742 return;
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
743 }
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
744
484
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
745 log.info("Parse official wst files");
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
746
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
747 File riverDir = wstFile.getParentFile().getParentFile();
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
748
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
749 for (String folder: OFFICIAL_LINES_FOLDERS) {
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
750 File dir = FileTools.repair(new File(riverDir, folder));
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
751
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
752 if (!dir.isDirectory() || !dir.canRead()) {
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
753 log.info("no directory '" + folder + "' found");
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
754 continue;
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
755 }
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
756
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
757 File file = FileTools.repair(new File(dir, OFFICIAL_LINES));
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
758 if (!file.isFile() || !file.canRead()) {
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
759 log.warn("no official lines wst file found");
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
760 continue;
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
761 }
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
762 log.debug("Found WST file: " + file);
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
763
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
764 WstParser wstParser = new WstParser();
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
765 wstParser.parse(file);
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
766 ImportWst iw = wstParser.getWst();
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
767 iw.setKind(3);
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
768 iw.setDescription(folder + "/" + iw.getDescription());
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
769 officialLines.add(iw);
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
770 } // for all folders
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
771
483
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
772 }
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
773
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
774 public void parseFixations() throws IOException {
1223
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
775 if (Config.INSTANCE.skipFixations()) {
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
776 log.info("skip parsing fixations");
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
777 return;
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
778 }
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
779
483
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
780 log.info("Parse fixation wst files");
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
781
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
782 File riverDir = wstFile.getParentFile().getParentFile();
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
783
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
784 File fixDir = FileTools.repair(
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
785 new File(riverDir, FIXATIONS));
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
786
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
787 if (!fixDir.isDirectory() || !fixDir.canRead()) {
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
788 log.info("no fixation wst file directory found");
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
789 return;
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
790 }
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
791
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
792 File [] files = fixDir.listFiles();
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
793
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
794 if (files == null) {
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
795 log.warn("cannot read fixations wst file directory");
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
796 return;
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
797 }
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
798
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
799 for (File file: files) {
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
800 if (!file.isFile() || !file.canRead()) {
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
801 continue;
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
802 }
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
803 String name = file.getName().toLowerCase();
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
804 if (!name.endsWith(".wst")) {
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
805 continue;
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
806 }
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
807 log.debug("Found WST file: " + file);
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
808
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
809 WstParser wstParser = new WstParser();
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
810 wstParser.parse(file);
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
811 ImportWst iw = wstParser.getWst();
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
812 iw.setKind(2);
490
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
813 iw.setDescription(FIXATIONS+ "/" + iw.getDescription());
483
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
814 fixations.add(iw);
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
815 }
482
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
816 }
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
817
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
818 public void parseExtraWsts() throws IOException {
1223
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
819 if (Config.INSTANCE.skipExtraWsts()) {
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
820 log.info("skip parsing extra WST files");
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
821 return;
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
822 }
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
823
482
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
824 log.info("Parse extra longitudinal wst files");
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
825
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
826 File riverDir = wstFile.getParentFile().getParentFile();
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
827
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
828 File extraDir = FileTools.repair(
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
829 new File(riverDir, EXTRA_LONGITUDINALS));
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
830
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
831 if (!extraDir.isDirectory() || !extraDir.canRead()) {
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
832 log.info("no extra longitudinal wst file directory found");
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
833 return;
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
834 }
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
835
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
836 File [] files = extraDir.listFiles();
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
837
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
838 if (files == null) {
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
839 log.warn("cannot read extra longitudinal wst file directory");
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
840 return;
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
841 }
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
842
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
843 for (File file: files) {
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
844 if (!file.isFile() || !file.canRead()) {
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
845 continue;
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
846 }
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
847 String name = file.getName().toLowerCase();
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
848 if (!(name.endsWith(".zus") || name.endsWith(".wst"))) {
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
849 continue;
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
850 }
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
851 log.debug("Found WST file: " + file);
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
852
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
853 WstParser wstParser = new WstParser();
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
854 wstParser.parse(file);
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
855 ImportWst iw = wstParser.getWst();
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
856 iw.setKind(1);
491
738140fe56fe Importer: Prefix "Zusätzliche Längsschnitte" with "Zus.Längsschnitte" in description.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 490
diff changeset
857 iw.setDescription(EXTRA_LONGITUDINALS + "/" + iw.getDescription());
482
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
858 extraWsts.add(iw);
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
859 }
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
860
197
c0dcc2357106 Added stub for WST parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 194
diff changeset
861 }
c0dcc2357106 Added stub for WST parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 194
diff changeset
862
c0dcc2357106 Added stub for WST parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 194
diff changeset
863 public void parseWst() throws IOException {
1223
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
864 if (Config.INSTANCE.skipWst()) {
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
865 log.info("skip parsing WST file");
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
866 return;
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
867 }
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
868
197
c0dcc2357106 Added stub for WST parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 194
diff changeset
869 WstParser wstParser = new WstParser();
c0dcc2357106 Added stub for WST parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 194
diff changeset
870 wstParser.parse(wstFile);
201
3169b559ca3c Build models for wsts, wst columns and q ranges and store them in the backend.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 197
diff changeset
871 wst = wstParser.getWst();
186
cf8cbcb6a10d Added parser to read *.KM files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 184
diff changeset
872 }
cf8cbcb6a10d Added parser to read *.KM files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 184
diff changeset
873
184
4ab2c3bd474c Added parsing of PEGEL.GLT files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 177
diff changeset
874 public void parseGauges() throws IOException {
1223
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
875 if (Config.INSTANCE.skipGauges()) {
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
876 log.info("skip parsing gauges");
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
877 return;
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
878 }
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
879
184
4ab2c3bd474c Added parsing of PEGEL.GLT files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 177
diff changeset
880 File gltFile = new File(wstFile.getParentFile(), PEGEL_GLT);
4ab2c3bd474c Added parsing of PEGEL.GLT files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 177
diff changeset
881 gltFile = FileTools.repair(gltFile);
4ab2c3bd474c Added parsing of PEGEL.GLT files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 177
diff changeset
882
4ab2c3bd474c Added parsing of PEGEL.GLT files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 177
diff changeset
883 if (!gltFile.isFile() || !gltFile.canRead()) {
4ab2c3bd474c Added parsing of PEGEL.GLT files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 177
diff changeset
884 log.warn("cannot read gauges from '" + gltFile + "'");
4ab2c3bd474c Added parsing of PEGEL.GLT files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 177
diff changeset
885 return;
4ab2c3bd474c Added parsing of PEGEL.GLT files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 177
diff changeset
886 }
4ab2c3bd474c Added parsing of PEGEL.GLT files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 177
diff changeset
887
4ab2c3bd474c Added parsing of PEGEL.GLT files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 177
diff changeset
888 PegelGltParser pgltp = new PegelGltParser();
4ab2c3bd474c Added parsing of PEGEL.GLT files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 177
diff changeset
889 pgltp.parse(gltFile);
4ab2c3bd474c Added parsing of PEGEL.GLT files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 177
diff changeset
890
4ab2c3bd474c Added parsing of PEGEL.GLT files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 177
diff changeset
891 gauges = pgltp.getGauges();
189
bc3747a371cc First part of parsing main values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 188
diff changeset
892
bc3747a371cc First part of parsing main values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 188
diff changeset
893 for (ImportGauge gauge: gauges) {
bc3747a371cc First part of parsing main values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 188
diff changeset
894 gauge.parseDependencies();
bc3747a371cc First part of parsing main values.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 188
diff changeset
895 }
184
4ab2c3bd474c Added parsing of PEGEL.GLT files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 177
diff changeset
896 }
186
cf8cbcb6a10d Added parser to read *.KM files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 184
diff changeset
897
cf8cbcb6a10d Added parser to read *.KM files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 184
diff changeset
898 public void parseAnnotations() throws IOException {
1223
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
899 if (Config.INSTANCE.skipAnnotations()) {
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
900 log.info("skip parsing annotations");
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
901 return;
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
902 }
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
903
186
cf8cbcb6a10d Added parser to read *.KM files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 184
diff changeset
904 File riverDir = wstFile.getParentFile().getParentFile();
765
763c4137d6e1 Added classification of annotation types. Needs testing!
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 503
diff changeset
905 AnnotationsParser aparser =
763c4137d6e1 Added classification of annotation types. Needs testing!
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 503
diff changeset
906 new AnnotationsParser(annotationClassifier);
186
cf8cbcb6a10d Added parser to read *.KM files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 184
diff changeset
907 aparser.parse(riverDir);
cf8cbcb6a10d Added parser to read *.KM files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 184
diff changeset
908
cf8cbcb6a10d Added parser to read *.KM files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 184
diff changeset
909 annotations = aparser.getAnnotations();
cf8cbcb6a10d Added parser to read *.KM files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 184
diff changeset
910 }
188
003ac16812dd Store annotations in backend.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 186
diff changeset
911
1220
3c860d3e79d9 Importer: Parse HYKs from importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1211
diff changeset
912 public void parseHYKs() {
1223
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
913 if (Config.INSTANCE.skipHYKs()) {
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
914 log.info("skip parsing HYK files");
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
915 return;
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
916 }
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
917
1220
3c860d3e79d9 Importer: Parse HYKs from importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1211
diff changeset
918 log.info("looking for HYK files");
3c860d3e79d9 Importer: Parse HYKs from importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1211
diff changeset
919 HYKParser parser = new HYKParser();
3c860d3e79d9 Importer: Parse HYKs from importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1211
diff changeset
920 File riverDir = wstFile
3c860d3e79d9 Importer: Parse HYKs from importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1211
diff changeset
921 .getParentFile() // Basisdaten
3c860d3e79d9 Importer: Parse HYKs from importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1211
diff changeset
922 .getParentFile() // Hydrologie
3c860d3e79d9 Importer: Parse HYKs from importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1211
diff changeset
923 .getParentFile(); // <river>
3c860d3e79d9 Importer: Parse HYKs from importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1211
diff changeset
924
3c860d3e79d9 Importer: Parse HYKs from importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1211
diff changeset
925 parser.parseHYKs(riverDir, new HYKParser.Callback() {
3c860d3e79d9 Importer: Parse HYKs from importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1211
diff changeset
926
3c860d3e79d9 Importer: Parse HYKs from importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1211
diff changeset
927 Set<HashedFile> hfs = new HashSet<HashedFile>();
3c860d3e79d9 Importer: Parse HYKs from importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1211
diff changeset
928
3c860d3e79d9 Importer: Parse HYKs from importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1211
diff changeset
929 @Override
3c860d3e79d9 Importer: Parse HYKs from importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1211
diff changeset
930 public boolean hykAccept(File file) {
3c860d3e79d9 Importer: Parse HYKs from importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1211
diff changeset
931 HashedFile hf = new HashedFile(file);
3c860d3e79d9 Importer: Parse HYKs from importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1211
diff changeset
932 boolean success = hfs.add(hf);
3c860d3e79d9 Importer: Parse HYKs from importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1211
diff changeset
933 if (!success) {
3c860d3e79d9 Importer: Parse HYKs from importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1211
diff changeset
934 log.warn("HYK file '" + file + "' seems to be a duplicate.");
3c860d3e79d9 Importer: Parse HYKs from importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1211
diff changeset
935 }
3c860d3e79d9 Importer: Parse HYKs from importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1211
diff changeset
936 return success;
3c860d3e79d9 Importer: Parse HYKs from importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1211
diff changeset
937 }
3c860d3e79d9 Importer: Parse HYKs from importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1211
diff changeset
938
3c860d3e79d9 Importer: Parse HYKs from importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1211
diff changeset
939 @Override
3c860d3e79d9 Importer: Parse HYKs from importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1211
diff changeset
940 public void hykParsed(HYKParser parser) {
3c860d3e79d9 Importer: Parse HYKs from importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1211
diff changeset
941 log.debug("callback from HYK parser");
3c860d3e79d9 Importer: Parse HYKs from importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1211
diff changeset
942 ImportHYK hyk = parser.getHYK();
3c860d3e79d9 Importer: Parse HYKs from importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1211
diff changeset
943 hyk.setRiver(ImportRiver.this);
3c860d3e79d9 Importer: Parse HYKs from importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1211
diff changeset
944 hyks.add(hyk);
3c860d3e79d9 Importer: Parse HYKs from importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1211
diff changeset
945 }
3c860d3e79d9 Importer: Parse HYKs from importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1211
diff changeset
946 });
3c860d3e79d9 Importer: Parse HYKs from importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1211
diff changeset
947 }
3c860d3e79d9 Importer: Parse HYKs from importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1211
diff changeset
948
4712
70842db72ee4 Include improved DA66Parser into importer.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4706
diff changeset
949
4724
c30152f77f77 ImportRiver: Refactoring, use description and year of da66parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4716
diff changeset
950 /** Add cross sections with description, years and lines to
c30152f77f77 ImportRiver: Refactoring, use description and year of da66parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4716
diff changeset
951 * store. */
c30152f77f77 ImportRiver: Refactoring, use description and year of da66parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4716
diff changeset
952 private void addCrossSections(CrossSectionParser parser) {
c30152f77f77 ImportRiver: Refactoring, use description and year of da66parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4716
diff changeset
953 String description = parser.getDescription();
c30152f77f77 ImportRiver: Refactoring, use description and year of da66parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4716
diff changeset
954 Integer year = parser.getYear();
c30152f77f77 ImportRiver: Refactoring, use description and year of da66parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4716
diff changeset
955 ImportTimeInterval ti = year != null
c30152f77f77 ImportRiver: Refactoring, use description and year of da66parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4716
diff changeset
956 ? new ImportTimeInterval(yearToDate(year))
c30152f77f77 ImportRiver: Refactoring, use description and year of da66parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4716
diff changeset
957 : null;
c30152f77f77 ImportRiver: Refactoring, use description and year of da66parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4716
diff changeset
958
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: 4725
diff changeset
959 Map<Double, List<XY>> data = parser.getData();
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: 4725
diff changeset
960
4724
c30152f77f77 ImportRiver: Refactoring, use description and year of da66parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4716
diff changeset
961 List<ImportCrossSectionLine> lines =
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: 4725
diff changeset
962 new ArrayList<ImportCrossSectionLine>(data.size());
4724
c30152f77f77 ImportRiver: Refactoring, use description and year of da66parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4716
diff changeset
963
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: 4725
diff changeset
964 for (Map.Entry<Double, List<XY>> entry: data.entrySet()) {
4724
c30152f77f77 ImportRiver: Refactoring, use description and year of da66parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4716
diff changeset
965 Double km = entry.getKey();
c30152f77f77 ImportRiver: Refactoring, use description and year of da66parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4716
diff changeset
966 List<XY> points = entry.getValue();
c30152f77f77 ImportRiver: Refactoring, use description and year of da66parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4716
diff changeset
967 lines.add(new ImportCrossSectionLine(km, points));
c30152f77f77 ImportRiver: Refactoring, use description and year of da66parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4716
diff changeset
968 }
c30152f77f77 ImportRiver: Refactoring, use description and year of da66parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4716
diff changeset
969
c30152f77f77 ImportRiver: Refactoring, use description and year of da66parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4716
diff changeset
970 crossSections.add(new ImportCrossSection(
c30152f77f77 ImportRiver: Refactoring, use description and year of da66parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4716
diff changeset
971 ImportRiver.this, description, ti, lines));
c30152f77f77 ImportRiver: Refactoring, use description and year of da66parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4716
diff changeset
972 }
c30152f77f77 ImportRiver: Refactoring, use description and year of da66parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4716
diff changeset
973
4767
03246a8b3869 ImportRiver: Added w80 and hook for da50 parsing (not implemented).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4735
diff changeset
974 /** Create a W80 Parser and parse w80 files found. */
03246a8b3869 ImportRiver: Added w80 and hook for da50 parsing (not implemented).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4735
diff changeset
975 public void parseW80s() {
03246a8b3869 ImportRiver: Added w80 and hook for da50 parsing (not implemented).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4735
diff changeset
976 if (Config.INSTANCE.skipW80s()) {
03246a8b3869 ImportRiver: Added w80 and hook for da50 parsing (not implemented).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4735
diff changeset
977 log.info("skip parsing W80s");
4781
e77b461fa360 ImportRiver: Bail out if skip* parameters were given.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4779
diff changeset
978 return;
4767
03246a8b3869 ImportRiver: Added w80 and hook for da50 parsing (not implemented).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4735
diff changeset
979 }
03246a8b3869 ImportRiver: Added w80 and hook for da50 parsing (not implemented).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4735
diff changeset
980 W80Parser parser = new W80Parser();
03246a8b3869 ImportRiver: Added w80 and hook for da50 parsing (not implemented).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4735
diff changeset
981 File riverDir = wstFile
03246a8b3869 ImportRiver: Added w80 and hook for da50 parsing (not implemented).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4735
diff changeset
982 .getParentFile() // Basisdaten
03246a8b3869 ImportRiver: Added w80 and hook for da50 parsing (not implemented).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4735
diff changeset
983 .getParentFile() // Hydrologie
03246a8b3869 ImportRiver: Added w80 and hook for da50 parsing (not implemented).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4735
diff changeset
984 .getParentFile(); // <river>
03246a8b3869 ImportRiver: Added w80 and hook for da50 parsing (not implemented).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4735
diff changeset
985
4779
18908a3cbb3a ImportRiver: Use callback (refactoring), resolving TODOs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4778
diff changeset
986 ImportRiverCrossSectionParserCallback w80Callback =
18908a3cbb3a ImportRiver: Use callback (refactoring), resolving TODOs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4778
diff changeset
987 new ImportRiverCrossSectionParserCallback("w80");
18908a3cbb3a ImportRiver: Use callback (refactoring), resolving TODOs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4778
diff changeset
988 parser.parseW80s(riverDir, w80Callback);
4767
03246a8b3869 ImportRiver: Added w80 and hook for da50 parsing (not implemented).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4735
diff changeset
989 }
03246a8b3869 ImportRiver: Added w80 and hook for da50 parsing (not implemented).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4735
diff changeset
990
4782
696285cef182 ImportRiver: Trigger basic (useless) da50 parsing.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4781
diff changeset
991
696285cef182 ImportRiver: Trigger basic (useless) da50 parsing.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4781
diff changeset
992 /**
696285cef182 ImportRiver: Trigger basic (useless) da50 parsing.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4781
diff changeset
993 * Create and use a DA50Parser, parse the files found, add the
696285cef182 ImportRiver: Trigger basic (useless) da50 parsing.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4781
diff changeset
994 * ross-sections found.
696285cef182 ImportRiver: Trigger basic (useless) da50 parsing.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4781
diff changeset
995 */
4767
03246a8b3869 ImportRiver: Added w80 and hook for da50 parsing (not implemented).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4735
diff changeset
996 public void parseDA50s() {
03246a8b3869 ImportRiver: Added w80 and hook for da50 parsing (not implemented).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4735
diff changeset
997 if (Config.INSTANCE.skipDA50s()) {
03246a8b3869 ImportRiver: Added w80 and hook for da50 parsing (not implemented).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4735
diff changeset
998 log.info("skip parsing DA50s");
4781
e77b461fa360 ImportRiver: Bail out if skip* parameters were given.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4779
diff changeset
999 return;
4767
03246a8b3869 ImportRiver: Added w80 and hook for da50 parsing (not implemented).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4735
diff changeset
1000 }
4782
696285cef182 ImportRiver: Trigger basic (useless) da50 parsing.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4781
diff changeset
1001 DA50Parser parser = new DA50Parser();
696285cef182 ImportRiver: Trigger basic (useless) da50 parsing.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4781
diff changeset
1002 File riverDir = wstFile
696285cef182 ImportRiver: Trigger basic (useless) da50 parsing.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4781
diff changeset
1003 .getParentFile() // Basisdaten
696285cef182 ImportRiver: Trigger basic (useless) da50 parsing.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4781
diff changeset
1004 .getParentFile() // Hydrologie
696285cef182 ImportRiver: Trigger basic (useless) da50 parsing.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4781
diff changeset
1005 .getParentFile(); // <river>
696285cef182 ImportRiver: Trigger basic (useless) da50 parsing.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4781
diff changeset
1006
696285cef182 ImportRiver: Trigger basic (useless) da50 parsing.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4781
diff changeset
1007 ImportRiverCrossSectionParserCallback da50Callback =
696285cef182 ImportRiver: Trigger basic (useless) da50 parsing.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4781
diff changeset
1008 new ImportRiverCrossSectionParserCallback("da50");
696285cef182 ImportRiver: Trigger basic (useless) da50 parsing.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4781
diff changeset
1009 parser.parseDA50s(riverDir, da50Callback);
4767
03246a8b3869 ImportRiver: Added w80 and hook for da50 parsing (not implemented).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4735
diff changeset
1010 }
03246a8b3869 ImportRiver: Added w80 and hook for da50 parsing (not implemented).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4735
diff changeset
1011
4724
c30152f77f77 ImportRiver: Refactoring, use description and year of da66parser.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4716
diff changeset
1012
4712
70842db72ee4 Include improved DA66Parser into importer.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4706
diff changeset
1013 /** Create a DA66 Parser and parse the da66 files found. */
70842db72ee4 Include improved DA66Parser into importer.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4706
diff changeset
1014 // TODO this is a copy of parsePRFs, extract interfaces (e.g. CrossSectionParser).
70842db72ee4 Include improved DA66Parser into importer.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4706
diff changeset
1015 public void parseDA66s() {
70842db72ee4 Include improved DA66Parser into importer.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4706
diff changeset
1016 if (Config.INSTANCE.skipDA66s()) {
70842db72ee4 Include improved DA66Parser into importer.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4706
diff changeset
1017 log.info("skip parsing DA66s");
70842db72ee4 Include improved DA66Parser into importer.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4706
diff changeset
1018 return;
70842db72ee4 Include improved DA66Parser into importer.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4706
diff changeset
1019 }
70842db72ee4 Include improved DA66Parser into importer.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4706
diff changeset
1020
70842db72ee4 Include improved DA66Parser into importer.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4706
diff changeset
1021 log.info("looking for DA66 files");
70842db72ee4 Include improved DA66Parser into importer.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4706
diff changeset
1022 DA66Parser parser = new DA66Parser();
70842db72ee4 Include improved DA66Parser into importer.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4706
diff changeset
1023 File riverDir = wstFile
70842db72ee4 Include improved DA66Parser into importer.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4706
diff changeset
1024 .getParentFile() // Basisdaten
70842db72ee4 Include improved DA66Parser into importer.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4706
diff changeset
1025 .getParentFile() // Hydrologie
70842db72ee4 Include improved DA66Parser into importer.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4706
diff changeset
1026 .getParentFile(); // <river>
70842db72ee4 Include improved DA66Parser into importer.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4706
diff changeset
1027
4779
18908a3cbb3a ImportRiver: Use callback (refactoring), resolving TODOs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4778
diff changeset
1028 ImportRiverCrossSectionParserCallback da66Callback =
18908a3cbb3a ImportRiver: Use callback (refactoring), resolving TODOs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4778
diff changeset
1029 new ImportRiverCrossSectionParserCallback("da66");
18908a3cbb3a ImportRiver: Use callback (refactoring), resolving TODOs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4778
diff changeset
1030 parser.parseDA66s(riverDir, da66Callback);
4712
70842db72ee4 Include improved DA66Parser into importer.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4706
diff changeset
1031 }
70842db72ee4 Include improved DA66Parser into importer.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4706
diff changeset
1032
70842db72ee4 Include improved DA66Parser into importer.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4706
diff changeset
1033 /** Create a PRFParser and let it parse the prf files found. */
1204
22858e7cca79 Integrated PRF parsing into importer. Needs testing!
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 766
diff changeset
1034 public void parsePRFs() {
1223
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1035 if (Config.INSTANCE.skipPRFs()) {
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1036 log.info("skip parsing PRFs");
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1037 return;
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1038 }
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1039
1204
22858e7cca79 Integrated PRF parsing into importer. Needs testing!
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 766
diff changeset
1040 log.info("looking for PRF files");
22858e7cca79 Integrated PRF parsing into importer. Needs testing!
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 766
diff changeset
1041 PRFParser parser = new PRFParser();
22858e7cca79 Integrated PRF parsing into importer. Needs testing!
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 766
diff changeset
1042 File riverDir = wstFile
22858e7cca79 Integrated PRF parsing into importer. Needs testing!
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 766
diff changeset
1043 .getParentFile() // Basisdaten
22858e7cca79 Integrated PRF parsing into importer. Needs testing!
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 766
diff changeset
1044 .getParentFile() // Hydrologie
22858e7cca79 Integrated PRF parsing into importer. Needs testing!
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 766
diff changeset
1045 .getParentFile(); // <river>
1206
c7370734b872 Prevent parsing and storing PRF duplicates.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1204
diff changeset
1046
4779
18908a3cbb3a ImportRiver: Use callback (refactoring), resolving TODOs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4778
diff changeset
1047 ImportRiverCrossSectionParserCallback prfCallback =
18908a3cbb3a ImportRiver: Use callback (refactoring), resolving TODOs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4778
diff changeset
1048 new ImportRiverCrossSectionParserCallback("prf");
18908a3cbb3a ImportRiver: Use callback (refactoring), resolving TODOs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4778
diff changeset
1049 parser.parsePRFs(riverDir, prfCallback);
1204
22858e7cca79 Integrated PRF parsing into importer. Needs testing!
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 766
diff changeset
1050 }
22858e7cca79 Integrated PRF parsing into importer. Needs testing!
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 766
diff changeset
1051
22858e7cca79 Integrated PRF parsing into importer. Needs testing!
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 766
diff changeset
1052 public static Date yearToDate(int year) {
22858e7cca79 Integrated PRF parsing into importer. Needs testing!
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 766
diff changeset
1053 Calendar cal = Calendar.getInstance();
22858e7cca79 Integrated PRF parsing into importer. Needs testing!
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 766
diff changeset
1054 cal.set(year, 5, 15, 12, 0, 0);
22858e7cca79 Integrated PRF parsing into importer. Needs testing!
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 766
diff changeset
1055 long ms = cal.getTimeInMillis();
22858e7cca79 Integrated PRF parsing into importer. Needs testing!
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 766
diff changeset
1056 cal.setTimeInMillis(ms - ms%1000);
22858e7cca79 Integrated PRF parsing into importer. Needs testing!
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 766
diff changeset
1057 return cal.getTime();
22858e7cca79 Integrated PRF parsing into importer. Needs testing!
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 766
diff changeset
1058 }
22858e7cca79 Integrated PRF parsing into importer. Needs testing!
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 766
diff changeset
1059
190
d40da430d2fe Added stub code to write gauges
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 189
diff changeset
1060 public void storeDependencies() {
2347
0acf28a3d28a Removed the Unit from Wsts - added a WstUnit column to rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1234
diff changeset
1061 storeWstUnit();
190
d40da430d2fe Added stub code to write gauges
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 189
diff changeset
1062 storeAnnotations();
1221
979ff070e368 Store HYK data structures to database. Needs testing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1220
diff changeset
1063 storeHYKs();
1204
22858e7cca79 Integrated PRF parsing into importer. Needs testing!
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 766
diff changeset
1064 storeCrossSections();
190
d40da430d2fe Added stub code to write gauges
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 189
diff changeset
1065 storeGauges();
201
3169b559ca3c Build models for wsts, wst columns and q ranges and store them in the backend.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 197
diff changeset
1066 storeWst();
482
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
1067 storeExtraWsts();
483
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
1068 storeFixations();
484
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
1069 storeOfficialLines();
490
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
1070 storeFloodWater();
494
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
1071 storeFloodProtection();
2806
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
1072 storeBedHeight();
2815
3febaed762b8 Added new parser (stub) to read MINFO sediment density files; prepared import process to handle those files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2811
diff changeset
1073 storeSedimentDensity();
2821
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
1074 storeMorphologicalWidth();
2826
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
1075 storeFlowVelocity();
2839
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
1076 storeSedimentYield();
2844
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
1077 storeWaterlevels();
2851
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
1078 storeWaterlevelDifferences();
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: 3660
diff changeset
1079 storeMeasurementStations();
3328
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
1080 storeSQRelations();
201
3169b559ca3c Build models for wsts, wst columns and q ranges and store them in the backend.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 197
diff changeset
1081 }
3169b559ca3c Build models for wsts, wst columns and q ranges and store them in the backend.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 197
diff changeset
1082
2347
0acf28a3d28a Removed the Unit from Wsts - added a WstUnit column to rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1234
diff changeset
1083 public void storeWstUnit() {
0acf28a3d28a Removed the Unit from Wsts - added a WstUnit column to rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1234
diff changeset
1084 if (wst == null) {
0acf28a3d28a Removed the Unit from Wsts - added a WstUnit column to rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1234
diff changeset
1085 wstUnit = new ImportUnit("NN + m");
0acf28a3d28a Removed the Unit from Wsts - added a WstUnit column to rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1234
diff changeset
1086 }
0acf28a3d28a Removed the Unit from Wsts - added a WstUnit column to rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1234
diff changeset
1087 else {
0acf28a3d28a Removed the Unit from Wsts - added a WstUnit column to rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1234
diff changeset
1088 wstUnit = wst.getUnit();
0acf28a3d28a Removed the Unit from Wsts - added a WstUnit column to rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1234
diff changeset
1089 }
0acf28a3d28a Removed the Unit from Wsts - added a WstUnit column to rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1234
diff changeset
1090 }
0acf28a3d28a Removed the Unit from Wsts - added a WstUnit column to rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1234
diff changeset
1091
1221
979ff070e368 Store HYK data structures to database. Needs testing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1220
diff changeset
1092 public void storeHYKs() {
1223
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1093 if (!Config.INSTANCE.skipHYKs()) {
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1094 log.info("store HYKs");
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1095 getPeer();
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1096 for (ImportHYK hyk: hyks) {
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1097 hyk.storeDependencies();
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1098 }
1221
979ff070e368 Store HYK data structures to database. Needs testing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1220
diff changeset
1099 }
979ff070e368 Store HYK data structures to database. Needs testing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1220
diff changeset
1100 }
979ff070e368 Store HYK data structures to database. Needs testing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1220
diff changeset
1101
1204
22858e7cca79 Integrated PRF parsing into importer. Needs testing!
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 766
diff changeset
1102 public void storeCrossSections() {
4767
03246a8b3869 ImportRiver: Added w80 and hook for da50 parsing (not implemented).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4735
diff changeset
1103 if (!Config.INSTANCE.skipPRFs() || !Config.INSTANCE.skipDA66s() || !Config.INSTANCE.skipDA50s() || !Config.INSTANCE.skipW80s()) {
1223
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1104 log.info("store cross sections");
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1105 getPeer();
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1106 for (ImportCrossSection crossSection: crossSections) {
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1107 crossSection.storeDependencies();
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1108 }
1204
22858e7cca79 Integrated PRF parsing into importer. Needs testing!
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 766
diff changeset
1109 }
22858e7cca79 Integrated PRF parsing into importer. Needs testing!
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 766
diff changeset
1110 }
22858e7cca79 Integrated PRF parsing into importer. Needs testing!
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 766
diff changeset
1111
201
3169b559ca3c Build models for wsts, wst columns and q ranges and store them in the backend.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 197
diff changeset
1112 public void storeWst() {
1223
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1113 if (!Config.INSTANCE.skipWst()) {
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1114 River river = getPeer();
483
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
1115 wst.storeDependencies(river);
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
1116 }
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
1117 }
f1fd9cab6a07 Importer: parse and store fixation wst files as well
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 482
diff changeset
1118
1223
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1119 public void storeFixations() {
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1120 if (!Config.INSTANCE.skipFixations()) {
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1121 log.info("store fixation wsts");
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1122 River river = getPeer();
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1123 for (ImportWst wst: fixations) {
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1124 log.debug("name: " + wst.getDescription());
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1125 wst.storeDependencies(river);
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1126 }
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1127 }
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1128 }
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1129
482
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
1130 public void storeExtraWsts() {
1223
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1131 if (!Config.INSTANCE.skipExtraWsts()) {
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1132 log.info("store extra wsts");
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1133 River river = getPeer();
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1134 for (ImportWst wst: extraWsts) {
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1135 log.debug("name: " + wst.getDescription());
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1136 wst.storeDependencies(river);
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1137 }
482
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
1138 }
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
1139 }
3a99d0295006 Importer: Support parsing "zusaetzliche Laengsschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 201
diff changeset
1140
484
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
1141 public void storeOfficialLines() {
1223
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1142 if (!Config.INSTANCE.skipOfficialLines()) {
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1143 log.info("store official lines wsts");
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1144 River river = getPeer();
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1145 for (ImportWst wst: officialLines) {
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1146 log.debug("name: " + wst.getDescription());
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1147 wst.storeDependencies(river);
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1148 }
484
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
1149 }
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
1150 }
a9e9a8a44d19 Parse and store "amtliche Linien" wst files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 483
diff changeset
1151
490
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
1152 public void storeFloodWater() {
1223
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1153 if (!Config.INSTANCE.skipFloodWater()) {
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1154 log.info("store flood water wsts");
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1155 River river = getPeer();
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1156 for (ImportWst wst: floodWater) {
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1157 log.debug("name: " + wst.getDescription());
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1158 wst.storeDependencies(river);
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1159 }
490
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
1160 }
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
1161 }
13af9318a4a2 Import "Hochwasser-Marken", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 484
diff changeset
1162
494
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
1163 public void storeFloodProtection() {
1223
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1164 if (!Config.INSTANCE.skipFloodProtection()) {
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1165 log.info("store flood protection wsts");
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1166 River river = getPeer();
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1167 for (ImportWst wst: floodProtection) {
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1168 log.debug("name: " + wst.getDescription());
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1169 wst.storeDependencies(river);
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1170 }
494
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
1171 }
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
1172 }
88d5b02ff0c1 Importer: Import the "HW-Schutzanlagen", too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 491
diff changeset
1173
2806
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
1174
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
1175 public void storeBedHeight() {
2810
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1176 if (!Config.INSTANCE.skipBedHeightSingle()) {
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1177 log.info("store bed heights single");
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1178 storeBedHeightSingle();
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1179 }
2809
f283212966e8 Finished work on MINFO bed heights (single).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2806
diff changeset
1180
2810
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1181 if (!Config.INSTANCE.skipBedHeightEpoch()) {
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1182 log.info("store bed height epoch.");
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1183 storeBedHeightEpoch();
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1184 }
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1185 }
2809
f283212966e8 Finished work on MINFO bed heights (single).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2806
diff changeset
1186
2810
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1187
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1188 private void storeBedHeightSingle() {
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1189 River river = getPeer();
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1190
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1191 if (bedHeightSingles != null) {
2811
8926571e47fb Finished importing MINFO bed heights (single and epoch).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2810
diff changeset
1192 for (ImportBedHeight tmp: bedHeightSingles) {
8926571e47fb Finished importing MINFO bed heights (single and epoch).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2810
diff changeset
1193 ImportBedHeightSingle single = (ImportBedHeightSingle) tmp;
8926571e47fb Finished importing MINFO bed heights (single and epoch).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2810
diff changeset
1194
2810
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1195 String desc = single.getDescription();
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1196
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1197 log.debug("name: " + desc);
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1198
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1199 try {
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1200 single.storeDependencies(river);
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1201 }
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1202 catch (SQLException sqle) {
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1203 log.error("File '" + desc + "' is broken!");
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1204 }
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1205 catch (ConstraintViolationException cve) {
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1206 log.error("File '" + desc + "' is broken!");
2806
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
1207 }
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
1208 }
2810
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1209 }
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1210 else {
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1211 log.info("No single bed heights to store.");
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1212 }
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1213 }
2806
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
1214
2810
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1215
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1216 private void storeBedHeightEpoch() {
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1217 River river = getPeer();
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1218
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1219 if (bedHeightEpochs != null) {
2811
8926571e47fb Finished importing MINFO bed heights (single and epoch).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2810
diff changeset
1220 for (ImportBedHeight tmp: bedHeightEpochs) {
8926571e47fb Finished importing MINFO bed heights (single and epoch).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2810
diff changeset
1221 ImportBedHeightEpoch epoch = (ImportBedHeightEpoch) tmp;
8926571e47fb Finished importing MINFO bed heights (single and epoch).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2810
diff changeset
1222
2810
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1223 String desc = epoch.getDescription();
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1224
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1225 log.debug("name: " + desc);
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1226
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1227 try {
2806
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
1228 epoch.storeDependencies(river);
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
1229 }
2810
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1230 catch (SQLException sqle) {
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1231 log.error("File '" + desc + "' is broken!");
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1232 }
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1233 catch (ConstraintViolationException cve) {
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1234 log.error("File '" + desc + "' is broken!");
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1235 }
2806
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
1236 }
2810
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1237 }
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1238 else {
04eeb45df27b Implemented model classes and importer classes for bed height epochs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2809
diff changeset
1239 log.info("No epoch bed heights to store.");
2806
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
1240 }
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
1241 }
33f40b23edd8 Initial checkin for parsing MINFO bed heights.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2347
diff changeset
1242
2815
3febaed762b8 Added new parser (stub) to read MINFO sediment density files; prepared import process to handle those files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2811
diff changeset
1243 public void storeSedimentDensity() {
3febaed762b8 Added new parser (stub) to read MINFO sediment density files; prepared import process to handle those files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2811
diff changeset
1244 if (!Config.INSTANCE.skipSedimentDensity()) {
3febaed762b8 Added new parser (stub) to read MINFO sediment density files; prepared import process to handle those files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2811
diff changeset
1245 log.info("store sediment density");
3febaed762b8 Added new parser (stub) to read MINFO sediment density files; prepared import process to handle those files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2811
diff changeset
1246
2817
8979f2294af9 Finished parsing MINFO specific sediment density.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2815
diff changeset
1247 River river = getPeer();
8979f2294af9 Finished parsing MINFO specific sediment density.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2815
diff changeset
1248
8979f2294af9 Finished parsing MINFO specific sediment density.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2815
diff changeset
1249 for (ImportSedimentDensity density: sedimentDensities) {
8979f2294af9 Finished parsing MINFO specific sediment density.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2815
diff changeset
1250 String desc = density.getDescription();
8979f2294af9 Finished parsing MINFO specific sediment density.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2815
diff changeset
1251
8979f2294af9 Finished parsing MINFO specific sediment density.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2815
diff changeset
1252 log.debug("name: " + desc);
8979f2294af9 Finished parsing MINFO specific sediment density.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2815
diff changeset
1253
8979f2294af9 Finished parsing MINFO specific sediment density.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2815
diff changeset
1254 try {
8979f2294af9 Finished parsing MINFO specific sediment density.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2815
diff changeset
1255 density.storeDependencies(river);
8979f2294af9 Finished parsing MINFO specific sediment density.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2815
diff changeset
1256 }
8979f2294af9 Finished parsing MINFO specific sediment density.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2815
diff changeset
1257 catch (SQLException sqle) {
8979f2294af9 Finished parsing MINFO specific sediment density.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2815
diff changeset
1258 log.error("File '" + desc + "' is broken!");
8979f2294af9 Finished parsing MINFO specific sediment density.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2815
diff changeset
1259 }
8979f2294af9 Finished parsing MINFO specific sediment density.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2815
diff changeset
1260 catch (ConstraintViolationException cve) {
8979f2294af9 Finished parsing MINFO specific sediment density.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2815
diff changeset
1261 log.error("File '" + desc + "' is broken!");
8979f2294af9 Finished parsing MINFO specific sediment density.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2815
diff changeset
1262 }
8979f2294af9 Finished parsing MINFO specific sediment density.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2815
diff changeset
1263 }
2815
3febaed762b8 Added new parser (stub) to read MINFO sediment density files; prepared import process to handle those files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2811
diff changeset
1264 }
3febaed762b8 Added new parser (stub) to read MINFO sediment density files; prepared import process to handle those files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2811
diff changeset
1265 }
3febaed762b8 Added new parser (stub) to read MINFO sediment density files; prepared import process to handle those files.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2811
diff changeset
1266
2821
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
1267 public void storeMorphologicalWidth() {
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
1268 if (!Config.INSTANCE.skipMorphologicalWidth()) {
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
1269 log.info("store morphological width");
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
1270
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
1271 River river = getPeer();
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
1272
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
1273 for (ImportMorphWidth width: morphologicalWidths) {
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
1274 try {
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
1275 width.storeDependencies(river);
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
1276 }
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
1277 catch (SQLException sqle) {
3659
36edf9a71cbd backend: Mention backend errors in importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3329
diff changeset
1278 log.error("Error while parsing file for morph. width.", sqle);
2821
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
1279 }
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
1280 catch (ConstraintViolationException cve) {
3659
36edf9a71cbd backend: Mention backend errors in importer.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3329
diff changeset
1281 log.error("Error while parsing file for morph. width.", cve);
2821
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
1282 }
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
1283 }
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
1284 }
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
1285 }
0a536eb5d668 Added parser for parsing morphological widths.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2817
diff changeset
1286
2826
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
1287 public void storeFlowVelocity() {
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
1288 if (!Config.INSTANCE.skipFlowVelocity()) {
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
1289 log.info("store flow velocity");
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
1290
2827
85b25e74594f Added temp classes used during the import process of flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2826
diff changeset
1291 River river = getPeer();
85b25e74594f Added temp classes used during the import process of flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2826
diff changeset
1292
85b25e74594f Added temp classes used during the import process of flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2826
diff changeset
1293 for (ImportFlowVelocityModel flowVelocityModel: flowVelocityModels){
85b25e74594f Added temp classes used during the import process of flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2826
diff changeset
1294 try {
85b25e74594f Added temp classes used during the import process of flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2826
diff changeset
1295 flowVelocityModel.storeDependencies(river);
85b25e74594f Added temp classes used during the import process of flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2826
diff changeset
1296 }
85b25e74594f Added temp classes used during the import process of flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2826
diff changeset
1297 catch (SQLException sqle) {
85b25e74594f Added temp classes used during the import process of flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2826
diff changeset
1298 log.error("Error while storing flow velocity model.", sqle);
85b25e74594f Added temp classes used during the import process of flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2826
diff changeset
1299 }
85b25e74594f Added temp classes used during the import process of flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2826
diff changeset
1300 catch (ConstraintViolationException cve) {
85b25e74594f Added temp classes used during the import process of flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2826
diff changeset
1301 log.error("Error while storing flow velocity model.", cve);
85b25e74594f Added temp classes used during the import process of flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2826
diff changeset
1302 }
85b25e74594f Added temp classes used during the import process of flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2826
diff changeset
1303 }
2832
ac5bd90697c1 Added new parser for flow velocity measurements and fixed some smaller bugs while importing flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2828
diff changeset
1304
ac5bd90697c1 Added new parser for flow velocity measurements and fixed some smaller bugs while importing flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2828
diff changeset
1305 for (ImportFlowVelocityMeasurement m: flowVelocityMeasurements) {
ac5bd90697c1 Added new parser for flow velocity measurements and fixed some smaller bugs while importing flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2828
diff changeset
1306 try {
ac5bd90697c1 Added new parser for flow velocity measurements and fixed some smaller bugs while importing flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2828
diff changeset
1307 m.storeDependencies(river);
ac5bd90697c1 Added new parser for flow velocity measurements and fixed some smaller bugs while importing flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2828
diff changeset
1308 }
ac5bd90697c1 Added new parser for flow velocity measurements and fixed some smaller bugs while importing flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2828
diff changeset
1309 catch (SQLException sqle) {
ac5bd90697c1 Added new parser for flow velocity measurements and fixed some smaller bugs while importing flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2828
diff changeset
1310 log.error("Error while storing flow velocity measurement.", sqle);
ac5bd90697c1 Added new parser for flow velocity measurements and fixed some smaller bugs while importing flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2828
diff changeset
1311 }
ac5bd90697c1 Added new parser for flow velocity measurements and fixed some smaller bugs while importing flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2828
diff changeset
1312 catch (ConstraintViolationException cve) {
ac5bd90697c1 Added new parser for flow velocity measurements and fixed some smaller bugs while importing flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2828
diff changeset
1313 log.error("Error while storing flow velocity measurement.", cve);
ac5bd90697c1 Added new parser for flow velocity measurements and fixed some smaller bugs while importing flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2828
diff changeset
1314 }
ac5bd90697c1 Added new parser for flow velocity measurements and fixed some smaller bugs while importing flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2828
diff changeset
1315 }
2826
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
1316 }
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
1317 }
c3f8cf0cdf69 Prepared the importer to parse flow velocity files and added a config option to skip that process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2821
diff changeset
1318
2839
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
1319
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
1320 public void storeSedimentYield() {
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
1321 if (!Config.INSTANCE.skipSedimentYield()) {
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
1322 log.info("store sediment yield data");
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
1323
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
1324 River river = getPeer();
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
1325
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
1326 for (ImportSedimentYield sedimentYield: sedimentYields) {
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
1327 try {
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
1328 sedimentYield.storeDependencies(river);
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
1329 }
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
1330 catch (SQLException sqle) {
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
1331 log.error("Error while storing sediment yield.", sqle);
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
1332 }
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
1333 catch (ConstraintViolationException cve) {
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
1334 log.error("Error while storing sediment yield.", cve);
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
1335 }
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
1336 }
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
1337 }
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
1338 }
163c037f2c7e Added config option to skip parsing sediment yield data and prepared the importer to read/store those data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2832
diff changeset
1339
2844
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
1340
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
1341 public void storeWaterlevels() {
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
1342 if (!Config.INSTANCE.skipWaterlevels()) {
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
1343 log.info("store waterlevels");
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
1344
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
1345 River river = getPeer();
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
1346
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
1347 for (ImportWaterlevel waterlevel: waterlevels) {
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
1348 waterlevel.storeDependencies(river);
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
1349 }
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
1350 }
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
1351 }
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
1352
c4db0f75a94a Prepared the importer to import MINFO specific waterlevel values and added a stub for a parser.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2840
diff changeset
1353
2851
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
1354 public void storeWaterlevelDifferences() {
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
1355 if (!Config.INSTANCE.skipWaterlevelDifferences()) {
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
1356 log.info("store waterlevel differences");
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
1357
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
1358 River river = getPeer();
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
1359
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
1360 for (ImportWaterlevelDifference diff: waterlevelDiffs) {
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
1361 try {
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
1362 diff.storeDependencies(river);
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
1363 }
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
1364 catch (SQLException sqle) {
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
1365 log.error("Error while storing waterlevel diff.", sqle);
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
1366 }
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
1367 catch (ConstraintViolationException cve) {
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
1368 log.error("Error while storing waterlevel diff.", cve);
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
1369 }
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
1370 }
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
1371 }
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
1372 }
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
1373
acb8d08f59a2 Parse and store MINFO waterlevel differences; added config option to skip this process.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2845
diff changeset
1374
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: 3660
diff changeset
1375 public void storeMeasurementStations() {
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: 3660
diff changeset
1376 if (!Config.INSTANCE.skipMeasurementStations()) {
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: 3660
diff changeset
1377 log.info("store measurement stations");
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: 3660
diff changeset
1378
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: 3660
diff changeset
1379 River river = getPeer();
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: 3660
diff changeset
1380
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: 3660
diff changeset
1381 int count = 0;
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: 3660
diff changeset
1382
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: 3660
diff changeset
1383 for (ImportMeasurementStation station: measurementStations) {
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: 3660
diff changeset
1384 try {
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: 3660
diff changeset
1385 boolean success = station.storeDependencies(river);
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: 3660
diff changeset
1386 if (success) {
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: 3660
diff changeset
1387 count++;
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: 3660
diff changeset
1388 }
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: 3660
diff changeset
1389 }
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: 3660
diff changeset
1390 catch (SQLException sqle) {
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: 3660
diff changeset
1391 log.error("Error while storing measurement station.", sqle);
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: 3660
diff changeset
1392 }
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: 3660
diff changeset
1393 catch (ConstraintViolationException cve) {
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: 3660
diff changeset
1394 log.error("Error while storing measurement station.", cve);
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: 3660
diff changeset
1395 }
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: 3660
diff changeset
1396 }
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: 3660
diff changeset
1397
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: 3660
diff changeset
1398 log.info("stored " + count + " measurement stations.");
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: 3660
diff changeset
1399 }
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: 3660
diff changeset
1400 }
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: 3660
diff changeset
1401
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: 3660
diff changeset
1402
3328
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
1403 public void storeSQRelations() {
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
1404 if (!Config.INSTANCE.skipSQRelation()) {
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
1405 log.info("store sq relations");
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
1406
3329
cc8fc6b29649 Store sq relations into database after parsing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3328
diff changeset
1407 River river = getPeer();
cc8fc6b29649 Store sq relations into database after parsing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3328
diff changeset
1408
cc8fc6b29649 Store sq relations into database after parsing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3328
diff changeset
1409 int count = 0;
cc8fc6b29649 Store sq relations into database after parsing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3328
diff changeset
1410
cc8fc6b29649 Store sq relations into database after parsing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3328
diff changeset
1411 for (ImportSQRelation sqRelation: sqRelations) {
cc8fc6b29649 Store sq relations into database after parsing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3328
diff changeset
1412 try {
cc8fc6b29649 Store sq relations into database after parsing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3328
diff changeset
1413 sqRelation.storeDependencies(river);
cc8fc6b29649 Store sq relations into database after parsing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3328
diff changeset
1414 count++;
cc8fc6b29649 Store sq relations into database after parsing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3328
diff changeset
1415 }
cc8fc6b29649 Store sq relations into database after parsing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3328
diff changeset
1416 catch (SQLException sqle) {
cc8fc6b29649 Store sq relations into database after parsing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3328
diff changeset
1417 log.error("Error while storing sq relation.", sqle);
cc8fc6b29649 Store sq relations into database after parsing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3328
diff changeset
1418 }
cc8fc6b29649 Store sq relations into database after parsing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3328
diff changeset
1419 catch (ConstraintViolationException cve) {
cc8fc6b29649 Store sq relations into database after parsing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3328
diff changeset
1420 log.error("Error while storing sq relation.", cve);
cc8fc6b29649 Store sq relations into database after parsing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3328
diff changeset
1421 }
cc8fc6b29649 Store sq relations into database after parsing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3328
diff changeset
1422 }
cc8fc6b29649 Store sq relations into database after parsing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3328
diff changeset
1423
cc8fc6b29649 Store sq relations into database after parsing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3328
diff changeset
1424 log.info("stored " + count + " sq relations.");
3328
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
1425 }
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
1426 }
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
1427
a41f279a66e2 Added parser and import classes to import MINFO sq relations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3327
diff changeset
1428
188
003ac16812dd Store annotations in backend.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 186
diff changeset
1429 public void storeAnnotations() {
1223
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1430 if (!Config.INSTANCE.skipAnnotations()) {
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1431 River river = getPeer();
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1432 for (ImportAnnotation annotation: annotations) {
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1433 annotation.getPeer(river);
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1434 }
188
003ac16812dd Store annotations in backend.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 186
diff changeset
1435 }
003ac16812dd Store annotations in backend.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 186
diff changeset
1436 }
003ac16812dd Store annotations in backend.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 186
diff changeset
1437
190
d40da430d2fe Added stub code to write gauges
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 189
diff changeset
1438 public void storeGauges() {
1223
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1439 if (!Config.INSTANCE.skipGauges()) {
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1440 log.info("store gauges:");
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1441 River river = getPeer();
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1442 Session session = ImporterSession.getInstance()
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1443 .getDatabaseSession();
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1444 for (ImportGauge gauge: gauges) {
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1445 log.info("\tgauge: " + gauge.getName());
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1446 gauge.storeDependencies(river);
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1447 ImporterSession.getInstance().getDatabaseSession();
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1448 session.flush();
268f8da412e3 Importer: Added a central configuration to allow skipping of parsing/storing individual sub systems.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
1449 }
191
c4fb5141ce11 Propagate river into storing of gauges.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 190
diff changeset
1450 }
190
d40da430d2fe Added stub code to write gauges
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 189
diff changeset
1451 }
d40da430d2fe Added stub code to write gauges
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 189
diff changeset
1452
188
003ac16812dd Store annotations in backend.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 186
diff changeset
1453 public River getPeer() {
003ac16812dd Store annotations in backend.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 186
diff changeset
1454 if (peer == null) {
497
67fd63e4ef66 Importer: centralized caching
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 494
diff changeset
1455 Session session = ImporterSession.getInstance().getDatabaseSession();
188
003ac16812dd Store annotations in backend.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 186
diff changeset
1456 Query query = session.createQuery("from River where name=:name");
2347
0acf28a3d28a Removed the Unit from Wsts - added a WstUnit column to rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1234
diff changeset
1457
5027
25c180fa6162 Use BWASTRParser to set official numbers on rivers.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5020
diff changeset
1458 Unit u = null;
25c180fa6162 Use BWASTRParser to set official numbers on rivers.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5020
diff changeset
1459 if (wstUnit != null) {
25c180fa6162 Use BWASTRParser to set official numbers on rivers.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5020
diff changeset
1460 u = wstUnit.getPeer();
25c180fa6162 Use BWASTRParser to set official numbers on rivers.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5020
diff changeset
1461 }
2347
0acf28a3d28a Removed the Unit from Wsts - added a WstUnit column to rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1234
diff changeset
1462
188
003ac16812dd Store annotations in backend.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 186
diff changeset
1463 query.setString("name", name);
003ac16812dd Store annotations in backend.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 186
diff changeset
1464 List<River> rivers = query.list();
003ac16812dd Store annotations in backend.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 186
diff changeset
1465 if (rivers.isEmpty()) {
2347
0acf28a3d28a Removed the Unit from Wsts - added a WstUnit column to rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1234
diff changeset
1466 log.info("Store new river '" + name + "'");
0acf28a3d28a Removed the Unit from Wsts - added a WstUnit column to rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1234
diff changeset
1467 peer = new River(name, u);
5027
25c180fa6162 Use BWASTRParser to set official numbers on rivers.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5020
diff changeset
1468 if (!Config.INSTANCE.skipBWASTR()) {
25c180fa6162 Use BWASTRParser to set official numbers on rivers.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5020
diff changeset
1469 peer.setOfficialNumber(officialNumber);
25c180fa6162 Use BWASTRParser to set official numbers on rivers.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5020
diff changeset
1470 }
188
003ac16812dd Store annotations in backend.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 186
diff changeset
1471 session.save(peer);
003ac16812dd Store annotations in backend.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 186
diff changeset
1472 }
003ac16812dd Store annotations in backend.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 186
diff changeset
1473 else {
003ac16812dd Store annotations in backend.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 186
diff changeset
1474 peer = rivers.get(0);
003ac16812dd Store annotations in backend.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 186
diff changeset
1475 }
003ac16812dd Store annotations in backend.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 186
diff changeset
1476 }
003ac16812dd Store annotations in backend.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 186
diff changeset
1477 return peer;
003ac16812dd Store annotations in backend.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 186
diff changeset
1478 }
177
31895d24387e Importer: Added info gew parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
1479 }
31895d24387e Importer: Added info gew parser.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
1480 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org