Mercurial > dive4elements > river
comparison backend/src/main/java/org/dive4elements/river/importer/Importer.java @ 9729:7e767c0c9a6d 3.2.x
Improve importer start
_ Consider no given info gew files as error instead of starting to
process an empty list.
_ Reduce code duplication.
author | Tom Gottfried <tom@intevation.de> |
---|---|
date | Thu, 07 Jul 2022 11:19:08 +0200 |
parents | 0a5239a1e46e |
children |
comparison
equal
deleted
inserted
replaced
9728:ca1319d5816d | 9729:7e767c0c9a6d |
---|---|
15 import org.dive4elements.river.importer.parsers.InfoGewParser; | 15 import org.dive4elements.river.importer.parsers.InfoGewParser; |
16 | 16 |
17 import java.io.File; | 17 import java.io.File; |
18 import java.io.IOException; | 18 import java.io.IOException; |
19 | 19 |
20 import java.util.ArrayList; | |
21 import java.util.Arrays; | |
20 import java.util.HashMap; | 22 import java.util.HashMap; |
21 import java.util.List; | 23 import java.util.List; |
22 import java.util.Map; | 24 import java.util.Map; |
23 | 25 |
24 import java.sql.SQLException; | 26 import java.sql.SQLException; |
131 | 133 |
132 | 134 |
133 /** Starting point for importing river data. */ | 135 /** Starting point for importing river data. */ |
134 public static void main(String [] args) { | 136 public static void main(String [] args) { |
135 | 137 |
138 // Take paths of GEW files from arguments and system property | |
139 List<String> gews = new ArrayList<>(Arrays.asList(args)); | |
140 String gewProperty = Config.INSTANCE.getInfoGewFile(); | |
141 if (gewProperty != null && gewProperty.length() > 0) { | |
142 gews.add(gewProperty); | |
143 } | |
144 | |
145 if (gews.isEmpty()) { | |
146 log.error("No info gew files given"); | |
147 System.exit(1); | |
148 } | |
149 | |
136 InfoGewParser infoGewParser = new InfoGewParser( | 150 InfoGewParser infoGewParser = new InfoGewParser( |
137 getAnnotationClassifier()); | 151 getAnnotationClassifier()); |
138 | 152 |
139 log.info("Start parsing rivers..."); | 153 log.info("Start parsing rivers..."); |
140 | 154 |
141 File bwastrFile = null; | 155 File bwastrFile = null; |
142 | 156 |
143 for (String gew: args) { | 157 for (String gew: gews) { |
144 log.info("parsing info gew file: " + gew); | |
145 File gewFile = new File(gew); | |
146 if (bwastrFile == null) { | |
147 bwastrFile = new File( | |
148 gewFile.getParentFile(), BWASTR_ID_CSV_FILE); | |
149 } | |
150 try { | |
151 infoGewParser.parse(gewFile); | |
152 } | |
153 catch (IOException ioe) { | |
154 log.error("error while parsing gew: " + gew, ioe); | |
155 System.exit(1); | |
156 } | |
157 } | |
158 | |
159 String gew = Config.INSTANCE.getInfoGewFile(); | |
160 if (gew != null && gew.length() > 0) { | |
161 log.info("parsing info gew file: " + gew); | 158 log.info("parsing info gew file: " + gew); |
162 File gewFile = new File(gew); | 159 File gewFile = new File(gew); |
163 if (bwastrFile == null) { | 160 if (bwastrFile == null) { |
164 bwastrFile = new File( | 161 bwastrFile = new File( |
165 gewFile.getParentFile(), BWASTR_ID_CSV_FILE); | 162 gewFile.getParentFile(), BWASTR_ID_CSV_FILE); |