@Atomic private static void deleteMaximumNumberOfCreditsForEnrolmentPeriod( final DegreeCurricularPlan input) { final List<? extends ICurricularRule> rules = input .getRoot() .getCurricularRules( CurricularRuleType.MAXIMUM_NUMBER_OF_CREDITS_FOR_ENROLMENT_PERIOD, (ExecutionYear) null); if (rules.size() > 1) { logger.error( "Update failed: found {} {} rules to update for DCP {}", rules.size(), MaximumNumberOfCreditsForEnrolmentPeriod.class.getSimpleName(), input.getPresentationName()); } else if (!rules.isEmpty()) { final MaximumNumberOfCreditsForEnrolmentPeriod rule = (MaximumNumberOfCreditsForEnrolmentPeriod) rules.iterator().next(); rule.delete(); logger.warn( "Deleted {} for DCP {}", MaximumNumberOfCreditsForEnrolmentPeriod.class.getSimpleName(), input.getPresentationName()); } }
@Atomic private static void createEnrolmentPeriodRestrictions(final DegreeCurricularPlan input) { final RootCourseGroup root = input.getRoot(); List<? extends ICurricularRule> rules = root.getCurricularRules( CurricularRuleType.ENROLMENT_PERIOD_RESTRICTIONS, (ExecutionYear) null); if (rules.isEmpty()) { new EnrolmentPeriodRestrictions(root, getBeginExecutionSemester(input, root)); logger.info( "Created {} for DCP {}", EnrolmentPeriodRestrictions.class.getSimpleName(), input.getPresentationName()); } else if (rules.size() > 1) { logger.error( "Possible error: found {} {} rules for DCP {}", rules.size(), EnrolmentPeriodRestrictions.class.getSimpleName(), input.getPresentationName()); } }