Mercurial > dive4elements > river
annotate backend/src/main/java/org/dive4elements/river/model/MeasurementStation.java @ 8665:8fbc0649da13
Move static measurement types to their natural home.
author | Tom Gottfried <tom@intevation.de> |
---|---|
date | Wed, 08 Apr 2015 14:47:30 +0200 |
parents | 0860e4f642c4 |
children | 851ea37d35f3 |
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.model; |
4193
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
10 |
8412
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
11 import java.util.Iterator; |
6857
d5d717effa06
(issue1347) Add measurement station getter for location
Andre Heinecke <aheinecke@intevation.de>
parents:
5992
diff
changeset
|
12 import java.util.List; |
8412
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
13 import java.util.ArrayList; |
8418
536a1c0c8a81
Give ordered list of measurement stations at river.
Tom Gottfried <tom@intevation.de>
parents:
8415
diff
changeset
|
14 import java.util.Collections; |
536a1c0c8a81
Give ordered list of measurement stations at river.
Tom Gottfried <tom@intevation.de>
parents:
8415
diff
changeset
|
15 import java.util.Comparator; |
8412
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
16 |
4193
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
17 import javax.persistence.Column; |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
18 import javax.persistence.Entity; |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
19 import javax.persistence.GeneratedValue; |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
20 import javax.persistence.GenerationType; |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
21 import javax.persistence.Id; |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
22 import javax.persistence.JoinColumn; |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
23 import javax.persistence.OneToOne; |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
24 import javax.persistence.SequenceGenerator; |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
25 import javax.persistence.Table; |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
26 |
6857
d5d717effa06
(issue1347) Add measurement station getter for location
Andre Heinecke <aheinecke@intevation.de>
parents:
5992
diff
changeset
|
27 import org.hibernate.Session; |
d5d717effa06
(issue1347) Add measurement station getter for location
Andre Heinecke <aheinecke@intevation.de>
parents:
5992
diff
changeset
|
28 import org.hibernate.Query; |
d5d717effa06
(issue1347) Add measurement station getter for location
Andre Heinecke <aheinecke@intevation.de>
parents:
5992
diff
changeset
|
29 |
d5d717effa06
(issue1347) Add measurement station getter for location
Andre Heinecke <aheinecke@intevation.de>
parents:
5992
diff
changeset
|
30 import org.dive4elements.river.backend.SessionHolder; |
4193
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
31 |
8418
536a1c0c8a81
Give ordered list of measurement stations at river.
Tom Gottfried <tom@intevation.de>
parents:
8415
diff
changeset
|
32 import static org.dive4elements.river.backend.utils.EpsilonComparator.CMP; |
536a1c0c8a81
Give ordered list of measurement stations at river.
Tom Gottfried <tom@intevation.de>
parents:
8415
diff
changeset
|
33 |
4193
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
34 @Entity |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
35 @Table(name = "measurement_station") |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
36 public class MeasurementStation { |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
37 |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
38 private Integer id; |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
39 |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
40 private String name; |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
41 private String measurementType; |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
42 private String riverside; |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
43 private String operator; |
8412
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
44 private String comment; |
4193
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
45 |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
46 private Range range; |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
47 |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
48 private Gauge gauge; |
5457
1b676aefaf3a
Added gauge name to measurement station parser and model.
Raimund Renkert <rrenkert@intevation.de>
parents:
5428
diff
changeset
|
49 private String gaugeName; |
4193
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
50 |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
51 private TimeInterval observationTimerange; |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
52 |
8665
8fbc0649da13
Move static measurement types to their natural home.
Tom Gottfried <tom@intevation.de>
parents:
8602
diff
changeset
|
53 public static final String MEASUREMENT_TYPE_BEDLOAD = "Geschiebe"; |
8fbc0649da13
Move static measurement types to their natural home.
Tom Gottfried <tom@intevation.de>
parents:
8602
diff
changeset
|
54 public static final String MEASUREMENT_TYPE_SUSP = "Schwebstoff"; |
8fbc0649da13
Move static measurement types to their natural home.
Tom Gottfried <tom@intevation.de>
parents:
8602
diff
changeset
|
55 |
8418
536a1c0c8a81
Give ordered list of measurement stations at river.
Tom Gottfried <tom@intevation.de>
parents:
8415
diff
changeset
|
56 public static final class MeasurementStationComparator |
536a1c0c8a81
Give ordered list of measurement stations at river.
Tom Gottfried <tom@intevation.de>
parents:
8415
diff
changeset
|
57 implements Comparator<MeasurementStation> { |
536a1c0c8a81
Give ordered list of measurement stations at river.
Tom Gottfried <tom@intevation.de>
parents:
8415
diff
changeset
|
58 |
536a1c0c8a81
Give ordered list of measurement stations at river.
Tom Gottfried <tom@intevation.de>
parents:
8415
diff
changeset
|
59 public MeasurementStationComparator() { |
536a1c0c8a81
Give ordered list of measurement stations at river.
Tom Gottfried <tom@intevation.de>
parents:
8415
diff
changeset
|
60 } |
536a1c0c8a81
Give ordered list of measurement stations at river.
Tom Gottfried <tom@intevation.de>
parents:
8415
diff
changeset
|
61 |
8665
8fbc0649da13
Move static measurement types to their natural home.
Tom Gottfried <tom@intevation.de>
parents:
8602
diff
changeset
|
62 /* Compare MeasurementStations by km and consider MeasurementStations |
8fbc0649da13
Move static measurement types to their natural home.
Tom Gottfried <tom@intevation.de>
parents:
8602
diff
changeset
|
63 of type "Geschiebe" as smaller if at same km. */ |
8418
536a1c0c8a81
Give ordered list of measurement stations at river.
Tom Gottfried <tom@intevation.de>
parents:
8415
diff
changeset
|
64 @Override |
536a1c0c8a81
Give ordered list of measurement stations at river.
Tom Gottfried <tom@intevation.de>
parents:
8415
diff
changeset
|
65 public int compare(MeasurementStation m1, MeasurementStation m2) |
536a1c0c8a81
Give ordered list of measurement stations at river.
Tom Gottfried <tom@intevation.de>
parents:
8415
diff
changeset
|
66 throws IllegalArgumentException { |
536a1c0c8a81
Give ordered list of measurement stations at river.
Tom Gottfried <tom@intevation.de>
parents:
8415
diff
changeset
|
67 |
536a1c0c8a81
Give ordered list of measurement stations at river.
Tom Gottfried <tom@intevation.de>
parents:
8415
diff
changeset
|
68 if (m1.getRange().getRiver() != m2.getRange().getRiver()) { |
536a1c0c8a81
Give ordered list of measurement stations at river.
Tom Gottfried <tom@intevation.de>
parents:
8415
diff
changeset
|
69 throw new IllegalArgumentException( |
536a1c0c8a81
Give ordered list of measurement stations at river.
Tom Gottfried <tom@intevation.de>
parents:
8415
diff
changeset
|
70 "Stations not at same river"); |
536a1c0c8a81
Give ordered list of measurement stations at river.
Tom Gottfried <tom@intevation.de>
parents:
8415
diff
changeset
|
71 } |
536a1c0c8a81
Give ordered list of measurement stations at river.
Tom Gottfried <tom@intevation.de>
parents:
8415
diff
changeset
|
72 |
536a1c0c8a81
Give ordered list of measurement stations at river.
Tom Gottfried <tom@intevation.de>
parents:
8415
diff
changeset
|
73 boolean kmUp = m1.getRange().getRiver().getKmUp(); |
536a1c0c8a81
Give ordered list of measurement stations at river.
Tom Gottfried <tom@intevation.de>
parents:
8415
diff
changeset
|
74 double s1 = kmUp && m1.getRange().getB() != null |
536a1c0c8a81
Give ordered list of measurement stations at river.
Tom Gottfried <tom@intevation.de>
parents:
8415
diff
changeset
|
75 ? m1.getRange().getB().doubleValue() |
536a1c0c8a81
Give ordered list of measurement stations at river.
Tom Gottfried <tom@intevation.de>
parents:
8415
diff
changeset
|
76 : m1.getRange().getA().doubleValue(); |
536a1c0c8a81
Give ordered list of measurement stations at river.
Tom Gottfried <tom@intevation.de>
parents:
8415
diff
changeset
|
77 double s2 = kmUp && m2.getRange().getB() != null |
536a1c0c8a81
Give ordered list of measurement stations at river.
Tom Gottfried <tom@intevation.de>
parents:
8415
diff
changeset
|
78 ? m2.getRange().getB().doubleValue() |
536a1c0c8a81
Give ordered list of measurement stations at river.
Tom Gottfried <tom@intevation.de>
parents:
8415
diff
changeset
|
79 : m2.getRange().getA().doubleValue(); |
536a1c0c8a81
Give ordered list of measurement stations at river.
Tom Gottfried <tom@intevation.de>
parents:
8415
diff
changeset
|
80 |
536a1c0c8a81
Give ordered list of measurement stations at river.
Tom Gottfried <tom@intevation.de>
parents:
8415
diff
changeset
|
81 int cmpStations = CMP.compare(s1, s2); |
536a1c0c8a81
Give ordered list of measurement stations at river.
Tom Gottfried <tom@intevation.de>
parents:
8415
diff
changeset
|
82 if (cmpStations == 0) { |
536a1c0c8a81
Give ordered list of measurement stations at river.
Tom Gottfried <tom@intevation.de>
parents:
8415
diff
changeset
|
83 if (m1.getMeasurementType().equals(m2.getMeasurementType())) { |
536a1c0c8a81
Give ordered list of measurement stations at river.
Tom Gottfried <tom@intevation.de>
parents:
8415
diff
changeset
|
84 throw new IllegalArgumentException( |
536a1c0c8a81
Give ordered list of measurement stations at river.
Tom Gottfried <tom@intevation.de>
parents:
8415
diff
changeset
|
85 "Two stations of same type at same km"); |
536a1c0c8a81
Give ordered list of measurement stations at river.
Tom Gottfried <tom@intevation.de>
parents:
8415
diff
changeset
|
86 } |
536a1c0c8a81
Give ordered list of measurement stations at river.
Tom Gottfried <tom@intevation.de>
parents:
8415
diff
changeset
|
87 |
8665
8fbc0649da13
Move static measurement types to their natural home.
Tom Gottfried <tom@intevation.de>
parents:
8602
diff
changeset
|
88 return m1.getMeasurementType().equals(MEASUREMENT_TYPE_BEDLOAD) |
8fbc0649da13
Move static measurement types to their natural home.
Tom Gottfried <tom@intevation.de>
parents:
8602
diff
changeset
|
89 ? -1 |
8fbc0649da13
Move static measurement types to their natural home.
Tom Gottfried <tom@intevation.de>
parents:
8602
diff
changeset
|
90 : +1; |
8418
536a1c0c8a81
Give ordered list of measurement stations at river.
Tom Gottfried <tom@intevation.de>
parents:
8415
diff
changeset
|
91 } |
536a1c0c8a81
Give ordered list of measurement stations at river.
Tom Gottfried <tom@intevation.de>
parents:
8415
diff
changeset
|
92 return cmpStations; |
536a1c0c8a81
Give ordered list of measurement stations at river.
Tom Gottfried <tom@intevation.de>
parents:
8415
diff
changeset
|
93 } |
536a1c0c8a81
Give ordered list of measurement stations at river.
Tom Gottfried <tom@intevation.de>
parents:
8415
diff
changeset
|
94 } |
536a1c0c8a81
Give ordered list of measurement stations at river.
Tom Gottfried <tom@intevation.de>
parents:
8415
diff
changeset
|
95 |
4261
1264fef59bfa
Add default constructor to MeasurementStation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4193
diff
changeset
|
96 public MeasurementStation() { |
1264fef59bfa
Add default constructor to MeasurementStation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4193
diff
changeset
|
97 } |
1264fef59bfa
Add default constructor to MeasurementStation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4193
diff
changeset
|
98 |
8412
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
99 public MeasurementStation(String name, String measurementType, |
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
100 String riverside, Range range, Gauge gauge, |
5457
1b676aefaf3a
Added gauge name to measurement station parser and model.
Raimund Renkert <rrenkert@intevation.de>
parents:
5428
diff
changeset
|
101 String gaugeName, TimeInterval observationTimerange, String operator, |
8412
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
102 String comment |
5457
1b676aefaf3a
Added gauge name to measurement station parser and model.
Raimund Renkert <rrenkert@intevation.de>
parents:
5428
diff
changeset
|
103 ) { |
4193
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
104 this.name = name; |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
105 this.measurementType = measurementType; |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
106 this.riverside = riverside; |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
107 this.range = range; |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
108 this.gauge = gauge; |
5457
1b676aefaf3a
Added gauge name to measurement station parser and model.
Raimund Renkert <rrenkert@intevation.de>
parents:
5428
diff
changeset
|
109 this.gaugeName = gaugeName; |
4193
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
110 this.observationTimerange = observationTimerange; |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
111 this.operator = operator; |
8412
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
112 this.comment = comment; |
4193
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
113 } |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
114 |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
115 @Id |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
116 @SequenceGenerator(name = "SEQ_MEASUREMENT_STATION_ID_SEQ", sequenceName = "MEASUREMENT_STATION_ID_SEQ", allocationSize = 1) |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
117 @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "SEQ_MEASUREMENT_STATION_ID_SEQ") |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
118 @Column(name = "id") |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
119 public Integer getId() { |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
120 return id; |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
121 } |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
122 |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
123 public void setId(Integer id) { |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
124 this.id = id; |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
125 } |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
126 |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
127 @Column(name = "name") |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
128 public String getName() { |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
129 return name; |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
130 } |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
131 |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
132 public void setName(String name) { |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
133 this.name = name; |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
134 } |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
135 |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
136 @Column(name = "measurement_type") |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
137 public String getMeasurementType() { |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
138 return measurementType; |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
139 } |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
140 |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
141 public void setMeasurementType(String measurementType) { |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
142 this.measurementType = measurementType; |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
143 } |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
144 |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
145 @Column(name = "riverside") |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
146 public String getRiverside() { |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
147 return riverside; |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
148 } |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
149 |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
150 public void setRiverside(String riverside) { |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
151 this.riverside = riverside; |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
152 } |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
153 |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
154 @OneToOne |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
155 @JoinColumn(name = "reference_gauge_id") |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
156 public Gauge getGauge() { |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
157 return gauge; |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
158 } |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
159 |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
160 public void setGauge(Gauge gauge) { |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
161 this.gauge = gauge; |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
162 } |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
163 |
5457
1b676aefaf3a
Added gauge name to measurement station parser and model.
Raimund Renkert <rrenkert@intevation.de>
parents:
5428
diff
changeset
|
164 @Column(name = "reference_gauge_name") |
1b676aefaf3a
Added gauge name to measurement station parser and model.
Raimund Renkert <rrenkert@intevation.de>
parents:
5428
diff
changeset
|
165 public String getGaugeName() { |
1b676aefaf3a
Added gauge name to measurement station parser and model.
Raimund Renkert <rrenkert@intevation.de>
parents:
5428
diff
changeset
|
166 return gaugeName; |
1b676aefaf3a
Added gauge name to measurement station parser and model.
Raimund Renkert <rrenkert@intevation.de>
parents:
5428
diff
changeset
|
167 } |
1b676aefaf3a
Added gauge name to measurement station parser and model.
Raimund Renkert <rrenkert@intevation.de>
parents:
5428
diff
changeset
|
168 |
1b676aefaf3a
Added gauge name to measurement station parser and model.
Raimund Renkert <rrenkert@intevation.de>
parents:
5428
diff
changeset
|
169 public void setGaugeName(String gaugeName) { |
1b676aefaf3a
Added gauge name to measurement station parser and model.
Raimund Renkert <rrenkert@intevation.de>
parents:
5428
diff
changeset
|
170 this.gaugeName = gaugeName; |
1b676aefaf3a
Added gauge name to measurement station parser and model.
Raimund Renkert <rrenkert@intevation.de>
parents:
5428
diff
changeset
|
171 } |
1b676aefaf3a
Added gauge name to measurement station parser and model.
Raimund Renkert <rrenkert@intevation.de>
parents:
5428
diff
changeset
|
172 |
4193
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
173 @OneToOne |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
174 @JoinColumn(name = "range_id") |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
175 public Range getRange() { |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
176 return range; |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
177 } |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
178 |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
179 public void setRange(Range range) { |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
180 this.range = range; |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
181 } |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
182 |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
183 @OneToOne |
8412
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
184 @JoinColumn(name = "time_interval_id") |
4193
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
185 public TimeInterval getObservationTimerange() { |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
186 return observationTimerange; |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
187 } |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
188 |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
189 public void setObservationTimerange(TimeInterval observationTimerange) { |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
190 this.observationTimerange = observationTimerange; |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
191 } |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
192 |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
193 @Column(name = "operator") |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
194 public String getOperator() { |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
195 return operator; |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
196 } |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
197 |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
198 public void setOperator(String operator) { |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
199 this.operator = operator; |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
200 } |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
201 |
8415
ffbeffe2d266
SCHEMA CHANGE: 'comment' is not acceptable as column name for Oracle.
Tom Gottfried <tom@intevation.de>
parents:
8412
diff
changeset
|
202 @Column(name = "commentary") |
8412
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
203 public String getComment() { |
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
204 return comment; |
4193
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
205 } |
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
206 |
8412
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
207 public void setComment(String comment) { |
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
208 this.comment = comment; |
4193
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
209 } |
6857
d5d717effa06
(issue1347) Add measurement station getter for location
Andre Heinecke <aheinecke@intevation.de>
parents:
5992
diff
changeset
|
210 |
8412
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
211 public static List<MeasurementStation> getStationsAtRiver(River river) { |
6857
d5d717effa06
(issue1347) Add measurement station getter for location
Andre Heinecke <aheinecke@intevation.de>
parents:
5992
diff
changeset
|
212 Session session = SessionHolder.HOLDER.get(); |
d5d717effa06
(issue1347) Add measurement station getter for location
Andre Heinecke <aheinecke@intevation.de>
parents:
5992
diff
changeset
|
213 |
d5d717effa06
(issue1347) Add measurement station getter for location
Andre Heinecke <aheinecke@intevation.de>
parents:
5992
diff
changeset
|
214 Query query = session.createQuery( |
8412
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
215 "from MeasurementStation " + |
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
216 "where range.river = :river"); |
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
217 query.setParameter("river", river); |
6857
d5d717effa06
(issue1347) Add measurement station getter for location
Andre Heinecke <aheinecke@intevation.de>
parents:
5992
diff
changeset
|
218 |
8418
536a1c0c8a81
Give ordered list of measurement stations at river.
Tom Gottfried <tom@intevation.de>
parents:
8415
diff
changeset
|
219 List<MeasurementStation> result = query.list(); |
536a1c0c8a81
Give ordered list of measurement stations at river.
Tom Gottfried <tom@intevation.de>
parents:
8415
diff
changeset
|
220 Collections.sort(result, new MeasurementStationComparator()); |
536a1c0c8a81
Give ordered list of measurement stations at river.
Tom Gottfried <tom@intevation.de>
parents:
8415
diff
changeset
|
221 return result; |
6857
d5d717effa06
(issue1347) Add measurement station getter for location
Andre Heinecke <aheinecke@intevation.de>
parents:
5992
diff
changeset
|
222 } |
8412
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
223 |
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
224 public static List<MeasurementStation> getStationsAtKM( |
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
225 River river, |
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
226 Double river_km |
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
227 ) { |
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
228 Session session = SessionHolder.HOLDER.get(); |
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
229 |
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
230 Query query = session.createQuery( |
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
231 "from MeasurementStation where range.river = :river"); |
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
232 query.setParameter("river", river); |
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
233 |
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
234 List<MeasurementStation> result = new ArrayList<MeasurementStation>(); |
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
235 for (Iterator iter = query.iterate(); iter.hasNext();) { |
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
236 MeasurementStation st = (MeasurementStation)iter.next(); |
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
237 Double a = st.getRange().getA().doubleValue(); |
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
238 Double b = st.getRange().getB() == null |
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
239 ? null |
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
240 : st.getRange().getB().doubleValue(); |
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
241 |
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
242 // In case river is km_up, station is at larger value of range |
8602
0860e4f642c4
(issue1753) Use epsilon comparator to compare range km's
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8424
diff
changeset
|
243 if (river.getKmUp() && b != null && CMP.compare(b, river_km) == 0 |
0860e4f642c4
(issue1753) Use epsilon comparator to compare range km's
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8424
diff
changeset
|
244 || !river.getKmUp() && CMP.compare(a, river_km) == 0 |
0860e4f642c4
(issue1753) Use epsilon comparator to compare range km's
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8424
diff
changeset
|
245 || b == null && CMP.compare(a, river_km) == 0 // no end km given |
8412
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
246 ) { |
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
247 result.add(st); |
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
248 } |
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
249 } |
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
250 return result; |
17db08570637
SCHEMA CHANGE: removed superfluous columns station and river_id from measurement_stations and adapted other components accordingly.
Tom Gottfried <tom@intevation.de>
parents:
6857
diff
changeset
|
251 } |
4193
f63b39799d2d
Adapted DB schema (added relation measurement_station); improved importer to read files from filesystem with measurement stations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
252 } |