diff backend/src/main/java/org/dive4elements/river/importer/ImportRiver.java @ 6335:b2a470c148a7

Backend: First steps to integrate parsing of official config files.
author Sascha L. Teichmann <teichmann@intevation.de>
date Fri, 14 Jun 2013 13:01:26 +0200
parents e81e9dcc81b4
children 224d7c4b5291
line wrap: on
line diff
--- a/backend/src/main/java/org/dive4elements/river/importer/ImportRiver.java	Fri Jun 14 12:32:28 2013 +0200
+++ b/backend/src/main/java/org/dive4elements/river/importer/ImportRiver.java	Fri Jun 14 13:01:26 2013 +0200
@@ -24,6 +24,7 @@
 import org.dive4elements.river.importer.parsers.HYKParser;
 import org.dive4elements.river.importer.parsers.MeasurementStationsParser;
 import org.dive4elements.river.importer.parsers.MorphologicalWidthParser;
+import org.dive4elements.river.importer.parsers.OfficialLinesConfigParser;
 import org.dive4elements.river.importer.parsers.PRFParser;
 import org.dive4elements.river.importer.parsers.PegelGltParser;
 import org.dive4elements.river.importer.parsers.SQRelationParser;
@@ -75,6 +76,9 @@
     public static final String OFFICIAL_LINES =
         "Amtl_Linien.wst";
 
+    public static final String OFFICIAL_LINES_CONFIG =
+        "Amtl_Linien.config";
+
     public static final String FLOOD_WATER = "HW-Marken";
 
     public static final String FLOOD_PROTECTION =
@@ -793,6 +797,28 @@
             ImportWst iw = wstParser.getWst();
             iw.setKind(3);
             iw.setDescription(folder + "/" + iw.getDescription());
+
+            File configFile = FileTools.repair(new File(dir, OFFICIAL_LINES_CONFIG));
+            if (!configFile.isFile() || !configFile.canRead()) {
+                log.warn("no config file for official lines found");
+            }
+            else {
+                OfficialLinesConfigParser olcp = new OfficialLinesConfigParser();
+                try {
+                    olcp.parse(configFile);
+                }
+                catch (IOException ioe) {
+                    log.warn("Error reading offical lines config", ioe);
+                }
+                List<String> mainValueNames = olcp.getMainValueNames();
+                if (mainValueNames.isEmpty()) {
+                    log.warn("config file for offical lines contains no entries");
+                }
+                else {
+                    // TODO: Join against main values.
+                }
+            }
+
             officialLines.add(iw);
         } // for all folders
 

http://dive4elements.wald.intevation.org