changeset 3662:0d27d02b1208

backend: Completed the error messages of the importer. flys-backend/trunk@5266 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Fri, 24 Aug 2012 15:47:31 +0000
parents 3ea5e835ecce
children 0bd5e327afb0
files flys-backend/ChangeLog flys-backend/doc/README.txt flys-backend/src/main/java/de/intevation/flys/importer/ImportBedHeightEpoch.java flys-backend/src/main/java/de/intevation/flys/importer/ImportBedHeightSingle.java flys-backend/src/main/java/de/intevation/flys/importer/ImportSQRelation.java flys-backend/src/main/java/de/intevation/flys/importer/ImportWaterlevelDifference.java flys-backend/src/main/java/de/intevation/flys/importer/parsers/AnnotationClassifier.java flys-backend/src/main/java/de/intevation/flys/importer/parsers/AnnotationsParser.java flys-backend/src/main/java/de/intevation/flys/importer/parsers/BedHeightParser.java flys-backend/src/main/java/de/intevation/flys/importer/parsers/BedHeightSingleParser.java flys-backend/src/main/java/de/intevation/flys/importer/parsers/MorphologicalWidthParser.java flys-backend/src/main/java/de/intevation/flys/importer/parsers/SedimentYieldParser.java flys-backend/src/main/java/de/intevation/flys/importer/parsers/WstParser.java
diffstat 13 files changed, 196 insertions(+), 53 deletions(-) [+]
line wrap: on
line diff
--- a/flys-backend/ChangeLog	Fri Aug 24 14:13:19 2012 +0000
+++ b/flys-backend/ChangeLog	Fri Aug 24 15:47:31 2012 +0000
@@ -1,3 +1,20 @@
+2012-08-24	Sascha L. Teichmann	<sascha.teichmann@intevation.de>
+
+	* doc/README.txt: Completed the error messages (Puh!)
+
+	* src/main/java/de/intevation/flys/importer/ImportBedHeightSingle.java,
+	  src/main/java/de/intevation/flys/importer/ImportWaterlevelDifference.java,
+	  src/main/java/de/intevation/flys/importer/ImportBedHeightEpoch.java,
+	  src/main/java/de/intevation/flys/importer/parsers/BedHeightParser.java,
+	  src/main/java/de/intevation/flys/importer/parsers/BedHeightSingleParser.java,
+	  src/main/java/de/intevation/flys/importer/parsers/AnnotationsParser.java,
+	  src/main/java/de/intevation/flys/importer/parsers/MorphologicalWidthParser.java,
+	  src/main/java/de/intevation/flys/importer/parsers/SedimentYieldParser.java,
+	  src/main/java/de/intevation/flys/importer/parsers/AnnotationClassifier.java,
+	  src/main/java/de/intevation/flys/importer/parsers/WstParser.java,
+	  src/main/java/de/intevation/flys/importer/ImportSQRelation.java:
+	  Made error messages identifiable.
+
 2012-08-24  Ingo Weinzierl <ingo@intevation.de>
 
 	* doc/shapeimporter,
--- a/flys-backend/doc/README.txt	Fri Aug 24 14:13:19 2012 +0000
+++ b/flys-backend/doc/README.txt	Fri Aug 24 15:47:31 2012 +0000
@@ -49,7 +49,7 @@
   !!! Enthalten invalide Pegelnummern.
 
   Die System-Property "flys.backend.main.value.types" kann einen
-  String mit gültigen Typen von Stamdaten enthalten. Vorbelegt
+  String mit gültigen Typen von Stammdaten enthalten. Vorbelegt
   ist "QWTD". In der Praxis ist "QWD" eine sinnvolle Belegung.
 
 - Basis-Wasserstände (gewaesser.wst-Dateien):
@@ -98,6 +98,20 @@
 
 TODO SLT: Datenbank-Credentials dokumentieren.
 
