Index: lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/monitoringApplicationContext.xml =================================================================== diff -u -r0ec0d87a13f5cd499a8300d7a51a6d453108545e -r47a3094af8f0cd514ca3d06de4084389ea000059 --- lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/monitoringApplicationContext.xml (.../monitoringApplicationContext.xml) (revision 0ec0d87a13f5cd499a8300d7a51a6d453108545e) +++ lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/monitoringApplicationContext.xml (.../monitoringApplicationContext.xml) (revision 47a3094af8f0cd514ca3d06de4084389ea000059) @@ -31,15 +31,13 @@ - + - - Index: lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/service/MonitoringService.java =================================================================== diff -u -r5405187e3b1da05d85dce4c9c30fc60c48608bbc -r47a3094af8f0cd514ca3d06de4084389ea000059 --- lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/service/MonitoringService.java (.../MonitoringService.java) (revision 5405187e3b1da05d85dce4c9c30fc60c48608bbc) +++ lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/service/MonitoringService.java (.../MonitoringService.java) (revision 47a3094af8f0cd514ca3d06de4084389ea000059) @@ -79,9 +79,7 @@ import org.lamsfoundation.lams.usermanagement.User; import org.lamsfoundation.lams.usermanagement.Workspace; import org.lamsfoundation.lams.usermanagement.WorkspaceFolder; -import org.lamsfoundation.lams.usermanagement.dao.IOrganisationDAO; -import org.lamsfoundation.lams.usermanagement.dao.IUserDAO; -import org.lamsfoundation.lams.usermanagement.dao.IWorkspaceFolderDAO; +import org.lamsfoundation.lams.dao.IBaseDAO; import org.lamsfoundation.lams.usermanagement.exception.UserAccessDeniedException; import org.lamsfoundation.lams.usermanagement.service.IUserManagementService; import org.lamsfoundation.lams.usermanagement.util.LastNameAlphabeticComparator; @@ -129,10 +127,8 @@ private ILessonClassDAO lessonClassDAO; private ITransitionDAO transitionDAO; private IActivityDAO activityDAO; - private IWorkspaceFolderDAO workspaceFolderDAO; + private IBaseDAO baseDAO; private ILearningDesignDAO learningDesignDAO; - private IOrganisationDAO organisationDAO; - private IUserDAO userDAO; private IGroupingDAO groupingDAO; private IAuthoringService authoringService; private ILearnerService learnerService; @@ -169,12 +165,6 @@ public void setLearningDesignDAO(ILearningDesignDAO learningDesignDAO) { this.learningDesignDAO = learningDesignDAO; } - /** - * @param workspaceFolderDAO The workspaceFolderDAO to set. - */ - public void setWorkspaceFolderDAO(IWorkspaceFolderDAO workspaceFolderDAO) { - this.workspaceFolderDAO = workspaceFolderDAO; - } /** * @param transitionDAO The transitionDAO to set. @@ -222,8 +212,8 @@ /** * @param userDAO */ - public void setUserDAO(IUserDAO userDAO) { - this.userDAO = userDAO; + public void setBaseDAO(IBaseDAO baseDAO) { + this.baseDAO = baseDAO; } /** * @param groupingDAO @@ -247,10 +237,8 @@ { this.activityDAO = activityDAO; } - public void setOrganisationDAO(IOrganisationDAO organisationDAO) { - this.organisationDAO = organisationDAO; - } - /** + + /** * @see org.springframework.context.ApplicationContextAware#setApplicationContext(org.springframework.context.ApplicationContext) */ public void setApplicationContext(ApplicationContext applicationContext) throws BeansException @@ -277,7 +265,7 @@ /** Checks whether the user is a staff member for the lesson or the creator of the lesson. * If not, throws a UserAccessDeniedException exception */ private void checkOwnerOrStaffMember(Integer userId, Lesson lesson, String actionDescription) { - User user = userManagementService.getUserById(userId); + User user = (User)baseDAO.find(User.class,userId); if ( lesson.getUser() != null && lesson.getUser().getUserId().equals(userId) ) { return; @@ -314,7 +302,7 @@ // The duplicated sequence should go in the run sequences folder under the given organisation WorkspaceFolder runSeqFolder = null; if ( organisationId != null ) { - Organisation org = organisationDAO.getOrganisationById(organisationId); + Organisation org = (Organisation)baseDAO.find(Organisation.class,organisationId); if ( org!=null ) { Workspace workspace = org.getWorkspace(); if ( workspace != null ) { @@ -323,7 +311,7 @@ } } - User user = (userID != null ? userManagementService.getUserById(userID) : null); + User user = (userID != null ? (User)baseDAO.find(User.class,userID) : null); return initializeLesson(lessonName, lessonDescription, originalLearningDesign, user, runSeqFolder, LearningDesign.COPY_TYPE_LESSON); } @@ -342,7 +330,7 @@ if ( originalLearningDesign == null) { throw new MonitoringServiceException("Learning design for id="+learningDesignId+" is missing. Unable to initialize lesson."); } - User user = (userID != null ? userManagementService.getUserById(userID) : null); + User user = (userID != null ? (User)baseDAO.find(User.class,userID) : null); return initializeLesson(lessonName, lessonDescription, originalLearningDesign, user, null, LearningDesign.COPY_TYPE_PREVIEW); } @@ -425,8 +413,8 @@ if(staffs == null) staffs = new LinkedList(); - Organisation organisation = organisationDAO.getOrganisationById(orgId); - User creator = userDAO.getUserById(creatorUserId); + Organisation organisation = (Organisation)baseDAO.find(Organisation.class,orgId); + User creator = (User)baseDAO.find(User.class,creatorUserId); // create the lesson class - add all the users in this organisation to the lesson class // add user as staff @@ -436,7 +424,7 @@ while (iter.hasNext()) { try { int id = ((Double) iter.next()).intValue(); - learnerList.add(userDAO.getUserById(new Integer(id))); + learnerList.add((User)baseDAO.find(User.class,id)); } catch (Exception e) { log.error("Error parsing learner ID from " + lessonPacket); continue; @@ -449,7 +437,7 @@ while (iter.hasNext()) { try { int id = ((Double) iter.next()).intValue(); - staffList.add(userDAO.getUserById(new Integer(id))); + staffList.add((User)baseDAO.find(User.class,id)); } catch (Exception e) { log.error("Error parsing staff ID from " + lessonPacket); continue; @@ -786,7 +774,7 @@ public String forceCompleteLessonByUser(Integer learnerId,long lessonId,Long activityId) { - User learner = userDAO.getUserById(learnerId); + User learner = (User)baseDAO.find(User.class,learnerId); Lesson newLesson = lessonDAO.getLesson(new Long(lessonId)); Set activities = newLesson.getLearningDesign().getActivities(); /* @@ -1028,7 +1016,7 @@ */ public String getLearnerActivityURL(Long lessonID, Long activityID,Integer userID)throws IOException, LamsToolServiceException{ Activity activity = activityDAO.getActivityByActivityId(activityID); - User user = userManagementService.getUserById(userID); + User user = (User)baseDAO.find(User.class,userID); if(activity==null || user==null){ log.error("getLearnerActivityURL activity or user missing. Activity ID "+activityID+" activity " +activity+" userID "+userID+" user "+user); @@ -1079,7 +1067,7 @@ FlashMessage flashMessage; if(lesson!=null){ if(lesson.getUser().getUserId().equals(userID)){ - WorkspaceFolder workspaceFolder = workspaceFolderDAO.getWorkspaceFolderByID(targetWorkspaceFolderID); + WorkspaceFolder workspaceFolder = (WorkspaceFolder)baseDAO.find(WorkspaceFolder.class,targetWorkspaceFolderID); if(workspaceFolder!=null){ LearningDesign learningDesign = lesson.getLearningDesign(); learningDesign.setWorkspaceFolder(workspaceFolder); @@ -1204,7 +1192,7 @@ List learners = new ArrayList(); //? Seem too low efficient, is there a easy way? for(int idx=0;idx