annotate backend/src/main/java/org/dive4elements/river/importer/ImportHYKFormation.java @ 6955:94cb1845c667

(issue1452) Coalesce to zero to avoid NaN arithmetic.
author Andre Heinecke <aheinecke@intevation.de>
date Fri, 30 Aug 2013 15:45:14 +0200
parents 4c3ccf2b0304
children 392bbcd8a88b
rev   line source
5844
4dd33b86dc61 Added header to river backend.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
1 /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde
4dd33b86dc61 Added header to river backend.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
2 * Software engineering by Intevation GmbH
4dd33b86dc61 Added header to river backend.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
3 *
5992
4c3ccf2b0304 Removed trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5844
diff changeset
4 * This file is Free Software under the GNU AGPL (>=v3)
5844
4dd33b86dc61 Added header to river backend.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
5 * and comes with ABSOLUTELY NO WARRANTY! Check out the
5992
4c3ccf2b0304 Removed trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5844
diff changeset
6 * documentation coming with Dive4Elements River for details.
5844
4dd33b86dc61 Added header to river backend.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
7 */
4dd33b86dc61 Added header to river backend.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
8
5829
18619c1e7c2a Repaired internal references.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5828
diff changeset
9 package org.dive4elements.river.importer;
1218
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
10
5829
18619c1e7c2a Repaired internal references.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5828
diff changeset
11 import org.dive4elements.river.model.HYKFormation;
18619c1e7c2a Repaired internal references.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5828
diff changeset
12 import org.dive4elements.river.model.HYKEntry;
1218
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
13
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
14 import java.util.ArrayList;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
15 import java.util.List;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
16
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
17 import org.hibernate.Session;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
18 import org.hibernate.Query;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
19
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
20 import java.math.BigDecimal;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
21
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
22 public class ImportHYKFormation
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
23 {
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
24 protected int formationNum;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
25 protected ImportHYKEntry entry;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
26 protected BigDecimal top;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
27 protected BigDecimal bottom;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
28 protected BigDecimal distanceVL;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
29 protected BigDecimal distanceHF;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
30 protected BigDecimal distanceVR;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
31
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
32 protected List<ImportHYKFlowZone> zones;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
33
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
34 protected HYKFormation peer;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
35
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
36 public ImportHYKFormation() {
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
37 zones = new ArrayList<ImportHYKFlowZone>();
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
38 }
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
39
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
40 public ImportHYKFormation(
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
41 int formationNum,
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
42 ImportHYKEntry entry,
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
43 BigDecimal top,
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
44 BigDecimal bottom,
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
45 BigDecimal distanceVL,
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
46 BigDecimal distanceHF,
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
47 BigDecimal distanceVR
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
48 ) {
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
49 this();
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
50 this.formationNum = formationNum;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
51 this.entry = entry;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
52 this.top = top;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
53 this.bottom = bottom;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
54 this.distanceVL = distanceVL;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
55 this.distanceHF = distanceHF;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
56 this.distanceVR = distanceVR;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
57 }
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
58
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
59 public void addFlowZone(ImportHYKFlowZone zone) {
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
60 zones.add(zone);
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
61 zone.setFormation(this);
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
62 }
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
63
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
64 public int getFormationNum() {
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
65 return formationNum;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
66 }
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
67
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
68 public void setFormationNum(int formationNum) {
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
69 this.formationNum = formationNum;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
70 }
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
71
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
72 public ImportHYKEntry getEntry() {
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
73 return entry;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
74 }
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
75
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
76 public void setEntry(ImportHYKEntry entry) {
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
77 this.entry = entry;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
78 }
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
79
1224
ca7d461a53f1 HYK importer: Various small fixes and some extra logging.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
80 public BigDecimal getTop() {
ca7d461a53f1 HYK importer: Various small fixes and some extra logging.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
81 return top;
ca7d461a53f1 HYK importer: Various small fixes and some extra logging.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
82 }
ca7d461a53f1 HYK importer: Various small fixes and some extra logging.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
83
ca7d461a53f1 HYK importer: Various small fixes and some extra logging.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
84 public void setTop(BigDecimal top) {
ca7d461a53f1 HYK importer: Various small fixes and some extra logging.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
85 this.top = top;
ca7d461a53f1 HYK importer: Various small fixes and some extra logging.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
86 }
ca7d461a53f1 HYK importer: Various small fixes and some extra logging.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
87
ca7d461a53f1 HYK importer: Various small fixes and some extra logging.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
88 public BigDecimal getBottom() {
ca7d461a53f1 HYK importer: Various small fixes and some extra logging.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
89 return bottom;
ca7d461a53f1 HYK importer: Various small fixes and some extra logging.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
90 }
ca7d461a53f1 HYK importer: Various small fixes and some extra logging.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
91
ca7d461a53f1 HYK importer: Various small fixes and some extra logging.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
92 public void setBottom(BigDecimal bottom) {
ca7d461a53f1 HYK importer: Various small fixes and some extra logging.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
93 this.bottom = bottom;
ca7d461a53f1 HYK importer: Various small fixes and some extra logging.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
94 }
ca7d461a53f1 HYK importer: Various small fixes and some extra logging.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
95
1219
d80997bd94ce HYKParser: Create data structures while parsing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1218
diff changeset
96 public BigDecimal getDistanceVL() {
d80997bd94ce HYKParser: Create data structures while parsing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1218
diff changeset
97 return distanceVL;
d80997bd94ce HYKParser: Create data structures while parsing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1218
diff changeset
98 }
d80997bd94ce HYKParser: Create data structures while parsing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1218
diff changeset
99
d80997bd94ce HYKParser: Create data structures while parsing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1218
diff changeset
100 public void setDistanceVL(BigDecimal distanceVL) {
d80997bd94ce HYKParser: Create data structures while parsing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1218
diff changeset
101 this.distanceVL = distanceVL;
d80997bd94ce HYKParser: Create data structures while parsing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1218
diff changeset
102 }
d80997bd94ce HYKParser: Create data structures while parsing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1218
diff changeset
103
d80997bd94ce HYKParser: Create data structures while parsing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1218
diff changeset
104 public BigDecimal getDistanceHF() {
d80997bd94ce HYKParser: Create data structures while parsing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1218
diff changeset
105 return distanceHF;
d80997bd94ce HYKParser: Create data structures while parsing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1218
diff changeset
106 }
d80997bd94ce HYKParser: Create data structures while parsing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1218
diff changeset
107
d80997bd94ce HYKParser: Create data structures while parsing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1218
diff changeset
108 public void setDistanceHF(BigDecimal distanceHF) {
d80997bd94ce HYKParser: Create data structures while parsing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1218
diff changeset
109 this.distanceHF = distanceHF;
d80997bd94ce HYKParser: Create data structures while parsing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1218
diff changeset
110 }
d80997bd94ce HYKParser: Create data structures while parsing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1218
diff changeset
111
d80997bd94ce HYKParser: Create data structures while parsing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1218
diff changeset
112 public BigDecimal getDistanceVR() {
d80997bd94ce HYKParser: Create data structures while parsing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1218
diff changeset
113 return distanceVR;
d80997bd94ce HYKParser: Create data structures while parsing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1218
diff changeset
114 }
d80997bd94ce HYKParser: Create data structures while parsing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1218
diff changeset
115
d80997bd94ce HYKParser: Create data structures while parsing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1218
diff changeset
116 public void setDistanceVR(BigDecimal distanceVR) {
d80997bd94ce HYKParser: Create data structures while parsing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1218
diff changeset
117 this.distanceVR = distanceVR;
d80997bd94ce HYKParser: Create data structures while parsing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1218
diff changeset
118 }
d80997bd94ce HYKParser: Create data structures while parsing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1218
diff changeset
119
1221
979ff070e368 Store HYK data structures to database. Needs testing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1219
diff changeset
120 public void storeDependencies() {
979ff070e368 Store HYK data structures to database. Needs testing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1219
diff changeset
121 getPeer();
979ff070e368 Store HYK data structures to database. Needs testing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1219
diff changeset
122 for (ImportHYKFlowZone zone: zones) {
979ff070e368 Store HYK data structures to database. Needs testing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1219
diff changeset
123 zone.storeDependencies();
979ff070e368 Store HYK data structures to database. Needs testing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1219
diff changeset
124 }
979ff070e368 Store HYK data structures to database. Needs testing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1219
diff changeset
125 }
979ff070e368 Store HYK data structures to database. Needs testing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1219
diff changeset
126
1218
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
127 public HYKFormation getPeer() {
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
128 if (peer == null) {
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
129 HYKEntry e = entry.getPeer();
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
130 Session session = ImporterSession.getInstance()
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
131 .getDatabaseSession();
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
132 Query query = session.createQuery(
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
133 "from HYKFormation where formationNum=:formationNum " +
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
134 "and entry=:entry and top=:top and bottom=:bottom " +
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
135 "and distanceVL=:distanceVL and distanceHF=:distanceHF " +
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
136 "and distanceVR=:distanceVR");
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
137 query.setParameter("formationNum", formationNum);
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
138 query.setParameter("entry", e);
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
139 query.setParameter("top", top);
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
140 query.setParameter("bottom", bottom);
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
141 query.setParameter("distanceVL", distanceVL);
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
142 query.setParameter("distanceHF", distanceHF);
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
143 query.setParameter("distanceVR", distanceVR);
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
144 List<HYKFormation> formations = query.list();
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
145 if (formations.isEmpty()) {
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
146 peer = new HYKFormation(
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
147 formationNum, e, top, bottom,
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
148 distanceVL, distanceHF, distanceVR);
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
149 session.save(peer);
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
150 }
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
151 else {
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
152 peer = formations.get(0);
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
153 }
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
154 }
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
155 return peer;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
156 }
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
157 }
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
158 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org