+Betrieb:
+--------
+
+    Der Speicherverbrauch des Importers ist sehr hoch. Es ist empfehlenswert,
+    der JVM mindestens 8GiB Hauptspeicher zuzuordnen: '-Xmx8192m'
+    Besonders speicherintensiv ist der Import der HYKs und der PRFs.
+    Hier ist es unter Umständen empfehlenswert, diese in zwei oder drei
+    Schritten zu importieren. Zuerst die sonstigen hydrologischen Daten
+    (hierbei mit flys.backend.importer.skip.hyks=true und flys.backend.importer.skip.prfs
+    den Import der HYKs und PRFs verhindern). Dann die HYKs (mit flys.backend.importer.skip.*
+    der anderen Daten) und im finalen Schritt dann die PRFs.
+
+Anhang Fehler und Warnungen:
+============================
 
 Fehler:
 -------
@@ -282,14 +296,126 @@
 - 'AT: invalid number <XYZ>'
   Eine Zahl wurde erwartet aber nicht gefunden.
 
-Betrieb:
---------
+- 'Try to add Q range without waterlevel!'
+  Q-Bereich ohne Wasserstand gefunden.
 
-    Der Speicherverbrauch des Importers ist sehr hoch. Es ist empfehlenswert,
-    der JVM mindestens 8GiB Hauptspeicher zuzuordnen: '-Xmx8192m'
-    Besonders speicherintensiv ist der Import der HYKs und der PRFs.
-    Hier ist es unter Umständen empfehlenswert, diese in zwei oder drei
-    Schritten zu importieren. Zuerst die sonstigen hydrologischen Daten
-    (hierbei mit flys.backend.importer.skip.hyks=true und flys.backend.importer.skip.prfs
-    den Import der HYKs und PRFs verhindern). Dann die HYKs (mit flys.backend.importer.skip.*
-    der anderen Daten) und im finalen Schritt dann die PRFs.
+- 'Error while parsing Q range: #'
+  Invalider Q-Bereich
+
+- 'skip invalid waterlevel line: #'
+  Ungültige Wasserstandslinie
+
+- 'Error while parsing number values: #'
+  Ungültige Zahlenwerte.
+
+- 'ANN: not enough columns in line #'
+  Nicht genug Zeichenspalten in KM-Datei
+
+- 'ANN: invalid number in line #'
+  Ungültige Zahl.
+
+- 'ANN: cannot parse 'Unterkante' in line #'
+  Die Unterkante in einer KM-Datei konnte nicht gelesen werden.
+
+- 'ANN: cannot parse 'Unterkante' or 'Oberkante' in line #'
+  Unter- oder Oberkannte liegen in einem falschen Format vor.
+
+- 'ANN: duplicated annotation 'XYZ' in line #'
+  Ein Duplikat eines Streckenfavoriten wurde gefunden.
+
+- 'ANN: 'XYZ' is not a directory.'
+  Unterverzeichnis konnte nicht geöffnet werden.
+
+- 'ANN: cannot list directory 'XYZ''
+  Unterverzeichnis konnte nicht durchsucht werden.
+
+- 'BHP: Meta line did not match any known type: #'
+  Unbekannter Typ.
+
+- 'BHP: Error while parsing timeinterval!'
+  Ungültiges Zeitinterval.
+
+- 'BHP: Error while parsing year!'
+  Ungültige Jahresangabe.
+
+- 'BHP: Error while parsing sounding width!'
+  Unbekannte Peilungsbreite.
+
+- 'BHP: Error while parsing range!'
+  Bereichsangabe fehlerhaft.
+
+- 'MWP: Unknown meta line: #'
+  Meta-Informationen ungültig.
+
+- 'MWP: skip invalid data line: #'
+  Ungültige Datenzeile wurde übersprungen.
+
+- 'MWP: Error while parsing numbers in #'
+  Falsche Zahlenformat.
+
+- 'ANNCLASS: rule has no name'
+  Klassifizierungsregel für Streckenfavoriten hat keinen Namen.
+
+- 'ANNCLASS: pattern has no 'pattern' attribute.'
+  Klassifizierungsmuster für Streckenfavoriten hat kein Muster.
+
+- 'ANNCLASS: pattern has unknown type 'XYZ''
+  Klassifizierungsmuster für Streckenfavoriten konnte keinem Typ zugeordnet werden.
+
+- 'ANNCLASS: pattern 'XYZ' is invalid.'
+  Klassifizierungsmuster für Streckenfavoriten ist ungültig.
+
+- 'BSP: Error while parsing data row.'
+  Ungültige Datenzeile.
+
+- 'SYP: Unknown meta line: #'
+  Ungültige Metadatenzeile.
+
+- 'SYP: skip invalid data line #'
+  Ungültige Datenzeile wurde übersprungen.
+
+- 'SYP: Error while parsing numbers in #'
+  Ungültige Zahlenformatierung.
+
+- 'SYP: Unknown time interval string <XYZ>'
+  Falsches Datumformat.
+
+- 'SYP: Error while parsing years <XYZ>'
+  Falsches Jahreszahlformat.
+ 
+- 'SYP: Error while parsing ranges of <XYZ>'
+  Bereichsangaben fehlerhaft.
+
+- 'SYP: Unknown grain fraction <XYZ>'
+  Unbekannte Kornfraktion.
+
+- 'WST: invalid number.'
+  Ungültige Zahl.
+
+- 'WST: km <km> (<Zeile>) found more than once. -> ignored.'
+  Ein Kilometer ist doppelt in einer WST-Datei enthalten.
+
+- 'HYK: zone coordinates swapped in line #'
+  Fliesszonenkordinaten wurden in umgekehrter Reihenfolge angeben.
+
+- 'BHS: Skip invalid file 'XYZ''
+  Die Inhalte der Datei sind ungültig.
+
+- 'ISQ: Unable to store sq relation value.'
+  S(Q) Beziehung konnte nicht gespeichert werden.
+
+- 'ISQ: Cannot determine sq relation without time interval.'
+  Einer S(Q)-Beziehung ist keine zeitliche Gültigkeit zugeordnet.
+
+- 'IWD: skip invalid waterlevel difference - no unit set!'
+  Wasserstandsdifferenz hat keine Einheit.
+
+- 'BHE: Skip file - invalid current elevation model.'
+  Höhenmodell ungültig.
+
+- 'BHE: Skip file - invalid time range.'
+  Zeitbereich ungültig.
+
+- 'BHE: Skip file - invalid km range.'
+  Kilometerbereich ungültig.
+  
--- a/flys-backend/src/main/java/de/intevation/flys/importer/ImportBedHeightEpoch.java	Fri Aug 24 14:13:19 2012 +0000
+++ b/flys-backend/src/main/java/de/intevation/flys/importer/ImportBedHeightEpoch.java	Fri Aug 24 15:47:31 2012 +0000
@@ -132,7 +132,7 @@
                 : null;
 
             if (theCurModel == null) {
-                log.warn("Skip file - invalid current elevation model.");
+                log.warn("BHE: Skip file - invalid current elevation model.");
                 return null;
             }
 
