comparison src/main/java/edu/harvard/iq/dataverse/DatasetFieldDefaultValue.java @ 10:a50cf11e5178

Rewrite LGDataverse completely upgrading to dataverse4.0
author Zoe Hong <zhong@mpiwg-berlin.mpg.de>
date Tue, 08 Sep 2015 17:00:21 +0200
parents
children
comparison
equal deleted inserted replaced
9:5926d6419569 10:a50cf11e5178
1 /*
2 * To change this license header, choose License Headers in Project Properties.
3 * To change this template file, choose Tools | Templates
4 * and open the template in the editor.
5 */
6
7 package edu.harvard.iq.dataverse;
8
9 import java.io.Serializable;
10 import java.util.Collection;
11 import javax.persistence.CascadeType;
12 import javax.persistence.Column;
13 import javax.persistence.Entity;
14 import javax.persistence.GeneratedValue;
15 import javax.persistence.GenerationType;
16 import javax.persistence.Id;
17 import javax.persistence.JoinColumn;
18 import javax.persistence.ManyToOne;
19 import javax.persistence.OneToMany;
20 import javax.persistence.OrderBy;
21
22 /**
23 *
24 * @author skraffmiller
25 */
26 @Entity
27 public class DatasetFieldDefaultValue implements Serializable {
28
29 @Id
30 @GeneratedValue(strategy = GenerationType.IDENTITY)
31 private Long id;
32 public Long getId() {
33 return id;
34 }
35 public void setId(Long id) {
36 this.id = id;
37 }
38
39 public DatasetFieldDefaultValue() {
40
41 }
42
43 public DatasetFieldDefaultValue(DatasetFieldType sf, DefaultValueSet dvs, String val) {
44 setDatasetField(sf);
45 setDefaultValueSet(dvs);
46 setStrValue(val);
47 }
48
49 @ManyToOne
50 @JoinColumn(nullable=false)
51 private DatasetFieldType datasetField;
52 public DatasetFieldType getDatasetField() {
53 return datasetField;
54 }
55 public void setDatasetField(DatasetFieldType datasetField) {
56 this.datasetField = datasetField;
57 }
58
59 @ManyToOne
60 @JoinColumn(nullable=false)
61 private DefaultValueSet defaultValueSet;
62 public DefaultValueSet getDefaultValueSet() {
63 return defaultValueSet;
64 }
65 public void setDefaultValueSet(DefaultValueSet defaultValueSet) {
66 this.defaultValueSet = defaultValueSet;
67 }
68
69 @OneToMany(mappedBy = "parentDatasetFieldDefaultValue", cascade = {CascadeType.REMOVE, CascadeType.MERGE, CascadeType.PERSIST})
70 @OrderBy("displayOrder ASC")
71 private Collection<DatasetFieldDefaultValue> childDatasetFieldDefaultValues;
72
73 public Collection<DatasetFieldDefaultValue> getChildDatasetFieldDefaultValues() {
74 return this.childDatasetFieldDefaultValues;
75 }
76 public void setChildDatasetFieldDefaultValues(Collection<DatasetFieldDefaultValue> childDatasetFieldDefaultValues) {
77 this.childDatasetFieldDefaultValues = childDatasetFieldDefaultValues;
78 }
79
80 @ManyToOne(cascade = CascadeType.MERGE)
81 private DatasetFieldDefaultValue parentDatasetFieldDefaultValue;
82 public DatasetFieldDefaultValue getParentDatasetFieldDefaultValue() {
83 return parentDatasetFieldDefaultValue;
84 }
85 public void setParentDatasetFieldValue(DatasetFieldDefaultValue parentDatasetFieldDefaultValue) {
86 this.parentDatasetFieldDefaultValue = parentDatasetFieldDefaultValue;
87 }
88
89 @Column(columnDefinition="TEXT", nullable=false )
90 private String strValue;
91
92 public String getStrValue() {
93 return strValue;
94 }
95
96 public void setStrValue(String strValue) {
97 this.strValue = strValue;
98
99 }
100
101 @Override
102 public int hashCode() {
103 int hash = 0;
104 hash += (id != null ? id.hashCode() : 0);
105 return hash;
106 }
107
108 @Override
109 public boolean equals(Object object) {
110 if (!(object instanceof DatasetField)) {
111 return false;
112 }
113 DatasetFieldDefaultValue other = (DatasetFieldDefaultValue) object;
114 return !((this.id == null && other.id != null) || (this.id != null && !this.id.equals(other.id)));
115 }
116
117 @Override
118 public String toString() {
119 return "edu.harvard.iq.dataverse.DatasetFieldDefaultValue[ id=" + id + " ]";
120 }
121
122 public boolean isEmpty() {
123 return ((strValue==null || strValue.trim().equals("")));
124 }
125
126 private int displayOrder;
127 public int getDisplayOrder() { return this.displayOrder;}
128 public void setDisplayOrder(int displayOrder) {this.displayOrder = displayOrder;}
129
130 }