Files
tpjpa/src/main/java/fr/istic/taa/jaxrs/DAO/QuizzDAO.java
trochas fbff98f1dd merge
2025-10-24 23:22:01 +02:00

49 lines
1.4 KiB
Java

package fr.istic.taa.jaxrs.DAO;
import fr.istic.taa.jaxrs.metier.Question;
import jakarta.persistence.EntityTransaction;
import fr.istic.taa.jaxrs.metier.Quizz;
public class QuizzDAO extends AbstractJpaDao<Integer, Quizz> {
public QuizzDAO(){
super();
this.setClass(Quizz.class);
}
public void deleteAllQuestion(int quizzId) {
EntityTransaction t = em.getTransaction();
try {
if (!t.isActive()) t.begin();
Quizz quizz = em.find(Quizz.class, quizzId);
if (quizz != null) {
quizz.getQuestions().clear();
em.merge(quizz);
}
t.commit();
} catch (Exception e) {
if (t.isActive()) t.rollback();
e.printStackTrace();
throw e;
}
}
public void addQuestion(int quizzId, int questionId) {
EntityTransaction t = em.getTransaction();
try {
if (!t.isActive()) t.begin();
Quizz quizz = em.find(Quizz.class, quizzId);
Question question = em.find(Question.class, questionId);
if (quizz != null && question != null) {
quizz.getQuestions().add(question);
em.merge(quizz);
}
t.commit();
} catch (Exception e) {
if (t.isActive()) t.rollback();
e.printStackTrace();
throw e;
}
}
}