InfoSeminary infoSeminary = InfoSeminary.newInfoFromDomain((ISeminary) iterator.next());
InfoSeminaryWithEquivalencies infoSeminary = InfoSeminaryWithEquivalencies.newInfoFromDomain((ISeminary) iterator.next());
    public List run(Boolean inEnrollmentPeriod) throws BDException {        List seminariesInfo = new LinkedList();        try {            ISuportePersistente persistenceSupport = PersistenceSupportFactory.getDefaultPersistenceSupport();            IPersistentSeminary persistentSeminary = persistenceSupport.getIPersistentSeminary();            List seminaries = persistentSeminary.readAll();            for (Iterator iterator = seminaries.iterator(); iterator.hasNext();) {                InfoSeminary infoSeminary = InfoSeminary.newInfoFromDomain((ISeminary) iterator.next());                Calendar now = new GregorianCalendar();                Calendar endDate = new GregorianCalendar();                Calendar beginDate = new GregorianCalendar();                endDate.setTimeInMillis(infoSeminary.getEnrollmentEndTime().getTimeInMillis()                        + infoSeminary.getEnrollmentEndDate().getTimeInMillis());                beginDate.setTimeInMillis(infoSeminary.getEnrollmentBeginTime().getTimeInMillis()                        + infoSeminary.getEnrollmentBeginDate().getTimeInMillis());                if ((!inEnrollmentPeriod.booleanValue())                        || (endDate.after(now) && beginDate.before(now)))                    seminariesInfo.add(infoSeminary);            }        } catch (ExcepcaoPersistencia ex) {            throw new BDException(                    "Got an error while trying to retrieve multiple seminaries from the database", ex);        }        return seminariesInfo;    }