@@ -141,14 +141,14 @@
                 : null;
 
             if (theTime == null) {
-                log.warn("Skip file - invalid time range.");
+                log.warn("BHE: Skip file - invalid time range.");
                 return null;
             }
 
             Range theRange = range != null ? range.getPeer(river) : null;
 
             if (theRange == null) {
-                log.warn("Skip file - invalid km range.");
+                log.warn("BHE: Skip file - invalid km range.");
                 return null;
             }
 
--- a/flys-backend/src/main/java/de/intevation/flys/importer/ImportBedHeightSingle.java	Fri Aug 24 14:13:19 2012 +0000
+++ b/flys-backend/src/main/java/de/intevation/flys/importer/ImportBedHeightSingle.java	Fri Aug 24 15:47:31 2012 +0000
@@ -139,7 +139,7 @@
             Range          theRange    = range != null ? range.getPeer(river) : null;
 
             if (theType == null || theCurModel == null || theRange == null) {
-                log.warn("Skip invalid file '" + description + "'");
+                log.warn("BHS: Skip invalid file '" + description + "'");
                 return null;
             }
 
--- a/flys-backend/src/main/java/de/intevation/flys/importer/ImportSQRelation.java	Fri Aug 24 14:13:19 2012 +0000
+++ b/flys-backend/src/main/java/de/intevation/flys/importer/ImportSQRelation.java	Fri Aug 24 15:47:31 2012 +0000
@@ -51,10 +51,10 @@
                 count++;
             }
             catch (SQLException sqle) {
-                log.warn("Unable to store sq relation value.", sqle);
+                log.warn("ISQ: Unable to store sq relation value.", sqle);
             }
             catch (ConstraintViolationException cve) {
-                log.warn("Unable to store sq relation value.", cve);
+                log.warn("ISQ: Unable to store sq relation value.", cve);
             }
         }
 
