comparison backend/src/main/java/org/dive4elements/river/model/sinfo/Tkh.java @ 9032:1f63e9d3b0ec

New columns for bed_height, tkh and depth_evolution, a few syntactic corrections for Oracle
author mschaefer
date Fri, 27 Apr 2018 17:35:12 +0200
parents 6e5ff436febe
children 4c5eeaff554c
comparison
equal deleted inserted replaced
9031:efd2de78d158 9032:1f63e9d3b0ec
23 import javax.persistence.JoinColumn; 23 import javax.persistence.JoinColumn;
24 import javax.persistence.OneToMany; 24 import javax.persistence.OneToMany;
25 import javax.persistence.OneToOne; 25 import javax.persistence.OneToOne;
26 import javax.persistence.SequenceGenerator; 26 import javax.persistence.SequenceGenerator;
27 import javax.persistence.Table; 27 import javax.persistence.Table;
28 import javax.persistence.Transient;
28 29
29 import org.dive4elements.river.backend.SessionHolder; 30 import org.dive4elements.river.backend.SessionHolder;
30 import org.dive4elements.river.model.River; 31 import org.dive4elements.river.model.River;
31 import org.hibernate.Query; 32 import org.hibernate.Query;
32 import org.hibernate.Session; 33 import org.hibernate.Session;
40 41
41 @Entity 42 @Entity
42 @Table(name = "tkh") 43 @Table(name = "tkh")
43 public class Tkh implements Serializable { 44 public class Tkh implements Serializable {
44 45
46 /**
47 * Possible values of the groupname column
48 *
49 */
50 public enum Group {
51 NONE(""), CALCULATION("berechnung"), MEASUREMENT("messung");
52
53 private final String dbvalue;
54
55 Group(final String dbvalue) {
56 this.dbvalue = dbvalue;
57 }
58
59 /**
60 * Value of the group's groupname column
61 */
62 public String getDbValue() {
63 return this.dbvalue;
64 }
65
66 /**
67 * Group for a groupname column value
68 */
69 public static Group forDbValue(final String dbvalue) {
70 for (final Group g : Group.values()) {
71 if (g.getDbValue().equals(dbvalue))
72 return g;
73 }
74 return Group.NONE;
75 }
76 }
77
45 /***** FIELDS *****/ 78 /***** FIELDS *****/
46 79
47 private static final long serialVersionUID = 5891445651697221261L; 80 private static final long serialVersionUID = 5891445651697221261L;
48 81
49 private Integer id; 82 private Integer id;
50 83
51 private River river; 84 private River river;
52 85
53 private String filename; 86 private String filename;
54 87
88 private transient Group group;
89
55 private String kmrange_info; 90 private String kmrange_info;
56 91
57 private String comment; 92 private String comment;
58 93
59 private Date day; 94 private Date day;
70 public Tkh() { 105 public Tkh() {
71 } 106 }
72 107
73 108
74 public Tkh(final River river, final String filename, final String kmrange_info, final String comment, final Date day, final String sounding_info, 109 public Tkh(final River river, final String filename, final String kmrange_info, final String comment, final Date day, final String sounding_info,
75 final String evaluation_by) { 110 final String evaluation_by, final Group group) {
76 this.river = river; 111 this.river = river;
77 this.filename = filename; 112 this.filename = filename;
78 this.kmrange_info = kmrange_info; 113 this.kmrange_info = kmrange_info;
79 this.comment = comment; 114 this.comment = comment;
80 this.day = day; 115 this.day = day;
81 this.setSounding_info(sounding_info); 116 this.setSounding_info(sounding_info);
82 this.setEvaluation_by(evaluation_by); 117 this.setEvaluation_by(evaluation_by);
118 this.setGroup(group);
83 this.columns = new ArrayList<>(); 119 this.columns = new ArrayList<>();
84 } 120 }
85 121
86 /***** METHODS *****/ 122 /***** METHODS *****/
87 123
112 return this.filename; 148 return this.filename;
113 } 149 }
114 150
115 public void setFilename(final String filename) { 151 public void setFilename(final String filename) {
116 this.filename = filename; 152 this.filename = filename;
153 }
154
155 @Column(name = "groupname")
156 public String getGroupname() {
157 return this.group.getDbValue();
158 }
159
160 public void setGroupname(final String groupname) {
161 this.group = Group.forDbValue(groupname);
162 }
163
164 @Transient
165 public Group getGroup() {
166 return this.group;
167 }
168
169 public void setGroup(final Group group) {
170 this.group = group;
117 } 171 }
118 172
119 @Column(name = "kmrange_info") 173 @Column(name = "kmrange_info")
120 public String getKmrange_info() { 174 public String getKmrange_info() {
121 return this.kmrange_info; 175 return this.kmrange_info;

http://dive4elements.wald.intevation.org