annotate backend/src/main/java/org/dive4elements/river/importer/ImportHYKFormation.java @ 9709:b74f817435fe

comment removed
author dnt_bjoernsen <d.tironi@bjoernsen.de>
date Wed, 27 Jan 2021 11:47:38 +0100
parents 392bbcd8a88b
children
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
8986
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
11 import java.math.BigDecimal;
1218
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
12 import java.util.ArrayList;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
13 import java.util.List;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
14
8986
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
15 import org.dive4elements.river.importer.common.StoreMode;
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
16 import org.dive4elements.river.model.HYKEntry;
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
17 import org.dive4elements.river.model.HYKFormation;
1218
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
18 import org.hibernate.Query;
8986
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
19 import org.hibernate.Session;
1218
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
20
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
21 public class ImportHYKFormation
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
22 {
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
23 protected int formationNum;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
24 protected ImportHYKEntry entry;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
25 protected BigDecimal top;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
26 protected BigDecimal bottom;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
27 protected BigDecimal distanceVL;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
28 protected BigDecimal distanceHF;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
29 protected BigDecimal distanceVR;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
30
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
31 protected List<ImportHYKFlowZone> zones;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
32
8986
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
33 protected StoreMode storeMode;
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
34
1218
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
35 protected HYKFormation peer;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
36
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
37 public ImportHYKFormation() {
8986
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
38 this.zones = new ArrayList<>();
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
39 this.storeMode = StoreMode.NONE;
1218
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
40 }
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
41
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
42 public ImportHYKFormation(
8986
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
43 final int formationNum,
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
44 final ImportHYKEntry entry,
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
45 final BigDecimal top,
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
46 final BigDecimal bottom,
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
47 final BigDecimal distanceVL,
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
48 final BigDecimal distanceHF,
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
49 final BigDecimal distanceVR
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
50 ) {
1218
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
51 this();
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
52 this.formationNum = formationNum;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
53 this.entry = entry;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
54 this.top = top;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
55 this.bottom = bottom;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
56 this.distanceVL = distanceVL;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
57 this.distanceHF = distanceHF;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
58 this.distanceVR = distanceVR;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
59 }
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
60
8986
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
61 public void addFlowZone(final ImportHYKFlowZone zone) {
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
62 this.zones.add(zone);
1218
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
63 zone.setFormation(this);
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
64 }
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
65
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
66 public int getFormationNum() {
8986
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
67 return this.formationNum;
1218
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
68 }
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
69
8986
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
70 public void setFormationNum(final int formationNum) {
1218
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
71 this.formationNum = formationNum;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
72 }
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
73
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
74 public ImportHYKEntry getEntry() {
8986
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
75 return this.entry;
1218
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
76 }
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
77
8986
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
78 public void setEntry(final ImportHYKEntry entry) {
1218
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
79 this.entry = entry;
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
80 }
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
81
1224
ca7d461a53f1 HYK importer: Various small fixes and some extra logging.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
82 public BigDecimal getTop() {
8986
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
83 return this.top;
1224
ca7d461a53f1 HYK importer: Various small fixes and some extra logging.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
84 }
ca7d461a53f1 HYK importer: Various small fixes and some extra logging.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
85
8986
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
86 public void setTop(final BigDecimal top) {
1224
ca7d461a53f1 HYK importer: Various small fixes and some extra logging.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
87 this.top = top;
ca7d461a53f1 HYK importer: Various small fixes and some extra logging.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
88 }
ca7d461a53f1 HYK importer: Various small fixes and some extra logging.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
89
ca7d461a53f1 HYK importer: Various small fixes and some extra logging.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
90 public BigDecimal getBottom() {
8986
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
91 return this.bottom;
1224
ca7d461a53f1 HYK importer: Various small fixes and some extra logging.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
92 }
ca7d461a53f1 HYK importer: Various small fixes and some extra logging.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
93
8986
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
94 public void setBottom(final BigDecimal bottom) {
1224
ca7d461a53f1 HYK importer: Various small fixes and some extra logging.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
95 this.bottom = bottom;
ca7d461a53f1 HYK importer: Various small fixes and some extra logging.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
96 }
ca7d461a53f1 HYK importer: Various small fixes and some extra logging.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1221
diff changeset
97
1219
d80997bd94ce HYKParser: Create data structures while parsing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1218
diff changeset
98 public BigDecimal getDistanceVL() {
8986
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
99 return this.distanceVL;
1219
d80997bd94ce HYKParser: Create data structures while parsing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1218
diff changeset
100 }
d80997bd94ce HYKParser: Create data structures while parsing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1218
diff changeset
101
8986
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
102 public void setDistanceVL(final BigDecimal distanceVL) {
1219
d80997bd94ce HYKParser: Create data structures while parsing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1218
diff changeset
103 this.distanceVL = distanceVL;
d80997bd94ce HYKParser: Create data structures while parsing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1218
diff changeset
104 }
d80997bd94ce HYKParser: Create data structures while parsing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1218
diff changeset
105
d80997bd94ce HYKParser: Create data structures while parsing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1218
diff changeset
106 public BigDecimal getDistanceHF() {
8986
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
107 return this.distanceHF;
1219
d80997bd94ce HYKParser: Create data structures while parsing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1218
diff changeset
108 }
d80997bd94ce HYKParser: Create data structures while parsing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1218
diff changeset
109
8986
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
110 public void setDistanceHF(final BigDecimal distanceHF) {
1219
d80997bd94ce HYKParser: Create data structures while parsing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1218
diff changeset
111 this.distanceHF = distanceHF;
d80997bd94ce HYKParser: Create data structures while parsing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1218
diff changeset
112 }
d80997bd94ce HYKParser: Create data structures while parsing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1218
diff changeset
113
d80997bd94ce HYKParser: Create data structures while parsing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1218
diff changeset
114 public BigDecimal getDistanceVR() {
8986
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
115 return this.distanceVR;
1219
d80997bd94ce HYKParser: Create data structures while parsing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1218
diff changeset
116 }
d80997bd94ce HYKParser: Create data structures while parsing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1218
diff changeset
117
8986
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
118 public void setDistanceVR(final BigDecimal distanceVR) {
1219
d80997bd94ce HYKParser: Create data structures while parsing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1218
diff changeset
119 this.distanceVR = distanceVR;
d80997bd94ce HYKParser: Create data structures while parsing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1218
diff changeset
120 }
d80997bd94ce HYKParser: Create data structures while parsing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1218
diff changeset
121
1221
979ff070e368 Store HYK data structures to database. Needs testing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1219
diff changeset
122 public void storeDependencies() {
979ff070e368 Store HYK data structures to database. Needs testing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1219
diff changeset
123 getPeer();
8986
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
124 for (final ImportHYKFlowZone zone: this.zones) {
1221
979ff070e368 Store HYK data structures to database. Needs testing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1219
diff changeset
125 zone.storeDependencies();
979ff070e368 Store HYK data structures to database. Needs testing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1219
diff changeset
126 }
979ff070e368 Store HYK data structures to database. Needs testing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1219
diff changeset
127 }
979ff070e368 Store HYK data structures to database. Needs testing.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1219
diff changeset
128
1218
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
129 public HYKFormation getPeer() {
8986
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
130 if (this.peer == null) {
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
131 final HYKEntry e = this.entry.getPeer();
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
132 final Session session = ImporterSession.getInstance()
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
133 .getDatabaseSession();
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
134 List<HYKFormation> formations;
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
135 if (this.entry.storeMode == StoreMode.INSERT)
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
136 formations = null;
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
137 else {
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
138 final Query query = session.createQuery(
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
139 "from HYKFormation where formationNum=:formationNum " +
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
140 "and entry=:entry and top=:top and bottom=:bottom " +
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
141 "and distanceVL=:distanceVL and distanceHF=:distanceHF " +
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
142 "and distanceVR=:distanceVR");
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
143 query.setParameter("formationNum", this.formationNum);
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
144 query.setParameter("entry", e);
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
145 query.setParameter("top", this.top);
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
146 query.setParameter("bottom", this.bottom);
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
147 query.setParameter("distanceVL", this.distanceVL);
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
148 query.setParameter("distanceHF", this.distanceHF);
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
149 query.setParameter("distanceVR", this.distanceVR);
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
150 formations = query.list();
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
151 }
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
152 if ((formations == null) || formations.isEmpty()) {
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
153 this.peer = new HYKFormation(
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
154 this.formationNum, e, this.top, this.bottom,
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
155 this.distanceVL, this.distanceHF, this.distanceVR);
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
156 session.save(this.peer);
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
157 this.storeMode = StoreMode.INSERT;
1218
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
158 }
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
159 else {
8986
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
160 this.peer = formations.get(0);
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
161 this.storeMode = StoreMode.UPDATE;
1218
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
162 }
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
163 }
8986
392bbcd8a88b Database inserts accelerated by suppressing unnecessary database queries for new data series
mschaefer
parents: 5992
diff changeset
164 return this.peer;
1218
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
165 }
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
166 }
00e37d22a589 Added importer models for HYKs.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
167 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org