Index: lams_build/build.xml =================================================================== diff -u -r1b6b84b218055aab82004edfbe5f545b2c0eee0b -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_build/build.xml (.../build.xml) (revision 1b6b84b218055aab82004edfbe5f545b2c0eee0b) +++ lams_build/build.xml (.../build.xml) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -544,17 +544,7 @@ - - - - - - - - - - + @@ -587,22 +577,6 @@ - - - - - - - - - - - - - - Fisheye: Tag cb01d2d8c064728cb0e2ac524d2f89622a534e39 refers to a dead (removed) revision in file `lams_build/lib/jakarta-commons/codec.module.xml'. Fisheye: No comparison available. Pass `N' to diff? Index: lams_build/lib/jakarta-commons/commons-codec-1.15.jar =================================================================== diff -u -r8ba50cf0cbd248f016f5827b4dfd2d8a16b3d80e -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 Binary files differ Index: lams_build/lib/jakarta-commons/commons-logging-1.2.jar =================================================================== diff -u -rf90ca89942ca1a4ebca88351343904dcfa0a654e -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 Binary files differ Fisheye: Tag cb01d2d8c064728cb0e2ac524d2f89622a534e39 refers to a dead (removed) revision in file `lams_build/lib/jakarta-commons/io.module.xml'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag cb01d2d8c064728cb0e2ac524d2f89622a534e39 refers to a dead (removed) revision in file `lams_build/lib/jakarta-commons/logging.module.xml'. Fisheye: No comparison available. Pass `N' to diff? Index: lams_central/.classpath =================================================================== diff -u -r1b6b84b218055aab82004edfbe5f545b2c0eee0b -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_central/.classpath (.../.classpath) (revision 1b6b84b218055aab82004edfbe5f545b2c0eee0b) +++ lams_central/.classpath (.../.classpath) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -16,9 +16,9 @@ - + - + @@ -27,7 +27,7 @@ - + Index: lams_central/src/java/org/lamsfoundation/lams/authoring/service/AuthoringService.java =================================================================== diff -u -r88da40288a02be7961fe7f2e5b6c1c6c78655d59 -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_central/src/java/org/lamsfoundation/lams/authoring/service/AuthoringService.java (.../AuthoringService.java) (revision 88da40288a02be7961fe7f2e5b6c1c6c78655d59) +++ lams_central/src/java/org/lamsfoundation/lams/authoring/service/AuthoringService.java (.../AuthoringService.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -27,7 +27,8 @@ import com.fasterxml.jackson.databind.node.JsonNodeFactory; import com.fasterxml.jackson.databind.node.ObjectNode; import org.apache.commons.io.FileUtils; -import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; +import org.apache.logging.log4j.LogManager; import org.lamsfoundation.lams.authoring.IObjectExtractor; import org.lamsfoundation.lams.authoring.ObjectExtractorException; import org.lamsfoundation.lams.dao.IBaseDAO; @@ -75,6 +76,7 @@ import org.springframework.beans.factory.BeanFactoryAware; import jakarta.servlet.http.HttpSession; + import java.io.File; import java.io.IOException; import java.text.ParseException; @@ -152,7 +154,7 @@ /** * @param groupDAO - * The groupDAO to set. + * The groupDAO to set. */ public void setGroupDAO(IGroupDAO groupDAO) { this.groupDAO = groupDAO; @@ -176,63 +178,63 @@ /** * @param transitionDAO - * The transitionDAO to set + * The transitionDAO to set */ public void setTransitionDAO(ITransitionDAO transitionDAO) { this.transitionDAO = transitionDAO; } /** * @param learningDesignDAO - * The learningDesignDAO to set. + * The learningDesignDAO to set. */ public void setLearningDesignDAO(ILearningDesignDAO learningDesignDAO) { this.learningDesignDAO = learningDesignDAO; } /** * @param learningLibraryDAO - * The learningLibraryDAO to set. + * The learningLibraryDAO to set. */ public void setLearningLibraryDAO(ILearningLibraryDAO learningLibraryDAO) { this.learningLibraryDAO = learningLibraryDAO; } /** * @param baseDAO - * The baseDAO to set. + * The baseDAO to set. */ public void setBaseDAO(IBaseDAO baseDAO) { this.baseDAO = baseDAO; } /** * @param activityDAO - * The activityDAO to set. + * The activityDAO to set. */ public void setActivityDAO(IActivityDAO activityDAO) { this.activityDAO = activityDAO; } /** * @param toolDAO - * The toolDAO to set + * The toolDAO to set */ public void setToolDAO(IToolDAO toolDAO) { this.toolDAO = toolDAO; } /** * @param toolDAO - * The toolDAO to set + * The toolDAO to set */ public void setSystemToolDAO(ISystemToolDAO systemToolDAO) { this.systemToolDAO = systemToolDAO; } /** * @param licenseDAO - * The licenseDAO to set + * The licenseDAO to set */ public void setLicenseDAO(ILicenseDAO licenseDAO) { this.licenseDAO = licenseDAO; @@ -244,7 +246,7 @@ /** * @param learningDesignService - * The Learning Design Validator Service + * The Learning Design Validator Service */ public void setLearningDesignService(ILearningDesignService learningDesignService) { this.learningDesignService = learningDesignService; @@ -276,7 +278,7 @@ /** * @param contentIDGenerator - * The contentIDGenerator to set. + * The contentIDGenerator to set. */ public void setContentIDGenerator(ToolContentIDGenerator contentIDGenerator) { this.contentIDGenerator = contentIDGenerator; @@ -295,7 +297,7 @@ * Returns a populated LearningDesign object corresponding to the given learningDesignID * * @param learningDesignID - * The learning_design_id of the design which has to be fetched + * The learning_design_id of the design which has to be fetched * @return LearningDesign The populated LearningDesign object corresponding to the given learningDesignID */ private LearningDesign getLearningDesign(Long learningDesignID) { @@ -315,11 +317,12 @@ /** * @see org.lamsfoundation.lams.authoring.service.IAuthoringFullService#getToolOutputDefinitions(java.lang.Long, - * int) + * int) */ @Override public List getToolOutputDefinitions(Long toolContentID, int definitionType) { - SortedMap defns = lamsCoreToolService.getOutputDefinitionsFromTool(toolContentID, definitionType); + SortedMap defns = lamsCoreToolService.getOutputDefinitionsFromTool(toolContentID, + definitionType); ArrayList defnDTOList = new ArrayList<>(defns != null ? defns.size() : 0); if (defns != null) { @@ -332,11 +335,12 @@ /** * @see org.lamsfoundation.lams.authoring.service.IAuthoringFullService#setupEditOnFlyLock(LearningDesign, - * java.lang.Integer) + * java.lang.Integer) */ @SuppressWarnings("unchecked") @Override - public boolean setupEditOnFlyLock(Long learningDesignID, Integer userID) throws LearningDesignException, UserException, IOException { + public boolean setupEditOnFlyLock(Long learningDesignID, Integer userID) + throws LearningDesignException, UserException, IOException { User user = baseDAO.find(User.class, userID); if (user == null) { throw new UserException(messageService.getMessage("no.such.user.exist", new Object[] { userID })); @@ -348,8 +352,9 @@ throw new LearningDesignException("Learning Design was not found, ID: " + learningDesignID); } - boolean learningDesignAvailable = (design.getEditOverrideUser() == null) || (design.getEditOverrideLock() == null) - || design.getEditOverrideUser().getUserId().equals(userID) || !design.getEditOverrideLock(); + boolean learningDesignAvailable = + (design.getEditOverrideUser() == null) || (design.getEditOverrideLock() == null) + || design.getEditOverrideUser().getUserId().equals(userID) || !design.getEditOverrideLock(); if (learningDesignAvailable) { if (design.getLessons().isEmpty()) { @@ -359,11 +364,14 @@ for (Lesson lesson : design.getLessons()) { lesson.setLockedForEdit(true); - if (design.getEditOverrideUser() == null || design.getEditOverrideLock() == null || !design.getEditOverrideLock()) { + if (design.getEditOverrideUser() == null || design.getEditOverrideLock() == null + || !design.getEditOverrideLock()) { // create audit log entry only the first time - do not redo one if the monitor has restarted editing. String message = messageService.getMessage("audit.live.edit.start", - new Object[] { design.getTitle(), design.getLearningDesignId(), lesson.getLessonId(), user.getLogin(), user.getUserId() }); - logEventService.logEvent(LogEvent.TYPE_LIVE_EDIT, user.getUserId(), null, lesson.getLessonId(), null, message); + new Object[] { design.getTitle(), design.getLearningDesignId(), lesson.getLessonId(), + user.getLogin(), user.getUserId() }); + logEventService.logEvent(LogEvent.TYPE_LIVE_EDIT, user.getUserId(), null, lesson.getLessonId(), + null, message); } } @@ -380,7 +388,7 @@ /** * @see org.lamsfoundation.lams.authoring.service.IAuthoringFullService#setupEditOnFlyGate(java.lang.Long, - * java.lang.Integer) + * java.lang.Integer) */ @Override @@ -400,7 +408,8 @@ Activity lastReadOnlyActivity = processor.lastReadOnlyActivity; // check if system gate already exists - if ((lastReadOnlyActivity == null) || !lastReadOnlyActivity.isGateActivity() || !((GateActivity) lastReadOnlyActivity).isSystemGate()) { + if ((lastReadOnlyActivity == null) || !lastReadOnlyActivity.isGateActivity() + || !((GateActivity) lastReadOnlyActivity).isSystemGate()) { // add new System Gate after last read-only Activity addSystemGateAfterActivity(lastReadOnlyActivity, design); learningDesignDAO.update(design); @@ -415,7 +424,8 @@ throw new IOException("User not found, ID: " + userID); } - LearningDesign design = learningDesignID == null ? null : learningDesignDAO.getLearningDesignById(learningDesignID); + LearningDesign design = + learningDesignID == null ? null : learningDesignDAO.getLearningDesignById(learningDesignID); if (design == null) { throw new IOException("Learning Design not found, ID: " + learningDesignID); @@ -433,10 +443,12 @@ processor.parseLearningDesign(); Activity lastReadOnlyActivity = processor.lastReadOnlyActivity; - Long firstAddedActivityId = processor.firstAddedActivity == null ? null : processor.firstAddedActivity.getActivityId(); + Long firstAddedActivityId = + processor.firstAddedActivity == null ? null : processor.firstAddedActivity.getActivityId(); // open and release waiting list on system gate - if ((lastReadOnlyActivity != null) && lastReadOnlyActivity.isGateActivity() && ((GateActivity) lastReadOnlyActivity).isSystemGate()) { + if ((lastReadOnlyActivity != null) && lastReadOnlyActivity.isGateActivity() + && ((GateActivity) lastReadOnlyActivity).isSystemGate()) { // remove previously inserted system gate design = removeTempSystemGate(lastReadOnlyActivity.getActivityId(), design.getLearningDesignId()); } @@ -445,8 +457,10 @@ lesson.setLockedForEdit(false); String message = messageService.getMessage("audit.live.edit.end", - new Object[] { design.getTitle(), design.getLearningDesignId(), lesson.getLessonId(), user.getLogin(), user.getUserId() }); - logEventService.logEvent(LogEvent.TYPE_LIVE_EDIT, user.getUserId(), null, lesson.getLessonId(), null, message); + new Object[] { design.getTitle(), design.getLearningDesignId(), lesson.getLessonId(), + user.getLogin(), user.getUserId() }); + logEventService.logEvent(LogEvent.TYPE_LIVE_EDIT, user.getUserId(), null, lesson.getLessonId(), null, + message); // LDEV-1899 only mark learners uncompleted if a change was saved and an activity added if (!cancelled && (firstAddedActivityId != null)) { @@ -567,7 +581,9 @@ // set x / y position for Gate Integer x1 = toActivity.getXcoord() == null ? 0 : toActivity.getXcoord(); - Integer x2 = toActivity.getTransitionFrom() == null ? null : toActivity.getTransitionFrom().getToActivity().getXcoord(); + Integer x2 = toActivity.getTransitionFrom() == null + ? null + : toActivity.getTransitionFrom().getToActivity().getXcoord(); if ((x1 != null) && (x2 != null)) { gate.setXcoord(x2 >= x1 ? (x1.intValue() - 13 - 20) : (x1.intValue() + 123 + 13 + 20)); @@ -590,7 +606,8 @@ activity.setTransitionFrom(newTransition); gate.setTransitionTo(newTransition); - Integer x1 = activity.getTransitionTo() == null ? 0 + Integer x1 = activity.getTransitionTo() == null + ? 0 : activity.getTransitionTo().getFromActivity().getXcoord(); /* set x/y position for Gate */ Integer x2 = activity.getXcoord() == null ? null : activity.getXcoord(); @@ -636,7 +653,8 @@ if (toActivity.isBranchingActivity()) { // get real instance instead of lazy loaded proxy - BranchingActivity branchingActivity = (BranchingActivity) activityDAO.getActivityByActivityId(toActivity.getActivityId()); + BranchingActivity branchingActivity = (BranchingActivity) activityDAO.getActivityByActivityId( + toActivity.getActivityId()); x2 = branchingActivity.getEndXcoord(); y2 = branchingActivity.getEndYcoord(); } else { @@ -672,7 +690,8 @@ } @SuppressWarnings("unchecked") - private void initialiseToolActivityForRuntime(LearningDesign design, Lesson lesson) throws MonitoringServiceException { + private void initialiseToolActivityForRuntime(LearningDesign design, Lesson lesson) + throws MonitoringServiceException { Date now = new Date(); for (Activity activity : design.getActivities()) { @@ -690,14 +709,16 @@ // a content record, then shortcomings in the createToolSession // code may throw exceptions. if (activity.isToolActivity()) { - ToolActivity toolActivity = (ToolActivity) activityDAO.getActivityByActivityId(activity.getActivityId()); + ToolActivity toolActivity = (ToolActivity) activityDAO.getActivityByActivityId( + activity.getActivityId()); Long newContentId = lamsCoreToolService.notifyToolToCopyContent(toolActivity, null); toolActivity.setToolContentId(newContentId); // LDEV-2510 init tool sessions for support activities added during live edit // monitoringService.initToolSessionIfSuitable(toolActivity, lesson); } else { - Integer newMaxId = monitoringService.startSystemActivity(activity, design.getMaxID(), now, lesson.getLessonName()); + Integer newMaxId = monitoringService.startSystemActivity(activity, design.getMaxID(), now, + lesson.getLessonName()); if (newMaxId != null) { design.setMaxID(newMaxId); } @@ -711,12 +732,14 @@ } @Override - public LearningDesign copyLearningDesign(Long originalDesignID, Integer copyType, Integer userID, Integer workspaceFolderID, boolean setOriginalDesign) + public LearningDesign copyLearningDesign(Long originalDesignID, Integer copyType, Integer userID, + Integer workspaceFolderID, boolean setOriginalDesign) throws UserException, LearningDesignException, WorkspaceFolderException, IOException { LearningDesign originalDesign = learningDesignDAO.getLearningDesignById(originalDesignID); if (originalDesign == null) { - throw new LearningDesignException(messageService.getMessage("no.such.learningdesign.exist", new Object[] { originalDesignID })); + throw new LearningDesignException( + messageService.getMessage("no.such.learningdesign.exist", new Object[] { originalDesignID })); } User user = baseDAO.find(User.class, userID); @@ -726,32 +749,36 @@ WorkspaceFolder workspaceFolder = baseDAO.find(WorkspaceFolder.class, workspaceFolderID); if (workspaceFolder == null) { - throw new WorkspaceFolderException(messageService.getMessage("no.such.workspace.exist", new Object[] { workspaceFolderID })); + throw new WorkspaceFolderException( + messageService.getMessage("no.such.workspace.exist", new Object[] { workspaceFolderID })); } - if (!workspaceManagementService.isUserAuthorizedToModifyFolderContents(workspaceFolder.getWorkspaceFolderId(), user.getUserId())) { + if (!workspaceManagementService.isUserAuthorizedToModifyFolderContents(workspaceFolder.getWorkspaceFolderId(), + user.getUserId())) { throw new UserAccessDeniedException("User with user_id of " + user.getUserId() - + " is not authorized to copy a learning design into the workspace folder " + workspaceFolder.getWorkspaceFolderId()); + + " is not authorized to copy a learning design into the workspace folder " + + workspaceFolder.getWorkspaceFolderId()); } return copyLearningDesign(originalDesign, copyType, user, workspaceFolder, setOriginalDesign, null, null); } /** * @see org.lamsfoundation.lams.authoring.service.IAuthoringFullService#copyLearningDesign(org.lamsfoundation.lams.learningdesign.LearningDesign, - * java.lang.Integer, org.lamsfoundation.lams.usermanagement.User, - * org.lamsfoundation.lams.usermanagement.WorkspaceFolder, java.lang.Boolean, java.lang.String) + * java.lang.Integer, org.lamsfoundation.lams.usermanagement.User, + * org.lamsfoundation.lams.usermanagement.WorkspaceFolder, java.lang.Boolean, java.lang.String) */ @Override - public LearningDesign copyLearningDesign(LearningDesign originalLearningDesign, Integer copyType, User user, WorkspaceFolder workspaceFolder, - boolean setOriginalDesign, String newDesignName, String customCSV) { + public LearningDesign copyLearningDesign(LearningDesign originalLearningDesign, Integer copyType, User user, + WorkspaceFolder workspaceFolder, boolean setOriginalDesign, String newDesignName, String customCSV) { String newTitle = newDesignName; if (newTitle == null) { newTitle = learningDesignService.getUniqueNameForLearningDesign(originalLearningDesign.getTitle(), workspaceFolder != null ? workspaceFolder.getWorkspaceFolderId() : null); } - LearningDesign newLearningDesign = LearningDesign.createLearningDesignCopy(originalLearningDesign, copyType, setOriginalDesign); + LearningDesign newLearningDesign = LearningDesign.createLearningDesignCopy(originalLearningDesign, copyType, + setOriginalDesign); newLearningDesign.setTitle(newTitle); newLearningDesign.setUser(user); newLearningDesign.setWorkspaceFolder(workspaceFolder); @@ -760,7 +787,8 @@ learningDesignDAO.insert(newLearningDesign); updateDesignCompetences(originalLearningDesign, newLearningDesign, false); - HashMap newActivities = updateDesignActivities(originalLearningDesign, newLearningDesign, 0, customCSV); + HashMap newActivities = updateDesignActivities(originalLearningDesign, newLearningDesign, 0, + customCSV); updateDesignTransitions(originalLearningDesign, newLearningDesign, newActivities, 0); // set first activity assumes that the transitions are all set up @@ -772,27 +800,32 @@ updateCompetenceMappings(newLearningDesign.getCompetences(), newActivities); try { - File sourceSVG = new File(LearningDesignService.getLearningDesignSVGPath(originalLearningDesign.getLearningDesignId())); + File sourceSVG = new File( + LearningDesignService.getLearningDesignSVGPath(originalLearningDesign.getLearningDesignId())); if (sourceSVG.canRead()) { - FileUtils.copyFile(sourceSVG, new File(LearningDesignService.getLearningDesignSVGPath(newLearningDesign.getLearningDesignId())), false); + FileUtils.copyFile(sourceSVG, new File( + LearningDesignService.getLearningDesignSVGPath(newLearningDesign.getLearningDesignId())), + false); } } catch (IOException e) { - log.error("Error while copying Learning Design " + originalLearningDesign.getLearningDesignId() + " image", e); + log.error("Error while copying Learning Design " + originalLearningDesign.getLearningDesignId() + " image", + e); } return newLearningDesign; } /** * @see org.lamsfoundation.lams.authoring.service.IAuthoringFullService#copyLearningDesignToolContent(org.lamsfoundation.lams.learningdesign.LearningDesign, - * org.lamsfoundation.lams.learningdesign.LearningDesign, java.lang.Integer) + * org.lamsfoundation.lams.learningdesign.LearningDesign, java.lang.Integer) */ - private LearningDesign copyLearningDesignToolContent(LearningDesign design, LearningDesign originalLearningDesign, Integer copyType, String customCSV) - throws LearningDesignException { + private LearningDesign copyLearningDesignToolContent(LearningDesign design, LearningDesign originalLearningDesign, + Integer copyType, String customCSV) throws LearningDesignException { - for (Iterator i = design.getActivities().iterator(); i.hasNext();) { + for (Iterator i = design.getActivities().iterator(); i.hasNext(); ) { Activity currentActivity = (Activity) i.next(); if (currentActivity.isToolActivity()) { - copyActivityToolContent(currentActivity, design.getCopyTypeID(), originalLearningDesign.getLearningDesignId(), customCSV); + copyActivityToolContent(currentActivity, design.getCopyTypeID(), + originalLearningDesign.getLearningDesignId(), customCSV); } } @@ -804,26 +837,30 @@ * @param copyType * @param currentActivity */ - private void copyActivityToolContent(Activity activity, Integer ldCopyType, Long originalLearningDesignId, String customCSV) { + private void copyActivityToolContent(Activity activity, Integer ldCopyType, Long originalLearningDesignId, + String customCSV) { try { ToolActivity toolActivity = (ToolActivity) activity; // copy the content Long newContentId = lamsCoreToolService.notifyToolToCopyContent(toolActivity, customCSV); - outcomeService.copyOutcomeMappings(null, toolActivity.getToolContentId(), null, null, null, newContentId, null, null); + outcomeService.copyOutcomeMappings(null, toolActivity.getToolContentId(), null, null, null, newContentId, + null, null); toolActivity.setToolContentId(newContentId); // clear read only field toolActivity.setReadOnly(false); } catch (DataMissingException e) { - String error = "Unable to copy a design / initialise the lesson. Data is missing for activity " + activity.getActivityUIID() - + " in learning design " + originalLearningDesignId + " default content may be missing for the tool. Error was " + e.getMessage(); + String error = "Unable to copy a design / initialise the lesson. Data is missing for activity " + + activity.getActivityUIID() + " in learning design " + originalLearningDesignId + + " default content may be missing for the tool. Error was " + e.getMessage(); log.error(error, e); throw new LearningDesignException(error, e); } catch (ToolException e) { - String error = "Unable to copy a design / initialise the lesson. Tool encountered an error copying the data is missing for activity " - + activity.getActivityUIID() + " in learning design " + originalLearningDesignId - + " default content may be missing for the tool. Error was " + e.getMessage(); + String error = + "Unable to copy a design / initialise the lesson. Tool encountered an error copying the data is missing for activity " + + activity.getActivityUIID() + " in learning design " + originalLearningDesignId + + " default content may be missing for the tool. Error was " + e.getMessage(); log.error(error, e); throw new LearningDesignException(error, e); } @@ -839,14 +876,14 @@ * doesn't matter). * * @param originalLearningDesign - * The LearningDesign to be copied + * The LearningDesign to be copied * @param newLearningDesign - * The copy of the originalLearningDesign + * The copy of the originalLearningDesign * @return Map of all the new activities, where the key is the UIID value. This is used as an input to - * updateDesignTransitions + * updateDesignTransitions */ - private HashMap updateDesignActivities(LearningDesign originalLearningDesign, LearningDesign newLearningDesign, int uiidOffset, - String customCSV) { + private HashMap updateDesignActivities(LearningDesign originalLearningDesign, + LearningDesign newLearningDesign, int uiidOffset, String customCSV) { HashMap newActivities = new HashMap<>(); // key // is // UIID @@ -862,8 +899,8 @@ if (oldParentActivities != null) { Iterator iterator = oldParentActivities.iterator(); while (iterator.hasNext()) { - processActivity((Activity) iterator.next(), newLearningDesign, newActivities, newGroupings, null, originalLearningDesign.getLearningDesignId(), - uiidOffset, customCSV); + processActivity((Activity) iterator.next(), newLearningDesign, newActivities, newGroupings, null, + originalLearningDesign.getLearningDesignId(), uiidOffset, customCSV); } } @@ -887,7 +924,8 @@ ComplexActivity newComplex = (ComplexActivity) activity; Activity oldDefaultActivity = newComplex.getDefaultActivity(); if (oldDefaultActivity != null) { - Activity newDefaultActivity = newActivities.get(LearningDesign.addOffset(oldDefaultActivity.getActivityUIID(), uiidOffset)); + Activity newDefaultActivity = newActivities.get( + LearningDesign.addOffset(oldDefaultActivity.getActivityUIID(), uiidOffset)); newComplex.setDefaultActivity(newDefaultActivity); } } @@ -897,7 +935,8 @@ // Need to check if the sets are not null as these are new // objects and Hibernate may not have backed them with // collections yet. - if ((newSequenceActivity.getBranchEntries() != null) && (newSequenceActivity.getBranchEntries().size() > 0)) { + if ((newSequenceActivity.getBranchEntries() != null) && (newSequenceActivity.getBranchEntries().size() + > 0)) { Activity parentActivity = newSequenceActivity.getParentActivity(); if (parentActivity.isChosenBranchingActivity()) { @@ -914,13 +953,16 @@ // copy BranchActivityEntry entry = (BranchActivityEntry) beIter.next(); BranchingActivity oldBranchingActivity = (BranchingActivity) entry.getBranchingActivity(); - entry.setBranchingActivity(newActivities.get(LearningDesign.addOffset(oldBranchingActivity.getActivityUIID(), uiidOffset))); + entry.setBranchingActivity(newActivities.get( + LearningDesign.addOffset(oldBranchingActivity.getActivityUIID(), uiidOffset))); Group oldGroup = entry.getGroup(); if (oldGroup != null) { Grouping oldGrouping = oldGroup.getGrouping(); - Grouping newGrouping = newGroupings.get(LearningDesign.addOffset(oldGrouping.getGroupingUIID(), uiidOffset)); + Grouping newGrouping = newGroupings.get( + LearningDesign.addOffset(oldGrouping.getGroupingUIID(), uiidOffset)); if (newGrouping != null) { - entry.setGroup(newGrouping.getGroup(LearningDesign.addOffset(oldGroup.getGroupUIID(), uiidOffset))); + entry.setGroup(newGrouping.getGroup( + LearningDesign.addOffset(oldGroup.getGroupUIID(), uiidOffset))); } } } @@ -934,7 +976,8 @@ Iterator inputIter = activity.getInputActivities().iterator(); while (inputIter.hasNext()) { Activity elem = (Activity) inputIter.next(); - newInputActivities.add(newActivities.get(LearningDesign.addOffset(elem.getActivityUIID(), uiidOffset))); + newInputActivities.add( + newActivities.get(LearningDesign.addOffset(elem.getActivityUIID(), uiidOffset))); } activity.getInputActivities().clear(); activity.getInputActivities().addAll(newInputActivities); @@ -979,19 +1022,19 @@ * with their new groupings at the end. Also copies the tool content. * * @param activity - * Activity to process. May not be null. + * Activity to process. May not be null. * @param newLearningDesign - * The new learning design. May not be null. + * The new learning design. May not be null. * @param newActivities - * Temporary set of new activities - as activities are processed they are added to the set. May not be - * null. + * Temporary set of new activities - as activities are processed they are added to the set. May not be null. * @param newGroupings - * Temporary set of new groupings. Key is the grouping UUID. May not be null. + * Temporary set of new groupings. Key is the grouping UUID. May not be null. * @param parentActivity - * This activity's parent activity (if one exists). May be null. + * This activity's parent activity (if one exists). May be null. */ - private void processActivity(Activity activity, LearningDesign newLearningDesign, Map newActivities, Map newGroupings, - Activity parentActivity, Long originalLearningDesignId, int uiidOffset, String customCSV) { + private void processActivity(Activity activity, LearningDesign newLearningDesign, + Map newActivities, Map newGroupings, Activity parentActivity, + Long originalLearningDesignId, int uiidOffset, String customCSV) { Activity newActivity = getActivityCopy(activity, newGroupings, uiidOffset); newActivity.setActivityUIID(newActivity.getActivityUIID()); newActivity.setLearningDesign(newLearningDesign); @@ -1007,7 +1050,8 @@ } if (newActivity.isToolActivity()) { - copyActivityToolContent(newActivity, newLearningDesign.getCopyTypeID(), originalLearningDesignId, customCSV); + copyActivityToolContent(newActivity, newLearningDesign.getCopyTypeID(), originalLearningDesignId, + customCSV); } Set oldChildActivities = getChildActivities(activity); @@ -1035,7 +1079,8 @@ } Activity pActivity = fParentActivity != null ? (Activity) fParentActivity : refParentActivity; - processActivity(childActivity, newLearningDesign, newActivities, newGroupings, pActivity, originalLearningDesignId, uiidOffset, customCSV); + processActivity(childActivity, newLearningDesign, newActivities, newGroupings, pActivity, + originalLearningDesignId, uiidOffset, customCSV); } } @@ -1045,12 +1090,12 @@ * Updates the Transition information in the newLearningDesign based on the originalLearningDesign * * @param originalLearningDesign - * The LearningDesign to be copied + * The LearningDesign to be copied * @param newLearningDesign - * The copy of the originalLearningDesign + * The copy of the originalLearningDesign */ - private void updateDesignTransitions(LearningDesign originalLearningDesign, LearningDesign newLearningDesign, HashMap newActivities, - int uiidOffset) { + private void updateDesignTransitions(LearningDesign originalLearningDesign, LearningDesign newLearningDesign, + HashMap newActivities, int uiidOffset) { HashSet newTransitions = new HashSet(); Set oldTransitions = originalLearningDesign.getTransitions(); Iterator iterator = oldTransitions.iterator(); @@ -1101,11 +1146,12 @@ * Updates the competence information in the newLearningDesign based on the originalLearningDesign * * @param originalLearningDesign - * The LearningDesign to be copied + * The LearningDesign to be copied * @param newLearningDesign - * The copy of the originalLearningDesign + * The copy of the originalLearningDesign */ - private void updateDesignCompetences(LearningDesign originalLearningDesign, LearningDesign newLearningDesign, boolean insert) { + private void updateDesignCompetences(LearningDesign originalLearningDesign, LearningDesign newLearningDesign, + boolean insert) { HashSet newCompeteces = new HashSet<>(); Set oldCompetences = originalLearningDesign.getCompetences(); @@ -1151,9 +1197,9 @@ * Updates the competence information in the newLearningDesign based on the originalLearningDesign * * @param originalLearningDesign - * The LearningDesign to be copied + * The LearningDesign to be copied * @param newLearningDesign - * The copy of the originalLearningDesign + * The copy of the originalLearningDesign */ private void updateCompetenceMappings(Set newCompetences, HashMap newActivities) { for (Integer activityKey : newActivities.keySet()) { @@ -1186,9 +1232,9 @@ * Determines the type of activity and returns a deep-copy of the same * * @param activity - * The object to be deep-copied + * The object to be deep-copied * @param newGroupings - * Temporary set of new groupings. Key is the grouping UUID. May not be null. + * Temporary set of new groupings. Key is the grouping UUID. May not be null. * @return Activity The new deep-copied Activity object */ private Activity getActivityCopy(final Activity activity, Map newGroupings, int uiidOffset) { @@ -1213,7 +1259,7 @@ * Returns a set of child activities for the given parent activity * * @param parentActivity - * The parent activity + * The parent activity * @return HashSet Set of the activities that belong to the parentActivity */ private HashSet getChildActivities(Activity parentActivity) { @@ -1246,12 +1292,16 @@ } Long learningDesignId = JsonUtil.optLong(ldJSON, AttributeNames.PARAM_LEARNINGDESIGN_ID); - LearningDesign existingLearningDesign = learningDesignId == null ? null : learningDesignDAO.getLearningDesignById(learningDesignId); - if (!authorised && (existingLearningDesign != null) && Boolean.TRUE.equals(existingLearningDesign.getEditOverrideLock())) { + LearningDesign existingLearningDesign = + learningDesignId == null ? null : learningDesignDAO.getLearningDesignById(learningDesignId); + if (!authorised && (existingLearningDesign != null) && Boolean.TRUE.equals( + existingLearningDesign.getEditOverrideLock())) { authorised = userID.equals(existingLearningDesign.getEditOverrideUser().getUserId()); } if (!authorised) { - throw new UserException("User with ID " + userID + " is not authorized to store a design in this workspace folder " + workspaceFolderID); + throw new UserException( + "User with ID " + userID + " is not authorized to store a design in this workspace folder " + + workspaceFolderID); } if (existingLearningDesign == null) { // check the user has given it a unique name in this folder, and make it unique if needed @@ -1264,8 +1314,10 @@ ldJSON.put(AuthoringJsonTags.TITLE, title); } - IObjectExtractor extractor = (IObjectExtractor) beanFactory.getBean(IObjectExtractor.OBJECT_EXTRACTOR_SPRING_BEANNAME); - LearningDesign design = extractor.extractSaveLearningDesign(ldJSON, existingLearningDesign, workspaceFolder, user); + IObjectExtractor extractor = (IObjectExtractor) beanFactory.getBean( + IObjectExtractor.OBJECT_EXTRACTOR_SPRING_BEANNAME); + LearningDesign design = extractor.extractSaveLearningDesign(ldJSON, existingLearningDesign, workspaceFolder, + user); if (extractor.getMode().intValue() == 1) { // adding the customCSV to the call if it is present @@ -1281,7 +1333,8 @@ private void insertEventLogEntry(User user, LearningDesign design, Date createDate) { String message = messageService.getMessage("audit.design.created", new Object[] { design.getTitle(), design.getLearningDesignId(), user.getLogin(), user.getUserId() }); - logEventService.logEvent(LogEvent.TYPE_TEACHER_LEARNING_DESIGN_CREATE, user.getUserId(), null, null, null, message, createDate); + logEventService.logEvent(LogEvent.TYPE_TEACHER_LEARNING_DESIGN_CREATE, user.getUserId(), null, null, null, + message, createDate); } /** @@ -1296,7 +1349,8 @@ @Override public Vector validateLearningDesign(Long learningDesignId) { LearningDesign learningDesign = learningDesignDAO.getLearningDesignById(learningDesignId); - Vector listOfValidationErrorDTOs = learningDesignService.validateLearningDesign(learningDesign); + Vector listOfValidationErrorDTOs = learningDesignService.validateLearningDesign( + learningDesign); Boolean valid = listOfValidationErrorDTOs.size() > 0 ? Boolean.FALSE : Boolean.TRUE; learningDesign.setValidDesign(valid); learningDesignDAO.insertOrUpdate(learningDesign); @@ -1307,7 +1361,8 @@ public Long insertToolContentID(Long toolID) { Tool tool = toolDAO.getToolByID(toolID); if (tool == null) { - log.error("The toolID " + toolID + " is not valid. A Tool with tool id " + toolID + " does not exist on the database."); + log.error("The toolID " + toolID + " is not valid. A Tool with tool id " + toolID + + " does not exist on the database."); return null; } @@ -1337,7 +1392,8 @@ + ". \nThe tool probably threw an exception - check the server logs for more details.\n" + "If the exception is \"Servlet.service() for servlet ToolContentRestServlet threw exception java.lang.ClassCastException: com.sun.proxy.$ProxyXXX cannot be cast to org.lamsfoundation.lams.rest.ToolRestManager)\"" + " then the tool has not implemented the ToolRestManager interface / createRestToolContent() method."); - throw new ToolException("Unable to create tool content for " + toolSignature + " with details " + toolContentJSON, e); + throw new ToolException( + "Unable to create tool content for " + toolSignature + " with details " + toolContentJSON, e); } } @@ -1359,14 +1415,14 @@ * but will be put straight into run sequences folder of the organisation. */ @Override - public Long insertSingleActivityLearningDesign(String learningDesignTitle, Long toolID, Long toolContentID, Long learningLibraryID, String contentFolderID, - Integer organisationID) { + public Long insertSingleActivityLearningDesign(String learningDesignTitle, Long toolID, Long toolContentID, + Long learningLibraryID, String contentFolderID, Integer organisationID) { Integer userID = AuthoringService.getUserId(); User user = baseDAO.find(User.class, userID); - LearningDesign learningDesign = new LearningDesign(null, null, null, learningDesignTitle, null, null, 1, false, false, null, null, null, new Date(), - Configuration.get(ConfigurationKeys.SERVER_VERSION_NUMBER), user, user, null, null, null, null, null, null, null, contentFolderID, false, null, - 1, null); + LearningDesign learningDesign = new LearningDesign(null, null, null, learningDesignTitle, null, null, 1, false, + false, null, null, null, new Date(), Configuration.get(ConfigurationKeys.SERVER_VERSION_NUMBER), user, + user, null, null, null, null, null, null, null, contentFolderID, false, null, 1, null); WorkspaceFolder folder = null; @@ -1406,7 +1462,8 @@ } // make Gradebook aware of the activity - List defnDTOList = getToolOutputDefinitions(toolContentID, ToolOutputDefinition.DATA_OUTPUT_DEFINITION_TYPE_CONDITION); + List defnDTOList = getToolOutputDefinitions(toolContentID, + ToolOutputDefinition.DATA_OUTPUT_DEFINITION_TYPE_CONDITION); String gradebookToolOutputDefinitionName = null; for (ToolOutputDefinitionDTO definition : defnDTOList) { // find the default output @@ -1446,16 +1503,19 @@ public String getToolAuthorUrl(Long toolID, Long toolContentID, String contentFolderID) { Tool tool = toolDAO.getToolByID(toolID); if (tool == null) { - log.error("The toolID " + toolID + " is not valid. A Tool with tool id " + toolID + " does not exist on the database."); + log.error("The toolID " + toolID + " is not valid. A Tool with tool id " + toolID + + " does not exist on the database."); return null; } String authorUrl = Configuration.get(ConfigurationKeys.SERVER_URL) + tool.getAuthorUrl(); if (toolContentID != null) { - authorUrl = WebUtil.appendParameterToURL(authorUrl, AttributeNames.PARAM_TOOL_CONTENT_ID, toolContentID.toString()); + authorUrl = WebUtil.appendParameterToURL(authorUrl, AttributeNames.PARAM_TOOL_CONTENT_ID, + toolContentID.toString()); } if (contentFolderID != null) { - authorUrl = WebUtil.appendParameterToURL(authorUrl, AttributeNames.PARAM_CONTENT_FOLDER_ID, contentFolderID); + authorUrl = WebUtil.appendParameterToURL(authorUrl, AttributeNames.PARAM_CONTENT_FOLDER_ID, + contentFolderID); } return authorUrl; } @@ -1477,8 +1537,8 @@ } LearningDesign learningDesign = learningDesignDAO.getLearningDesignById(access.getLearningDesignId()); if (learningDesign == null) { - log.warn("When getting recent access list for Author with ID " + userId + " LD with ID " + access.getLearningDesignId() - + " was found missing. Deleting access entry."); + log.warn("When getting recent access list for Author with ID " + userId + " LD with ID " + + access.getLearningDesignId() + " was found missing. Deleting access entry."); baseDAO.delete(access); continue; } @@ -1528,8 +1588,9 @@ * default grade or random questions are needed then this method needs to be expanded. */ @Override - public Long createTblAssessmentToolContent(UserDTO user, String title, String instructions, boolean selectLeaderToolOutput, boolean enableNumbering, - boolean shuffleQuestions, boolean enableConfidenceLevels, boolean allowDiscloseAnswers, boolean allowAnswerJustification, + public Long createTblAssessmentToolContent(UserDTO user, String title, String instructions, + boolean selectLeaderToolOutput, boolean enableNumbering, boolean shuffleQuestions, + boolean enableConfidenceLevels, boolean allowDiscloseAnswers, boolean allowAnswerJustification, boolean enableDiscussionSentiment, Long qbCollectionUid, ArrayNode questions) throws IOException { ObjectNode toolContentJSON = AuthoringService.createStandardToolContent(title, instructions, null, null, user); @@ -1567,7 +1628,8 @@ } /** Sets up the standard fields that are used by many TBL template tools */ - public static ObjectNode createStandardToolContent(String title, String instructions, Boolean lockWhenFinished, Boolean allowRichTextEditor, UserDTO user) { + public static ObjectNode createStandardToolContent(String title, String instructions, Boolean lockWhenFinished, + Boolean allowRichTextEditor, UserDTO user) { ObjectNode toolContentJSON = JsonNodeFactory.instance.objectNode(); toolContentJSON.put(RestTags.TITLE, title != null ? title : ""); toolContentJSON.put(RestTags.INSTRUCTIONS, instructions != null ? instructions : ""); Index: lams_central/src/java/org/lamsfoundation/lams/comments/web/CommentForm.java =================================================================== diff -u -r88da40288a02be7961fe7f2e5b6c1c6c78655d59 -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_central/src/java/org/lamsfoundation/lams/comments/web/CommentForm.java (.../CommentForm.java) (revision 88da40288a02be7961fe7f2e5b6c1c6c78655d59) +++ lams_central/src/java/org/lamsfoundation/lams/comments/web/CommentForm.java (.../CommentForm.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -23,6 +23,7 @@ package org.lamsfoundation.lams.comments.web; +import jakarta.servlet.http.HttpServletRequest; import org.apache.commons.lang3.StringUtils; import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.LogManager; import org.lamsfoundation.lams.comments.Comment; @@ -54,7 +55,7 @@ * MessageForm validation method from STRUCT interface. * */ - public MultiValueMap validate(javax.servlet.http.HttpServletRequest request) { + public MultiValueMap validate(HttpServletRequest request) { MultiValueMap errorMap = new LinkedMultiValueMap<>(); try { if (StringUtils.isBlank(comment.getBody())) { Index: lams_central/src/java/org/lamsfoundation/lams/security/DatabaseAuthenticator.java =================================================================== diff -u -r88da40288a02be7961fe7f2e5b6c1c6c78655d59 -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_central/src/java/org/lamsfoundation/lams/security/DatabaseAuthenticator.java (.../DatabaseAuthenticator.java) (revision 88da40288a02be7961fe7f2e5b6c1c6c78655d59) +++ lams_central/src/java/org/lamsfoundation/lams/security/DatabaseAuthenticator.java (.../DatabaseAuthenticator.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -30,7 +30,7 @@ import javax.naming.InitialContext; import javax.naming.NamingException; -import jakarta.sql.DataSource; +import javax.sql.DataSource; import org.apache.commons.lang3.StringUtils; import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.LogManager; Index: lams_central/src/java/org/lamsfoundation/lams/security/SimpleGroup.java =================================================================== diff -u -r7475d08afc280b5e2e5ddf04e8bf35e3166aaf80 -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_central/src/java/org/lamsfoundation/lams/security/SimpleGroup.java (.../SimpleGroup.java) (revision 7475d08afc280b5e2e5ddf04e8bf35e3166aaf80) +++ lams_central/src/java/org/lamsfoundation/lams/security/SimpleGroup.java (.../SimpleGroup.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -24,13 +24,12 @@ package org.lamsfoundation.lams.security; import java.security.Principal; -import java.security.acl.Group; import java.util.Collections; import java.util.Enumeration; import java.util.HashMap; import java.util.Map; -public class SimpleGroup extends SimplePrincipal implements Group { +public class SimpleGroup extends SimplePrincipal { private static final long serialVersionUID = -875843422197596410L; private Map members; @@ -47,7 +46,6 @@ * the principal to add to this group. * @return true if the member was successfully added, false if the principal was already a member. */ - @Override public boolean addMember(Principal user) { boolean isMember = members.containsKey(user); if (!isMember) { @@ -65,7 +63,6 @@ * @return true if the principal is a member of this group, false otherwise. */ - @Override public boolean isMember(Principal member) { return false; } @@ -76,7 +73,6 @@ * * @return an enumeration of the group members. */ - @Override public Enumeration members() { return Collections.enumeration(members.values()); } @@ -88,7 +84,6 @@ * the principal to remove from this group. * @return true if the principal was removed, or false if the principal was not a member. */ - @Override public boolean removeMember(Principal user) { Object prev = members.remove(user); return prev != null; Index: lams_central/src/java/org/lamsfoundation/lams/security/UniversalLoginModule.java =================================================================== diff -u -r88da40288a02be7961fe7f2e5b6c1c6c78655d59 -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_central/src/java/org/lamsfoundation/lams/security/UniversalLoginModule.java (.../UniversalLoginModule.java) (revision 88da40288a02be7961fe7f2e5b6c1c6c78655d59) +++ lams_central/src/java/org/lamsfoundation/lams/security/UniversalLoginModule.java (.../UniversalLoginModule.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -24,7 +24,6 @@ import java.io.IOException; import java.security.Principal; -import java.security.acl.Group; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; @@ -38,19 +37,20 @@ import javax.naming.InitialContext; import javax.naming.NamingException; -import jakarta.security.auth.Subject; -import jakarta.security.auth.callback.Callback; -import jakarta.security.auth.callback.CallbackHandler; -import jakarta.security.auth.callback.NameCallback; -import jakarta.security.auth.callback.PasswordCallback; -import jakarta.security.auth.callback.UnsupportedCallbackException; -import jakarta.security.auth.login.FailedLoginException; -import jakarta.security.auth.login.LoginException; -import jakarta.security.auth.spi.LoginModule; -import jakarta.sql.DataSource; +import javax.security.auth.Subject; +import javax.security.auth.callback.Callback; +import javax.security.auth.callback.CallbackHandler; +import javax.security.auth.callback.NameCallback; +import javax.security.auth.callback.PasswordCallback; +import javax.security.auth.callback.UnsupportedCallbackException; +import javax.security.auth.login.FailedLoginException; +import javax.security.auth.login.LoginException; +import javax.security.auth.spi.LoginModule; +import javax.sql.DataSource; import org.apache.commons.lang3.StringUtils; -import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; +import org.apache.logging.log4j.LogManager; import org.lamsfoundation.lams.themes.Theme; import org.lamsfoundation.lams.themes.dto.ThemeDTO; import org.lamsfoundation.lams.themes.service.IThemeService; @@ -114,9 +114,9 @@ */ Set principals = subject.getPrincipals(); principals.add(identity); - for (Group group : getRoleSets()) { + for (SimpleGroup group : getRoleSets()) { String name = group.getName(); - Group subjectGroup = createGroup(name, principals); + SimpleGroup subjectGroup = createGroup(name, principals); // Copy the group members to the Subject group Enumeration members = group.members(); while (members.hasMoreElements()) { @@ -160,11 +160,11 @@ * * @return A named Group from the principals set. */ - private Group createGroup(String name, Set principals) { - Group roles = null; + private SimpleGroup createGroup(String name, Set principals) { + SimpleGroup roles = null; for (Principal principal : principals) { - if (principal instanceof Group) { - Group grp = (Group) principal; + if (principal instanceof SimpleGroup) { + SimpleGroup grp = (SimpleGroup) principal; if (grp.getName().equals(name)) { roles = grp; break; @@ -266,8 +266,8 @@ } private boolean validatePassword(String inputPassword) { - WebApplicationContext ctx = WebApplicationContextUtils - .getWebApplicationContext(SessionManager.getServletContext()); + WebApplicationContext ctx = WebApplicationContextUtils.getWebApplicationContext( + SessionManager.getServletContext()); if (UniversalLoginModule.userManagementService == null) { UniversalLoginModule.userManagementService = (IUserManagementService) ctx.getBean("userManagementService"); UniversalLoginModule.themeService = (IThemeService) ctx.getBean("themeService"); @@ -307,8 +307,8 @@ Long internalAuthenticationTime = UniversalLoginModule.internalAuthenticationTokens.get(inputPassword); // internal authentication is valid for 10 seconds - isValid = (internalAuthenticationTime != null) && ((System.currentTimeMillis() - - internalAuthenticationTime) < UniversalLoginModule.INTERNAL_AUTHENTICATION_TIMEOUT); + isValid = (internalAuthenticationTime != null) && ((System.currentTimeMillis() - internalAuthenticationTime) + < UniversalLoginModule.INTERNAL_AUTHENTICATION_TIMEOUT); if (!isValid) { UniversalLoginModule.internalAuthenticationTokens.remove(inputPassword); } @@ -337,8 +337,8 @@ } if (UniversalLoginModule.log.isDebugEnabled()) { - UniversalLoginModule.log - .debug("LDAP provisioning is enabled, checking user " + userName + " against LDAP server."); + UniversalLoginModule.log.debug( + "LDAP provisioning is enabled, checking user " + userName + " against LDAP server."); } LDAPAuthenticator ldap = new LDAPAuthenticator(UniversalLoginModule.userManagementService); isValid = ldap.authenticate(userName, inputPassword); @@ -422,9 +422,9 @@ * * @return Group[] containing the sets of roles */ - private Group[] getRoleSets() throws LoginException { + private SimpleGroup[] getRoleSets() throws LoginException { String userName = getUserName(); - Map setsMap = new HashMap<>(); + Map setsMap = new HashMap<>(); Connection conn = null; PreparedStatement ps = null; ResultSet rs = null; @@ -450,7 +450,7 @@ if ((groupName == null) || (groupName.length() == 0)) { groupName = "Roles"; } - Group group = setsMap.get(groupName); + SimpleGroup group = setsMap.get(groupName); if (group == null) { group = new SimpleGroup(groupName); setsMap.put(groupName, group); @@ -516,7 +516,7 @@ } } - Group[] roleSets = new Group[setsMap.size()]; + SimpleGroup[] roleSets = new SimpleGroup[setsMap.size()]; setsMap.values().toArray(roleSets); return roleSets; } Index: lams_central/src/java/org/lamsfoundation/lams/web/JlatexmathServlet.java =================================================================== diff -u -r88da40288a02be7961fe7f2e5b6c1c6c78655d59 -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_central/src/java/org/lamsfoundation/lams/web/JlatexmathServlet.java (.../JlatexmathServlet.java) (revision 88da40288a02be7961fe7f2e5b6c1c6c78655d59) +++ lams_central/src/java/org/lamsfoundation/lams/web/JlatexmathServlet.java (.../JlatexmathServlet.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -33,14 +33,14 @@ import jakarta.servlet.http.HttpServlet; import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; -import jakarta.swing.JLabel; import org.apache.batik.dom.GenericDOMImplementation; import org.apache.batik.svggen.SVGGeneratorContext; import org.apache.batik.svggen.SVGGraphics2D; import org.apache.commons.io.IOUtils; import org.apache.commons.lang3.StringUtils; -import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; +import org.apache.logging.log4j.LogManager; import org.lamsfoundation.lams.util.WebUtil; import org.scilab.forge.jlatexmath.DefaultTeXFont; import org.scilab.forge.jlatexmath.ParseException; @@ -52,9 +52,11 @@ import org.w3c.dom.DOMImplementation; import org.w3c.dom.Document; +import javax.swing.*; + /** * Servlet produces LaTex images based on the provided formulas. It's used by CKEditor's JLaTeXMath plugin. - * + * * @author Andrey Balan */ public class JlatexmathServlet extends HttpServlet { @@ -86,32 +88,32 @@ return; } TeXIcon icon = formula.createTeXIcon(TeXConstants.STYLE_DISPLAY, fontSize); - + //produce SVG image and stream it out to ServletOutputStream - DOMImplementation domImpl = GenericDOMImplementation.getDOMImplementation(); - String svgNS = "http://www.w3.org/2000/svg"; - Document document = domImpl.createDocument(svgNS, "svg", null); - SVGGeneratorContext ctx = SVGGeneratorContext.createDefault(document); + DOMImplementation domImpl = GenericDOMImplementation.getDOMImplementation(); + String svgNS = "http://www.w3.org/2000/svg"; + Document document = domImpl.createDocument(svgNS, "svg", null); + SVGGeneratorContext ctx = SVGGeneratorContext.createDefault(document); - final boolean FONT_AS_SHAPES = true; - SVGGraphics2D g2 = new SVGGraphics2D(ctx, FONT_AS_SHAPES); + final boolean FONT_AS_SHAPES = true; + SVGGraphics2D g2 = new SVGGraphics2D(ctx, FONT_AS_SHAPES); - DefaultTeXFont.registerAlphabet(new CyrillicRegistration()); - DefaultTeXFont.registerAlphabet(new GreekRegistration()); + DefaultTeXFont.registerAlphabet(new CyrillicRegistration()); + DefaultTeXFont.registerAlphabet(new GreekRegistration()); - g2.setSVGCanvasSize(new Dimension(icon.getIconWidth(), icon.getIconHeight())); + g2.setSVGCanvasSize(new Dimension(icon.getIconWidth(), icon.getIconHeight())); - JLabel jl = new JLabel(); - jl.setForeground(new Color(0, 0, 0)); - icon.paintIcon(jl, g2, 0, 0); + JLabel jl = new JLabel(); + jl.setForeground(new Color(0, 0, 0)); + icon.paintIcon(jl, g2, 0, 0); - ServletOutputStream out = response.getOutputStream(); - response.setContentType("image/svg+xml"); - Writer writer = new OutputStreamWriter(out, "UTF-8"); - final boolean USE_CSS = true; - g2.stream(writer, USE_CSS); - out.flush(); - IOUtils.closeQuietly(out); + ServletOutputStream out = response.getOutputStream(); + response.setContentType("image/svg+xml"); + Writer writer = new OutputStreamWriter(out, "UTF-8"); + final boolean USE_CSS = true; + g2.stream(writer, USE_CSS); + out.flush(); + IOUtils.closeQuietly(out); } @Override Index: lams_central/src/java/org/lamsfoundation/lams/web/RuntimeStatsServlet.java =================================================================== diff -u -r88da40288a02be7961fe7f2e5b6c1c6c78655d59 -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_central/src/java/org/lamsfoundation/lams/web/RuntimeStatsServlet.java (.../RuntimeStatsServlet.java) (revision 88da40288a02be7961fe7f2e5b6c1c6c78655d59) +++ lams_central/src/java/org/lamsfoundation/lams/web/RuntimeStatsServlet.java (.../RuntimeStatsServlet.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -29,8 +29,8 @@ import java.lang.management.ThreadMXBean; import java.util.Locale; -import jakarta.management.MBeanServer; -import jakarta.management.ObjectName; +import javax.management.MBeanServer; +import javax.management.ObjectName; import jakarta.servlet.ServletException; import jakarta.servlet.http.HttpServlet; import jakarta.servlet.http.HttpServletRequest; Index: lams_common/lams_common.eml =================================================================== diff -u -r1b6b84b218055aab82004edfbe5f545b2c0eee0b -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_common/lams_common.eml (.../lams_common.eml) (revision 1b6b84b218055aab82004edfbe5f545b2c0eee0b) +++ lams_common/lams_common.eml (.../lams_common.eml) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -10,7 +10,7 @@ - + Index: lams_learning/.classpath =================================================================== diff -u -r1b6b84b218055aab82004edfbe5f545b2c0eee0b -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_learning/.classpath (.../.classpath) (revision 1b6b84b218055aab82004edfbe5f545b2c0eee0b) +++ lams_learning/.classpath (.../.classpath) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -15,6 +15,7 @@ + Index: lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/web/EmailNotificationsController.java =================================================================== diff -u -r88da40288a02be7961fe7f2e5b6c1c6c78655d59 -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/web/EmailNotificationsController.java (.../EmailNotificationsController.java) (revision 88da40288a02be7961fe7f2e5b6c1c6c78655d59) +++ lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/web/EmailNotificationsController.java (.../EmailNotificationsController.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -41,7 +41,8 @@ import jakarta.servlet.http.HttpSession; import org.apache.commons.lang3.StringUtils; -import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; +import org.apache.logging.log4j.LogManager; import org.lamsfoundation.lams.events.EmailNotificationArchive; import org.lamsfoundation.lams.events.IEventNotificationService; import org.lamsfoundation.lams.index.IndexLessonBean; @@ -177,8 +178,8 @@ boolean isGroupMonitor = securityService.hasOrgRole(orgId, getCurrentUser().getUserID(), new String[] { Role.GROUP_MANAGER }, "show course email notifications"); Integer userRole = isGroupMonitor ? Role.ROLE_GROUP_MANAGER : Role.ROLE_MONITOR; - Map staffMap = lessonService - .getLessonsByOrgAndUserWithCompletedFlag(getCurrentUser().getUserID(), orgId, userRole); + Map staffMap = lessonService.getLessonsByOrgAndUserWithCompletedFlag( + getCurrentUser().getUserID(), orgId, userRole); // Already sorted, just double check that it does not contain finished or removed lessons // This call should not be returning REMOVED lessons anyway so test for finished ones. @@ -225,8 +226,8 @@ } } - Set triggerKeys = scheduler - .getTriggerKeys(GroupMatcher.triggerGroupEquals(Scheduler.DEFAULT_GROUP)); + Set triggerKeys = scheduler.getTriggerKeys( + GroupMatcher.triggerGroupEquals(Scheduler.DEFAULT_GROUP)); for (TriggerKey triggerKey : triggerKeys) { String triggerName = triggerKey.getName(); if (triggerName.startsWith(EmailNotificationsController.TRIGGER_PREFIX_NAME)) { @@ -293,8 +294,8 @@ response.sendError(HttpServletResponse.SC_FORBIDDEN, "The user is not a monitor in the organisation"); return null; } - List notifications = monitoringService - .getArchivedEmailNotifications(organisationId); + List notifications = monitoringService.getArchivedEmailNotifications( + organisationId); request.setAttribute("notifications", notifications); } @@ -311,8 +312,8 @@ public String getArchivedRecipients(HttpServletRequest request, HttpServletResponse response) throws IOException { Long emailNotificationUid = WebUtil.readLongParam(request, "emailNotificationUid"); - EmailNotificationArchive notification = (EmailNotificationArchive) userManagementService - .findById(EmailNotificationArchive.class, emailNotificationUid); + EmailNotificationArchive notification = (EmailNotificationArchive) userManagementService.findById( + EmailNotificationArchive.class, emailNotificationUid); Long lessonId = notification.getLessonId(); Integer organisationId = notification.getOrganisationId(); @@ -397,8 +398,8 @@ } if (error == null) { - Set triggerKeys = scheduler - .getTriggerKeys(GroupMatcher.triggerGroupEquals(Scheduler.DEFAULT_GROUP)); + Set triggerKeys = scheduler.getTriggerKeys( + GroupMatcher.triggerGroupEquals(Scheduler.DEFAULT_GROUP)); for (TriggerKey triggerKey : triggerKeys) { String triggerName = triggerKey.getName(); if (triggerName.equals(inputTriggerName)) { @@ -409,8 +410,8 @@ JobDetail jobDetail = scheduler.getJobDetail(trigger.getJobKey()); JobDataMap jobDataMap = jobDetail.getJobDataMap(); logEventService.logEvent(LogEvent.TYPE_NOTIFICATION, userId, null, lessonId, null, - "Deleting unsent scheduled notification " + jobKey + " " - + jobDataMap.getString("emailBody")); + "Deleting unsent scheduled notification " + jobKey + " " + jobDataMap.getString( + "emailBody")); scheduler.deleteJob(jobKey); @@ -440,8 +441,8 @@ throws IOException { Long emailNotificationUid = WebUtil.readLongParam(request, "emailNotificationUid"); - EmailNotificationArchive notification = (EmailNotificationArchive) userManagementService - .findById(EmailNotificationArchive.class, emailNotificationUid); + EmailNotificationArchive notification = (EmailNotificationArchive) userManagementService.findById( + EmailNotificationArchive.class, emailNotificationUid); Long lessonId = notification.getLessonId(); Integer organisationId = notification.getOrganisationId(); @@ -462,8 +463,8 @@ } List sheets = monitoringService.exportArchivedEmailNotification(emailNotificationUid); - String fileName = "email_notification_" - + FileUtil.EXPORT_TO_SPREADSHEET_TITLE_DATE_FORMAT.format(notification.getSentOn()) + ".xlsx"; + String fileName = "email_notification_" + FileUtil.EXPORT_TO_SPREADSHEET_TITLE_DATE_FORMAT.format( + notification.getSentOn()) + ".xlsx"; fileName = FileUtil.encodeFilenameForDownload(request, fileName); response.setContentType("application/x-download"); @@ -499,8 +500,8 @@ boolean isHtmlFormat = false; isSuccessfullySent &= eventNotificationService.sendMessage(null, userId, IEventNotificationService.DELIVERY_METHOD_MAIL, monitoringService.getMessageService() - .getMessage("event.emailnotifications.email.subject", new Object[] {}), - emailBody, isHtmlFormat); + .getMessage("event.emailnotifications.email.subject", new Object[] {}), emailBody, + isHtmlFormat); } monitoringService.archiveEmailNotification( WebUtil.readIntParam(request, AttributeNames.PARAM_ORGANISATION_ID, true), @@ -554,8 +555,8 @@ } } catch (SchedulerException e) { - EmailNotificationsController.log - .error("Error occurred at " + "[emailScheduleMessage]- fail to email scheduling", e); + EmailNotificationsController.log.error( + "Error occurred at " + "[emailScheduleMessage]- fail to email scheduling", e); } } @@ -628,7 +629,7 @@ * * @param request * @param map - * specified map + * specified map */ private void copySearchParametersFromRequestToMap(HttpServletRequest request, Map map) { int searchType = WebUtil.readIntParam(request, "searchType"); @@ -643,7 +644,6 @@ case MonitoringConstants.LESSON_TYPE_HAVENT_REACHED_PARTICULAR_ACTIVITY: case MonitoringConstants.LESSON_TYPE_LESS_THAN_X_DAYS_TO_DEADLINE: Long lessonId = WebUtil.readLongParam(request, AttributeNames.PARAM_LESSON_ID); - Assert.notNull(lessonId); map.put(AttributeNames.PARAM_LESSON_ID, lessonId); break; @@ -653,34 +653,29 @@ case MonitoringConstants.COURSE_TYPE_HAVE_FINISHED_THESE_LESSONS: case MonitoringConstants.COURSE_TYPE_HAVENT_FINISHED_THESE_LESSONS: Integer organisationId = WebUtil.readIntParam(request, AttributeNames.PARAM_ORGANISATION_ID); - Assert.notNull(organisationId); map.put(AttributeNames.PARAM_ORGANISATION_ID, organisationId); break; } switch (searchType) { case MonitoringConstants.LESSON_TYPE_HAVENT_REACHED_PARTICULAR_ACTIVITY: Long activityId = WebUtil.readLongParam(request, AttributeNames.PARAM_ACTIVITY_ID); - Assert.notNull(activityId); map.put(AttributeNames.PARAM_ACTIVITY_ID, activityId); break; case MonitoringConstants.LESSON_TYPE_LESS_THAN_X_DAYS_TO_DEADLINE: Integer xDaystoFinish = WebUtil.readIntParam(request, "daysToDeadline"); - Assert.notNull(xDaystoFinish); map.put("daysToDeadline", xDaystoFinish); break; case MonitoringConstants.COURSE_TYPE_HAVE_FINISHED_PARTICULAR_LESSON: case MonitoringConstants.COURSE_TYPE_HAVENT_STARTED_PARTICULAR_LESSON: Long lessonId = WebUtil.readLongParam(request, AttributeNames.PARAM_LESSON_ID); - Assert.notNull(lessonId); map.put(AttributeNames.PARAM_LESSON_ID, lessonId); break; case MonitoringConstants.COURSE_TYPE_HAVE_FINISHED_THESE_LESSONS: case MonitoringConstants.COURSE_TYPE_HAVENT_FINISHED_THESE_LESSONS: String[] lessonIds = request.getParameterValues(AttributeNames.PARAM_LESSON_ID); - Assert.notNull(lessonIds); map.put("lessonIDs", lessonIds); break; } Index: lams_tool_assessment/.classpath =================================================================== diff -u -r1b6b84b218055aab82004edfbe5f545b2c0eee0b -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_assessment/.classpath (.../.classpath) (revision 1b6b84b218055aab82004edfbe5f545b2c0eee0b) +++ lams_tool_assessment/.classpath (.../.classpath) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -18,6 +18,7 @@ + Index: lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/model/AssessmentQuestionResult.java =================================================================== diff -u -ra1064a52a646aa043ea1fe371726537fd305c5de -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/model/AssessmentQuestionResult.java (.../AssessmentQuestionResult.java) (revision a1064a52a646aa043ea1fe371726537fd305c5de) +++ lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/model/AssessmentQuestionResult.java (.../AssessmentQuestionResult.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -208,7 +208,7 @@ } public String getJustificationEscaped() { - return justification == null ? null : StringEscapeUtils.escapeJavaScript(justification.replace("\r\n", "
")); + return justification == null ? null : StringEscapeUtils.escapeEcmaScript(justification.replace("\r\n", "
")); } public User getMarkedBy() { Index: lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/util/AssessmentEscapeUtils.java =================================================================== diff -u -ra1064a52a646aa043ea1fe371726537fd305c5de -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/util/AssessmentEscapeUtils.java (.../AssessmentEscapeUtils.java) (revision a1064a52a646aa043ea1fe371726537fd305c5de) +++ lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/util/AssessmentEscapeUtils.java (.../AssessmentEscapeUtils.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -88,7 +88,7 @@ private static void escapeQuotesInQuestionResult(AssessmentQuestionResult questionResult) { String answer = questionResult.getAnswer(); if (answer != null) { - String answerEscaped = StringEscapeUtils.escapeJavaScript(answer); + String answerEscaped = StringEscapeUtils.escapeEcmaScript(answer); questionResult.setanswerEscaped(answerEscaped); } @@ -101,20 +101,20 @@ private static void escapeQuotes(QuestionDTO questionDto) { String title = questionDto.getTitle(); if (title != null) { - String titleEscaped = StringEscapeUtils.escapeJavaScript(title); + String titleEscaped = StringEscapeUtils.escapeEcmaScript(title); questionDto.setTitleEscaped(titleEscaped); } for (OptionDTO optionDto : questionDto.getOptionDtos()) { String matchingPair = optionDto.getMatchingPair(); if (matchingPair != null) { - String matchingPairEscaped = StringEscapeUtils.escapeJavaScript(matchingPair); + String matchingPairEscaped = StringEscapeUtils.escapeEcmaScript(matchingPair); optionDto.setMatchingPairEscaped(matchingPairEscaped); } String name = optionDto.getName(); if (name != null) { - String nameEscaped = StringEscapeUtils.escapeJavaScript(name); + String nameEscaped = StringEscapeUtils.escapeEcmaScript(name); optionDto.setNameEscaped(nameEscaped); } } Index: lams_tool_chat/.classpath =================================================================== diff -u -r1b6b84b218055aab82004edfbe5f545b2c0eee0b -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_chat/.classpath (.../.classpath) (revision 1b6b84b218055aab82004edfbe5f545b2c0eee0b) +++ lams_tool_chat/.classpath (.../.classpath) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -16,6 +16,7 @@
+ Index: lams_tool_chat/src/java/org/lamsfoundation/lams/tool/chat/web/controller/AuthoringChatConditionController.java =================================================================== diff -u -rc11264f3271f40971838dd015db6b5107f3bc55e -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_chat/src/java/org/lamsfoundation/lams/tool/chat/web/controller/AuthoringChatConditionController.java (.../AuthoringChatConditionController.java) (revision c11264f3271f40971838dd015db6b5107f3bc55e) +++ lams_tool_chat/src/java/org/lamsfoundation/lams/tool/chat/web/controller/AuthoringChatConditionController.java (.../AuthoringChatConditionController.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -88,7 +88,7 @@ String sessionMapID = chatConditionForm.getSessionMapID(); SessionMap sessionMap = (SessionMap) request.getSession().getAttribute(sessionMapID); - int orderId = NumberUtils.stringToInt(request.getParameter(ChatConstants.PARAM_ORDER_ID), -1); + int orderId = NumberUtils.toInt(request.getParameter(ChatConstants.PARAM_ORDER_ID), -1); ChatCondition condition = null; if (orderId != -1) { SortedSet conditionSet = getChatConditionSet(sessionMap); @@ -145,7 +145,7 @@ String sessionMapID = WebUtil.readStrParam(request, ChatConstants.ATTR_SESSION_MAP_ID); SessionMap sessionMap = (SessionMap) request.getSession().getAttribute(sessionMapID); - int orderId = NumberUtils.stringToInt(request.getParameter(ChatConstants.PARAM_ORDER_ID), -1); + int orderId = NumberUtils.toInt(request.getParameter(ChatConstants.PARAM_ORDER_ID), -1); if (orderId != -1) { SortedSet conditionSet = getChatConditionSet(sessionMap); List conditionList = new ArrayList<>(conditionSet); @@ -190,7 +190,7 @@ String sessionMapID = WebUtil.readStrParam(request, ChatConstants.ATTR_SESSION_MAP_ID); SessionMap sessionMap = (SessionMap) request.getSession().getAttribute(sessionMapID); - int orderId = NumberUtils.stringToInt(request.getParameter(ChatConstants.PARAM_ORDER_ID), -1); + int orderId = NumberUtils.toInt(request.getParameter(ChatConstants.PARAM_ORDER_ID), -1); if (orderId != -1) { SortedSet conditionSet = getChatConditionSet(sessionMap); List conditionList = new ArrayList<>(conditionSet); Index: lams_tool_daco/src/java/org/lamsfoundation/lams/tool/daco/dao/hibernate/DacoSessionDAOHibernate.java =================================================================== diff -u -r88da40288a02be7961fe7f2e5b6c1c6c78655d59 -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_daco/src/java/org/lamsfoundation/lams/tool/daco/dao/hibernate/DacoSessionDAOHibernate.java (.../DacoSessionDAOHibernate.java) (revision 88da40288a02be7961fe7f2e5b6c1c6c78655d59) +++ lams_tool_daco/src/java/org/lamsfoundation/lams/tool/daco/dao/hibernate/DacoSessionDAOHibernate.java (.../DacoSessionDAOHibernate.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -28,8 +28,6 @@ import org.hibernate.query.NativeQuery; import org.hibernate.transform.Transformers; import org.hibernate.type.StandardBasicTypes; -import org.hibernate.type.LongType; -import org.hibernate.type.StandardBasicTypes; import org.lamsfoundation.lams.dao.hibernate.LAMSBaseDAO; import org.lamsfoundation.lams.tool.daco.dao.DacoSessionDAO; import org.lamsfoundation.lams.tool.daco.dto.MonitoringSessionStatsDTO; @@ -77,7 +75,7 @@ public List statistics(Long toolContentUid) { NativeQuery query = getSession() .createNativeQuery(DacoSessionDAOHibernate.CALC_SESSION_STATS); - query.addScalar("sessionId", LongType.INSTANCE).addScalar("sessionName", StandardBasicTypes.STRING) + query.addScalar("sessionId", StandardBasicTypes.LONG).addScalar("sessionName", StandardBasicTypes.STRING) .addScalar("numberLearners", StandardBasicTypes.INTEGER).addScalar("totalRecordCount", StandardBasicTypes.INTEGER) .setParameter("contentUid", toolContentUid) .setResultTransformer(Transformers.aliasToBean(MonitoringSessionStatsDTO.class)); Index: lams_tool_daco/src/java/org/lamsfoundation/lams/tool/daco/dbupdates/Patch20161122.java =================================================================== diff -u -rc11264f3271f40971838dd015db6b5107f3bc55e -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_daco/src/java/org/lamsfoundation/lams/tool/daco/dbupdates/Patch20161122.java (.../Patch20161122.java) (revision c11264f3271f40971838dd015db6b5107f3bc55e) +++ lams_tool_daco/src/java/org/lamsfoundation/lams/tool/daco/dbupdates/Patch20161122.java (.../Patch20161122.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -63,8 +63,8 @@ // read dates one by one and convert them to new format PreparedStatement readQuery = conn.prepareStatement("SELECT a.uid, a.answer FROM tl_ladaco10_answers AS a " + "JOIN tl_ladaco10_questions AS q ON a.question_uid = q.uid WHERE q.question_type = 4"); - PreparedStatement updateQuery = conn - .prepareStatement("UPDATE tl_ladaco10_answers SET answer=? WHERE uid=?"); + PreparedStatement updateQuery = conn.prepareStatement( + "UPDATE tl_ladaco10_answers SET answer=? WHERE uid=?"); if (readQuery.execute()) { ResultSet rs = readQuery.getResultSet(); while (rs.next()) { @@ -75,7 +75,7 @@ Date date = OLD_DATE_FORMAT.parse(answer); String newFormat = DacoConstants.DEFAULT_DATE_FORMAT.format(date); updateQuery.setString(1, newFormat); - updateQuery.setParameter(2, rs.getLong(1)); + updateQuery.setLong(2, rs.getLong(1)); updateQuery.executeUpdate(); } } Index: lams_tool_daco/src/java/org/lamsfoundation/lams/tool/daco/web/controller/AuthoringController.java =================================================================== diff -u -rc11264f3271f40971838dd015db6b5107f3bc55e -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_daco/src/java/org/lamsfoundation/lams/tool/daco/web/controller/AuthoringController.java (.../AuthoringController.java) (revision c11264f3271f40971838dd015db6b5107f3bc55e) +++ lams_tool_daco/src/java/org/lamsfoundation/lams/tool/daco/web/controller/AuthoringController.java (.../AuthoringController.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -105,7 +105,7 @@ String sessionMapID = WebUtil.readStrParam(request, DacoConstants.ATTR_SESSION_MAP_ID); SessionMap sessionMap = (SessionMap) request.getSession() .getAttribute(sessionMapID); - int questionIndex = NumberUtils.stringToInt(request.getParameter(DacoConstants.PARAM_QUESTION_INDEX), -1); + int questionIndex = NumberUtils.toInt(request.getParameter(DacoConstants.PARAM_QUESTION_INDEX), -1); DacoQuestion question = null; if (questionIndex != -1) { SortedSet questionSet = getQuestionList(sessionMap); @@ -139,7 +139,7 @@ .getAttribute(questionForm.getSessionMapID()); // check whether it is "edit(old question)" or "add(new question)" SortedSet questionSet = getQuestionList(sessionMap); - int questionIndex = NumberUtils.stringToInt(questionForm.getQuestionIndex(), -1); + int questionIndex = NumberUtils.toInt(questionForm.getQuestionIndex(), -1); DacoQuestion question = null; if (questionIndex == -1) { // add question = new DacoQuestion(); @@ -267,7 +267,7 @@ } } - int count = NumberUtils.stringToInt(paramMap.get(DacoConstants.ANSWER_OPTION_COUNT)); + int count = NumberUtils.toInt(paramMap.get(DacoConstants.ANSWER_OPTION_COUNT)); List answerOptionList = new ArrayList<>(); for (int index = 1; index <= count; index++) { String item = paramMap.get(DacoConstants.ANSWER_OPTION_DESC_PREFIX + index); @@ -384,7 +384,7 @@ */ @RequestMapping("/newAnswerOption") protected String newAnswerOption(HttpServletRequest request) { - int count = NumberUtils.stringToInt(request.getParameter(DacoConstants.ANSWER_OPTION_COUNT), 0); + int count = NumberUtils.toInt(request.getParameter(DacoConstants.ANSWER_OPTION_COUNT), 0); List answerOptionList = new ArrayList(++count); for (int index = 1; index <= count; index++) { @@ -411,7 +411,7 @@ String sessionMapID = WebUtil.readStrParam(request, DacoConstants.ATTR_SESSION_MAP_ID); questionForm.setSessionMapID(sessionMapID); - short type = (short) NumberUtils.stringToInt(request.getParameter(DacoConstants.QUESTION_TYPE)); + short type = (short) NumberUtils.toInt(request.getParameter(DacoConstants.QUESTION_TYPE)); if (type == DacoConstants.QUESTION_TYPE_RADIO || type == DacoConstants.QUESTION_TYPE_DROPDOWN || type == DacoConstants.QUESTION_TYPE_CHECKBOX) { List answerOptionList = new ArrayList(DacoConstants.INIT_ANSWER_OPTION_COUNT); @@ -495,8 +495,8 @@ */ @RequestMapping("/removeAnswerOption") protected String removeAnswerOption(HttpServletRequest request) { - int count = NumberUtils.stringToInt(request.getParameter(DacoConstants.ANSWER_OPTION_COUNT), 0); - int removeIndex = NumberUtils.stringToInt(request.getParameter(DacoConstants.PARAM_ANSWER_OPTION_INDEX), -1); + int count = NumberUtils.toInt(request.getParameter(DacoConstants.ANSWER_OPTION_COUNT), 0); + int removeIndex = NumberUtils.toInt(request.getParameter(DacoConstants.PARAM_ANSWER_OPTION_INDEX), -1); List answerOptionList = new ArrayList(count - 1); for (int index = 1; index <= count; index++) { if (index != removeIndex) { @@ -527,7 +527,7 @@ SessionMap sessionMap = (SessionMap) request.getSession() .getAttribute(sessionMapID); - int questionIndex = NumberUtils.stringToInt(request.getParameter(DacoConstants.PARAM_QUESTION_INDEX), -1); + int questionIndex = NumberUtils.toInt(request.getParameter(DacoConstants.PARAM_QUESTION_INDEX), -1); if (questionIndex != -1) { SortedSet questionSet = getQuestionList(sessionMap); List questionList = new ArrayList<>(questionSet); Index: lams_tool_daco/src/java/org/lamsfoundation/lams/tool/daco/web/controller/LearningController.java =================================================================== diff -u -r88da40288a02be7961fe7f2e5b6c1c6c78655d59 -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_daco/src/java/org/lamsfoundation/lams/tool/daco/web/controller/LearningController.java (.../LearningController.java) (revision 88da40288a02be7961fe7f2e5b6c1c6c78655d59) +++ lams_tool_daco/src/java/org/lamsfoundation/lams/tool/daco/web/controller/LearningController.java (.../LearningController.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -808,7 +808,7 @@ protected String editRecord(@ModelAttribute("recordForm") RecordForm recordForm, HttpServletRequest request) { String sessionMapID = WebUtil.readStrParam(request, DacoConstants.ATTR_SESSION_MAP_ID); SessionMap sessionMap = (SessionMap) request.getSession().getAttribute(sessionMapID); - int recordIndex = NumberUtils.stringToInt(request.getParameter(DacoConstants.PARAM_RECORD_INDEX), -1); + int recordIndex = NumberUtils.toInt(request.getParameter(DacoConstants.PARAM_RECORD_INDEX), -1); List> records = (List>) sessionMap.get(DacoConstants.ATTR_RECORD_LIST); if (recordIndex != -1 && records != null && records.size() >= recordIndex) { List record = records.get(recordIndex - 1); @@ -875,7 +875,7 @@ protected String removeRecord(HttpServletRequest request) { String sessionMapID = WebUtil.readStrParam(request, DacoConstants.ATTR_SESSION_MAP_ID); SessionMap sessionMap = (SessionMap) request.getSession().getAttribute(sessionMapID); - int recordIndex = NumberUtils.stringToInt(request.getParameter(DacoConstants.PARAM_RECORD_INDEX), -1); + int recordIndex = NumberUtils.toInt(request.getParameter(DacoConstants.PARAM_RECORD_INDEX), -1); List> records = (List>) sessionMap.get(DacoConstants.ATTR_RECORD_LIST); if (recordIndex != -1 && records != null && records.size() >= recordIndex) { List record = records.get(recordIndex - 1); Index: lams_tool_deploy/src/java/org/lamsfoundation/lams/tool/deploy/RemoveToolContextClasspathTask.java =================================================================== diff -u -ra1064a52a646aa043ea1fe371726537fd305c5de -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_deploy/src/java/org/lamsfoundation/lams/tool/deploy/RemoveToolContextClasspathTask.java (.../RemoveToolContextClasspathTask.java) (revision a1064a52a646aa043ea1fe371726537fd305c5de) +++ lams_tool_deploy/src/java/org/lamsfoundation/lams/tool/deploy/RemoveToolContextClasspathTask.java (.../RemoveToolContextClasspathTask.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -21,13 +21,12 @@ * **************************************************************** */ - package org.lamsfoundation.lams.tool.deploy; import java.util.jar.Attributes; import java.util.jar.Manifest; -import org.apache.commons.lang3.StringUtils; +import org.apache.commons.lang.StringUtils; import org.w3c.dom.Document; import org.w3c.dom.Node; import org.w3c.dom.NodeList; @@ -41,9 +40,9 @@ public class RemoveToolContextClasspathTask extends UpdateWarTask { /** - * Remove the tool's applicationContext entry from the param-value node of the context-param entry. - * Should find and remove all the matching entries (should it somehow have have got in there m - * + * Remove the tool's applicationContext entry from the param-value node of the context-param entry. Should find and + * remove all the matching entries (should it somehow have have got in there m + * * @param doc * @param children * @param childNode Index: lams_tool_deploy/src/java/org/lamsfoundation/lams/tool/deploy/ToolDBActivateTask.java =================================================================== diff -u -r129d0eb39f81fcdb4ef6e3b5ec15c1c94d9324b3 -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_deploy/src/java/org/lamsfoundation/lams/tool/deploy/ToolDBActivateTask.java (.../ToolDBActivateTask.java) (revision 129d0eb39f81fcdb4ef6e3b5ec15c1c94d9324b3) +++ lams_tool_deploy/src/java/org/lamsfoundation/lams/tool/deploy/ToolDBActivateTask.java (.../ToolDBActivateTask.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -109,7 +109,7 @@ PreparedStatement stmt = null; try { stmt = conn.prepareStatement("UPDATE lams_tool SET valid_flag = 1 WHERE tool_id = ?"); - stmt.setParameter(1, newToolId); + stmt.setLong(1, newToolId); stmt.execute(); } finally { DbUtils.closeQuietly(stmt); @@ -122,7 +122,7 @@ try { stmt = conn .prepareStatement("UPDATE lams_learning_library SET valid_flag = 1 WHERE learning_library_id = ?"); - stmt.setParameter(1, libraryId); + stmt.setLong(1, libraryId); stmt.execute(); } finally { DbUtils.closeQuietly(stmt); Index: lams_tool_deploy/src/java/org/lamsfoundation/lams/tool/deploy/ToolDBDeployTask.java =================================================================== diff -u -r129d0eb39f81fcdb4ef6e3b5ec15c1c94d9324b3 -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_deploy/src/java/org/lamsfoundation/lams/tool/deploy/ToolDBDeployTask.java (.../ToolDBDeployTask.java) (revision 129d0eb39f81fcdb4ef6e3b5ec15c1c94d9324b3) +++ lams_tool_deploy/src/java/org/lamsfoundation/lams/tool/deploy/ToolDBDeployTask.java (.../ToolDBDeployTask.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -21,7 +21,6 @@ * **************************************************************** */ - package org.lamsfoundation.lams.tool.deploy; import java.io.File; @@ -35,9 +34,9 @@ import org.apache.commons.dbutils.DbUtils; /** - * Task creates all the necessary db items for the tool, but leaves them - * inactive (use ToolDBActivateTask to activate the tool). - * + * Task creates all the necessary db items for the tool, but leaves them inactive (use ToolDBActivateTask to activate + * the tool). + * * @author chris */ public class ToolDBDeployTask extends DBTask { @@ -84,48 +83,42 @@ /** * Setter for property toolInsertFile. - * + * * @param toolInsertFile - * New value of property toolInsertFile. + * New value of property toolInsertFile. */ - public void setToolInsertScriptPath(String toolInsertScriptPath) + public void setToolInsertScriptPath(String toolInsertScriptPath) { - { - this.toolInsertScriptPath = toolInsertScriptPath; } /** * Setter for property toolLibraryInsertFile. - * + * * @param toolLibraryInsertFile - * New value of property toolLibraryInsertFile. + * New value of property toolLibraryInsertFile. */ - public void setToolLibraryInsertScriptPath(String toolLibraryInsertScriptPath) + public void setToolLibraryInsertScriptPath(String toolLibraryInsertScriptPath) { - { - this.toolLibraryInsertScriptPath = toolLibraryInsertScriptPath; } /** * Setter for property toolTablesCreatScript. - * + * * @param toolTablesCreatScript - * New value of property toolTablesCreatScript. + * New value of property toolTablesCreatScript. */ - public void setToolTablesScriptPath(String toolTablesScriptPath) + public void setToolTablesScriptPath(String toolTablesScriptPath) { - { - this.toolTablesScriptPath = toolTablesScriptPath; } /** * Setter for property toolDBVersionScriptPath. - * + * * @param toolDBVersionScriptPath - * New value of property toolDBVersionScriptPath. + * New value of property toolDBVersionScriptPath. */ public void setToolDBVersionScriptPath(String toolDBVersionScriptPath) { this.toolDBVersionScriptPath = toolDBVersionScriptPath; @@ -216,7 +209,7 @@ /** * Getter for property toolId. - * + * * @return Value of property toolId. */ public long getToolId() { @@ -226,7 +219,7 @@ /** * Getter for property learningLibraryId. - * + * * @return Value of property learningLibraryId. */ public long getLearningLibraryId() { @@ -236,14 +229,12 @@ /** * Setter for property toolActivityInsertScript. - * + * * @param toolActivityInsertScript - * New value of property toolActivityInsertScript. + * New value of property toolActivityInsertScript. */ - public void setToolActivityInsertScriptPath(String toolActivityInsertScriptPath) + public void setToolActivityInsertScriptPath(String toolActivityInsertScriptPath) { - { - this.toolActivityInsertScriptPath = toolActivityInsertScriptPath; } @@ -252,7 +243,7 @@ ResultSet results = null; try { stmt = conn.prepareStatement("INSERT INTO lams_tool_content (tool_id) VALUES (?)"); - stmt.setParameter(1, newToolId); + stmt.setLong(1, newToolId); stmt.execute(); stmt = conn.prepareStatement("SELECT LAST_INSERT_ID() FROM lams_tool_content"); results = stmt.executeQuery(); @@ -275,8 +266,8 @@ PreparedStatement stmt = null; try { stmt = conn.prepareStatement("UPDATE lams_tool SET default_tool_content_id = ? WHERE tool_id = ?"); - stmt.setParameter(1, defaultContentId); - stmt.setParameter(2, toolId); + stmt.setLong(1, defaultContentId); + stmt.setLong(2, toolId); stmt.execute(); } catch (SQLException sqlex) { @@ -290,8 +281,8 @@ PreparedStatement stmt = null; try { stmt = conn.prepareStatement("UPDATE lams_tool SET learning_library_id = ? WHERE tool_id = ?"); - stmt.setParameter(1, libraryId); - stmt.setParameter(2, newToolId); + stmt.setLong(1, libraryId); + stmt.setLong(2, newToolId); stmt.execute(); } catch (SQLException sqlex) { @@ -350,7 +341,7 @@ /** * Getter for property defaultContentId. - * + * * @return Value of property defaultContentId. */ public long getDefaultContentId() { Index: lams_tool_deploy/src/java/org/lamsfoundation/lams/tool/deploy/libraryActivity/ActivityDBLanguageUpdateTask.java =================================================================== diff -u -r129d0eb39f81fcdb4ef6e3b5ec15c1c94d9324b3 -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_deploy/src/java/org/lamsfoundation/lams/tool/deploy/libraryActivity/ActivityDBLanguageUpdateTask.java (.../ActivityDBLanguageUpdateTask.java) (revision 129d0eb39f81fcdb4ef6e3b5ec15c1c94d9324b3) +++ lams_tool_deploy/src/java/org/lamsfoundation/lams/tool/deploy/libraryActivity/ActivityDBLanguageUpdateTask.java (.../ActivityDBLanguageUpdateTask.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -21,7 +21,6 @@ * **************************************************************** */ - package org.lamsfoundation.lams.tool.deploy.libraryActivity; import java.sql.Connection; @@ -33,9 +32,7 @@ import org.lamsfoundation.lams.tool.deploy.DeployException; /** - * Task to update a learning activity's language file column with the - * appropriate generated value. - * + * Task to update a learning activity's language file column with the appropriate generated value. */ public class ActivityDBLanguageUpdateTask extends DBTask { @@ -83,7 +80,7 @@ stmt = conn.prepareStatement( "UPDATE lams_learning_activity SET language_file = ? WHERE learning_library_id = ?"); stmt.setString(1, languageFilename); - stmt.setParameter(2, activityId); + stmt.setLong(2, activityId); stmt.execute(); } finally { DbUtils.closeQuietly(stmt); Index: lams_tool_deploy/src/java/org/lamsfoundation/lams/tool/deploy/libraryActivity/LibraryDBActivateTask.java =================================================================== diff -u -r129d0eb39f81fcdb4ef6e3b5ec15c1c94d9324b3 -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_deploy/src/java/org/lamsfoundation/lams/tool/deploy/libraryActivity/LibraryDBActivateTask.java (.../LibraryDBActivateTask.java) (revision 129d0eb39f81fcdb4ef6e3b5ec15c1c94d9324b3) +++ lams_tool_deploy/src/java/org/lamsfoundation/lams/tool/deploy/libraryActivity/LibraryDBActivateTask.java (.../LibraryDBActivateTask.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -96,7 +96,7 @@ try { stmt = conn .prepareStatement("UPDATE lams_learning_library SET valid_flag = 1 WHERE learning_library_id = ?"); - stmt.setParameter(1, libraryId); + stmt.setLong(1, libraryId); stmt.execute(); } finally { DbUtils.closeQuietly(stmt); Index: lams_tool_doku/.classpath =================================================================== diff -u -r1b6b84b218055aab82004edfbe5f545b2c0eee0b -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_doku/.classpath (.../.classpath) (revision 1b6b84b218055aab82004edfbe5f545b2c0eee0b) +++ lams_tool_doku/.classpath (.../.classpath) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -16,6 +16,7 @@ + Index: lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/dao/hibernate/MessageSeqDao.java =================================================================== diff -u -r88da40288a02be7961fe7f2e5b6c1c6c78655d59 -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/dao/hibernate/MessageSeqDao.java (.../MessageSeqDao.java) (revision 88da40288a02be7961fe7f2e5b6c1c6c78655d59) +++ lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/dao/hibernate/MessageSeqDao.java (.../MessageSeqDao.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -21,15 +21,13 @@ * **************************************************************** */ - - package org.lamsfoundation.lams.tool.forum.dao.hibernate; import java.util.Date; import java.util.List; -import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.LogManager; -import org.hibernate.criterion.Restrictions; +import org.apache.logging.log4j.Logger; +import org.apache.logging.log4j.LogManager; import org.hibernate.query.Query; import org.lamsfoundation.lams.dao.hibernate.LAMSBaseDAO; import org.lamsfoundation.lams.tool.forum.dao.IMessageSeqDAO; @@ -38,22 +36,23 @@ @Repository public class MessageSeqDao extends LAMSBaseDAO implements IMessageSeqDAO { - private static final String SQL_QUERY_FIND_TOPIC_ID = "from " + MessageSeq.class.getName() - + " where message_uid = ?"; + private static final String SQL_QUERY_FIND_TOPIC_ID = + "from " + MessageSeq.class.getName() + " where message_uid = ?"; private static final String SQL_QUERY_FIND_NEXT_THREAD_TOP = "from " + MessageSeq.class.getName() + " where root_message_uid = :rootTopicId and message.uid > :previousThreadMessageId and message_level = 1"; private static final String SQL_QUERY_FIND_NEXT_THREAD_MESSAGES = "from " + MessageSeq.class.getName() + " where root_message_uid = ? and thread_message_uid = ? and message_level > 1"; - private static final String SQL_QUERY_GET_COMPLETE_THREAD = "from " + MessageSeq.class.getName() - + " where thread_message_uid = ?"; - private static final String SQL_QUERY_GET_SEQ_BY_MESSAGE = "from " + MessageSeq.class.getName() - + " where message_uid = ?"; + private static final String SQL_QUERY_GET_COMPLETE_THREAD = + "from " + MessageSeq.class.getName() + " where thread_message_uid = ?"; + private static final String SQL_QUERY_GET_SEQ_BY_MESSAGE = + "from " + MessageSeq.class.getName() + " where message_uid = ?"; private static final String SQL_QUERY_NUM_POSTS_BY_TOPIC = "select count(*) from " + MessageSeq.class.getName() + " ms where ms.message.createdBy.userId=? and ms.message.isAuthored = false and ms.rootMessage.uid=?"; - private static final String SQL_QUERY_NUM_POSTS_BY_ROOT_MESSAGE_AND_DATE = "SELECT count(*) FROM " - + MessageSeq.class.getName() + " seq WHERE seq.rootMessage.uid = ? AND seq.message.updated > ?"; + private static final String SQL_QUERY_NUM_POSTS_BY_ROOT_MESSAGE_AND_DATE = + "SELECT count(*) FROM " + MessageSeq.class.getName() + + " seq WHERE seq.rootMessage.uid = ? AND seq.message.updated > ?"; private static final Logger log = LogManager.getLogger(MessageSeqDao.class); @@ -99,8 +98,7 @@ @Override public List getCompleteTopic(Long rootTopicId) { - return getSession().createCriteria(MessageSeq.class).add(Restrictions.eq("rootMessage.uid", rootTopicId)) - .list(); + return findByProperty(MessageSeq.class, "rootMessage.uid", rootTopicId); } @Override Index: lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/web/controller/AuthoringConditionController.java =================================================================== diff -u -ra1064a52a646aa043ea1fe371726537fd305c5de -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/web/controller/AuthoringConditionController.java (.../AuthoringConditionController.java) (revision a1064a52a646aa043ea1fe371726537fd305c5de) +++ lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/web/controller/AuthoringConditionController.java (.../AuthoringConditionController.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -94,7 +94,7 @@ String sessionMapID = forumConditionForm.getSessionMapID(); SessionMap sessionMap = (SessionMap) request.getSession().getAttribute(sessionMapID); - int orderId = NumberUtils.stringToInt(request.getParameter(ForumConstants.PARAM_ORDER_ID), -1); + int orderId = NumberUtils.toInt(request.getParameter(ForumConstants.PARAM_ORDER_ID), -1); ForumCondition condition = null; if (orderId != -1) { SortedSet conditionSet = getForumConditionSet(sessionMap); @@ -154,7 +154,7 @@ String sessionMapID = WebUtil.readStrParam(request, ForumConstants.ATTR_SESSION_MAP_ID); SessionMap sessionMap = (SessionMap) request.getSession().getAttribute(sessionMapID); - int orderId = NumberUtils.stringToInt(request.getParameter(ForumConstants.PARAM_ORDER_ID), -1); + int orderId = NumberUtils.toInt(request.getParameter(ForumConstants.PARAM_ORDER_ID), -1); if (orderId != -1) { SortedSet conditionSet = getForumConditionSet(sessionMap); List conditionList = new ArrayList<>(conditionSet); @@ -197,7 +197,7 @@ String sessionMapID = WebUtil.readStrParam(request, ForumConstants.ATTR_SESSION_MAP_ID); SessionMap sessionMap = (SessionMap) request.getSession().getAttribute(sessionMapID); - int orderId = NumberUtils.stringToInt(request.getParameter(ForumConstants.PARAM_ORDER_ID), -1); + int orderId = NumberUtils.toInt(request.getParameter(ForumConstants.PARAM_ORDER_ID), -1); if (orderId != -1) { SortedSet conditionSet = getForumConditionSet(sessionMap); List conditionList = new ArrayList<>(conditionSet); Index: lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/web/controller/AuthoringController.java =================================================================== diff -u -r88da40288a02be7961fe7f2e5b6c1c6c78655d59 -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/web/controller/AuthoringController.java (.../AuthoringController.java) (revision 88da40288a02be7961fe7f2e5b6c1c6c78655d59) +++ lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/web/controller/AuthoringController.java (.../AuthoringController.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -451,7 +451,7 @@ .getAttribute(sessionMapID); request.setAttribute(ForumConstants.ATTR_SESSION_MAP_ID, sessionMapID); String topicIndex = request.getParameter(ForumConstants.AUTHORING_TOPICS_INDEX); - int topicIdx = NumberUtils.stringToInt(topicIndex, -1); + int topicIdx = NumberUtils.toInt(topicIndex, -1); if (topicIdx != -1) { Set topics = getTopics(sessionMap); @@ -494,7 +494,7 @@ topicFormId.setSessionMapID(sessionMapID); String topicIndex = request.getParameter(ForumConstants.AUTHORING_TOPICS_INDEX); - int topicIdx = NumberUtils.stringToInt(topicIndex, -1); + int topicIdx = NumberUtils.toInt(topicIndex, -1); if (topicIdx != -1) { Set topics = getTopics(sessionMap); List rList = new ArrayList(topics); @@ -536,7 +536,7 @@ // get param from HttpServletRequest String topicIndex = request.getParameter(ForumConstants.AUTHORING_TOPICS_INDEX); - int topicIdx = NumberUtils.stringToInt(topicIndex, -1); + int topicIdx = NumberUtils.toInt(topicIndex, -1); if (topicIdx != -1) { Message message = messageForm.getMessage(); @@ -625,7 +625,7 @@ SessionMap sessionMap = (SessionMap) request.getSession() .getAttribute(sessionMapID); - int itemIdx = NumberUtils.stringToInt(request.getParameter(ForumConstants.AUTHORING_TOPICS_INDEX), -1); + int itemIdx = NumberUtils.toInt(request.getParameter(ForumConstants.AUTHORING_TOPICS_INDEX), -1); if (itemIdx != -1) { Set topics = getTopics(sessionMap); List rList = new ArrayList(topics); Index: lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/web/controller/AuthoringController.java =================================================================== diff -u -r88da40288a02be7961fe7f2e5b6c1c6c78655d59 -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/web/controller/AuthoringController.java (.../AuthoringController.java) (revision 88da40288a02be7961fe7f2e5b6c1c6c78655d59) +++ lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/web/controller/AuthoringController.java (.../AuthoringController.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -450,7 +450,7 @@ SessionMap sessionMap = (SessionMap) request.getSession() .getAttribute(sessionMapID); - int imageIdx = NumberUtils.stringToInt(request.getParameter(ImageGalleryConstants.PARAM_IMAGE_INDEX), -1); + int imageIdx = NumberUtils.toInt(request.getParameter(ImageGalleryConstants.PARAM_IMAGE_INDEX), -1); if (imageIdx != -1) { SortedSet taskListList = getImageList(sessionMap); List rList = new ArrayList<>(taskListList); @@ -501,7 +501,7 @@ SessionMap sessionMap = (SessionMap) request.getSession() .getAttribute(sessionMapID); - int itemIdx = NumberUtils.stringToInt(request.getParameter(ImageGalleryConstants.PARAM_IMAGE_INDEX), -1); + int itemIdx = NumberUtils.toInt(request.getParameter(ImageGalleryConstants.PARAM_IMAGE_INDEX), -1); if (itemIdx != -1) { SortedSet imageGalleryList = getImageList(sessionMap); List rList = new ArrayList<>(imageGalleryList); Index: lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/web/controller/LearningController.java =================================================================== diff -u -r88da40288a02be7961fe7f2e5b6c1c6c78655d59 -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/web/controller/LearningController.java (.../LearningController.java) (revision 88da40288a02be7961fe7f2e5b6c1c6c78655d59) +++ lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/web/controller/LearningController.java (.../LearningController.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -190,7 +190,7 @@ for (ImageGalleryItem image : images) { String titleEscaped = HtmlUtils.htmlEscape(image.getTitle()); image.setTitleEscaped(titleEscaped); - String descriptionEscaped = StringEscapeUtils.escapeJavaScript(image.getDescription()); + String descriptionEscaped = StringEscapeUtils.escapeEcmaScript(image.getDescription()); image.setDescriptionEscaped(descriptionEscaped); } Index: lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/web/controller/MonitoringController.java =================================================================== diff -u -r88da40288a02be7961fe7f2e5b6c1c6c78655d59 -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/web/controller/MonitoringController.java (.../MonitoringController.java) (revision 88da40288a02be7961fe7f2e5b6c1c6c78655d59) +++ lams_tool_images/src/java/org/lamsfoundation/lams/tool/imageGallery/web/controller/MonitoringController.java (.../MonitoringController.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -145,7 +145,7 @@ Long contentId = (Long) sessionMap.get(ImageGalleryConstants.ATTR_TOOL_CONTENT_ID); ImageGallery imageGallery = igService.getImageGalleryByContentId(contentId); - int imageUid = NumberUtils.stringToInt(imageGalleryItemForm.getImageUid(), -1); + int imageUid = NumberUtils.toInt(imageGalleryItemForm.getImageUid(), -1); ImageGalleryItem image = igService.getImageGalleryItemByUid(new Long(imageUid)); String title = imageGalleryItemForm.getTitle(); Index: lams_tool_imscc/lams_tool_imscc.eml =================================================================== diff -u -r1b6b84b218055aab82004edfbe5f545b2c0eee0b -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_imscc/lams_tool_imscc.eml (.../lams_tool_imscc.eml) (revision 1b6b84b218055aab82004edfbe5f545b2c0eee0b) +++ lams_tool_imscc/lams_tool_imscc.eml (.../lams_tool_imscc.eml) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -1,7 +1,7 @@ - + Index: lams_tool_imscc/src/java/org/lamsfoundation/lams/tool/commonCartridge/web/controller/AuthoringController.java =================================================================== diff -u -rc11264f3271f40971838dd015db6b5107f3bc55e -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_imscc/src/java/org/lamsfoundation/lams/tool/commonCartridge/web/controller/AuthoringController.java (.../AuthoringController.java) (revision c11264f3271f40971838dd015db6b5107f3bc55e) +++ lams_tool_imscc/src/java/org/lamsfoundation/lams/tool/commonCartridge/web/controller/AuthoringController.java (.../AuthoringController.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -104,7 +104,7 @@ SessionMap sessionMap = (SessionMap) request.getSession() .getAttribute(sessionMapID); - int itemIdx = NumberUtils.stringToInt(request.getParameter(CommonCartridgeConstants.PARAM_ITEM_INDEX), -1); + int itemIdx = NumberUtils.toInt(request.getParameter(CommonCartridgeConstants.PARAM_ITEM_INDEX), -1); if (itemIdx != -1) { SortedSet commonCartridgeList = getCommonCartridgeItemList(sessionMap); List rList = new ArrayList<>(commonCartridgeList); @@ -140,7 +140,7 @@ SessionMap sessionMap = (SessionMap) request.getSession() .getAttribute(sessionMapID); - int itemIdx = NumberUtils.stringToInt(request.getParameter(CommonCartridgeConstants.PARAM_ITEM_INDEX), -1); + int itemIdx = NumberUtils.toInt(request.getParameter(CommonCartridgeConstants.PARAM_ITEM_INDEX), -1); CommonCartridgeItem item = null; if (itemIdx != -1) { SortedSet commonCartridgeList = getCommonCartridgeItemList(sessionMap); @@ -169,7 +169,7 @@ String sessionMapID = WebUtil.readStrParam(request, CommonCartridgeConstants.ATTR_SESSION_MAP_ID); commonCartridgeItemForm.setSessionMapID(sessionMapID); - short type = (short) NumberUtils.stringToInt(request.getParameter(AuthoringController.ITEM_TYPE)); + short type = (short) NumberUtils.toInt(request.getParameter(AuthoringController.ITEM_TYPE)); return findForward(type); } @@ -687,7 +687,7 @@ .getAttribute(itemForm.getSessionMapID()); // check whether it is "edit(old item)" or "add(new item)" SortedSet commonCartridgeList = getCommonCartridgeItemList(sessionMap); - int itemIdx = NumberUtils.stringToInt(itemForm.getItemIndex(), -1); + int itemIdx = NumberUtils.toInt(itemForm.getItemIndex(), -1); CommonCartridgeItem item = null; if (itemIdx == -1) { // add Index: lams_tool_imscc/src/java/org/lamsfoundation/lams/tool/commonCartridge/web/controller/ViewItemController.java =================================================================== diff -u -r88da40288a02be7961fe7f2e5b6c1c6c78655d59 -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_imscc/src/java/org/lamsfoundation/lams/tool/commonCartridge/web/controller/ViewItemController.java (.../ViewItemController.java) (revision 88da40288a02be7961fe7f2e5b6c1c6c78655d59) +++ lams_tool_imscc/src/java/org/lamsfoundation/lams/tool/commonCartridge/web/controller/ViewItemController.java (.../ViewItemController.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -83,7 +83,7 @@ String sessionMapID = WebUtil.readStrParam(request, CommonCartridgeConstants.ATTR_SESSION_MAP_ID); SessionMap sessionMap = (SessionMap) request.getSession().getAttribute(sessionMapID); CommonCartridgeItem item = getCommonCartridgeItem(request, sessionMap, mode); - int itemIdx = NumberUtils.stringToInt(request.getParameter(CommonCartridgeConstants.PARAM_ITEM_INDEX)); + int itemIdx = NumberUtils.toInt(request.getParameter(CommonCartridgeConstants.PARAM_ITEM_INDEX)); String launchBasicLTIUrl; if (CommonCartridgeConstants.MODE_AUTHOR_SESSION.equals(mode)) { @@ -149,7 +149,7 @@ } // set url to content frame - int itemIdx = NumberUtils.stringToInt(request.getParameter(CommonCartridgeConstants.PARAM_ITEM_INDEX)); + int itemIdx = NumberUtils.toInt(request.getParameter(CommonCartridgeConstants.PARAM_ITEM_INDEX)); short type = item.getType(); String url = null; @@ -246,7 +246,7 @@ private CommonCartridgeItem getCommonCartridgeItem(HttpServletRequest request, SessionMap sessionMap, String mode) { CommonCartridgeItem item = null; if (CommonCartridgeConstants.MODE_AUTHOR_SESSION.equals(mode)) { - int itemIdx = NumberUtils.stringToInt(request.getParameter(CommonCartridgeConstants.PARAM_ITEM_INDEX), 0); + int itemIdx = NumberUtils.toInt(request.getParameter(CommonCartridgeConstants.PARAM_ITEM_INDEX), 0); // authoring: does not save item yet, so only has ItemList from session and identity by Index List commonCartridgeList = new ArrayList<>(getCommonCartridgeItemList(sessionMap)); item = commonCartridgeList.get(itemIdx); Index: lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/dao/hibernate/McUserDAO.java =================================================================== diff -u -ra1064a52a646aa043ea1fe371726537fd305c5de -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/dao/hibernate/McUserDAO.java (.../McUserDAO.java) (revision a1064a52a646aa043ea1fe371726537fd305c5de) +++ lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/dao/hibernate/McUserDAO.java (.../McUserDAO.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -27,7 +27,6 @@ import org.hibernate.query.NativeQuery; import org.hibernate.query.Query; -import org.hibernate.type.FloatType; import org.hibernate.type.StandardBasicTypes; import org.lamsfoundation.lams.dao.hibernate.LAMSBaseDAO; import org.lamsfoundation.lams.tool.mc.dao.IMcUserDAO; @@ -38,34 +37,37 @@ /** * @author Ozgur Demirtas - *

- * Hibernate implementation for database access to Mc users (learners) for the mc tool. - *

+ *

+ * Hibernate implementation for database access to Mc users (learners) for the mc tool. + *

*/ @Repository public class McUserDAO extends LAMSBaseDAO implements IMcUserDAO { private static final String GET_USER_BY_USER_ID_SESSION = "from mcQueUsr in class McQueUsr where mcQueUsr.queUsrId=:queUsrId and mcQueUsr.mcSession.uid=:mcSessionUid"; - private static final String LOAD_MARKS_FOR_SESSION = "SELECT last_attempt_total_mark " - + " FROM tl_lamc11_que_usr usr " + " JOIN tl_lamc11_session sess ON usr.mc_session_id = sess.uid " - + " WHERE responseFinalised = 1 AND sess.mc_session_id = :sessionId"; - private static final String FIND_MARK_STATS_FOR_SESSION = "SELECT MIN(last_attempt_total_mark) min_grade, AVG(last_attempt_total_mark) avg_grade, " - + " MAX(last_attempt_total_mark) max_grade FROM tl_lamc11_que_usr usr " - + " JOIN tl_lamc11_session sess ON usr.mc_session_id = sess.uid " - + " WHERE responseFinalised = 1 AND sess.mc_session_id = :sessionId"; + private static final String LOAD_MARKS_FOR_SESSION = + "SELECT last_attempt_total_mark " + " FROM tl_lamc11_que_usr usr " + + " JOIN tl_lamc11_session sess ON usr.mc_session_id = sess.uid " + + " WHERE responseFinalised = 1 AND sess.mc_session_id = :sessionId"; + private static final String FIND_MARK_STATS_FOR_SESSION = + "SELECT MIN(last_attempt_total_mark) min_grade, AVG(last_attempt_total_mark) avg_grade, " + + " MAX(last_attempt_total_mark) max_grade FROM tl_lamc11_que_usr usr " + + " JOIN tl_lamc11_session sess ON usr.mc_session_id = sess.uid " + + " WHERE responseFinalised = 1 AND sess.mc_session_id = :sessionId"; - private static final String LOAD_MARKS_FOR_LEADERS = "SELECT usr.last_attempt_total_mark " - + " FROM tl_lamc11_que_usr usr " - + " JOIN tl_lamc11_session sess ON usr.mc_session_id = sess.uid AND usr.uid = sess.mc_group_leader_uid " - + " JOIN tl_lamc11_content mcq ON sess.mc_content_id = mcq.uid " - + " WHERE responseFinalised = 1 AND mcq.content_id = :toolContentId"; - private static final String FIND_MARK_STATS_FOR_LEADERS = "SELECT MIN(usr.last_attempt_total_mark) min_grade, AVG(usr.last_attempt_total_mark) avg_grade, " - + " MAX(usr.last_attempt_total_mark) max_grade, COUNT(usr.last_attempt_total_mark) num_complete " - + " FROM tl_lamc11_que_usr usr " - + " JOIN tl_lamc11_session sess ON usr.mc_session_id = sess.uid AND usr.uid = sess.mc_group_leader_uid " - + " JOIN tl_lamc11_content mcq ON sess.mc_content_id = mcq.uid " - + " WHERE responseFinalised = 1 AND mcq.content_id = :toolContentId"; + private static final String LOAD_MARKS_FOR_LEADERS = + "SELECT usr.last_attempt_total_mark " + " FROM tl_lamc11_que_usr usr " + + " JOIN tl_lamc11_session sess ON usr.mc_session_id = sess.uid AND usr.uid = sess.mc_group_leader_uid " + + " JOIN tl_lamc11_content mcq ON sess.mc_content_id = mcq.uid " + + " WHERE responseFinalised = 1 AND mcq.content_id = :toolContentId"; + private static final String FIND_MARK_STATS_FOR_LEADERS = + "SELECT MIN(usr.last_attempt_total_mark) min_grade, AVG(usr.last_attempt_total_mark) avg_grade, " + + " MAX(usr.last_attempt_total_mark) max_grade, COUNT(usr.last_attempt_total_mark) num_complete " + + " FROM tl_lamc11_que_usr usr " + + " JOIN tl_lamc11_session sess ON usr.mc_session_id = sess.uid AND usr.uid = sess.mc_group_leader_uid " + + " JOIN tl_lamc11_content mcq ON sess.mc_content_id = mcq.uid " + + " WHERE responseFinalised = 1 AND mcq.content_id = :toolContentId"; @Override public McQueUsr getMcUserByUID(Long uid) { @@ -98,10 +100,11 @@ @Override @SuppressWarnings("unchecked") public List getUsersWithPortraitsBySessionID(Long sessionId) { - final String LOAD_USERS_WITH_PORTRAITS_BY_SESSION_ID = "SELECT user.user_id, luser.portrait_uuid portraitId FROM tl_lamc11_que_usr user " - + " INNER JOIN tl_lamc11_session session ON user.mc_session_id=session.uid" - + " INNER JOIN lams_user luser ON luser.user_id = user.que_usr_id" - + " WHERE session.mc_session_id = :sessionId"; + final String LOAD_USERS_WITH_PORTRAITS_BY_SESSION_ID = + "SELECT user.user_id, luser.portrait_uuid portraitId FROM tl_lamc11_que_usr user " + + " INNER JOIN tl_lamc11_session session ON user.mc_session_id=session.uid" + + " INNER JOIN lams_user luser ON luser.user_id = user.que_usr_id" + + " WHERE session.mc_session_id = :sessionId"; NativeQuery query = getSession().createNativeQuery(LOAD_USERS_WITH_PORTRAITS_BY_SESSION_ID); query.setParameter("sessionId", sessionId); @@ -182,7 +185,7 @@ userDto.setQueUsrId(userUid.toString()); userDto.setUserId(userId.toString()); userDto.setFullName(fullName); - userDto.setTotalMark(new Long(totalMark)); + userDto.setTotalMark(Long.valueOf(totalMark)); userDto.setPortraitId(portraitId); userDtos.add(userDto); } @@ -219,8 +222,8 @@ public Object[] getStatsMarksBySession(Long sessionId) { Query query = getSession().createNativeQuery(FIND_MARK_STATS_FOR_SESSION) - .addScalar("min_grade", FloatType.INSTANCE).addScalar("avg_grade", FloatType.INSTANCE) - .addScalar("max_grade", FloatType.INSTANCE); + .addScalar("min_grade", StandardBasicTypes.FLOAT).addScalar("avg_grade", StandardBasicTypes.FLOAT) + .addScalar("max_grade", StandardBasicTypes.FLOAT); query.setParameter("sessionId", sessionId); List list = query.list(); if ((list == null) || (list.size() == 0)) { @@ -235,8 +238,8 @@ public Object[] getStatsMarksForLeaders(Long toolContentId) { Query query = getSession().createNativeQuery(FIND_MARK_STATS_FOR_LEADERS) - .addScalar("min_grade", FloatType.INSTANCE).addScalar("avg_grade", FloatType.INSTANCE) - .addScalar("max_grade", FloatType.INSTANCE).addScalar("num_complete", StandardBasicTypes.INTEGER); + .addScalar("min_grade", StandardBasicTypes.FLOAT).addScalar("avg_grade", StandardBasicTypes.FLOAT) + .addScalar("max_grade", StandardBasicTypes.FLOAT).addScalar("num_complete", StandardBasicTypes.INTEGER); query.setParameter("toolContentId", toolContentId); List list = query.list(); if ((list == null) || (list.size() == 0)) { Index: lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/web/controller/MonitoringController.java =================================================================== diff -u -rc11264f3271f40971838dd015db6b5107f3bc55e -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/web/controller/MonitoringController.java (.../MonitoringController.java) (revision c11264f3271f40971838dd015db6b5107f3bc55e) +++ lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/web/controller/MonitoringController.java (.../MonitoringController.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -336,13 +336,13 @@ String description = question.getDescription(); if (description != null) { - String escapedDescription = StringEscapeUtils.escapeJavaScript(description); + String escapedDescription = StringEscapeUtils.escapeEcmaScript(description); question.setEscapedDescription(escapedDescription); } String optionText = option.getQbOption().getName(); if (optionText != null) { - String escapedOptionText = StringEscapeUtils.escapeJavaScript(optionText); + String escapedOptionText = StringEscapeUtils.escapeEcmaScript(optionText); option.setEscapedOptionText(escapedOptionText); } } Index: lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/web/controller/AuthoringConditionController.java =================================================================== diff -u -rc11264f3271f40971838dd015db6b5107f3bc55e -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/web/controller/AuthoringConditionController.java (.../AuthoringConditionController.java) (revision c11264f3271f40971838dd015db6b5107f3bc55e) +++ lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/web/controller/AuthoringConditionController.java (.../AuthoringConditionController.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -101,7 +101,7 @@ String sessionMapID = QaConditionForm.getSessionMapID(); SessionMap sessionMap = (SessionMap) request.getSession().getAttribute(sessionMapID); - int orderId = NumberUtils.stringToInt(request.getParameter(QaAppConstants.PARAM_ORDER_ID), -1); + int orderId = NumberUtils.toInt(request.getParameter(QaAppConstants.PARAM_ORDER_ID), -1); QaCondition condition = null; if (orderId != -1) { SortedSet conditionSet = getConditions(sessionMap); @@ -172,7 +172,7 @@ String sessionMapID = WebUtil.readStrParam(request, QaAppConstants.ATTR_SESSION_MAP_ID); SessionMap sessionMap = (SessionMap) request.getSession().getAttribute(sessionMapID); - int orderId = NumberUtils.stringToInt(request.getParameter(QaAppConstants.PARAM_ORDER_ID), -1); + int orderId = NumberUtils.toInt(request.getParameter(QaAppConstants.PARAM_ORDER_ID), -1); if (orderId != -1) { SortedSet conditionSet = getConditions(sessionMap); List conditionList = new ArrayList<>(conditionSet); @@ -220,7 +220,7 @@ String sessionMapID = WebUtil.readStrParam(request, QaAppConstants.ATTR_SESSION_MAP_ID); SessionMap sessionMap = (SessionMap) request.getSession().getAttribute(sessionMapID); - int orderId = NumberUtils.stringToInt(request.getParameter(QaAppConstants.PARAM_ORDER_ID), -1); + int orderId = NumberUtils.toInt(request.getParameter(QaAppConstants.PARAM_ORDER_ID), -1); if (orderId != -1) { SortedSet conditionSet = getConditions(sessionMap); List conditionList = new ArrayList<>(conditionSet); Index: lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/web/controller/AuthoringController.java =================================================================== diff -u -r88da40288a02be7961fe7f2e5b6c1c6c78655d59 -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/web/controller/AuthoringController.java (.../AuthoringController.java) (revision 88da40288a02be7961fe7f2e5b6c1c6c78655d59) +++ lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/web/controller/AuthoringController.java (.../AuthoringController.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -113,7 +113,7 @@ SessionMap sessionMap = getSessionMap(request); @SuppressWarnings("deprecation") - int itemIdx = NumberUtils.stringToInt(request.getParameter(ResourceConstants.PARAM_ITEM_INDEX), -1); + int itemIdx = NumberUtils.toInt(request.getParameter(ResourceConstants.PARAM_ITEM_INDEX), -1); if (itemIdx != -1) { SortedSet resourceList = getResourceItemList(sessionMap); List rList = new ArrayList<>(resourceList); @@ -139,7 +139,7 @@ private String editItemInit(@ModelAttribute ResourceItemForm resourceItemForm, HttpServletRequest request) { SessionMap sessionMap = getSessionMap(request); - int itemIdx = NumberUtils.stringToInt(request.getParameter(ResourceConstants.PARAM_ITEM_INDEX), -1); + int itemIdx = NumberUtils.toInt(request.getParameter(ResourceConstants.PARAM_ITEM_INDEX), -1); ResourceItem item = null; if (itemIdx != -1) { SortedSet resourceList = getResourceItemList(sessionMap); Index: lams_tool_leader/.classpath =================================================================== diff -u -r1b6b84b218055aab82004edfbe5f545b2c0eee0b -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_leader/.classpath (.../.classpath) (revision 1b6b84b218055aab82004edfbe5f545b2c0eee0b) +++ lams_tool_leader/.classpath (.../.classpath) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -15,6 +15,7 @@
+ Index: lams_tool_mindmap/.classpath =================================================================== diff -u -r1b6b84b218055aab82004edfbe5f545b2c0eee0b -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_mindmap/.classpath (.../.classpath) (revision 1b6b84b218055aab82004edfbe5f545b2c0eee0b) +++ lams_tool_mindmap/.classpath (.../.classpath) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -18,6 +18,7 @@ + Index: lams_tool_notebook/src/java/org/lamsfoundation/lams/tool/notebook/dao/hibernate/NotebookUserDAO.java =================================================================== diff -u -r88da40288a02be7961fe7f2e5b6c1c6c78655d59 -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_notebook/src/java/org/lamsfoundation/lams/tool/notebook/dao/hibernate/NotebookUserDAO.java (.../NotebookUserDAO.java) (revision 88da40288a02be7961fe7f2e5b6c1c6c78655d59) +++ lams_tool_notebook/src/java/org/lamsfoundation/lams/tool/notebook/dao/hibernate/NotebookUserDAO.java (.../NotebookUserDAO.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -30,9 +30,6 @@ import org.hibernate.query.NativeQuery; import org.hibernate.transform.Transformers; import org.hibernate.type.StandardBasicTypes; -import org.hibernate.type.LongType; -import org.hibernate.type.StandardBasicTypes; -import org.hibernate.type.TimestampType; import org.lamsfoundation.lams.dao.hibernate.LAMSBaseDAO; import org.lamsfoundation.lams.tool.notebook.dao.INotebookUserDAO; import org.lamsfoundation.lams.tool.notebook.dto.StatisticDTO; @@ -47,11 +44,11 @@ @Repository public class NotebookUserDAO extends LAMSBaseDAO implements INotebookUserDAO { - public static final String SQL_QUERY_FIND_BY_USER_ID_SESSION_ID = "from " + NotebookUser.class.getName() + " as f" - + " where user_id=? and f.notebookSession.sessionId=?"; + public static final String SQL_QUERY_FIND_BY_USER_ID_SESSION_ID = + "from " + NotebookUser.class.getName() + " as f" + " where user_id=? and f.notebookSession.sessionId=?"; - public static final String SQL_QUERY_FIND_BY_LOGIN_NAME_SESSION_ID = "from " + NotebookUser.class.getName() - + " as f where login_name=? and f.notebookSession.sessionId=?"; + public static final String SQL_QUERY_FIND_BY_LOGIN_NAME_SESSION_ID = + "from " + NotebookUser.class.getName() + " as f where login_name=? and f.notebookSession.sessionId=?"; private static final String SQL_QUERY_FIND_BY_UID = "from " + NotebookUser.class.getName() + " where uid=?"; @@ -100,9 +97,8 @@ @SuppressWarnings("unchecked") /** * Will return List<[NotebookUser, String, Date]> where the String is the notebook entry and the modified date. - */ - public List getUsersEntriesDates(final Long sessionId, Integer page, Integer size, int sorting, String searchString, - IUserManagementService userManagementService) { + */ public List getUsersEntriesDates(final Long sessionId, Integer page, Integer size, int sorting, + String searchString, IUserManagementService userManagementService) { String sortingOrder; switch (sorting) { case NotebookConstants.SORT_BY_USERNAME_ASC: @@ -145,7 +141,8 @@ queryText.append(" ORDER BY " + sortingOrder); NativeQuery query = getSession().createNativeQuery(queryText.toString()); - query.addEntity("user", NotebookUser.class).addScalar("portraitId", StandardBasicTypes.STRING).setParameter("sessionId", sessionId.longValue()); + query.addEntity("user", NotebookUser.class).addScalar("portraitId", StandardBasicTypes.STRING) + .setParameter("sessionId", sessionId.longValue()); if (size != null) { query.setMaxResults(size); @@ -178,8 +175,8 @@ " JOIN tl_lantbk11_session session ON user.notebook_session_uid = session.uid and session.session_id = :sessionId"); buildNameSearch(searchString, queryText); - List list = getSession().createNativeQuery(queryText.toString()).setParameter("sessionId", sessionId.longValue()) - .list(); + List list = getSession().createNativeQuery(queryText.toString()) + .setParameter("sessionId", sessionId.longValue()).list(); if (list == null || list.size() == 0) { return 0; } @@ -194,27 +191,28 @@ " JOIN tl_lantbk11_session session ON user.notebook_session_uid = session.uid and session.session_id = :sessionId"); buildNameSearch(searchString, queryText); - List list = getSession().createNativeQuery(queryText.toString()).setParameter("sessionId", sessionId.longValue()) - .list(); + List list = getSession().createNativeQuery(queryText.toString()) + .setParameter("sessionId", sessionId.longValue()).list(); if (list == null || list.size() == 0) { return 0; } return ((Number) list.get(0)).intValue(); } - private static final String GET_STATISTICS = "SELECT session.session_id sessionId, session.session_name sessionName, " - + " COUNT(user.uid) numLearners, SUM(user.finishedActivity) numLearnersFinished " - + " FROM tl_lantbk11_notebook notebook, tl_lantbk11_session session, tl_lantbk11_user user " - + " WHERE notebook.tool_content_id = :contentId and notebook.uid = session.notebook_uid AND user.notebook_session_uid = session.uid " - + " GROUP BY session.session_id"; + private static final String GET_STATISTICS = + "SELECT session.session_id sessionId, session.session_name sessionName, " + + " COUNT(user.uid) numLearners, SUM(user.finishedActivity) numLearnersFinished " + + " FROM tl_lantbk11_notebook notebook, tl_lantbk11_session session, tl_lantbk11_user user " + + " WHERE notebook.tool_content_id = :contentId and notebook.uid = session.notebook_uid AND user.notebook_session_uid = session.uid " + + " GROUP BY session.session_id"; @Override @SuppressWarnings("unchecked") public List getStatisticsBySession(final Long contentId) { NativeQuery query = getSession().createNativeQuery(GET_STATISTICS); - query.addScalar("sessionId", LongType.INSTANCE).addScalar("sessionName", StandardBasicTypes.STRING) - .addScalar("numLearners", StandardBasicTypes.INTEGER).addScalar("numLearnersFinished", StandardBasicTypes.INTEGER) - .setParameter("contentId", contentId) + query.addScalar("sessionId", StandardBasicTypes.LONG).addScalar("sessionName", StandardBasicTypes.STRING) + .addScalar("numLearners", StandardBasicTypes.INTEGER) + .addScalar("numLearnersFinished", StandardBasicTypes.INTEGER).setParameter("contentId", contentId) .setResultTransformer(Transformers.aliasToBean(StatisticDTO.class)); return query.list(); } Index: lams_tool_notebook/src/java/org/lamsfoundation/lams/tool/notebook/dto/NotebookUserDTO.java =================================================================== diff -u -ra1064a52a646aa043ea1fe371726537fd305c5de -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_notebook/src/java/org/lamsfoundation/lams/tool/notebook/dto/NotebookUserDTO.java (.../NotebookUserDTO.java) (revision a1064a52a646aa043ea1fe371726537fd305c5de) +++ lams_tool_notebook/src/java/org/lamsfoundation/lams/tool/notebook/dto/NotebookUserDTO.java (.../NotebookUserDTO.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -50,7 +50,7 @@ this.finishedActivity = user.isFinishedActivity(); this.notebookEntry = user.getNotebookEntry(); if (user.getTeachersComment() != null) { - this.teachersComment = StringEscapeUtils.escapeJavaScript(user.getTeachersComment()); + this.teachersComment = StringEscapeUtils.escapeEcmaScript(user.getTeachersComment()); } } Index: lams_tool_notebook/src/java/org/lamsfoundation/lams/tool/notebook/web/controller/AuthoringNotebookConditionController.java =================================================================== diff -u -rc11264f3271f40971838dd015db6b5107f3bc55e -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_notebook/src/java/org/lamsfoundation/lams/tool/notebook/web/controller/AuthoringNotebookConditionController.java (.../AuthoringNotebookConditionController.java) (revision c11264f3271f40971838dd015db6b5107f3bc55e) +++ lams_tool_notebook/src/java/org/lamsfoundation/lams/tool/notebook/web/controller/AuthoringNotebookConditionController.java (.../AuthoringNotebookConditionController.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -100,7 +100,7 @@ String sessionMapID = notebookConditionForm.getSessionMapID(); SessionMap sessionMap = (SessionMap) request.getSession().getAttribute(sessionMapID); - int orderId = NumberUtils.stringToInt(request.getParameter(NotebookConstants.PARAM_ORDER_ID), -1); + int orderId = NumberUtils.toInt(request.getParameter(NotebookConstants.PARAM_ORDER_ID), -1); NotebookCondition condition = null; if (orderId != -1) { SortedSet conditionSet = getNotebookConditionSet(sessionMap); @@ -173,7 +173,7 @@ String sessionMapID = WebUtil.readStrParam(request, NotebookConstants.ATTR_SESSION_MAP_ID); SessionMap sessionMap = (SessionMap) request.getSession().getAttribute(sessionMapID); - int orderId = NumberUtils.stringToInt(request.getParameter(NotebookConstants.PARAM_ORDER_ID), -1); + int orderId = NumberUtils.toInt(request.getParameter(NotebookConstants.PARAM_ORDER_ID), -1); if (orderId != -1) { SortedSet conditionSet = getNotebookConditionSet(sessionMap); List conditionList = new ArrayList<>(conditionSet); @@ -227,7 +227,7 @@ String sessionMapID = WebUtil.readStrParam(request, NotebookConstants.ATTR_SESSION_MAP_ID); SessionMap sessionMap = (SessionMap) request.getSession().getAttribute(sessionMapID); - int orderId = NumberUtils.stringToInt(request.getParameter(NotebookConstants.PARAM_ORDER_ID), -1); + int orderId = NumberUtils.toInt(request.getParameter(NotebookConstants.PARAM_ORDER_ID), -1); if (orderId != -1) { SortedSet conditionSet = getNotebookConditionSet(sessionMap); List conditionList = new ArrayList<>(conditionSet); Index: lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/dao/hibernate/SubmitUserDAO.java =================================================================== diff -u -r88da40288a02be7961fe7f2e5b6c1c6c78655d59 -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/dao/hibernate/SubmitUserDAO.java (.../SubmitUserDAO.java) (revision 88da40288a02be7961fe7f2e5b6c1c6c78655d59) +++ lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/dao/hibernate/SubmitUserDAO.java (.../SubmitUserDAO.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -30,8 +30,6 @@ import org.hibernate.query.NativeQuery; import org.hibernate.transform.Transformers; import org.hibernate.type.StandardBasicTypes; -import org.hibernate.type.LongType; -import org.hibernate.type.StandardBasicTypes; import org.lamsfoundation.lams.dao.hibernate.LAMSBaseDAO; import org.lamsfoundation.lams.tool.sbmt.SbmtConstants; import org.lamsfoundation.lams.tool.sbmt.dao.ISubmitUserDAO; @@ -42,10 +40,10 @@ @Repository public class SubmitUserDAO extends LAMSBaseDAO implements ISubmitUserDAO { - private static final String FIND_BY_USER_ID_SESSION_ID = "from " + SubmitUser.class.getName() - + " where user_id=? and session_id=?"; - private static final String FIND_BY_USER_ID_CONTENT_ID = "from " + SubmitUser.class.getName() - + " where user_id=? and content_id=?"; + private static final String FIND_BY_USER_ID_SESSION_ID = + "from " + SubmitUser.class.getName() + " where user_id=? and session_id=?"; + private static final String FIND_BY_USER_ID_CONTENT_ID = + "from " + SubmitUser.class.getName() + " where user_id=? and content_id=?"; private static final String FIND_BY_SESSION_ID = "from " + SubmitUser.class.getName() + " where session_id=?"; @@ -81,13 +79,12 @@ } /** - * Will return List<[SubmitUser, Integer1, Integer2], [SubmitUser, Integer1, Integer2], ... , - * [SubmitUser, Integer1, Integer2]> - * where Integer1 is the number of files uploaded, Integer2 is the number of files marked + * Will return List<[SubmitUser, Integer1, Integer2], [SubmitUser, Integer1, Integer2], ... , [SubmitUser, Integer1, + * Integer2]> where Integer1 is the number of files uploaded, Integer2 is the number of files marked */ @Override - public List getUsersForTablesorter(final Long sessionId, int page, int size, int sorting, String searchString, - IUserManagementService userManagementService) { + public List getUsersForTablesorter(final Long sessionId, int page, int size, int sorting, + String searchString, IUserManagementService userManagementService) { String sortingOrder; switch (sorting) { case SbmtConstants.SORT_BY_USERNAME_ASC: @@ -117,8 +114,8 @@ // Basic select for the user records StringBuilder queryText = new StringBuilder(); - queryText.append("SELECT user.* ").append(portraitStrings[0]).append( - ", COUNT(details.submission_id) numFiles, COALESCE(SUM(details.removed),0) numFilesRemoved, count(report.marks) numFilesMarked ") + queryText.append("SELECT user.* ").append(portraitStrings[0]) + .append(", COUNT(details.submission_id) numFiles, COALESCE(SUM(details.removed),0) numFilesRemoved, count(report.marks) numFilesMarked ") .append(" FROM tl_lasbmt11_user user ").append(portraitStrings[1]) .append(" LEFT JOIN tl_lasbmt11_submission_details details ON user.uid = details.learner_id ") .append(" LEFT JOIN tl_lasbmt11_report report ON details.submission_id = report.report_id "); @@ -135,8 +132,10 @@ queryText.append(" ORDER BY " + sortingOrder); NativeQuery query = getSession().createNativeQuery(queryText.toString()); - query.addEntity("user", SubmitUser.class).addScalar("portraitId", StandardBasicTypes.STRING).addScalar("numFiles", StandardBasicTypes.INTEGER) - .addScalar("numFilesRemoved", StandardBasicTypes.INTEGER).addScalar("numFilesMarked", StandardBasicTypes.INTEGER) + query.addEntity("user", SubmitUser.class).addScalar("portraitId", StandardBasicTypes.STRING) + .addScalar("numFiles", StandardBasicTypes.INTEGER) + .addScalar("numFilesRemoved", StandardBasicTypes.INTEGER) + .addScalar("numFilesMarked", StandardBasicTypes.INTEGER) .setParameter("sessionId", sessionId.longValue()).setFirstResult(page * size).setMaxResults(size); return query.list(); } @@ -168,19 +167,20 @@ return ((Number) list.get(0)).intValue(); } - private static final String GET_STATISTICS = "SELECT session.session_id sessionId, session.session_name sessionName, " - + " COUNT(detail.submission_id) totalUploadedFiles, COUNT(report.marks) markedCount" - + " FROM tl_lasbmt11_session session, tl_lasbmt11_submission_details detail, tl_lasbmt11_report report " - + " WHERE session.content_id = :contentId and detail.session_id = session.session_id " - + " AND detail.submission_id = report.report_id " + " GROUP BY session.session_id"; + private static final String GET_STATISTICS = + "SELECT session.session_id sessionId, session.session_name sessionName, " + + " COUNT(detail.submission_id) totalUploadedFiles, COUNT(report.marks) markedCount" + + " FROM tl_lasbmt11_session session, tl_lasbmt11_submission_details detail, tl_lasbmt11_report report " + + " WHERE session.content_id = :contentId and detail.session_id = session.session_id " + + " AND detail.submission_id = report.report_id " + " GROUP BY session.session_id"; @Override @SuppressWarnings("unchecked") public List getStatisticsBySession(final Long contentId) { NativeQuery query = getSession().createNativeQuery(GET_STATISTICS); - query.addScalar("sessionId", LongType.INSTANCE).addScalar("sessionName", StandardBasicTypes.STRING) - .addScalar("totalUploadedFiles", StandardBasicTypes.INTEGER).addScalar("markedCount", StandardBasicTypes.INTEGER) - .setParameter("contentId", contentId) + query.addScalar("sessionId", StandardBasicTypes.LONG).addScalar("sessionName", StandardBasicTypes.STRING) + .addScalar("totalUploadedFiles", StandardBasicTypes.INTEGER) + .addScalar("markedCount", StandardBasicTypes.INTEGER).setParameter("contentId", contentId) .setResultTransformer(Transformers.aliasToBean(StatisticDTO.class)); List list = query.list(); @@ -190,20 +190,21 @@ return list; } - private static final String GET_LEADER_STATISTICS = "SELECT session.session_id sessionId, session.session_name sessionName, " - + " COUNT(detail.submission_id) totalUploadedFiles, COUNT(report.marks) markedCount" - + " FROM tl_lasbmt11_session session, tl_lasbmt11_submission_details detail, tl_lasbmt11_report report " - + " WHERE session.content_id = :contentId and detail.session_id = session.session_id " - + " AND detail.submission_id = report.report_id AND session.group_leader_uid= detail.learner_id" - + " GROUP BY session.session_id"; + private static final String GET_LEADER_STATISTICS = + "SELECT session.session_id sessionId, session.session_name sessionName, " + + " COUNT(detail.submission_id) totalUploadedFiles, COUNT(report.marks) markedCount" + + " FROM tl_lasbmt11_session session, tl_lasbmt11_submission_details detail, tl_lasbmt11_report report " + + " WHERE session.content_id = :contentId and detail.session_id = session.session_id " + + " AND detail.submission_id = report.report_id AND session.group_leader_uid= detail.learner_id" + + " GROUP BY session.session_id"; @Override @SuppressWarnings("unchecked") public List getLeaderStatisticsBySession(final Long contentId) { NativeQuery query = getSession().createNativeQuery(GET_LEADER_STATISTICS); - query.addScalar("sessionId", LongType.INSTANCE).addScalar("sessionName", StandardBasicTypes.STRING) - .addScalar("totalUploadedFiles", StandardBasicTypes.INTEGER).addScalar("markedCount", StandardBasicTypes.INTEGER) - .setParameter("contentId", contentId) + query.addScalar("sessionId", StandardBasicTypes.LONG).addScalar("sessionName", StandardBasicTypes.STRING) + .addScalar("totalUploadedFiles", StandardBasicTypes.INTEGER) + .addScalar("markedCount", StandardBasicTypes.INTEGER).setParameter("contentId", contentId) .setResultTransformer(Transformers.aliasToBean(StatisticDTO.class)); List list = query.list(); @@ -223,8 +224,8 @@ @SuppressWarnings("unchecked") public List getReportsForGroup(final Long sessionId, final Long reportId) { NativeQuery query = getSession().createNativeQuery(GET_GROUP_REPORTS); - query.addScalar("reportId", LongType.INSTANCE).setParameter("sessionId", sessionId).setParameter("reportId", - reportId); + query.addScalar("reportId", StandardBasicTypes.LONG).setParameter("sessionId", sessionId) + .setParameter("reportId", reportId); return query.list(); } Index: lams_tool_scratchie/.classpath =================================================================== diff -u -r1b6b84b218055aab82004edfbe5f545b2c0eee0b -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_scratchie/.classpath (.../.classpath) (revision 1b6b84b218055aab82004edfbe5f545b2c0eee0b) +++ lams_tool_scratchie/.classpath (.../.classpath) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -18,6 +18,7 @@ + Index: lams_tool_scratchie/src/java/org/lamsfoundation/lams/tool/scratchie/service/ScratchieServiceImpl.java =================================================================== diff -u -r88da40288a02be7961fe7f2e5b6c1c6c78655d59 -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_scratchie/src/java/org/lamsfoundation/lams/tool/scratchie/service/ScratchieServiceImpl.java (.../ScratchieServiceImpl.java) (revision 88da40288a02be7961fe7f2e5b6c1c6c78655d59) +++ lams_tool_scratchie/src/java/org/lamsfoundation/lams/tool/scratchie/service/ScratchieServiceImpl.java (.../ScratchieServiceImpl.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -29,7 +29,8 @@ import com.fasterxml.jackson.databind.node.ObjectNode; import org.apache.commons.lang3.StringEscapeUtils; import org.apache.commons.lang3.StringUtils; -import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; +import org.apache.logging.log4j.LogManager; import org.apache.poi.ss.usermodel.IndexedColors; import org.lamsfoundation.lams.confidencelevel.ConfidenceLevelDTO; import org.lamsfoundation.lams.confidencelevel.VsaAnswerDTO; @@ -1391,14 +1392,14 @@ //escape for Javascript for (BurningQuestionItemDTO burningQuestionItemDto : burningQuestionItemDtos) { for (BurningQuestionDTO burningQuestionDto : burningQuestionItemDto.getBurningQuestionDtos()) { - String escapedSessionName = StringEscapeUtils.escapeJavaScript(burningQuestionDto.getSessionName()); + String escapedSessionName = StringEscapeUtils.escapeEcmaScript(burningQuestionDto.getSessionName()); burningQuestionDto.setSessionName(escapedSessionName); String escapedBurningQuestion = burningQuestionDto.getBurningQuestion().getQuestion(); if (prepareForHTML) { escapedBurningQuestion = escapedBurningQuestion.replaceAll("\n", "
"); } - escapedBurningQuestion = StringEscapeUtils.escapeJavaScript(escapedBurningQuestion); + escapedBurningQuestion = StringEscapeUtils.escapeEcmaScript(escapedBurningQuestion); burningQuestionDto.setEscapedBurningQuestion(escapedBurningQuestion); } } Index: lams_tool_scratchie/src/java/org/lamsfoundation/lams/tool/scratchie/web/controller/MonitoringController.java =================================================================== diff -u -r88da40288a02be7961fe7f2e5b6c1c6c78655d59 -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_scratchie/src/java/org/lamsfoundation/lams/tool/scratchie/web/controller/MonitoringController.java (.../MonitoringController.java) (revision 88da40288a02be7961fe7f2e5b6c1c6c78655d59) +++ lams_tool_scratchie/src/java/org/lamsfoundation/lams/tool/scratchie/web/controller/MonitoringController.java (.../MonitoringController.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -172,7 +172,7 @@ // escape JS sensitive characters in option descriptions for (GroupSummary summary : summaryList) { for (OptionDTO optionDto : summary.getOptionDtos()) { - String escapedAnswer = StringEscapeUtils.escapeJavaScript(optionDto.getAnswer()) + String escapedAnswer = StringEscapeUtils.escapeEcmaScript(optionDto.getAnswer()) .replace("\\r\\n", "
"); optionDto.setAnswer(escapedAnswer); } @@ -419,11 +419,11 @@ for (BurningQuestionDTO burningQuestionDto : burningQuestionItemDto.getBurningQuestionDtos()) { - String escapedBurningQuestion = StringEscapeUtils.unescapeJavaScript( + String escapedBurningQuestion = StringEscapeUtils.unescapeEcmaScript( burningQuestionDto.getEscapedBurningQuestion()); burningQuestionDto.setEscapedBurningQuestion(escapedBurningQuestion); - String sessionName = StringEscapeUtils.unescapeJavaScript(burningQuestionDto.getSessionName()); + String sessionName = StringEscapeUtils.unescapeEcmaScript(burningQuestionDto.getSessionName()); burningQuestionDto.setSessionName(sessionName); } Index: lams_tool_scribe/.classpath =================================================================== diff -u -r1b6b84b218055aab82004edfbe5f545b2c0eee0b -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_scribe/.classpath (.../.classpath) (revision 1b6b84b218055aab82004edfbe5f545b2c0eee0b) +++ lams_tool_scribe/.classpath (.../.classpath) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -5,6 +5,7 @@ + Index: lams_tool_scribe/src/java/org/lamsfoundation/lams/tool/scribe/web/controller/LearningWebsocketServer.java =================================================================== diff -u -r88da40288a02be7961fe7f2e5b6c1c6c78655d59 -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_scribe/src/java/org/lamsfoundation/lams/tool/scribe/web/controller/LearningWebsocketServer.java (.../LearningWebsocketServer.java) (revision 88da40288a02be7961fe7f2e5b6c1c6c78655d59) +++ lams_tool_scribe/src/java/org/lamsfoundation/lams/tool/scribe/web/controller/LearningWebsocketServer.java (.../LearningWebsocketServer.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -16,7 +16,8 @@ import jakarta.websocket.server.ServerEndpoint; import org.apache.commons.lang3.StringUtils; -import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; +import org.apache.logging.log4j.LogManager; import org.lamsfoundation.lams.tool.scribe.model.ScribeReportEntry; import org.lamsfoundation.lams.tool.scribe.model.ScribeSession; import org.lamsfoundation.lams.tool.scribe.model.ScribeUser; @@ -146,7 +147,8 @@ String cachedReportText = sessionCache.reports.get(uid); String storedReportText = HtmlUtils.htmlEscape(storedReport.getEntryText()); storedReportText = storedReportText != null ? storedReportText.replaceAll("\n", "
") : null; - if (cachedReportText == null ? storedReportText != null + if (cachedReportText == null + ? storedReportText != null : (storedReportText == null) || (cachedReportText.length() != storedReportText.length()) || !cachedReportText.equals(storedReportText)) { // we could be storing hash instead of full report @@ -211,14 +213,15 @@ */ @OnOpen public void registerUser(Session websocket) throws IOException { - Long toolSessionId = Long - .valueOf(websocket.getRequestParameterMap().get(AttributeNames.PARAM_TOOL_SESSION_ID).get(0)); + Long toolSessionId = Long.valueOf( + websocket.getRequestParameterMap().get(AttributeNames.PARAM_TOOL_SESSION_ID).get(0)); String login = websocket.getUserPrincipal().getName(); - ScribeUser user = LearningWebsocketServer.getScribeService().getUserByLoginNameAndSessionId(login, - toolSessionId); + ScribeUser user = LearningWebsocketServer.getScribeService() + .getUserByLoginNameAndSessionId(login, toolSessionId); if (user == null) { - throw new SecurityException("User \"" + login - + "\" is not a participant in Scribe activity with tool session ID " + toolSessionId); + throw new SecurityException( + "User \"" + login + "\" is not a participant in Scribe activity with tool session ID " + + toolSessionId); } Set sessionWebsockets = LearningWebsocketServer.websockets.get(toolSessionId); @@ -249,14 +252,15 @@ */ @OnClose public void unregisterUser(Session websocket) { - Long toolSessionId = Long - .valueOf(websocket.getRequestParameterMap().get(AttributeNames.PARAM_TOOL_SESSION_ID).get(0)); + Long toolSessionId = Long.valueOf( + websocket.getRequestParameterMap().get(AttributeNames.PARAM_TOOL_SESSION_ID).get(0)); LearningWebsocketServer.websockets.get(toolSessionId).remove(websocket); if (LearningWebsocketServer.log.isDebugEnabled()) { // If there was something wrong with the connection, put it into logs. - LearningWebsocketServer.log.debug("User " + websocket.getUserPrincipal().getName() - + " left Scribe with Tool Session ID: " + toolSessionId); + LearningWebsocketServer.log.debug( + "User " + websocket.getUserPrincipal().getName() + " left Scribe with Tool Session ID: " + + toolSessionId); } } @@ -291,11 +295,11 @@ * User has approved a report. */ private static void vote(Session websocket) { - Long toolSessionId = Long - .valueOf(websocket.getRequestParameterMap().get(AttributeNames.PARAM_TOOL_SESSION_ID).get(0)); + Long toolSessionId = Long.valueOf( + websocket.getRequestParameterMap().get(AttributeNames.PARAM_TOOL_SESSION_ID).get(0)); String userName = websocket.getUserPrincipal().getName(); - ScribeUser learner = LearningWebsocketServer.getScribeService().getUserByLoginNameAndSessionId(userName, - toolSessionId); + ScribeUser learner = LearningWebsocketServer.getScribeService() + .getUserByLoginNameAndSessionId(userName, toolSessionId); if (learner != null) { learner.setReportApproved(true); LearningWebsocketServer.getScribeService().saveOrUpdateScribeUser(learner); @@ -306,8 +310,8 @@ * The scribe has submitted a report. */ private static void submitReport(ObjectNode requestJSON, Session websocket) { - Long toolSessionId = Long - .valueOf(websocket.getRequestParameterMap().get(AttributeNames.PARAM_TOOL_SESSION_ID).get(0)); + Long toolSessionId = Long.valueOf( + websocket.getRequestParameterMap().get(AttributeNames.PARAM_TOOL_SESSION_ID).get(0)); String userName = websocket.getUserPrincipal().getName(); LearningWebsocketServer.getScribeService().submitReport(toolSessionId, userName, requestJSON); } @@ -334,8 +338,8 @@ private static IScribeService getScribeService() { if (LearningWebsocketServer.scribeService == null) { - WebApplicationContext wac = WebApplicationContextUtils - .getRequiredWebApplicationContext(SessionManager.getServletContext()); + WebApplicationContext wac = WebApplicationContextUtils.getRequiredWebApplicationContext( + SessionManager.getServletContext()); LearningWebsocketServer.scribeService = (IScribeService) wac.getBean("lascrbScribeService"); } return LearningWebsocketServer.scribeService; Index: lams_tool_survey/src/java/org/lamsfoundation/lams/tool/survey/web/controller/AuthoringConditionController.java =================================================================== diff -u -rc11264f3271f40971838dd015db6b5107f3bc55e -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_survey/src/java/org/lamsfoundation/lams/tool/survey/web/controller/AuthoringConditionController.java (.../AuthoringConditionController.java) (revision c11264f3271f40971838dd015db6b5107f3bc55e) +++ lams_tool_survey/src/java/org/lamsfoundation/lams/tool/survey/web/controller/AuthoringConditionController.java (.../AuthoringConditionController.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -105,7 +105,7 @@ String sessionMapID = surveyConditionForm.getSessionMapID(); SessionMap sessionMap = (SessionMap) request.getSession().getAttribute(sessionMapID); - int orderId = NumberUtils.stringToInt(request.getParameter(SurveyConstants.PARAM_ORDER_ID), -1); + int orderId = NumberUtils.toInt(request.getParameter(SurveyConstants.PARAM_ORDER_ID), -1); SurveyCondition condition = null; if (orderId != -1) { SortedSet conditionSet = getSurveyConditionSet(sessionMap); @@ -179,7 +179,7 @@ String sessionMapID = WebUtil.readStrParam(request, SurveyConstants.ATTR_SESSION_MAP_ID); SessionMap sessionMap = (SessionMap) request.getSession().getAttribute(sessionMapID); - int orderId = NumberUtils.stringToInt(request.getParameter(SurveyConstants.PARAM_ORDER_ID), -1); + int orderId = NumberUtils.toInt(request.getParameter(SurveyConstants.PARAM_ORDER_ID), -1); if (orderId != -1) { SortedSet conditionSet = getSurveyConditionSet(sessionMap); List conditionList = new ArrayList<>(conditionSet); @@ -234,7 +234,7 @@ String sessionMapID = WebUtil.readStrParam(request, SurveyConstants.ATTR_SESSION_MAP_ID); SessionMap sessionMap = (SessionMap) request.getSession().getAttribute(sessionMapID); - int orderId = NumberUtils.stringToInt(request.getParameter(SurveyConstants.PARAM_ORDER_ID), -1); + int orderId = NumberUtils.toInt(request.getParameter(SurveyConstants.PARAM_ORDER_ID), -1); if (orderId != -1) { SortedSet conditionSet = getSurveyConditionSet(sessionMap); List conditionList = new ArrayList<>(conditionSet); Index: lams_tool_survey/src/java/org/lamsfoundation/lams/tool/survey/web/controller/AuthoringController.java =================================================================== diff -u -rc11264f3271f40971838dd015db6b5107f3bc55e -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_survey/src/java/org/lamsfoundation/lams/tool/survey/web/controller/AuthoringController.java (.../AuthoringController.java) (revision c11264f3271f40971838dd015db6b5107f3bc55e) +++ lams_tool_survey/src/java/org/lamsfoundation/lams/tool/survey/web/controller/AuthoringController.java (.../AuthoringController.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -114,7 +114,7 @@ SessionMap sessionMap = (SessionMap) request.getSession() .getAttribute(sessionMapID); - int itemIdx = NumberUtils.stringToInt(request.getParameter(SurveyConstants.PARAM_ITEM_INDEX), -1); + int itemIdx = NumberUtils.toInt(request.getParameter(SurveyConstants.PARAM_ITEM_INDEX), -1); if (itemIdx != -1) { SortedSet surveyList = getSurveyItemList(sessionMap); List rList = new ArrayList<>(surveyList); @@ -178,7 +178,7 @@ SessionMap sessionMap = (SessionMap) request.getSession() .getAttribute(sessionMapID); - int itemIdx = NumberUtils.stringToInt(request.getParameter(SurveyConstants.PARAM_ITEM_INDEX), -1); + int itemIdx = NumberUtils.toInt(request.getParameter(SurveyConstants.PARAM_ITEM_INDEX), -1); if (itemIdx != -1) { SortedSet surveyList = getSurveyItemList(sessionMap); List rList = new ArrayList<>(surveyList); @@ -220,7 +220,7 @@ SessionMap sessionMap = (SessionMap) request.getSession() .getAttribute(sessionMapID); - int itemIdx = NumberUtils.stringToInt(request.getParameter(SurveyConstants.PARAM_ITEM_INDEX), -1); + int itemIdx = NumberUtils.toInt(request.getParameter(SurveyConstants.PARAM_ITEM_INDEX), -1); SurveyQuestion item = null; if (itemIdx != -1) { SortedSet surveyList = getSurveyItemList(sessionMap); @@ -272,7 +272,7 @@ SessionMap sessionMap = (SessionMap) request.getSession() .getAttribute(sessionMapID); - int itemIdx = NumberUtils.stringToInt(request.getParameter(SurveyConstants.PARAM_ITEM_INDEX), -1); + int itemIdx = NumberUtils.toInt(request.getParameter(SurveyConstants.PARAM_ITEM_INDEX), -1); SortedSet surveyList = getSurveyItemList(sessionMap); List rList = new ArrayList<>(surveyList); SurveyQuestion item = rList.get(itemIdx); @@ -679,7 +679,7 @@ } } - int count = NumberUtils.stringToInt(paramMap.get(AuthoringController.INSTRUCTION_ITEM_COUNT)); + int count = NumberUtils.toInt(paramMap.get(AuthoringController.INSTRUCTION_ITEM_COUNT)); for (int idx = 0; idx < count; idx++) { String item = paramMap.get(AuthoringController.INSTRUCTION_ITEM_DESC_PREFIX + idx); if (item == null) { @@ -740,7 +740,7 @@ .getAttribute(itemForm.getSessionMapID()); // check whether it is "edit(old item)" or "add(new item)" SortedSet surveyList = getSurveyItemList(sessionMap); - int itemIdx = NumberUtils.stringToInt(itemForm.getItemIndex(), -1); + int itemIdx = NumberUtils.toInt(itemForm.getItemIndex(), -1); SurveyQuestion item = itemForm.getQuestion(); if (itemIdx == -1) { // add @@ -816,7 +816,7 @@ */ @RequestMapping(value = "/newInstruction") public String newInstruction(HttpServletRequest request) { - int count = NumberUtils.stringToInt(request.getParameter(AuthoringController.INSTRUCTION_ITEM_COUNT), 0); + int count = NumberUtils.toInt(request.getParameter(AuthoringController.INSTRUCTION_ITEM_COUNT), 0); List instructionList = new ArrayList(++count); for (int idx = 0; idx < count; idx++) { String item = request.getParameter(AuthoringController.INSTRUCTION_ITEM_DESC_PREFIX + idx); @@ -841,8 +841,8 @@ */ @RequestMapping(value = "/removeInstruction") public String removeInstruction(HttpServletRequest request) { - int count = NumberUtils.stringToInt(request.getParameter(AuthoringController.INSTRUCTION_ITEM_COUNT), 0); - int removeIdx = NumberUtils.stringToInt(request.getParameter("removeIdx"), -1); + int count = NumberUtils.toInt(request.getParameter(AuthoringController.INSTRUCTION_ITEM_COUNT), 0); + int removeIdx = NumberUtils.toInt(request.getParameter("removeIdx"), -1); List instructionList = new ArrayList(count - 1); for (int idx = 0; idx < count; idx++) { String item = request.getParameter(AuthoringController.INSTRUCTION_ITEM_DESC_PREFIX + idx); Index: lams_tool_task/src/java/org/lamsfoundation/lams/tool/taskList/dao/hibernate/TaskListUserDAOHibernate.java =================================================================== diff -u -r129d0eb39f81fcdb4ef6e3b5ec15c1c94d9324b3 -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_task/src/java/org/lamsfoundation/lams/tool/taskList/dao/hibernate/TaskListUserDAOHibernate.java (.../TaskListUserDAOHibernate.java) (revision 129d0eb39f81fcdb4ef6e3b5ec15c1c94d9324b3) +++ lams_tool_task/src/java/org/lamsfoundation/lams/tool/taskList/dao/hibernate/TaskListUserDAOHibernate.java (.../TaskListUserDAOHibernate.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -202,7 +202,7 @@ query.setParameter("sessionId", sessionId); // support for custom search from a toolbar searchString = searchString == null ? "" : searchString; - query.setString("searchString", searchString); + query.setParameter("searchString", searchString); List list = query.list(); if ((list == null) || (list.size() == 0)) { Index: lams_tool_task/src/java/org/lamsfoundation/lams/tool/taskList/web/controller/AuthoringController.java =================================================================== diff -u -rc11264f3271f40971838dd015db6b5107f3bc55e -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_task/src/java/org/lamsfoundation/lams/tool/taskList/web/controller/AuthoringController.java (.../AuthoringController.java) (revision c11264f3271f40971838dd015db6b5107f3bc55e) +++ lams_tool_task/src/java/org/lamsfoundation/lams/tool/taskList/web/controller/AuthoringController.java (.../AuthoringController.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -392,7 +392,7 @@ SessionMap sessionMap = (SessionMap) request.getSession() .getAttribute(sessionMapID); - int itemIdx = NumberUtils.stringToInt(request.getParameter(TaskListConstants.PARAM_ITEM_INDEX), -1); + int itemIdx = NumberUtils.toInt(request.getParameter(TaskListConstants.PARAM_ITEM_INDEX), -1); TaskListItem item = null; if (itemIdx != -1) { SortedSet taskListList = getTaskListItemList(sessionMap); @@ -453,7 +453,7 @@ SessionMap sessionMap = (SessionMap) request.getSession() .getAttribute(sessionMapID); - int itemIdx = NumberUtils.stringToInt(request.getParameter(TaskListConstants.PARAM_ITEM_INDEX), -1); + int itemIdx = NumberUtils.toInt(request.getParameter(TaskListConstants.PARAM_ITEM_INDEX), -1); if (itemIdx != -1) { SortedSet taskListList = getTaskListItemList(sessionMap); List rList = new ArrayList<>(taskListList); @@ -501,7 +501,7 @@ SessionMap sessionMap = (SessionMap) request.getSession() .getAttribute(sessionMapID); - int itemIdx = NumberUtils.stringToInt(request.getParameter(TaskListConstants.PARAM_ITEM_INDEX), -1); + int itemIdx = NumberUtils.toInt(request.getParameter(TaskListConstants.PARAM_ITEM_INDEX), -1); if (itemIdx != -1) { SortedSet taskListList = getTaskListItemList(sessionMap); List rList = new ArrayList<>(taskListList); @@ -618,7 +618,7 @@ .getAttribute(itemForm.getSessionMapID()); // check whether it is "edit(old item)" or "add(new item)" SortedSet taskListList = getTaskListItemList(sessionMap); - int itemIdx = NumberUtils.stringToInt(itemForm.getItemIndex(), -1); + int itemIdx = NumberUtils.toInt(itemForm.getItemIndex(), -1); TaskListItem item = null; if (itemIdx == -1) { // add Index: lams_tool_task/src/java/org/lamsfoundation/lams/tool/taskList/web/controller/AuthoringTaskListConditionController.java =================================================================== diff -u -rc11264f3271f40971838dd015db6b5107f3bc55e -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_task/src/java/org/lamsfoundation/lams/tool/taskList/web/controller/AuthoringTaskListConditionController.java (.../AuthoringTaskListConditionController.java) (revision c11264f3271f40971838dd015db6b5107f3bc55e) +++ lams_tool_task/src/java/org/lamsfoundation/lams/tool/taskList/web/controller/AuthoringTaskListConditionController.java (.../AuthoringTaskListConditionController.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -117,7 +117,7 @@ SessionMap sessionMap = (SessionMap) request.getSession() .getAttribute(sessionMapID); - int sequenceId = NumberUtils.stringToInt(request.getParameter(TaskListConstants.PARAM_SEQUENCE_ID), -1); + int sequenceId = NumberUtils.toInt(request.getParameter(TaskListConstants.PARAM_SEQUENCE_ID), -1); TaskListCondition item = null; if (sequenceId != -1) { SortedSet conditionList = getTaskListConditionList(sessionMap); @@ -181,7 +181,7 @@ SessionMap sessionMap = (SessionMap) request.getSession() .getAttribute(sessionMapID); - int sequenceId = NumberUtils.stringToInt(request.getParameter(TaskListConstants.PARAM_SEQUENCE_ID), -1); + int sequenceId = NumberUtils.toInt(request.getParameter(TaskListConstants.PARAM_SEQUENCE_ID), -1); if (sequenceId != -1) { SortedSet conditionList = getTaskListConditionList(sessionMap); List rList = new ArrayList<>(conditionList); @@ -224,7 +224,7 @@ SessionMap sessionMap = (SessionMap) request.getSession() .getAttribute(sessionMapID); - int sequenceId = NumberUtils.stringToInt(request.getParameter(TaskListConstants.PARAM_SEQUENCE_ID), -1); + int sequenceId = NumberUtils.toInt(request.getParameter(TaskListConstants.PARAM_SEQUENCE_ID), -1); if (sequenceId != -1) { SortedSet conditionList = getTaskListConditionList(sessionMap); List rList = new ArrayList<>(conditionList); @@ -355,7 +355,7 @@ .getAttribute(form.getSessionMapID()); // check whether it is "edit(old item)" or "add(new item)" SortedSet conditionList = getTaskListConditionList(sessionMap); - int sequenceId = NumberUtils.stringToInt(form.getSequenceId(), -1); + int sequenceId = NumberUtils.toInt(form.getSequenceId(), -1); TaskListCondition condition = null; if (sequenceId == -1) { // add Index: lams_tool_vote/src/java/org/lamsfoundation/lams/tool/vote/dao/hibernate/VoteUsrAttemptDAO.java =================================================================== diff -u -r88da40288a02be7961fe7f2e5b6c1c6c78655d59 -rcb01d2d8c064728cb0e2ac524d2f89622a534e39 --- lams_tool_vote/src/java/org/lamsfoundation/lams/tool/vote/dao/hibernate/VoteUsrAttemptDAO.java (.../VoteUsrAttemptDAO.java) (revision 88da40288a02be7961fe7f2e5b6c1c6c78655d59) +++ lams_tool_vote/src/java/org/lamsfoundation/lams/tool/vote/dao/hibernate/VoteUsrAttemptDAO.java (.../VoteUsrAttemptDAO.java) (revision cb01d2d8c064728cb0e2ac524d2f89622a534e39) @@ -454,8 +454,8 @@ queryText.append(" ORDER BY " + sortingOrder); NativeQuery query = getSession().createNativeQuery(queryText.toString()); - query.addScalar("userUid", LongType.INSTANCE).addScalar("login", StandardBasicTypes.STRING) - .addScalar("fullName", StandardBasicTypes.STRING).addScalar("userEntryUid", LongType.INSTANCE) + query.addScalar("userUid", StandardBasicTypes.LONG).addScalar("login", StandardBasicTypes.STRING) + .addScalar("fullName", StandardBasicTypes.STRING).addScalar("userEntryUid", StandardBasicTypes.LONG) .addScalar("userEntry", StandardBasicTypes.STRING).addScalar("attemptTime", TimestampType.INSTANCE) .addScalar("visible", BooleanType.INSTANCE).addScalar("portraitId", StandardBasicTypes.STRING) .setFirstResult(page * size).setMaxResults(size) @@ -529,7 +529,7 @@ public List getStatisticsBySession(Long toolContentId) { NativeQuery query = getSession().createNativeQuery(GET_STATISTICS); - query.addScalar("sessionUid", LongType.INSTANCE).addScalar("sessionName", StandardBasicTypes.STRING) + query.addScalar("sessionUid", StandardBasicTypes.LONG).addScalar("sessionName", StandardBasicTypes.STRING) .addScalar("countUsersComplete", StandardBasicTypes.INTEGER).setParameter("contentId", toolContentId) .setResultTransformer(Transformers.aliasToBean(VoteStatsDTO.class));