package de.learny.domain;
import java.util.Set;
import javax.persistence.CascadeType;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Lob;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import com.fasterxml.jackson.annotation.JsonBackReference;
import com.fasterxml.jackson.annotation.JsonView;
import de.learny.JsonView.View;
@Entity
public class Question {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@JsonView(View.Summary.class)
private long id;
@JsonView(View.Summary.class)
@Lob
private String question;
@JsonView(View.Summary.class)
@OneToMany(mappedBy = "question", cascade = CascadeType.ALL, orphanRemoval = true)
private Set<Answer> answers;
@ManyToOne
@JsonBackReference
private Test test;
public Question(String question, Test test) {
this.setQuestion(question);
this.setTest(test);
}
public Question(){
}
public String getQuestion() {
return question;
}
public void setQuestion(String question) {
this.question = question;
}
public long getId() {
return id;
}
public Set<Answer> getAnswers() {
return answers;
}
public void setAnswers(Set<Answer> answers) {
this.answers = answers;
}
public Test getTest() {
return test;
}
public void setTest(Test test) {
this.test = test;
}
}