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 { 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; } } }