public List<Exercicio> getByTopico(EntityManager em, Topico topico) throws RegistroNaoEncontradoException { List<Exercicio> exercicios = new ArrayList<Exercicio>(); boolean inseri; try { List<ExercicioTopico> exerciciosTopicos = ExercicioTopicoDAO.getInstance().getByTopico(em, topico); for (ExercicioTopico et : exerciciosTopicos) { inseri = true; for (Topico t : et.getExercicio().getTopicos()) { if (t.getUnidade().getCodigo() > topico.getUnidade().getCodigo()) { inseri = false; break; } } if (inseri) { exercicios.add(et.getExercicio()); } } } catch (Exception e) { System.out.println(e); throw new RegistroNaoEncontradoException(); } return exercicios; }
public void remove(EntityManager em, Exercicio pExercicio) throws ProblemasDeAtualizacaoException { try { pExercicio = em.find(Exercicio.class, pExercicio.getCodigo()); for (ExercicioTopico e : pExercicio.getExerciciosTopicos()) { ExercicioTopicoDAO.getInstance().del(em, e); } em.remove(pExercicio); } catch (Exception e) { System.out.println(e); throw new ProblemasDeAtualizacaoException(); } }