Mercurial > dive4elements > river
comparison flys-backend/src/main/java/de/intevation/flys/model/DGM.java @ 5210:908848b74d7e
SCHEME CHANGE: dgm now uses time intervals and ranges
author | Andre Heinecke <aheinecke@intevation.de> |
---|---|
date | Fri, 08 Mar 2013 18:15:48 +0100 |
parents | a2600507761e |
children |
comparison
equal
deleted
inserted
replaced
5209:850237ae9544 | 5210:908848b74d7e |
---|---|
22 | 22 |
23 @Entity | 23 @Entity |
24 @Table(name = "dem") | 24 @Table(name = "dem") |
25 public class DGM implements Serializable { | 25 public class DGM implements Serializable { |
26 | 26 |
27 private Integer id; | 27 private Integer id; |
28 private Integer srid; | 28 private Integer srid; |
29 | 29 |
30 private River river; | 30 private River river; |
31 | 31 |
32 private BigDecimal lower; | 32 private Range range; |
33 private BigDecimal upper; | 33 private TimeInterval time_interval; |
34 | 34 |
35 private String path; | 35 private String path; |
36 | 36 |
37 | 37 |
38 public DGM() { | 38 public DGM() { |
39 } | 39 } |
40 | 40 |
62 | 62 |
63 @OneToOne | 63 @OneToOne |
64 @JoinColumn(name = "river_id") | 64 @JoinColumn(name = "river_id") |
65 public River getRiver() { | 65 public River getRiver() { |
66 return river; | 66 return river; |
67 } | |
68 | |
69 public void setLower(BigDecimal lower) { | |
70 this.lower = lower; | |
71 } | |
72 | |
73 @Column(name = "lower") | |
74 public BigDecimal getLower() { | |
75 return lower; | |
76 } | |
77 | |
78 public void setUpper(BigDecimal upper) { | |
79 this.upper = upper; | |
80 } | |
81 | |
82 @Column(name = "upper") | |
83 public BigDecimal getUpper() { | |
84 return upper; | |
85 } | 67 } |
86 | 68 |
87 public void setPath(String path) { | 69 public void setPath(String path) { |
88 this.path = path; | 70 this.path = path; |
89 } | 71 } |
118 public static DGM getDGM(String river, double lower, double upper) { | 100 public static DGM getDGM(String river, double lower, double upper) { |
119 Session session = SessionHolder.HOLDER.get(); | 101 Session session = SessionHolder.HOLDER.get(); |
120 | 102 |
121 Query query = session.createQuery( | 103 Query query = session.createQuery( |
122 "from DGM where river.name =:river and " + | 104 "from DGM where river.name =:river and " + |
123 "lower <=:lower and upper >=:lower and " + | 105 "range.a <=:lower and range.b >=:lower and " + |
124 "lower <=:upper and upper >=:upper"); | 106 "range.a <=:upper and range.b >=:upper"); |
125 query.setParameter("river", river); | 107 query.setParameter("river", river); |
126 query.setParameter("lower", new BigDecimal(lower)); | 108 query.setParameter("lower", new BigDecimal(lower)); |
127 query.setParameter("upper", new BigDecimal(upper)); | 109 query.setParameter("upper", new BigDecimal(upper)); |
128 | 110 |
129 List<DGM> result = query.list(); | 111 List<DGM> result = query.list(); |
130 | 112 |
131 return result.isEmpty() ? null : result.get(0); | 113 return result.isEmpty() ? null : result.get(0); |
132 } | 114 } |
115 | |
116 @OneToOne | |
117 @JoinColumn(name = "range_id") | |
118 public Range getRange() { | |
119 return range; | |
120 } | |
121 | |
122 public void setRange(Range range) { | |
123 this.range = range; | |
124 } | |
125 | |
126 @OneToOne | |
127 @JoinColumn(name = "time_interval_id") | |
128 public TimeInterval getTimeInterval() { | |
129 return time_interval; | |
130 } | |
131 | |
132 public void setTimeInterval(TimeInterval time_interval) { | |
133 this.time_interval = time_interval; | |
134 } | |
135 | |
136 | |
133 } | 137 } |
134 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : | 138 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |