diff flys-backend/src/main/java/de/intevation/flys/importer/ImportGauge.java @ 493:b35c5dc0f8b7

Importer: Make import of historical discharge tables work. flys-backend/trunk@1842 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Fri, 06 May 2011 10:27:32 +0000
parents 14de9246b356
children 67fd63e4ef66
line wrap: on
line diff
--- a/flys-backend/src/main/java/de/intevation/flys/importer/ImportGauge.java	Thu May 05 15:25:16 2011 +0000
+++ b/flys-backend/src/main/java/de/intevation/flys/importer/ImportGauge.java	Fri May 06 10:27:32 2011 +0000
@@ -2,6 +2,7 @@
 
 import java.io.File;
 
+import java.util.ArrayList;
 import java.util.List;
 
 import java.math.BigDecimal;
@@ -42,11 +43,14 @@
     protected List<ImportMainValueType>  mainValueTypes;
     protected List<ImportNamedMainValue> namedMainValues;
     protected List<ImportMainValue>      mainValues;
+    protected List<ImportDischargeTable> historicalDischargeTables;
 
     public ImportGauge() {
+        historicalDischargeTables = new ArrayList<ImportDischargeTable>();
     }
 
     public ImportGauge(ImportRange range, File staFile, File atFile) {
+        this();
         this.range   = range;
         this.staFile = staFile;
         this.atFile  = atFile;
@@ -184,7 +188,8 @@
             log.info("found at file '" + file.getName() + "'");
 
             AtFileParser afp = new AtFileParser();
-            ImportDischargeTable dct = afp.parse(file, 1);
+            historicalDischargeTables.add(
+                afp.parse(file, HISTORICAL_DISCHARGE_TABLES + "/", 1));
         }
     }
 
@@ -205,14 +210,20 @@
         }
 
         storeDischargeTable(gauge);
+        storeHistoricalDischargeTable(gauge);
     }
 
-
     public void storeDischargeTable(Gauge gauge) {
         dischargeTable.getPeer(gauge);
         dischargeTable.storeDependencies(gauge);
     }
 
+    public void storeHistoricalDischargeTable(Gauge gauge) {
+        for (ImportDischargeTable hdt: historicalDischargeTables) {
+            hdt.storeDependencies(gauge);
+        }
+    }
+
     public Gauge getPeer(River river) {
         if (peer == null) {
             Session session = Importer.sessionHolder.get();

http://dive4elements.wald.intevation.org