PollQuestion.java
2.63 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
package fi.insomnia.bortal.model;
import java.util.ArrayList;
import java.util.List;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.JoinColumn;
import javax.persistence.Lob;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.Table;
@Entity
@Table(name = "poll_question")
public class PollQuestion extends GenericEntity {
public PollQuestion() {
super();
}
public PollQuestion(Poll p) {
this.poll = p;
}
private static final long serialVersionUID = 821112669474215823L;
private static final Integer COLS = 40;
private Integer characters = 200;
@JoinColumn(name = "poll_id", referencedColumnName = "id", nullable = false)
@ManyToOne
private Poll poll;
@OneToMany(mappedBy = "question", cascade = CascadeType.ALL)
private List<PossibleAnswer> answers = new ArrayList<PossibleAnswer>();
public static final String EVENT_ID_COLUMN = "event_id";
@Lob
private String question;
@Column(nullable = false)
private Integer choices = 1;
@Column(nullable = false)
private Integer sort = 100;
@Column(nullable = false)
private Integer page = 1;
public String getQuestion() {
return question;
}
public boolean isFreeText() {
return (answers.size() == 1 && answers.get(0).getTextanswer());
}
public void setQuestion(String question) {
this.question = question;
}
public Integer getChoices() {
return choices;
}
public void setChoices(Integer choices) {
this.choices = choices;
}
public Integer getSort() {
return sort;
}
public void setSort(Integer sort) {
this.sort = sort;
}
public Integer getPage() {
return page;
}
public void setPage(Integer page) {
this.page = page;
}
public Poll getPoll() {
return poll;
}
public void setPoll(Poll poll) {
this.poll = poll;
}
public List<PossibleAnswer> getAnswers() {
return answers;
}
public void setAnswers(List<PossibleAnswer> answers) {
this.answers = answers;
}
public void setCharacters(Integer characters) {
this.characters = characters;
}
public Integer getCharacters() {
return characters;
}
public boolean isTextfield() {
if (characters > COLS) {
return true;
}
return false;
}
public int getCols() {
return COLS;
}
public int getRows() {
return this.getCharacters() / COLS;
}
}