Index: lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/service/MonitoringService.java =================================================================== RCS file: /usr/local/cvsroot/lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/service/MonitoringService.java,v diff -u -r1.54 -r1.55 --- lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/service/MonitoringService.java 22 Feb 2006 23:57:55 -0000 1.54 +++ lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/service/MonitoringService.java 27 Feb 2006 07:06:11 -0000 1.55 @@ -474,6 +474,12 @@ */ public void startLessonOnSchedule(long lessonId, Date startDate){ + //we get the lesson just created + Lesson requestedLesson = lessonDAO.getLesson(new Long(lessonId)); + if ( requestedLesson == null) { + throw new MonitoringServiceException("Lesson for id="+lessonId+" is missing. Unable to start lesson."); + } + JobDetail startLessonJob = getStartScheduleLessonJob(); //setup the message for scheduling job startLessonJob.setName("startLessonOnSchedule"); @@ -485,7 +491,8 @@ //start the scheduling job try { - setLessonState(lessonId,Lesson.NOT_STARTED_STATE); + requestedLesson.setScheduleStartDate(startDate); + setLessonState(requestedLesson,Lesson.NOT_STARTED_STATE); scheduler.scheduleJob(startLessonJob, startLessonTrigger); } catch (SchedulerException e) @@ -500,12 +507,18 @@ /** - * Start lesson on schedule. + * Finish lesson on schedule. * @param lessonId * @param endDate * @see org.lamsfoundation.lams.monitoring.service.IMonitoringService#finishLessonOnSchedule(long , Date) */ public void finishLessonOnSchedule(long lessonId, Date endDate) { + //we get the lesson want to finish + Lesson requestedLesson = lessonDAO.getLesson(new Long(lessonId)); + if ( requestedLesson == null) { + throw new MonitoringServiceException("Lesson for id="+lessonId+" is missing. Unable to start lesson."); + } + JobDetail finishLessonJob = getFinishScheduleLessonJob(); //setup the message for scheduling job finishLessonJob.setName("finishLessonOnSchedule"); @@ -517,6 +530,7 @@ //start the scheduling job try { + requestedLesson.setScheduleEndDate(endDate); scheduler.scheduleJob(finishLessonJob, finishLessonTrigger); } catch (SchedulerException e)