@@ -69,7 +69,7 @@
             TimeInterval timeInter = timeInterval.getPeer();
 
             if (timeInter == null) {
-                log.warn("Cannot determine sq relation without time interval");
+                log.warn("ISQ: Cannot determine sq relation without time interval");
                 return null;
             }
 
--- a/flys-backend/src/main/java/de/intevation/flys/importer/ImportWaterlevelDifference.java	Fri Aug 24 14:13:19 2012 +0000
+++ b/flys-backend/src/main/java/de/intevation/flys/importer/ImportWaterlevelDifference.java	Fri Aug 24 15:47:31 2012 +0000
@@ -68,7 +68,7 @@
     public WaterlevelDifference getPeer(River river) {
         Unit u = unit != null ? unit.getPeer() : null;
         if (u == null) {
-            log.warn("skip invalid waterlevel difference - no unit set!");
+            log.warn("IWD: skip invalid waterlevel difference - no unit set!");
             return null;
         }
 
--- a/flys-backend/src/main/java/de/intevation/flys/importer/parsers/AnnotationClassifier.java	Fri Aug 24 14:13:19 2012 +0000
+++ b/flys-backend/src/main/java/de/intevation/flys/importer/parsers/AnnotationClassifier.java	Fri Aug 24 15:47:31 2012 +0000
@@ -92,7 +92,7 @@
             Element typeElement = (Element)typeList.item(i);
             String name = typeElement.getAttribute("name");
             if (name.length() == 0) {
-                log.warn("rule has no name");
+                log.warn("ANNCLASS: rule has no name");
                 continue;
             }
 
@@ -155,19 +155,19 @@
         String type    = element.getAttribute("type");
 
         if (pattern.length() == 0) {
-            log.warn("pattern has no 'pattern' attribute.");
+            log.warn("ANNCLASS: pattern has no 'pattern' attribute.");
             return null;
         }
 
         if (type.length() == 0) {
-            log.warn("pattern has no 'type' attribute.");
+            log.warn("ANNCLASS: pattern has no 'type' attribute.");
             return null;
         }
 
         ImportAnnotationType annType = types.get(type);
 
         if (annType == null) {
-            log.warn("pattern has unknown type '" + type + "'");
+            log.warn("ANNCLASS: pattern has unknown type '" + type + "'");
             return null;
         }
 
@@ -178,7 +178,7 @@
                     Pattern.CASE_INSENSITIVE|Pattern.UNICODE_CASE);
         }
         catch (IllegalArgumentException iae) {
-            log.warn("pattern '" + pattern + "' is invalid.", iae);
+            log.warn("ANNCLASS: pattern '" + pattern + "' is invalid.", iae);
             return null;
         }
 
--- a/flys-backend/src/main/java/de/intevation/flys/importer/parsers/AnnotationsParser.java	Fri Aug 24 14:13:19 2012 +0000
+++ b/flys-backend/src/main/java/de/intevation/flys/importer/parsers/AnnotationsParser.java	Fri Aug 24 15:47:31 2012 +0000
@@ -81,7 +81,7 @@
                 String [] parts = line.split("\\s*;\\s*");
 
                 if (parts.length < 3) {
-                    log.warn("not enough columns in line "
+                    log.warn("ANN: not enough columns in line "
                         + in.getLineNumber());
                     continue;
                 }
@@ -110,7 +110,7 @@
                     }
                 }
                 catch (NumberFormatException nfe) {
-                    log.warn("invalid number in line " + in.getLineNumber());
+                    log.warn("ANN: invalid number in line " + in.getLineNumber());
                     continue;
                 }
 
@@ -123,7 +123,7 @@
                             new BigDecimal(parts[3].trim().replace(',', '.')));
                     }
                     catch (NumberFormatException nfe) {
-                        log.warn("cannot parse 'Unterkante' in line " +
+                        log.warn("ANN: cannot parse 'Unterkante' in line " +
                             in.getLineNumber());
                     }
                 }
