Mercurial > dive4elements > river
diff flys-backend/src/main/java/de/intevation/flys/importer/ImportRiver.java @ 2832:ac5bd90697c1
Added new parser for flow velocity measurements and fixed some smaller bugs while importing flow velocity data.
flys-backend/trunk@4250 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Tue, 17 Apr 2012 13:00:04 +0000 |
parents | ac13e466a55e |
children | 163c037f2c7e |
line wrap: on
line diff
--- a/flys-backend/src/main/java/de/intevation/flys/importer/ImportRiver.java Tue Apr 17 12:00:13 2012 +0000 +++ b/flys-backend/src/main/java/de/intevation/flys/importer/ImportRiver.java Tue Apr 17 13:00:04 2012 +0000 @@ -26,6 +26,7 @@ import de.intevation.flys.importer.parsers.BedHeightEpochParser; import de.intevation.flys.importer.parsers.BedHeightSingleParser; import de.intevation.flys.importer.parsers.FlowVelocityModelParser; +import de.intevation.flys.importer.parsers.FlowVelocityMeasurementParser; import de.intevation.flys.importer.parsers.PRFParser; import de.intevation.flys.importer.parsers.HYKParser; import de.intevation.flys.importer.parsers.MorphologicalWidthParser; @@ -115,6 +116,8 @@ protected List<ImportFlowVelocityModel> flowVelocityModels; + protected List<ImportFlowVelocityMeasurement> flowVelocityMeasurements; + protected ImportWst wst; protected ImportUnit wstUnit; @@ -124,16 +127,17 @@ protected River peer; public ImportRiver() { - hyks = new ArrayList<ImportHYK>(); - crossSections = new ArrayList<ImportCrossSection>(); - extraWsts = new ArrayList<ImportWst>(); - fixations = new ArrayList<ImportWst>(); - officialLines = new ArrayList<ImportWst>(); - floodWater = new ArrayList<ImportWst>(); - floodProtection = new ArrayList<ImportWst>(); - sedimentDensities = new ArrayList<ImportSedimentDensity>(); - morphologicalWidths = new ArrayList<ImportMorphWidth>(); - flowVelocityModels = new ArrayList<ImportFlowVelocityModel>(); + hyks = new ArrayList<ImportHYK>(); + crossSections = new ArrayList<ImportCrossSection>(); + extraWsts = new ArrayList<ImportWst>(); + fixations = new ArrayList<ImportWst>(); + officialLines = new ArrayList<ImportWst>(); + floodWater = new ArrayList<ImportWst>(); + floodProtection = new ArrayList<ImportWst>(); + sedimentDensities = new ArrayList<ImportSedimentDensity>(); + morphologicalWidths = new ArrayList<ImportMorphWidth>(); + flowVelocityModels = new ArrayList<ImportFlowVelocityModel>(); + flowVelocityMeasurements = new ArrayList<ImportFlowVelocityMeasurement>(); } public ImportRiver( @@ -366,10 +370,15 @@ log.warn("Cannot parse directory '" + measureDir + "'"); } else { - // TODO + FlowVelocityMeasurementParser parser = + new FlowVelocityMeasurementParser(); + for (File measurement: measureFiles) { log.debug("Parse file '" + measurement + "'"); + parser.parse(measurement); } + + flowVelocityMeasurements = parser.getMeasurements(); } } @@ -965,6 +974,18 @@ log.error("Error while storing flow velocity model.", cve); } } + + for (ImportFlowVelocityMeasurement m: flowVelocityMeasurements) { + try { + m.storeDependencies(river); + } + catch (SQLException sqle) { + log.error("Error while storing flow velocity measurement.", sqle); + } + catch (ConstraintViolationException cve) { + log.error("Error while storing flow velocity measurement.", cve); + } + } } }