annotate src/main/java/de/intevation/lada/importer/laf/AttributeMapper.java @ 1028:1c41c7b8f7c2 schema-update

Updated server application to new database model. THIS IS STILL WIP!!!
author Raimund Renkert <raimund.renkert@intevation.de>
date Fri, 08 Jul 2016 15:32:36 +0200
parents 54e83373bfae
children cd16a41ca3ab
rev   line source
626
9e733f44d8b0 Code style and comments.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 616
diff changeset
1 /* Copyright (C) 2013 by Bundesamt fuer Strahlenschutz
9e733f44d8b0 Code style and comments.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 616
diff changeset
2 * Software engineering by Intevation GmbH
9e733f44d8b0 Code style and comments.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 616
diff changeset
3 *
9e733f44d8b0 Code style and comments.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 616
diff changeset
4 * This file is Free Software under the GNU GPL (v>=3)
9e733f44d8b0 Code style and comments.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 616
diff changeset
5 * and comes with ABSOLUTELY NO WARRANTY! Check out
9e733f44d8b0 Code style and comments.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 616
diff changeset
6 * the documentation coming with IMIS-Labordaten-Application for details.
9e733f44d8b0 Code style and comments.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 616
diff changeset
7 */
610
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
8 package de.intevation.lada.importer.laf;
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
9
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
10 import java.sql.Timestamp;
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
11 import java.text.DateFormat;
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
12 import java.text.ParseException;
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
13 import java.text.SimpleDateFormat;
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
14 import java.util.ArrayList;
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
15 import java.util.Date;
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
16 import java.util.List;
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
17 import java.util.regex.Matcher;
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
18 import java.util.regex.Pattern;
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
19
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
20 import javax.inject.Inject;
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
21
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
22 import de.intevation.lada.importer.ReportItem;
1028
1c41c7b8f7c2 Updated server application to new database model. THIS IS STILL WIP!!!
Raimund Renkert <raimund.renkert@intevation.de>
parents: 914
diff changeset
23 import de.intevation.lada.model.land.KommentarM;
1c41c7b8f7c2 Updated server application to new database model. THIS IS STILL WIP!!!
Raimund Renkert <raimund.renkert@intevation.de>
parents: 914
diff changeset
24 import de.intevation.lada.model.land.KommentarP;
1c41c7b8f7c2 Updated server application to new database model. THIS IS STILL WIP!!!
Raimund Renkert <raimund.renkert@intevation.de>
parents: 914
diff changeset
25 import de.intevation.lada.model.land.Messung;
1c41c7b8f7c2 Updated server application to new database model. THIS IS STILL WIP!!!
Raimund Renkert <raimund.renkert@intevation.de>
parents: 914
diff changeset
26 import de.intevation.lada.model.land.Messwert;
1c41c7b8f7c2 Updated server application to new database model. THIS IS STILL WIP!!!
Raimund Renkert <raimund.renkert@intevation.de>
parents: 914
diff changeset
27 import de.intevation.lada.model.land.Probe;
1c41c7b8f7c2 Updated server application to new database model. THIS IS STILL WIP!!!
Raimund Renkert <raimund.renkert@intevation.de>
parents: 914
diff changeset
28 import de.intevation.lada.model.land.ZusatzWert;
1c41c7b8f7c2 Updated server application to new database model. THIS IS STILL WIP!!!
Raimund Renkert <raimund.renkert@intevation.de>
parents: 914
diff changeset
29 import de.intevation.lada.model.stammdaten.Datenbasis;
1c41c7b8f7c2 Updated server application to new database model. THIS IS STILL WIP!!!
Raimund Renkert <raimund.renkert@intevation.de>
parents: 914
diff changeset
30 import de.intevation.lada.model.stammdaten.MessEinheit;
1c41c7b8f7c2 Updated server application to new database model. THIS IS STILL WIP!!!
Raimund Renkert <raimund.renkert@intevation.de>
parents: 914
diff changeset
31 import de.intevation.lada.model.stammdaten.Messgroesse;
1c41c7b8f7c2 Updated server application to new database model. THIS IS STILL WIP!!!
Raimund Renkert <raimund.renkert@intevation.de>
parents: 914
diff changeset
32 import de.intevation.lada.model.stammdaten.ProbenZusatz;
1c41c7b8f7c2 Updated server application to new database model. THIS IS STILL WIP!!!
Raimund Renkert <raimund.renkert@intevation.de>
parents: 914
diff changeset
33 import de.intevation.lada.model.stammdaten.Probenart;
1c41c7b8f7c2 Updated server application to new database model. THIS IS STILL WIP!!!
Raimund Renkert <raimund.renkert@intevation.de>
parents: 914
diff changeset
34 import de.intevation.lada.model.stammdaten.Umwelt;
610
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
35 import de.intevation.lada.util.annotation.RepositoryConfig;
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
36 import de.intevation.lada.util.data.QueryBuilder;
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
37 import de.intevation.lada.util.data.Repository;
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
38 import de.intevation.lada.util.data.RepositoryType;
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
39 import de.intevation.lada.util.rest.Response;
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
40
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
41 /**
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
42 * The AttributeMapper is used to set object attributes via string based
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
43 * key value pairs. The key represents a member of an entity object.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
44 *
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
45 * @author <a href="mailto:rrenkert@intevation.de">Raimund Renkert</a>
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
46 */
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
47 public class AttributeMapper
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
48 {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
49
626
9e733f44d8b0 Code style and comments.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 616
diff changeset
50 /**
9e733f44d8b0 Code style and comments.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 616
diff changeset
51 * The repository used to read data.
9e733f44d8b0 Code style and comments.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 616
diff changeset
52 */
610
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
53 @Inject
615
3f57484e06f1 Updated importer: Do validation and object creation in the correct order.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 610
diff changeset
54 @RepositoryConfig(type=RepositoryType.RO)
610
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
55 private Repository repository;
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
56
626
9e733f44d8b0 Code style and comments.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 616
diff changeset
57 /**
9e733f44d8b0 Code style and comments.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 616
diff changeset
58 * List of warnings.
9e733f44d8b0 Code style and comments.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 616
diff changeset
59 */
610
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
60 private List<ReportItem> warnings;
626
9e733f44d8b0 Code style and comments.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 616
diff changeset
61
9e733f44d8b0 Code style and comments.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 616
diff changeset
62 /**
9e733f44d8b0 Code style and comments.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 616
diff changeset
63 * List of errors.
9e733f44d8b0 Code style and comments.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 616
diff changeset
64 */
610
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
65 private List<ReportItem> errors;
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
66
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
67 /**
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
68 * Default constructor to create a new AttributeMapper object.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
69 */
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
70 public AttributeMapper() {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
71 this.warnings = new ArrayList<ReportItem>();
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
72 this.errors = new ArrayList<ReportItem>();
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
73 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
74
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
75 /**
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
76 * Add an attribute to the given LProbe object.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
77 *
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
78 * @param key The key mapping to a object member.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
79 * @param value The value to set.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
80 * @param probe The entity object.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
81 * @return The updated entity object.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
82 */
626
9e733f44d8b0 Code style and comments.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 616
diff changeset
83 @SuppressWarnings("unchecked")
1028
1c41c7b8f7c2 Updated server application to new database model. THIS IS STILL WIP!!!
Raimund Renkert <raimund.renkert@intevation.de>
parents: 914
diff changeset
84 public Probe addAttribute(String key, Object value, Probe probe) {
610
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
85 DateFormat format = new SimpleDateFormat("yyyyMMdd HHmm");
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
86 if ("datenbasis_s".equals(key) && probe.getDatenbasisId() == null) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
87 Integer v = Integer.valueOf(value.toString());
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
88 probe.setDatenbasisId(v);
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
89 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
90 else if ("datenbasis_s".equals(key) && probe.getDatenbasisId() != null){
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
91 this.warnings.add(new ReportItem(key, value.toString(), 672));
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
92 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
93
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
94 if ("datenbasis".equals(key) && probe.getDatenbasisId() == null) {
675
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
95 QueryBuilder<Datenbasis> builder =
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
96 new QueryBuilder<Datenbasis>(
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
97 repository.entityManager("stamm"),
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
98 Datenbasis.class);
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
99 builder.and("datenbasis", value.toString());
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
100 List<Datenbasis> datenbasis =
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
101 (List<Datenbasis>)repository.filter(
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
102 builder.getQuery(),
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
103 "stamm").getData();
610
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
104
675
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
105 Integer v = datenbasis.get(0).getId();
610
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
106 probe.setDatenbasisId(v);
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
107 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
108 else if ("datenbasis".equals(key) && probe.getDatenbasisId() != null){
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
109 this.warnings.add(new ReportItem(key, value.toString(), 672));
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
110 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
111
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
112 if ("hauptprobennummer".equals(key)) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
113 probe.setHauptprobenNr(value.toString());
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
114 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
115
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
116 if ("mpr_id".equals(key)) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
117 Integer v = Integer.valueOf(value.toString());
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
118 probe.setMprId(v);
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
119 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
120
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
121 if ("messstelle".equals(key)) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
122 probe.setMstId(value.toString());
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
123 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
124
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
125 if ("messprogramm_s".equals(key) && probe.getBaId() == null) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
126 probe.setBaId(value.toString());
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
127 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
128 else if ("messprogramm_s".equals(key) && probe.getBaId() != null){
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
129 this.warnings.add(new ReportItem(key, value.toString(), 672));
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
130 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
131
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
132 if ("soll_datum_uhrzeit_a".equals(key)) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
133 try {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
134 Date d = format.parse(value.toString());
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
135 probe.setSolldatumBeginn(new Timestamp(d.getTime()));
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
136 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
137 catch (ParseException e) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
138 this.warnings.add(new ReportItem(key, value.toString(), 674));
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
139 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
140 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
141 if ("soll_datum_uhrzeit_e".equals(key)) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
142 try {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
143 Date d = format.parse(value.toString());
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
144 probe.setSolldatumEnde(new Timestamp(d.getTime()));
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
145 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
146 catch (ParseException e) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
147 this.warnings.add(new ReportItem(key, value.toString(), 674));
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
148 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
149 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
150 if ("probenahme_datum_uhrzeit_a".equals(key)) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
151 try {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
152 Date d = format.parse(value.toString());
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
153 probe.setProbeentnahmeBeginn(new Timestamp(d.getTime()));
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
154 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
155 catch (ParseException e) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
156 this.warnings.add(new ReportItem(key, value.toString(), 674));
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
157 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
158 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
159 if ("probenahme_datum_uhrzeit_e".equals(key)) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
160 try {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
161 Date d = format.parse(value.toString());
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
162 probe.setProbeentnahmeEnde(new Timestamp(d.getTime()));
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
163 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
164 catch (ParseException e) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
165 this.warnings.add(new ReportItem(key, value.toString(), 674));
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
166 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
167 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
168
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
169 if ("umweltbereich_s".equals(key) && probe.getUmwId() == null) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
170 probe.setUmwId(value.toString());
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
171 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
172 else if ("umweltbereich_s".equals(key) && probe.getUmwId() != null){
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
173 this.warnings.add(new ReportItem(key, value.toString(), 672));
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
174 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
175 if ("umweltbereich_c".equals(key) && probe.getUmwId() == null) {
675
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
176 QueryBuilder<Umwelt> builder =
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
177 new QueryBuilder<Umwelt>(
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
178 repository.entityManager("stamm"),
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
179 Umwelt.class);
610
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
180 int length = value.toString().length() > 80 ? 80 : value.toString().length();
675
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
181 builder.and("umweltBereich", value.toString().substring(0, length));
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
182 List<Umwelt> umwelt =
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
183 (List<Umwelt>)repository.filter(
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
184 builder.getQuery(),
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
185 "stamm").getData();
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
186 probe.setUmwId(umwelt.get(0).getId());
610
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
187 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
188 else if ("umweltbereich_c".equals(key) && probe.getUmwId() != null){
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
189 this.warnings.add(new ReportItem(key, value.toString(), 672));
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
190 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
191
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
192 if ("deskriptoren".equals(key)) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
193 probe.setMediaDesk(value.toString());
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
194 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
195
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
196 if ("testdaten".equals(key)) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
197 if (!value.toString().equals("0")) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
198 probe.setTest(true);
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
199 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
200 else {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
201 probe.setTest(false);
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
202 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
203 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
204
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
205 if ("medium".equals(key)) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
206 probe.setMedia(value.toString());
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
207 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
208
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
209 if ("probenart".equals(key)) {
675
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
210 QueryBuilder<Probenart> builder =
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
211 new QueryBuilder<Probenart>(
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
212 repository.entityManager("stamm"),
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
213 Probenart.class);
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
214 builder.and("probenart", value.toString());
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
215 List<Probenart> probenart =
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
216 (List<Probenart>)repository.filter(
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
217 builder.getQuery(),
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
218 "stamm").getData();
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
219 probe.setProbenartId(probenart.get(0).getId());
610
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
220 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
221 return probe;
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
222 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
223
626
9e733f44d8b0 Code style and comments.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 616
diff changeset
224 /**
9e733f44d8b0 Code style and comments.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 616
diff changeset
225 * Add an attribute to the given ProbeTranslation object.
9e733f44d8b0 Code style and comments.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 616
diff changeset
226 *
9e733f44d8b0 Code style and comments.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 616
diff changeset
227 * @param key The key mapping to a object member.
9e733f44d8b0 Code style and comments.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 616
diff changeset
228 * @param value The value to set.
9e733f44d8b0 Code style and comments.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 616
diff changeset
229 * @param probeTranslation The entity object.
9e733f44d8b0 Code style and comments.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 616
diff changeset
230 * @return The updated entity.
1028
1c41c7b8f7c2 Updated server application to new database model. THIS IS STILL WIP!!!
Raimund Renkert <raimund.renkert@intevation.de>
parents: 914
diff changeset
231 *
626
9e733f44d8b0 Code style and comments.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 616
diff changeset
232 @SuppressWarnings("unchecked")
615
3f57484e06f1 Updated importer: Do validation and object creation in the correct order.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 610
diff changeset
233 public ProbeTranslation addAttribute(
3f57484e06f1 Updated importer: Do validation and object creation in the correct order.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 610
diff changeset
234 String key,
3f57484e06f1 Updated importer: Do validation and object creation in the correct order.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 610
diff changeset
235 Object value,
3f57484e06f1 Updated importer: Do validation and object creation in the correct order.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 610
diff changeset
236 ProbeTranslation probeTranslation
3f57484e06f1 Updated importer: Do validation and object creation in the correct order.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 610
diff changeset
237 ) {
3f57484e06f1 Updated importer: Do validation and object creation in the correct order.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 610
diff changeset
238 if ("probe_id".equals(key)) {
3f57484e06f1 Updated importer: Do validation and object creation in the correct order.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 610
diff changeset
239 QueryBuilder<ProbeTranslation> builder =
3f57484e06f1 Updated importer: Do validation and object creation in the correct order.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 610
diff changeset
240 new QueryBuilder<ProbeTranslation>(
3f57484e06f1 Updated importer: Do validation and object creation in the correct order.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 610
diff changeset
241 repository.entityManager("land"), ProbeTranslation.class);
3f57484e06f1 Updated importer: Do validation and object creation in the correct order.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 610
diff changeset
242 builder.and("probeIdAlt", value);
3f57484e06f1 Updated importer: Do validation and object creation in the correct order.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 610
diff changeset
243 Response response =
3f57484e06f1 Updated importer: Do validation and object creation in the correct order.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 610
diff changeset
244 repository.filter(builder.getQuery(), "land");
3f57484e06f1 Updated importer: Do validation and object creation in the correct order.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 610
diff changeset
245 List<ProbeTranslation> info = (List<ProbeTranslation>)response.getData();
3f57484e06f1 Updated importer: Do validation and object creation in the correct order.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 610
diff changeset
246 if (info != null && info.size() > 0) {
3f57484e06f1 Updated importer: Do validation and object creation in the correct order.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 610
diff changeset
247 errors.add(new ReportItem("probe_id", value.toString(), 671));
3f57484e06f1 Updated importer: Do validation and object creation in the correct order.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 610
diff changeset
248 return null;
3f57484e06f1 Updated importer: Do validation and object creation in the correct order.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 610
diff changeset
249 }
3f57484e06f1 Updated importer: Do validation and object creation in the correct order.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 610
diff changeset
250 probeTranslation.setProbeIdAlt(value.toString());
3f57484e06f1 Updated importer: Do validation and object creation in the correct order.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 610
diff changeset
251 }
3f57484e06f1 Updated importer: Do validation and object creation in the correct order.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 610
diff changeset
252 return probeTranslation;
1028
1c41c7b8f7c2 Updated server application to new database model. THIS IS STILL WIP!!!
Raimund Renkert <raimund.renkert@intevation.de>
parents: 914
diff changeset
253 }*/
615
3f57484e06f1 Updated importer: Do validation and object creation in the correct order.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 610
diff changeset
254
610
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
255 /**
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
256 * Add an attribute to the given LKommentarP object.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
257 *
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
258 * @param key The key mapping to a object member.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
259 * @param value The value to set.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
260 * @param kommentar The entity object.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
261 * @return The updated entity object.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
262 */
1028
1c41c7b8f7c2 Updated server application to new database model. THIS IS STILL WIP!!!
Raimund Renkert <raimund.renkert@intevation.de>
parents: 914
diff changeset
263 public KommentarP addAttribute(
610
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
264 String key,
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
265 Object value,
1028
1c41c7b8f7c2 Updated server application to new database model. THIS IS STILL WIP!!!
Raimund Renkert <raimund.renkert@intevation.de>
parents: 914
diff changeset
266 KommentarP kommentar
610
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
267 ) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
268 DateFormat format = new SimpleDateFormat("yyyyMMdd HHmm");
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
269 String v = value.toString();
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
270 String erzeuger = v.substring(1, 6);
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
271 String date = v.substring(8, 21);
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
272 Date d;
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
273 try {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
274 d = format.parse(date);
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
275 kommentar.setDatum(new Timestamp(d.getTime()));
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
276 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
277 catch (ParseException e) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
278 this.warnings.add(new ReportItem(key, value.toString(), 674));
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
279 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
280 String text = v.substring(23, v.length() -1);
1028
1c41c7b8f7c2 Updated server application to new database model. THIS IS STILL WIP!!!
Raimund Renkert <raimund.renkert@intevation.de>
parents: 914
diff changeset
281 kommentar.setMstId(erzeuger);
610
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
282 kommentar.setText(text);
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
283 return kommentar;
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
284 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
285
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
286 /**
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
287 * Add an attribute to the given LKommentarM object.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
288 *
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
289 * @param key The key mapping to a object member.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
290 * @param value The value to set.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
291 * @param kommentar The entity object.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
292 * @return The updated entity object.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
293 */
1028
1c41c7b8f7c2 Updated server application to new database model. THIS IS STILL WIP!!!
Raimund Renkert <raimund.renkert@intevation.de>
parents: 914
diff changeset
294 public KommentarM addAttribute(
610
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
295 String key,
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
296 Object value,
1028
1c41c7b8f7c2 Updated server application to new database model. THIS IS STILL WIP!!!
Raimund Renkert <raimund.renkert@intevation.de>
parents: 914
diff changeset
297 KommentarM kommentar
610
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
298 ) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
299 DateFormat format = new SimpleDateFormat("yyyyMMdd HHmm");
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
300 String v = value.toString();
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
301 String erzeuger = v.substring(1, 6);
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
302 String date = v.substring(8, 21);
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
303 Date d;
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
304 try {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
305 d = format.parse(date);
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
306 kommentar.setDatum(new Timestamp(d.getTime()));
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
307 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
308 catch (ParseException e) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
309 this.warnings.add(new ReportItem(key, value.toString(), 674));
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
310 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
311 String text = v.substring(23, v.length() -1);
1028
1c41c7b8f7c2 Updated server application to new database model. THIS IS STILL WIP!!!
Raimund Renkert <raimund.renkert@intevation.de>
parents: 914
diff changeset
312 kommentar.setMstId(erzeuger);
610
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
313 kommentar.setText(text);
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
314 return kommentar;
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
315 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
316
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
317 /**
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
318 * Add an attribute to the given LMessung object.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
319 *
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
320 * @param key The key mapping to a object member.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
321 * @param value The value to set.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
322 * @param messung The entity object.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
323 * @return The updated entity object.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
324 */
1028
1c41c7b8f7c2 Updated server application to new database model. THIS IS STILL WIP!!!
Raimund Renkert <raimund.renkert@intevation.de>
parents: 914
diff changeset
325 public Messung addAttribute(
610
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
326 String key,
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
327 Object value,
1028
1c41c7b8f7c2 Updated server application to new database model. THIS IS STILL WIP!!!
Raimund Renkert <raimund.renkert@intevation.de>
parents: 914
diff changeset
328 Messung messung
610
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
329 ) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
330 DateFormat format = new SimpleDateFormat("yyyyMMdd HHmm");
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
331 if ("nebenprobennummer".equals(key)) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
332 messung.setNebenprobenNr(value.toString());
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
333 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
334 else if ("mess_datum_uhrzeit".equals(key)) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
335 try {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
336 Date d = format.parse(value.toString());
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
337 messung.setMesszeitpunkt(new Timestamp(d.getTime()));
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
338 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
339 catch (ParseException e) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
340 this.warnings.add(new ReportItem(key, value.toString(), 674));
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
341 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
342 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
343 else if ("messzeit_sekunden".equals(key)) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
344 Integer i = Integer.valueOf(value.toString());
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
345 messung.setMessdauer(i);
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
346 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
347 else if ("messmethode_s".equals(key)) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
348 messung.setMmtId(value.toString());
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
349 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
350 else if ("bearbeitungsstatus".equals(key)) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
351 //ignored.!?
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
352 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
353 else if ("erfassung_abgeschlossen".equals(key)) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
354 if(!value.toString().equals("0")) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
355 messung.setFertig(true);
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
356 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
357 else {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
358 messung.setFertig(false);
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
359 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
360 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
361 return messung;
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
362 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
363
626
9e733f44d8b0 Code style and comments.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 616
diff changeset
364 /**
9e733f44d8b0 Code style and comments.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 616
diff changeset
365 * Add an attribute to the given MessungTranslation object.
9e733f44d8b0 Code style and comments.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 616
diff changeset
366 *
9e733f44d8b0 Code style and comments.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 616
diff changeset
367 * @param key The key mapping to a object member.
9e733f44d8b0 Code style and comments.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 616
diff changeset
368 * @param value The value to set.
9e733f44d8b0 Code style and comments.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 616
diff changeset
369 * @param mt The entity object.
9e733f44d8b0 Code style and comments.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 616
diff changeset
370 * @return The updated entity.
1028
1c41c7b8f7c2 Updated server application to new database model. THIS IS STILL WIP!!!
Raimund Renkert <raimund.renkert@intevation.de>
parents: 914
diff changeset
371 *
610
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
372 public MessungTranslation addAttribute(
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
373 String key,
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
374 Object value,
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
375 MessungTranslation mt
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
376 ) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
377 if ("messungs_id".equals(key)) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
378 mt.setMessungsIdAlt(Integer.valueOf(value.toString()));
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
379 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
380 return mt;
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
381 }
1028
1c41c7b8f7c2 Updated server application to new database model. THIS IS STILL WIP!!!
Raimund Renkert <raimund.renkert@intevation.de>
parents: 914
diff changeset
382 */
610
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
383
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
384 /**
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
385 * Add an attribute to the given LMesswert object.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
386 *
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
387 * @param key The key mapping to a object member.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
388 * @param value The value to set.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
389 * @param messwert The entity object.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
390 * @return The updated entity object.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
391 */
626
9e733f44d8b0 Code style and comments.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 616
diff changeset
392 @SuppressWarnings("unchecked")
1028
1c41c7b8f7c2 Updated server application to new database model. THIS IS STILL WIP!!!
Raimund Renkert <raimund.renkert@intevation.de>
parents: 914
diff changeset
393 public Messwert addAttribute(
610
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
394 String key,
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
395 Object value,
1028
1c41c7b8f7c2 Updated server application to new database model. THIS IS STILL WIP!!!
Raimund Renkert <raimund.renkert@intevation.de>
parents: 914
diff changeset
396 Messwert messwert
610
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
397 ) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
398 Pattern p = Pattern.compile(
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
399 "(\".+\")( .+ )(\".+\")( .*)( .{1,12})( .{1,9})(.{0,9})(.{0,3})");
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
400 //TODO Does not perfectly match... Use better matching for floats.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
401 Matcher m = p.matcher(value.toString());
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
402 if (m.matches()) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
403 String messgroesse = m.group(1).substring(1, m.group(1).length() - 1);
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
404 String wert = m.group(2);
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
405 String einheit = m.group(3).substring(1, m.group(3).length() - 1);
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
406 if (wert.startsWith(" <")) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
407 wert = wert.substring(2);
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
408 messwert.setGrenzwertueberschreitung(false);
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
409 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
410 else if (wert.startsWith(" >")) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
411 wert = wert.substring(2);
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
412 messwert.setGrenzwertueberschreitung(true);
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
413 }
914
54e83373bfae We need a wider range to allow arbitrary input formated +-9.99e+-99
Tom Gottfried <tom@intevation.de>
parents: 683
diff changeset
414 messwert.setMesswert(Double.valueOf(wert));
610
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
415
675
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
416 QueryBuilder<MessEinheit> builder =
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
417 new QueryBuilder<MessEinheit>(
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
418 repository.entityManager("stamm"),
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
419 MessEinheit.class);
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
420 builder.and("einheit", einheit);
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
421 List<MessEinheit> messeinheit =
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
422 (List<MessEinheit>)repository.filter(
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
423 builder.getQuery(),
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
424 "stamm").getData();
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
425 if (messeinheit.isEmpty()) {
610
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
426 this.errors.add(new ReportItem("messeinheit", "null", 673));
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
427 return null;
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
428 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
429 else {
675
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
430 messwert.setMehId(messeinheit.get(0).getId());
610
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
431 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
432
675
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
433 QueryBuilder<Messgroesse> mgBuilder =
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
434 new QueryBuilder<Messgroesse>(
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
435 repository.entityManager("stamm"),
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
436 Messgroesse.class);
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
437 mgBuilder.and("messgroesse", messgroesse);
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
438 List<Messgroesse> messgroessen =
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
439 (List<Messgroesse>)repository.filter(
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
440 mgBuilder.getQuery(),
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
441 "stamm").getData();
610
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
442
675
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
443 if (messgroessen.isEmpty()) {
610
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
444 this.errors.add(new ReportItem("messgroesse", "null", 673));
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
445 return null;
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
446 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
447 else {
675
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
448 messwert.setMessgroesseId(messgroessen.get(0).getId());
610
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
449 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
450 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
451 return messwert;
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
452 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
453
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
454 /**
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
455 * Add an attribute to the OrtCreator. The creator is used to build the
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
456 * two objects Ort and LOrt.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
457 *
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
458 * @param key The key mapping to a object member.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
459 * @param value The value to set.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
460 * @param ort The creator object.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
461 * @return The updated creator object.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
462 */
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
463 public OrtCreator addAttribute(
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
464 String key,
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
465 Object value,
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
466 OrtCreator ort
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
467 ) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
468 if ("ort_code".equals(key)) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
469 ort.setOrtCode(value.toString());
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
470 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
471 if ("ort_typ".equals(key)) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
472 ort.setOrtTyp(value.toString());
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
473 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
474 if ("ort_zusatz".equals(key)) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
475 ort.setZusatztext(value.toString());
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
476 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
477 if ("ort_land_lang".equals(key)) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
478 ort.setLandLang(value.toString());
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
479 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
480 if ("ort_land_kurz".equals(key)) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
481 ort.setLandKurz(value.toString());
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
482 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
483 if ("ort_land_s".equals(key)) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
484 ort.setLandS(value.toString());
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
485 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
486 if ("ort_gemeindeschlüssel".equals(key)) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
487 ort.setGemSchluessel(value.toString());
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
488 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
489 if ("ort_bezeichnung".equals(key)) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
490 ort.setBezeichnung(value.toString());
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
491 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
492 if ("ort_beschreibung".equals(key)) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
493 ort.setBeschreibung(value.toString());
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
494 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
495 if ("ort_nuts_code".equals(key)) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
496 ort.setNuts(value.toString());
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
497 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
498 if ("ort_hoehe_land".equals(key)) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
499 ort.setHoehe(value.toString());
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
500 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
501 if ("ort_koordinaten".equals(key)) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
502 ort.setKoordinaten(value.toString());
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
503 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
504 if ("ort_koordinaten_s".equals(key)) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
505 ort.setKoordinatenS(value.toString());
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
506 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
507 return ort;
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
508 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
509
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
510 /**
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
511 * Add an attribute to the given LZusatzwert object.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
512 *
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
513 * @param lKey The key mapping to a object member.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
514 * @param value The value to set.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
515 * @param wert The entity object.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
516 * @return The updated entity object.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
517 */
626
9e733f44d8b0 Code style and comments.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 616
diff changeset
518 @SuppressWarnings("unchecked")
1028
1c41c7b8f7c2 Updated server application to new database model. THIS IS STILL WIP!!!
Raimund Renkert <raimund.renkert@intevation.de>
parents: 914
diff changeset
519 public ZusatzWert addAttribute(
610
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
520 String lKey,
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
521 Object value,
1028
1c41c7b8f7c2 Updated server application to new database model. THIS IS STILL WIP!!!
Raimund Renkert <raimund.renkert@intevation.de>
parents: 914
diff changeset
522 ZusatzWert wert
610
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
523 ) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
524 String v = value.toString().substring(1);
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
525 int ndx = v.indexOf("\"");
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
526 String groesse = v.substring(0, ndx);
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
527 v = v.substring(ndx + 2);
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
528 ndx = v.indexOf(" ");
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
529 String w = v.substring(0, ndx);
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
530 v = v.substring(ndx + 2);
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
531 ndx = v.indexOf("\"");
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
532 String fehler = v.substring(ndx + 2);
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
533
675
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
534 QueryBuilder<ProbenZusatz> builder =
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
535 new QueryBuilder<ProbenZusatz>(
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
536 repository.entityManager("stamm"),
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
537 ProbenZusatz.class);
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
538 builder.and("zusatzwert", groesse);
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
539 List<ProbenZusatz> zusatz=
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
540 (List<ProbenZusatz>)repository.filter(
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
541 builder.getQuery(),
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
542 "stamm").getData();
610
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
543
675
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
544 if (zusatz == null || zusatz.isEmpty()) {
610
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
545 this.errors.add(new ReportItem(lKey, "zusatzwert", 673));
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
546 return null;
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
547 }
675
331cd2bb3109 Removed plain sql statements.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 626
diff changeset
548 wert.setPzsId(zusatz.get(0).getId());
914
54e83373bfae We need a wider range to allow arbitrary input formated +-9.99e+-99
Tom Gottfried <tom@intevation.de>
parents: 683
diff changeset
549 wert.setMesswertPzs(Double.valueOf(w));
610
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
550 wert.setMessfehler(Float.valueOf(fehler));
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
551 return wert;
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
552 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
553
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
554 /**
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
555 * Add an attribute to the given LZusatzwert object.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
556 *
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
557 * @param lKey The key mapping to a object member.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
558 * @param value The value to set.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
559 * @param wert The entity object.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
560 * @return The updated entity object.
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
561 */
1028
1c41c7b8f7c2 Updated server application to new database model. THIS IS STILL WIP!!!
Raimund Renkert <raimund.renkert@intevation.de>
parents: 914
diff changeset
562 public ZusatzWert addAttributeS(
610
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
563 String lKey,
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
564 Object value,
1028
1c41c7b8f7c2 Updated server application to new database model. THIS IS STILL WIP!!!
Raimund Renkert <raimund.renkert@intevation.de>
parents: 914
diff changeset
565 ZusatzWert wert
610
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
566 ) {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
567 String v = value.toString().substring(1);
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
568 int ndx = v.indexOf("\"");
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
569 String groesse = v.substring(0, ndx);
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
570 v = v.substring(ndx + 2);
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
571 ndx = v.indexOf(" ");
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
572 String w = v.substring(0, ndx);
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
573 v = v.substring(ndx + 2);
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
574 ndx = v.indexOf(" ");
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
575 String fehler = v.substring(ndx + 2);
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
576 wert.setPzsId(groesse);
914
54e83373bfae We need a wider range to allow arbitrary input formated +-9.99e+-99
Tom Gottfried <tom@intevation.de>
parents: 683
diff changeset
577 wert.setMesswertPzs(Double.valueOf(w));
610
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
578 wert.setMessfehler(Float.valueOf(fehler));
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
579 return wert;
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
580 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
581
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
582 /**
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
583 * @return the warnings
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
584 */
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
585 public List<ReportItem> getWarnings() {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
586 return warnings;
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
587 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
588
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
589 /**
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
590 * @return the errors
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
591 */
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
592 public List<ReportItem> getErrors() {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
593 return errors;
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
594 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
595
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
596 public void reset() {
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
597 errors = new ArrayList<ReportItem>();
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
598 warnings = new ArrayList<ReportItem>();
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
599 }
374a2e78cec5 Added importer impl for laf file format.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
600 }
This site is hosted by Intevation GmbH (Datenschutzerklärung und Impressum | Privacy Policy and Imprint)