@@ -141,7 +141,7 @@
                     }
                     catch (NumberFormatException nfe) {
                         log.warn(
-                            "cannot parse 'Unterkante' or 'Oberkante' in line "
+                            "ANN: cannot parse 'Unterkante' or 'Oberkante' in line "
                             + in.getLineNumber());
                     }
                 }
@@ -156,7 +156,7 @@
                     attribute, position, range, edge, type);
 
                 if (!annotations.add(annotation)) {
-                    log.warn("duplicated annotation '" + parts[0] +
+                    log.warn("ANN: duplicated annotation '" + parts[0] +
                         "' in line " + in.getLineNumber());
                 }
             }
@@ -173,12 +173,12 @@
         for (String toScan: TO_SCAN) {
             File directory = FileTools.repair(new File(root, toScan));
             if (!directory.isDirectory()) {
-                log.warn("'" + directory + "' is not a directory.");
+                log.warn("ANN: '" + directory + "' is not a directory.");
                 continue;
             }
             File [] files = directory.listFiles();
             if (files == null) {
-                log.warn("cannot list directory '" + directory + "'");
+                log.warn("ANN: cannot list directory '" + directory + "'");
                 continue;
             }
 
--- a/flys-backend/src/main/java/de/intevation/flys/importer/parsers/BedHeightParser.java	Fri Aug 24 14:13:19 2012 +0000
+++ b/flys-backend/src/main/java/de/intevation/flys/importer/parsers/BedHeightParser.java	Fri Aug 24 15:47:31 2012 +0000
@@ -192,7 +192,7 @@
             return;
         }
         else {
-            log.warn("Meta line did not match any known type: " + line);
+            log.warn("BHP: Meta line did not match any known type: " + line);
         }
     }
 
@@ -208,7 +208,7 @@
                 return true;
             }
             catch (NumberFormatException e) {
-                log.warn("Error while parsing year!", e);
+                log.warn("BHP: Error while parsing year!", e);
             }
         }
 
@@ -235,7 +235,7 @@
                 obj.setTimeInterval(new ImportTimeInterval(fromYear, toYear));
             }
             catch (NumberFormatException e) {
-                log.warn("Error while parsing timeinterval!", e);
+                log.warn("BHP: Error while parsing timeinterval!", e);
             }
 
             return true;
@@ -256,7 +256,7 @@
                 return true;
             }
             catch (NumberFormatException e) {
-                log.warn("Error while parsing sounding width!", e);
+                log.warn("BHP: Error while parsing sounding width!", e);
             }
         }
 
@@ -314,7 +314,7 @@
                 return true;
             }
             catch (ParseException e) {
-                log.warn("Error while parsing range!", e);
+                log.warn("BHP: Error while parsing range!", e);
             }
         }
 
--- a/flys-backend/src/main/java/de/intevation/flys/importer/parsers/BedHeightSingleParser.java	Fri Aug 24 14:13:19 2012 +0000
+++ b/flys-backend/src/main/java/de/intevation/flys/importer/parsers/BedHeightSingleParser.java	Fri Aug 24 15:47:31 2012 +0000
@@ -34,7 +34,7 @@
         String[] values = line.split(SEPERATOR_CHAR);
 
         if (values == null || values.length < 6) {
-            //log.warn("Error while parsing data line: '" + line + "'");
+            //log.warn("BSP: Error while parsing data line: '" + line + "'");
             return;
         }
 
@@ -52,7 +52,7 @@
             obj.addValue(value);
         }
         catch (ParseException e) {
-            log.warn("Error while parsing data row.", e);
+            log.warn("BSP: Error while parsing data row.", e);
         }
     }
 }
--- a/flys-backend/src/main/java/de/intevation/flys/importer/parsers/MorphologicalWidthParser.java	Fri Aug 24 14:13:19 2012 +0000
+++ b/flys-backend/src/main/java/de/intevation/flys/importer/parsers/MorphologicalWidthParser.java	Fri Aug 24 15:47:31 2012 +0000
@@ -70,7 +70,7 @@
             return;
         }
         else {
-            log.warn("Unknown meta line: '" + line + "'");
+            log.warn("MWP: Unknown meta line: '" + line + "'");
         }
     }
 
