protected void readDomainObjects(Integer degreeCurricularPlanID, Integer parentCourseGroupID, Integer year, Integer semester, Integer beginExecutionPeriodID, Integer endExecutionPeriodID)
protected void readDomainObjects(CurricularCourseArgs curricularCourseArgs)
    protected void readDomainObjects(Integer degreeCurricularPlanID, Integer parentCourseGroupID,            Integer year, Integer semester, Integer beginExecutionPeriodID, Integer endExecutionPeriodID)            throws ExcepcaoPersistencia, FenixServiceException {        degreeCurricularPlan = rootDomainObject.readDegreeCurricularPlanByOID(degreeCurricularPlanID);        if (degreeCurricularPlan == null) {            throw new FenixServiceException("error.noDegreeCurricularPlan");        }        parentCourseGroup = (CourseGroup) rootDomainObject.readDegreeModuleByOID(parentCourseGroupID);        if (parentCourseGroup == null) {            throw new FenixServiceException("error.noCourseGroup");        }        final CurricularPeriod degreeCurricularPeriod = (CurricularPeriod) degreeCurricularPlan                .getDegreeStructure();        final CurricularPeriodInfoDTO curricularPeriodInfoYear = new CurricularPeriodInfoDTO(year,                CurricularPeriodType.YEAR);        final CurricularPeriodInfoDTO curricularPeriodInfoSemester = new CurricularPeriodInfoDTO(                semester, CurricularPeriodType.SEMESTER);        curricularPeriod = degreeCurricularPeriod.getCurricularPeriod(curricularPeriodInfoYear,                curricularPeriodInfoSemester);        if (curricularPeriod == null) {            curricularPeriod = degreeCurricularPeriod.addCurricularPeriod(curricularPeriodInfoYear,                    curricularPeriodInfoSemester);        }        if (beginExecutionPeriodID == null) {            final ExecutionYear currentExecutionYear = ExecutionYear.readCurrentExecutionYear();            final ExecutionYear nextExecutionYear = currentExecutionYear.getNextExecutionYear();            if (nextExecutionYear == null) {                throw new FenixServiceException("error.no.next.execution.year");            }            beginExecutionPeriod = nextExecutionYear.readExecutionPeriodForSemester(Integer.valueOf(1));        } else {            beginExecutionPeriod = rootDomainObject.readExecutionPeriodByOID(beginExecutionPeriodID);        }        endExecutionPeriod = (endExecutionPeriodID == null) ? null : rootDomainObject                .readExecutionPeriodByOID(endExecutionPeriodID);    }