Mercurial > lada > lada-server
comparison src/main/java/de/intevation/lada/importer/laf/LafParser.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 | 092e673cbb8d |
children | fdc752cd17fe |
comparison
equal
deleted
inserted
replaced
1027:9971471d562c | 1028:1c41c7b8f7c2 |
---|---|
15 import javax.inject.Inject; | 15 import javax.inject.Inject; |
16 | 16 |
17 import org.apache.log4j.Logger; | 17 import org.apache.log4j.Logger; |
18 | 18 |
19 import de.intevation.lada.importer.ReportItem; | 19 import de.intevation.lada.importer.ReportItem; |
20 import de.intevation.lada.model.land.LMessung; | 20 import de.intevation.lada.model.land.Messung; |
21 import de.intevation.lada.model.land.LOrtszuordnung; | 21 import de.intevation.lada.model.land.Ortszuordnung; |
22 import de.intevation.lada.model.land.LProbe; | 22 import de.intevation.lada.model.land.Probe; |
23 import de.intevation.lada.util.auth.UserInfo; | 23 import de.intevation.lada.util.auth.UserInfo; |
24 import de.intevation.lada.validation.Validator; | 24 import de.intevation.lada.validation.Validator; |
25 import de.intevation.lada.validation.Violation; | 25 import de.intevation.lada.validation.Violation; |
26 import de.intevation.lada.validation.annotation.ValidationConfig; | 26 import de.intevation.lada.validation.annotation.ValidationConfig; |
27 | 27 |
181 * Write all created objects to the database. | 181 * Write all created objects to the database. |
182 * | 182 * |
183 * @param auth The authentication information. | 183 * @param auth The authentication information. |
184 */ | 184 */ |
185 private void writeAll(UserInfo userInfo) { | 185 private void writeAll(UserInfo userInfo) { |
186 String probeId = producer.getProbeTranslation().getProbeIdAlt() == null ? | 186 String probeId = producer.getProbe().getIdAlt() == null ? |
187 "probeId" : producer.getProbeTranslation().getProbeIdAlt().toString(); | 187 "probeId" : producer.getProbe().getIdAlt().toString(); |
188 Violation violation = validateProbe(producer.getProbe()); | 188 Violation violation = validateProbe(producer.getProbe()); |
189 if (violation.hasErrors()) { | 189 if (violation.hasErrors()) { |
190 ReportItem err = new ReportItem("validation", violation.getErrors(), null); | 190 ReportItem err = new ReportItem("validation", violation.getErrors(), null); |
191 List<ReportItem> errs= new ArrayList<ReportItem>(); | 191 List<ReportItem> errs= new ArrayList<ReportItem>(); |
192 errs.add(err); | 192 errs.add(err); |
193 this.appendErrors(probeId, errs); | 193 this.appendErrors(probeId, errs); |
194 return; | 194 return; |
195 } | 195 } |
196 boolean p = writer.writeProbe(userInfo, producer.getProbe(), producer.getProbeTranslation()); | 196 boolean p = writer.writeProbe(userInfo, producer.getProbe()); |
197 if (!p) { | 197 if (!p) { |
198 this.errors.put(probeId, writer.getErrors()); | 198 this.errors.put(probeId, writer.getErrors()); |
199 return; | 199 return; |
200 } | 200 } |
201 writer.writeProbenKommentare(userInfo, producer.getProbenKommentare()); | 201 writer.writeProbenKommentare(userInfo, producer.getProbenKommentare()); |
202 for (LMessung messung: producer.getMessungen().keySet()) { | 202 for (Messung messung: producer.getMessungen()) { |
203 messung.setProbeId(producer.getProbe().getId()); | 203 messung.setProbeId(producer.getProbe().getId()); |
204 Violation mViolation = messungValidator.validate(messung); | 204 Violation mViolation = messungValidator.validate(messung); |
205 if (mViolation.hasErrors()) { | 205 if (mViolation.hasErrors()) { |
206 ReportItem mErr = new ReportItem("validation", mViolation.getErrors(), null); | 206 ReportItem mErr = new ReportItem("validation", mViolation.getErrors(), null); |
207 List<ReportItem> mErrs = new ArrayList<ReportItem>(); | 207 List<ReportItem> mErrs = new ArrayList<ReportItem>(); |
208 mErrs.add(mErr); | 208 mErrs.add(mErr); |
209 this.appendErrors(probeId, mErrs); | 209 this.appendErrors(probeId, mErrs); |
210 continue; | 210 continue; |
211 } | 211 } |
212 boolean m = writer.writeMessungen(userInfo, messung, producer.getMessungen().get(messung)); | 212 boolean m = writer.writeMessungen(userInfo, messung); |
213 if (!m) { | 213 if (!m) { |
214 return; | 214 return; |
215 } | 215 } |
216 } | 216 } |
217 writer.writeOrte(userInfo, producer.getOrte()); | 217 writer.writeOrte(userInfo, producer.getOrte()); |
218 for (LOrtszuordnung ort: producer.getLOrte()) { | 218 for (Ortszuordnung ort: producer.getOrtszuordnungen()) { |
219 Violation oViolation = ortValidator.validate(ort); | 219 Violation oViolation = ortValidator.validate(ort); |
220 if (oViolation.hasErrors()) { | 220 if (oViolation.hasErrors()) { |
221 ReportItem oErr = new ReportItem("validation", oViolation.getErrors(), null); | 221 ReportItem oErr = new ReportItem("validation", oViolation.getErrors(), null); |
222 List<ReportItem> oErrs = new ArrayList<ReportItem>(); | 222 List<ReportItem> oErrs = new ArrayList<ReportItem>(); |
223 oErrs.add(oErr); | 223 oErrs.add(oErr); |
224 this.appendErrors(probeId, oErrs); | 224 this.appendErrors(probeId, oErrs); |
225 continue; | 225 continue; |
226 } | 226 } |
227 writer.writeLOrte(userInfo, ort); | 227 writer.writeOrtszuordung(userInfo, ort); |
228 } | 228 } |
229 writer.writeMessungKommentare(userInfo, producer.getMessungsKommentare()); | 229 writer.writeMessungKommentare(userInfo, producer.getMessungsKommentare()); |
230 writer.writeMesswerte(userInfo, producer.getMesswerte()); | 230 writer.writeMesswerte(userInfo, producer.getMesswerte()); |
231 Violation postViolation = validateProbe(producer.getProbe()); | 231 Violation postViolation = validateProbe(producer.getProbe()); |
232 if (postViolation.hasWarnings()) { | 232 if (postViolation.hasWarnings()) { |
233 ReportItem warn = new ReportItem("validation", postViolation.getWarnings(), null); | 233 ReportItem warn = new ReportItem("validation", postViolation.getWarnings(), null); |
234 List<ReportItem> warns = new ArrayList<ReportItem>(); | 234 List<ReportItem> warns = new ArrayList<ReportItem>(); |
235 warns.add(warn); | 235 warns.add(warn); |
236 this.appendWarnings(probeId, warns); | 236 this.appendWarnings(probeId, warns); |
237 } | 237 } |
238 for (LMessung messung: producer.getMessungen().keySet()) { | 238 for (Messung messung: producer.getMessungen()) { |
239 Violation mViolation = messungValidator.validate(messung); | 239 Violation mViolation = messungValidator.validate(messung); |
240 if (mViolation.hasWarnings()) { | 240 if (mViolation.hasWarnings()) { |
241 ReportItem mWarn = new ReportItem("validation", mViolation.getWarnings(), null); | 241 ReportItem mWarn = new ReportItem("validation", mViolation.getWarnings(), null); |
242 List<ReportItem> mWarns = new ArrayList<ReportItem>(); | 242 List<ReportItem> mWarns = new ArrayList<ReportItem>(); |
243 mWarns.add(mWarn); | 243 mWarns.add(mWarn); |
249 /** | 249 /** |
250 * Validate probe objects. | 250 * Validate probe objects. |
251 * | 251 * |
252 * @param probe The probe object to validate. | 252 * @param probe The probe object to validate. |
253 */ | 253 */ |
254 private Violation validateProbe(LProbe probe) { | 254 private Violation validateProbe(Probe probe) { |
255 return probeValidator.validate(probe); | 255 return probeValidator.validate(probe); |
256 } | 256 } |
257 | 257 |
258 /** | 258 /** |
259 * Read all attributes from a single probe block and create entity objects. | 259 * Read all attributes from a single probe block and create entity objects. |