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.
This site is hosted by Intevation GmbH (Datenschutzerklärung und Impressum | Privacy Policy and Imprint)