annotate backend/src/main/java/org/dive4elements/river/model/SedimentLoad.java @ 8026:4b3054edbbaf

Added Hibernate mappings for new sediment load database model.
author Sascha L. Teichmann <teichmann@intevation.de>
date Thu, 10 Jul 2014 12:04:56 +0200
parents
children aa054f72e887
rev   line source
8026
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
1 /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
2 * Software engineering by Intevation GmbH
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
3 *
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
4 * This file is Free Software under the GNU AGPL (>=v3)
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
5 * and comes with ABSOLUTELY NO WARRANTY! Check out the
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
6 * documentation coming with Dive4Elements River for details.
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
7 */
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
8 package org.dive4elements.river.model;
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
9
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
10 import java.io.Serializable;
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
11 import java.util.List;
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
12
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
13 import javax.persistence.Column;
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
14 import javax.persistence.Entity;
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
15 import javax.persistence.GeneratedValue;
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
16 import javax.persistence.GenerationType;
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
17 import javax.persistence.Id;
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
18 import javax.persistence.JoinColumn;
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
19 import javax.persistence.OneToMany;
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
20 import javax.persistence.OneToOne;
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
21 import javax.persistence.SequenceGenerator;
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
22 import javax.persistence.Table;
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
23
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
24 @Entity
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
25 @Table(name = "sediment_load")
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
26 public class SedimentLoad
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
27 implements Serializable
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
28 {
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
29 private Integer id;
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
30
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
31 private GrainFraction grainFraction;
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
32
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
33 private TimeInterval timeInterval;
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
34
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
35 private TimeInterval sqTimeInterval;
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
36
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
37 private String description;
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
38
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
39 private Integer kind;
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
40
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
41 private List<SedimentLoadValue> values;
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
42
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
43 public SedimentLoad() {
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
44 }
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
45
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
46 @Id
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
47 @SequenceGenerator(
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
48 name = "SEQUENCE_SEDIMENT_LOAD_ID_SEQ",
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
49 sequenceName = "SEDIMENT_LOAD_ID_SEQ",
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
50 allocationSize = 1)
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
51 @GeneratedValue(
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
52 strategy = GenerationType.SEQUENCE,
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
53 generator = "SEQUENCE_SEDIMENT_LOAD_ID_SEQ")
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
54 @Column(name = "id")
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
55 public Integer getId() {
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
56 return id;
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
57 }
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
58
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
59 public void setId(Integer id) {
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
60 this.id = id;
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
61 }
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
62
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
63 @OneToOne
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
64 @JoinColumn(name="grain_fraction_id")
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
65 public GrainFraction getGrainFraction() {
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
66 return grainFraction;
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
67 }
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
68
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
69 public void setGrainFraction(GrainFraction grainFraction) {
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
70 this.grainFraction = grainFraction;
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
71 }
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
72
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
73 @OneToOne
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
74 @JoinColumn(name = "time_interval_id")
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
75 public TimeInterval getTimeInterval() {
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
76 return timeInterval;
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
77 }
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
78
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
79 public void setTimeInterval(TimeInterval timeInterval) {
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
80 this.timeInterval = timeInterval;
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
81 }
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
82
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
83 @OneToOne
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
84 @JoinColumn(name = "sq_time_interval_id")
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
85 public TimeInterval getSQTimeInterval() {
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
86 return sqTimeInterval;
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
87 }
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
88
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
89 public void setSQTimeInterval(TimeInterval sqTimeInterval) {
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
90 this.sqTimeInterval = sqTimeInterval;
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
91 }
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
92
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
93 @Column(name = "description")
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
94 public String getDescription() {
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
95 return description;
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
96 }
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
97
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
98 public void setDescription(String description) {
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
99 this.description = description;
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
100 }
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
101
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
102 /** kind == 0: "normal", kind == 1: "official epoch". */
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
103 @Column(name = "kind")
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
104 public Integer getKind() {
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
105 return kind;
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
106 }
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
107
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
108 public void setKind(Integer newKind) {
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
109 this.kind = newKind;
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
110 }
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
111
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
112 @OneToMany
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
113 @JoinColumn(name="sediment_load_id")
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
114 public List<SedimentLoadValue> getSedimentLoadValues() {
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
115 return values;
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
116 }
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
117
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
118 public void setSedimentLoadValues(List<SedimentLoadValue> values) {
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
119 this.values = values;
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
120 }
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
121 }
4b3054edbbaf Added Hibernate mappings for new sediment load database model.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
122 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org