annotate backend/src/main/java/org/dive4elements/river/importer/ImportFlowVelocityMeasurementValue.java @ 8856:5e38e2924c07 3.2.x

Fix code style.
author Tom Gottfried <tom@intevation.de>
date Thu, 18 Jan 2018 20:12:01 +0100
parents 4c3ccf2b0304
children 0a5239a1e46e
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;
2831
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
10
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
11 import java.math.BigDecimal;
5446
3bd786772798 Removed obsolete imports.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5416
diff changeset
12
2831
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
13 import java.util.Date;
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
14 import java.util.List;
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
15
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
16 import org.apache.log4j.Logger;
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
17
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
18 import org.hibernate.Session;
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
19 import org.hibernate.Query;
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
20
5829
18619c1e7c2a Repaired internal references.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5828
diff changeset
21 import org.dive4elements.river.model.FlowVelocityMeasurement;
18619c1e7c2a Repaired internal references.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5828
diff changeset
22 import org.dive4elements.river.model.FlowVelocityMeasurementValue;
2831
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
23
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
24
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
25 public class ImportFlowVelocityMeasurementValue {
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
26
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
27 private static final Logger log =
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
28 Logger.getLogger(ImportFlowVelocityMeasurementValue.class);
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
29
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
30
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
31 private Date datetime;
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
32
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
33 private String description;
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
34
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
35 private BigDecimal station;
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
36 private BigDecimal w;
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
37 private BigDecimal q;
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
38 private BigDecimal v;
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
39
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
40 private FlowVelocityMeasurementValue peer;
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
41
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
42
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
43 public ImportFlowVelocityMeasurementValue(
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
44 Date datetime,
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
45 BigDecimal station,
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
46 BigDecimal w,
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
47 BigDecimal q,
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
48 BigDecimal v,
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
49 String description
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
50 ) {
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
51 this.datetime = datetime;
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
52 this.station = station;
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
53 this.w = w;
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
54 this.q = q;
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
55 this.v = v;
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
56 this.description = description;
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
57 }
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
58
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
59
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
60
5416
4ee97d914501 Morpho-Importer: Do not mask database exceptions as broken files
Tom Gottfried <tom.gottfried@intevation.de>
parents: 2832
diff changeset
61 public void storeDependencies(FlowVelocityMeasurement measurement) {
2831
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
62 log.debug("store dependencies");
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
63
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
64 getPeer(measurement);
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
65 }
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
66
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
67
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
68 public FlowVelocityMeasurementValue getPeer(FlowVelocityMeasurement m) {
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
69 if (peer == null) {
8856
5e38e2924c07 Fix code style.
Tom Gottfried <tom@intevation.de>
parents: 5992
diff changeset
70 Session session = ImporterSession.getInstance()
5e38e2924c07 Fix code style.
Tom Gottfried <tom@intevation.de>
parents: 5992
diff changeset
71 .getDatabaseSession();
2831
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
72
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
73 Query query = session.createQuery(
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
74 "from FlowVelocityMeasurementValue where " +
2832
ac5bd90697c1 Added new parser for flow velocity measurements and fixed some smaller bugs while importing flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2831
diff changeset
75 " measurement=:measurement and " +
ac5bd90697c1 Added new parser for flow velocity measurements and fixed some smaller bugs while importing flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2831
diff changeset
76 " station=:station and " +
ac5bd90697c1 Added new parser for flow velocity measurements and fixed some smaller bugs while importing flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2831
diff changeset
77 " datetime=:datetime"
2831
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
78 );
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
79
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
80 query.setParameter("measurement", m);
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
81 query.setParameter("station", station);
2832
ac5bd90697c1 Added new parser for flow velocity measurements and fixed some smaller bugs while importing flow velocity data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2831
diff changeset
82 query.setParameter("datetime", datetime);
2831
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
83
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
84 List<FlowVelocityMeasurementValue> values = query.list();
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
85
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
86 if (values.isEmpty()) {
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
87 peer = new FlowVelocityMeasurementValue(
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
88 m,
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
89 datetime,
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
90 station,
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
91 w,
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
92 q,
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
93 v,
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
94 description);
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
95
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
96 session.save(peer);
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
97 }
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
98 else {
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
99 peer = values.get(0);
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
100 }
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
101 }
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
102
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
103 return peer;
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
104 }
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
105 }
8fe9c6584b93 Added importer classes used during the import process of flow velocity measurements.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
106 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org