Mercurial > lada > lada-server
annotate src/main/java/de/intevation/lada/validation/rules/messung/Date.java @ 677:de47b7193bdb
Fixed validation rules.
author | Raimund Renkert <raimund.renkert@intevation.de> |
---|---|
date | Fri, 22 May 2015 15:15:14 +0200 |
parents | 4da01934e46f |
children | 3ec358698b4d |
rev | line source |
---|---|
647
4da01934e46f
Added new validation rules for messung objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
1 package de.intevation.lada.validation.rules.messung; |
4da01934e46f
Added new validation rules for messung objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
2 |
4da01934e46f
Added new validation rules for messung objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
3 import java.util.HashMap; |
4da01934e46f
Added new validation rules for messung objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
4 import java.util.Map; |
4da01934e46f
Added new validation rules for messung objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
5 |
4da01934e46f
Added new validation rules for messung objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
6 import javax.inject.Inject; |
4da01934e46f
Added new validation rules for messung objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
7 |
4da01934e46f
Added new validation rules for messung objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
8 import de.intevation.lada.model.land.LMessung; |
4da01934e46f
Added new validation rules for messung objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
9 import de.intevation.lada.model.land.LProbe; |
4da01934e46f
Added new validation rules for messung objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
10 import de.intevation.lada.util.annotation.RepositoryConfig; |
4da01934e46f
Added new validation rules for messung objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
11 import de.intevation.lada.util.data.Repository; |
4da01934e46f
Added new validation rules for messung objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
12 import de.intevation.lada.util.data.RepositoryType; |
4da01934e46f
Added new validation rules for messung objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
13 import de.intevation.lada.util.rest.Response; |
4da01934e46f
Added new validation rules for messung objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
14 import de.intevation.lada.validation.Violation; |
4da01934e46f
Added new validation rules for messung objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
15 import de.intevation.lada.validation.annotation.ValidationRule; |
4da01934e46f
Added new validation rules for messung objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
16 import de.intevation.lada.validation.rules.Rule; |
4da01934e46f
Added new validation rules for messung objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
17 |
4da01934e46f
Added new validation rules for messung objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
18 @ValidationRule("Messung") |
4da01934e46f
Added new validation rules for messung objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
19 public class Date implements Rule { |
4da01934e46f
Added new validation rules for messung objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
20 |
4da01934e46f
Added new validation rules for messung objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
21 @Inject |
4da01934e46f
Added new validation rules for messung objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
22 @RepositoryConfig(type=RepositoryType.RO) |
4da01934e46f
Added new validation rules for messung objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
23 private Repository repository; |
4da01934e46f
Added new validation rules for messung objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
24 |
4da01934e46f
Added new validation rules for messung objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
25 @Override |
4da01934e46f
Added new validation rules for messung objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
26 public Violation execute(Object object) { |
4da01934e46f
Added new validation rules for messung objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
27 LMessung messung = (LMessung)object; |
4da01934e46f
Added new validation rules for messung objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
28 Integer probeId = messung.getProbeId(); |
4da01934e46f
Added new validation rules for messung objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
29 Response response = repository.getById(LProbe.class, probeId, "land"); |
677
de47b7193bdb
Fixed validation rules.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
647
diff
changeset
|
30 LProbe probe = (LProbe) response.getData(); |
de47b7193bdb
Fixed validation rules.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
647
diff
changeset
|
31 if (probe == null) { |
647
4da01934e46f
Added new validation rules for messung objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
32 Map<String, Integer> errors = new HashMap<String, Integer>(); |
4da01934e46f
Added new validation rules for messung objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
33 errors.put("lprobe", 604); |
4da01934e46f
Added new validation rules for messung objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
34 } |
4da01934e46f
Added new validation rules for messung objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
35 if (probe.getProbeentnahmeEnde() == null || |
4da01934e46f
Added new validation rules for messung objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
36 probe.getProbeentnahmeEnde().after(messung.getMesszeitpunkt())) { |
4da01934e46f
Added new validation rules for messung objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
37 Violation violation = new Violation(); |
677
de47b7193bdb
Fixed validation rules.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
647
diff
changeset
|
38 violation.addWarning("messzeitpunkt", 632); |
647
4da01934e46f
Added new validation rules for messung objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
39 return violation; |
4da01934e46f
Added new validation rules for messung objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
40 } |
4da01934e46f
Added new validation rules for messung objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
41 return null; |
4da01934e46f
Added new validation rules for messung objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
42 } |
4da01934e46f
Added new validation rules for messung objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
43 } |