candidacyDTO.setSeminary(InfoSeminary.newInfoFromDomain(candidacy.getSeminary()));
candidacyDTO.setSeminary(InfoSeminaryWithEquivalencies.newInfoFromDomain(candidacy.getSeminary()));
    public List run(Integer modalityID, Integer seminaryID, Integer themeID, Integer case1Id,            Integer case2Id, Integer case3Id, Integer case4Id, Integer case5Id,            Integer curricularCourseID, Integer degreeID, Boolean approved) throws BDException {        List infoCandidacies = new LinkedList();        try {            ISuportePersistente persistenceSupport = PersistenceSupportFactory.getDefaultPersistenceSupport();            IPersistentSeminaryCandidacy persistentCandidacy = persistenceSupport                    .getIPersistentSeminaryCandidacy();            List candidacies = persistentCandidacy.readByUserInput(modalityID, seminaryID, themeID,                    case1Id, case2Id, case3Id, case4Id, case5Id, curricularCourseID, degreeID, approved);            for (Iterator iterator = candidacies.iterator(); iterator.hasNext();) {                ICandidacy candidacy = (ICandidacy) iterator.next();                IStudent student = candidacy.getStudent();                IStudentCurricularPlan studentCurricularPlan = getStudentCurricularPlan(student);                List enrollments = studentCurricularPlan.getEnrolments();                InfoCandidacyDetails candidacyDTO = new InfoCandidacyDetails();                candidacyDTO.setCurricularCourse(InfoCurricularCourseWithInfoDegree                        .newInfoFromDomain(candidacy.getCurricularCourse()));                candidacyDTO.setIdInternal(candidacy.getIdInternal());                candidacyDTO.setInfoClassification(getInfoClassification(enrollments));                candidacyDTO.setModality(InfoModality.newInfoFromDomain(candidacy.getModality()));                candidacyDTO.setMotivation(candidacy.getMotivation());                candidacyDTO.setSeminary(InfoSeminary.newInfoFromDomain(candidacy.getSeminary()));                candidacyDTO.setStudent(InfoStudentWithInfoPerson.newInfoFromDomain(student));                candidacyDTO.setTheme(InfoTheme.newInfoFromDomain(candidacy.getTheme()));                candidacyDTO.setCases((List) CollectionUtils.collect(candidacy.getCaseStudyChoices(),                        new Transformer() {                            public Object transform(Object arg0) {                                return InfoCaseStudyChoice.newInfoFromDomain((ICaseStudyChoice) arg0);                            }                        }));                if (candidacy.getApproved() != null) {                    candidacyDTO.setApproved(candidacy.getApproved());                } else {                    candidacyDTO.setApproved(Boolean.FALSE);                }                infoCandidacies.add(candidacyDTO);            }        } catch (ExcepcaoPersistencia ex) {            throw new BDException(                    "Got an error while trying to retrieve mutiple candidacies from the database", ex);        }        return infoCandidacies;    }