annotate backend/src/main/java/org/dive4elements/river/importer/parsers/CrossSectionParser.java @ 9650:a2a42a6bac6b

Importer (s/u-info) extensions: outer try/catch for parse and log of line no, catching parsing exception if not enough value fields, parsing error and warning log messages with line number, detecting and rejecting duplicate data series, better differentiation between error and warning log messages
author mschaefer
date Mon, 23 Mar 2020 14:57:03 +0100
parents 4c3ccf2b0304
children
rev   line source
5844
4dd33b86dc61 Added header to river backend.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
1 /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde
4dd33b86dc61 Added header to river backend.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
2 * Software engineering by Intevation GmbH
4dd33b86dc61 Added header to river backend.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
3 *
5992
4c3ccf2b0304 Removed trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5844
diff changeset
4 * This file is Free Software under the GNU AGPL (>=v3)
5844
4dd33b86dc61 Added header to river backend.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
5 * and comes with ABSOLUTELY NO WARRANTY! Check out the
5992
4c3ccf2b0304 Removed trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5844
diff changeset
6 * documentation coming with Dive4Elements River for details.
5844
4dd33b86dc61 Added header to river backend.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
7 */
4dd33b86dc61 Added header to river backend.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
8
5829
18619c1e7c2a Repaired internal references.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5828
diff changeset
9 package org.dive4elements.river.importer.parsers;
4714
47c1d656a152 New CrossSectionParser interface.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
10
5829
18619c1e7c2a Repaired internal references.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5828
diff changeset
11 import org.dive4elements.river.importer.XY;
4733
e2e615109a2e Removed superfluous imports.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 4714
diff changeset
12
4714
47c1d656a152 New CrossSectionParser interface.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
13 import java.io.File;
47c1d656a152 New CrossSectionParser interface.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
14 import java.util.List;
47c1d656a152 New CrossSectionParser interface.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
15 import java.util.Map;
47c1d656a152 New CrossSectionParser interface.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
16
47c1d656a152 New CrossSectionParser interface.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
17 public interface CrossSectionParser {
47c1d656a152 New CrossSectionParser interface.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
18
47c1d656a152 New CrossSectionParser interface.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
19 public String getDescription();
47c1d656a152 New CrossSectionParser interface.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
20
47c1d656a152 New CrossSectionParser interface.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
21 public Integer getYear();
47c1d656a152 New CrossSectionParser interface.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
22
47c1d656a152 New CrossSectionParser interface.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
23 public Map<Double,List<XY>> getData();
47c1d656a152 New CrossSectionParser interface.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
24
47c1d656a152 New CrossSectionParser interface.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
25 public interface Callback {
47c1d656a152 New CrossSectionParser interface.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
26 boolean accept(File file);
47c1d656a152 New CrossSectionParser interface.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
27 void parsed(CrossSectionParser parser);
47c1d656a152 New CrossSectionParser interface.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
28 }
47c1d656a152 New CrossSectionParser interface.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
29 }
47c1d656a152 New CrossSectionParser interface.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
30 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org