Index: lams_build/lib/lams/lams.jar =================================================================== RCS file: /usr/local/cvsroot/lams_build/lib/lams/lams.jar,v diff -u -r1.500 -r1.501 Binary files differ Index: lams_central/src/java/org/lamsfoundation/lams/web/LessonConditionsAction.java =================================================================== RCS file: /usr/local/cvsroot/lams_central/src/java/org/lamsfoundation/lams/web/LessonConditionsAction.java,v diff -u -r1.10 -r1.11 --- lams_central/src/java/org/lamsfoundation/lams/web/LessonConditionsAction.java 11 May 2016 07:30:15 -0000 1.10 +++ lams_central/src/java/org/lamsfoundation/lams/web/LessonConditionsAction.java 8 Aug 2016 17:28:01 -0000 1.11 @@ -20,14 +20,12 @@ * **************************************************************** */ - package org.lamsfoundation.lams.web; import java.io.IOException; import java.util.ArrayList; import java.util.Calendar; import java.util.Date; -import java.util.Iterator; import java.util.List; import java.util.Set; import java.util.TreeSet; @@ -170,17 +168,10 @@ return null; } - Long removedPrecedingLessonId = WebUtil.readLongParam(request, LessonConditionsAction.PARAM_PRECEDING_LESSON_ID, + Long precedingLessonId = WebUtil.readLongParam(request, LessonConditionsAction.PARAM_PRECEDING_LESSON_ID, false); - Lesson lesson = getLessonService().getLesson(lessonId); - Iterator precedingLessonIter = lesson.getPrecedingLessons().iterator(); - while (precedingLessonIter.hasNext()) { - if (precedingLessonIter.next().getLessonId().equals(removedPrecedingLessonId)) { - precedingLessonIter.remove(); - break; - } - } + getLessonService().removePrecedingLesson(lessonId, precedingLessonId); // after operation, display contents again return getIndexLessonConditions(mapping, form, request, response); @@ -201,16 +192,9 @@ return null; } - Long addedPrecedingLessonId = WebUtil.readLongParam(request, LessonConditionsAction.PARAM_PRECEDING_LESSON_ID, + Long precedingLessonId = WebUtil.readLongParam(request, LessonConditionsAction.PARAM_PRECEDING_LESSON_ID, false); - Lesson lesson = getLessonService().getLesson(lessonId); - Lesson addedPrecedingLesson = getLessonService().getLesson(addedPrecedingLessonId); - if (addedPrecedingLesson == null) { - throw new IllegalArgumentException("Preceding lesson with ID: " + lessonId + " does not exist."); - } - - lesson.getPrecedingLessons().add(addedPrecedingLesson); - + getLessonService().addPrecedingLesson(lessonId, precedingLessonId); // after operation, display contents again return getIndexLessonConditions(mapping, form, request, response); } @@ -220,7 +204,6 @@ * * @throws IOException */ - @SuppressWarnings("unchecked") public ActionForward setDaysToLessonFinish(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws IOException { Long lessonId = WebUtil.readLongParam(request, CentralConstants.PARAM_LESSON_ID, false); Index: lams_common/src/java/org/lamsfoundation/lams/lesson/service/ILessonService.java =================================================================== RCS file: /usr/local/cvsroot/lams_common/src/java/org/lamsfoundation/lams/lesson/service/ILessonService.java,v diff -u -r1.45 -r1.46 --- lams_common/src/java/org/lamsfoundation/lams/lesson/service/ILessonService.java 11 May 2016 07:29:07 -0000 1.45 +++ lams_common/src/java/org/lamsfoundation/lams/lesson/service/ILessonService.java 8 Aug 2016 17:28:48 -0000 1.46 @@ -424,4 +424,8 @@ Set getReleasedSucceedingLessons(Long completedLessonId, Integer learnerId); void removeLearnerProgress(Long lessonId, Integer userId); + + void addPrecedingLesson(Long lessonId, Long precedingLessonId); + + void removePrecedingLesson(Long lessonId, Long precedingLessonId); } \ No newline at end of file Index: lams_common/src/java/org/lamsfoundation/lams/lesson/service/LessonService.java =================================================================== RCS file: /usr/local/cvsroot/lams_common/src/java/org/lamsfoundation/lams/lesson/service/LessonService.java,v diff -u -r1.60 -r1.61 --- lams_common/src/java/org/lamsfoundation/lams/lesson/service/LessonService.java 11 May 2016 07:29:07 -0000 1.60 +++ lams_common/src/java/org/lamsfoundation/lams/lesson/service/LessonService.java 8 Aug 2016 17:28:48 -0000 1.61 @@ -21,7 +21,6 @@ * **************************************************************** */ - package org.lamsfoundation.lams.lesson.service; import java.util.ArrayList; @@ -699,4 +698,27 @@ } return releasedSucceedingLessons; } -} + + @Override + public void addPrecedingLesson(Long lessonId, Long precedingLessonId) { + Lesson addedPrecedingLesson = getLesson(precedingLessonId); + if (addedPrecedingLesson == null) { + throw new IllegalArgumentException("Preceding lesson with ID: " + lessonId + " does not exist."); + } + Lesson lesson = getLesson(lessonId); + + lesson.getPrecedingLessons().add(addedPrecedingLesson); + } + + @Override + public void removePrecedingLesson(Long lessonId, Long precedingLessonId) { + Lesson lesson = getLesson(lessonId); + Iterator precedingLessonIter = lesson.getPrecedingLessons().iterator(); + while (precedingLessonIter.hasNext()) { + if (precedingLessonIter.next().getLessonId().equals(precedingLessonId)) { + precedingLessonIter.remove(); + break; + } + } + } +} \ No newline at end of file