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 :

http://dive4elements.wald.intevation.org