@@ -94,7 +94,7 @@
         String[] vals = line.split(SEPERATOR_CHAR);
 
         if (vals == null || vals.length < 2) {
-            log.warn("skip invalid data line: '" + line + "'");
+            log.warn("MWP: skip invalid data line: '" + line + "'");
             return;
         }
 
@@ -111,7 +111,7 @@
             ));
         }
         catch (ParseException pe) {
-            log.warn("Error while parsing numbers in '" + line + "'");
+            log.warn("MWP: Error while parsing numbers in '" + line + "'");
         }
     }
 
--- a/flys-backend/src/main/java/de/intevation/flys/importer/parsers/SedimentYieldParser.java	Fri Aug 24 14:13:19 2012 +0000
+++ b/flys-backend/src/main/java/de/intevation/flys/importer/parsers/SedimentYieldParser.java	Fri Aug 24 15:47:31 2012 +0000
@@ -144,7 +144,7 @@
             return;
         }
         else {
-            log.warn("Unknown meta line: '" + line + "'");
+            log.warn("SYP: Unknown meta line: '" + line + "'");
         }
     }
 
@@ -204,7 +204,7 @@
         String[] vals = line.split(SEPERATOR_CHAR);
 
         if (vals == null || vals.length < columnNames.length-1) {
-            log.warn("skip invalid data line: '" + line + "'");
+            log.warn("SYP: skip invalid data line: '" + line + "'");
             return;
         }
 
@@ -222,7 +222,7 @@
             }
         }
         catch (ParseException pe) {
-            log.warn("Error while parsing numbers in '" + line + "':", pe);
+            log.warn("SYP: Error while parsing numbers in '" + line + "':", pe);
         }
     }
 
@@ -260,10 +260,10 @@
                 return new ImportTimeInterval(getDateFromYear(year));
             }
 
-            log.warn("Unknown time interval string: '" + column + "'");
+            log.warn("SYP: Unknown time interval string: '" + column + "'");
         }
         catch (ParseException pe) {
-            log.warn("Error while parsing years: " + column, pe);
+            log.warn("SYP: Error while parsing years: " + column, pe);
         }
 
         return null;
@@ -292,7 +292,7 @@
                 );
             }
             catch (ParseException pe) {
-                log.warn("Error while parsing ranges of: '" + gfStr + "'");
+                log.warn("SYP: Error while parsing ranges of: '" + gfStr + "'");
             }
         }
 
@@ -316,7 +316,7 @@
                 );
             }
             catch (ParseException pe) {
-                log.warn("Error while parsing ranges of: '" + gfStr + "'");
+                log.warn("SYP: Error while parsing ranges of: '" + gfStr + "'");
             }
         }
 
@@ -347,11 +347,11 @@
                 }
             }
             catch (ParseException pe) {
-                log.warn("Error while parsing ranges of: '" + gfStr + "'");
+                log.warn("SYP: Error while parsing ranges of: '" + gfStr + "'");
             }
         }
 
-        log.warn("Unknow grain fraction: '" + gfStr + "'");
+        log.warn("SYP: Unknow grain fraction: '" + gfStr + "'");
 
         return null;
     }
@@ -377,7 +377,7 @@
             return GrainFraction.SUSPENDED_SEDIMENT;
         }
         else {
-            log.warn("Unknown grain fraction type: '" + filename + "'");
+            log.warn("SYP: Unknown grain fraction '" + filename + "'");
             return "unknown";
         }
     }
--- a/flys-backend/src/main/java/de/intevation/flys/importer/parsers/WstParser.java	Fri Aug 24 14:13:19 2012 +0000
+++ b/flys-backend/src/main/java/de/intevation/flys/importer/parsers/WstParser.java	Fri Aug 24 15:47:31 2012 +0000
@@ -132,7 +132,7 @@
                         lsBezeichner = new String[columnCount];
                     }
                     catch (NumberFormatException nfe) {
-                        log.warn(nfe);
+                        log.warn("WST: invalid number.", nfe);
                         continue;
                     }
                     first = false;
@@ -267,7 +267,7 @@
 
                     if (!kms.add(kaem)) {
                         log.warn(
-                            "km " + kaem +
+                            "WST: km " + kaem +
                             " (line " + in.getLineNumber() +
                             ") found more than once. -> ignored");
                         continue;

http://dive4elements.wald.intevation.org