Index: lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/dao/hibernate/QaSessionDAO.java =================================================================== diff -u -r91f0740e75daa643981b757e49d1ed2ed7f0a528 -rf42f15541a35619341928f8846612a4655996f99 --- lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/dao/hibernate/QaSessionDAO.java (.../QaSessionDAO.java) (revision 91f0740e75daa643981b757e49d1ed2ed7f0a528) +++ lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/dao/hibernate/QaSessionDAO.java (.../QaSessionDAO.java) (revision f42f15541a35619341928f8846612a4655996f99) @@ -38,11 +38,10 @@ */ public class QaSessionDAO extends HibernateDaoSupport implements IQaSessionDAO { private static final String COUNT_SESSION_COMPLETE = "from qaSession in class QaSession where qaSession.session_status='COMPLETE'"; - private static final String GET_SESSIONS_FROM_CONTENT = "select qas.qaSessionId from QaSession qas where qas.qaContent=:qaContent order by qas.qaSessionId"; - private static final String GET_SESSIONNAMES_FROM_CONTENT = "select qas.session_name from QaSession qas where qas.qaContent=:qaContent order by qas.qaSessionId"; + private static final String GET_SESSION_IDS_FROM_CONTENT = "select qas.qaSessionId from QaSession qas where qas.qaContent=:qaContent order by qas.session_name asc"; + private static final String GET_SESSION_NAMES_FROM_CONTENT = "select qas.session_name from QaSession qas where qas.qaContent=:qaContent order by qas.session_name asc"; public int countSessionComplete(QaContent qa) { - HibernateTemplate templ = this.getHibernateTemplate(); List list = getSession().createQuery(COUNT_SESSION_COMPLETE).list(); int sessionCount = 0; @@ -60,7 +59,6 @@ */ public QaSession getQaSessionById(long qaSessionId) { String query = "from QaSession as qus where qus.qaSessionId = ?"; - HibernateTemplate templ = this.getHibernateTemplate(); List list = getSession().createQuery(query).setLong(0, qaSessionId).list(); if (list != null && list.size() > 0) { @@ -95,11 +93,11 @@ } public List getSessionsFromContent(QaContent qaContent) { - return (getHibernateTemplate().findByNamedParam(GET_SESSIONS_FROM_CONTENT, "qaContent", qaContent)); + return (getHibernateTemplate().findByNamedParam(GET_SESSION_IDS_FROM_CONTENT, "qaContent", qaContent)); } public List getSessionNamesFromContent(QaContent qaContent) { - return (getHibernateTemplate().findByNamedParam(GET_SESSIONNAMES_FROM_CONTENT, "qaContent", qaContent)); + return (getHibernateTemplate().findByNamedParam(GET_SESSION_NAMES_FROM_CONTENT, "qaContent", qaContent)); } } Index: lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/service/IQaService.java =================================================================== diff -u -r7817bc4fce30416c9737875ae2d137be0c6aa8ba -rf42f15541a35619341928f8846612a4655996f99 --- lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/service/IQaService.java (.../IQaService.java) (revision 7817bc4fce30416c9737875ae2d137be0c6aa8ba) +++ lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/service/IQaService.java (.../IQaService.java) (revision f42f15541a35619341928f8846612a4655996f99) @@ -28,6 +28,8 @@ import java.util.List; import java.util.SortedSet; +import javax.servlet.http.HttpServletRequest; + import org.lamsfoundation.lams.contentrepository.ITicket; import org.lamsfoundation.lams.notebook.model.NotebookEntry; import org.lamsfoundation.lams.tool.IToolVO; @@ -43,6 +45,7 @@ import org.lamsfoundation.lams.tool.qa.QaUsrResp; import org.lamsfoundation.lams.tool.qa.QaWizardCategory; import org.lamsfoundation.lams.tool.qa.dto.AverageRatingDTO; +import org.lamsfoundation.lams.tool.qa.dto.ReflectionDTO; import org.lamsfoundation.lams.tool.qa.util.QaApplicationException; import org.lamsfoundation.lams.util.audit.IAuditService; @@ -311,5 +314,14 @@ AverageRatingDTO rateResponse(Long responseId, Long userId, Long toolSessionID, float rating); AverageRatingDTO getAverageRatingDTOByResponse(Long responseId); + + /** + * Return reflection data for all sessions. + * + * @param content + * @param userID + * @return + */ + List getReflectList(QaContent content, String userID); } Index: lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/service/QaServicePOJO.java =================================================================== diff -u -r33da76d05725a84e191a5f6dca50b394cca3c1ee -rf42f15541a35619341928f8846612a4655996f99 --- lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/service/QaServicePOJO.java (.../QaServicePOJO.java) (revision 33da76d05725a84e191a5f6dca50b394cca3c1ee) +++ lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/service/QaServicePOJO.java (.../QaServicePOJO.java) (revision f42f15541a35619341928f8846612a4655996f99) @@ -29,13 +29,15 @@ import java.util.Date; import java.util.Hashtable; import java.util.Iterator; +import java.util.LinkedList; import java.util.List; import java.util.Random; import java.util.Set; import java.util.SortedMap; import java.util.SortedSet; import java.util.TreeSet; +import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpSession; import org.apache.log4j.Logger; @@ -56,6 +58,7 @@ import org.lamsfoundation.lams.learningdesign.service.IExportToolContentService; import org.lamsfoundation.lams.learningdesign.service.ImportToolContentException; import org.lamsfoundation.lams.notebook.model.NotebookEntry; +import org.lamsfoundation.lams.notebook.service.CoreNotebookConstants; import org.lamsfoundation.lams.notebook.service.ICoreNotebookService; import org.lamsfoundation.lams.tool.IToolVO; import org.lamsfoundation.lams.tool.ToolContentImport102Manager; @@ -88,7 +91,10 @@ import org.lamsfoundation.lams.tool.qa.dao.IQaWizardDAO; import org.lamsfoundation.lams.tool.qa.dao.IResponseRatingDAO; import org.lamsfoundation.lams.tool.qa.dto.AverageRatingDTO; +import org.lamsfoundation.lams.tool.qa.dto.ReflectionDTO; import org.lamsfoundation.lams.tool.qa.util.QaApplicationException; +import org.lamsfoundation.lams.tool.qa.util.QaSessionComparator; +import org.lamsfoundation.lams.tool.qa.util.QaUtils; import org.lamsfoundation.lams.tool.service.ILamsToolService; import org.lamsfoundation.lams.usermanagement.dto.UserDTO; import org.lamsfoundation.lams.usermanagement.service.IUserManagementService; @@ -688,7 +694,67 @@ public AverageRatingDTO getAverageRatingDTOByResponse(Long responseId) { return qaResponseRatingDAO.getAverageRatingDTOByResponse(responseId); } + + public List getReflectList(QaContent content, String userID) { + //reflection data for all sessions + List reflectionDTOs = new LinkedList(); + Set sessions = new TreeSet(new QaSessionComparator()); + sessions.addAll(content.getQaSessions()); + + if (userID == null) { + // all users mode + for (QaSession session : sessions) { + + for (Iterator userIter = session.getQaQueUsers().iterator(); userIter.hasNext();) { + QaQueUsr user = (QaQueUsr) userIter.next(); + + NotebookEntry notebookEntry = this.getEntry(session.getQaSessionId(), + CoreNotebookConstants.NOTEBOOK_TOOL, QaAppConstants.MY_SIGNATURE, new Integer(user + .getQueUsrId().toString())); + + if (notebookEntry != null) { + ReflectionDTO reflectionDTO = new ReflectionDTO(); + reflectionDTO.setUserId(user.getQueUsrId().toString()); + reflectionDTO.setSessionId(session.getQaSessionId().toString()); + reflectionDTO.setUserName(user.getFullname()); + reflectionDTO.setReflectionUid(notebookEntry.getUid().toString()); + String notebookEntryPresentable = QaUtils.replaceNewLines(notebookEntry.getEntry()); + reflectionDTO.setEntry(notebookEntryPresentable); + reflectionDTOs.add(reflectionDTO); + } + } + } + } else { + // single user mode + for (QaSession session : sessions) { + + for (Iterator userIter = session.getQaQueUsers().iterator(); userIter.hasNext();) { + QaQueUsr user = (QaQueUsr) userIter.next(); + + if (user.getQueUsrId().toString().equals(userID)) { + NotebookEntry notebookEntry = this.getEntry(session.getQaSessionId(), + CoreNotebookConstants.NOTEBOOK_TOOL, QaAppConstants.MY_SIGNATURE, new Integer(user + .getQueUsrId().toString())); + + if (notebookEntry != null) { + ReflectionDTO reflectionDTO = new ReflectionDTO(); + reflectionDTO.setUserId(user.getQueUsrId().toString()); + reflectionDTO.setSessionId(session.getQaSessionId().toString()); + reflectionDTO.setUserName(user.getFullname()); + reflectionDTO.setReflectionUid(notebookEntry.getUid().toString()); + String notebookEntryPresentable = QaUtils.replaceNewLines(notebookEntry.getEntry()); + reflectionDTO.setEntry(notebookEntryPresentable); + reflectionDTOs.add(reflectionDTO); + } + } + } + } + } + + return reflectionDTOs; + } + /** * Export the XML fragment for the tool's content, along with any files needed for the content. * Index: lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/util/QaSessionComparator.java =================================================================== diff -u --- lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/util/QaSessionComparator.java (revision 0) +++ lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/util/QaSessionComparator.java (revision f42f15541a35619341928f8846612a4655996f99) @@ -0,0 +1,22 @@ +package org.lamsfoundation.lams.tool.qa.util; + +import java.util.Comparator; + +import org.lamsfoundation.lams.tool.qa.QaSession; + + +/** + * McSessionComparator. + */ +public class QaSessionComparator implements Comparator { + + public int compare(QaSession o1, QaSession o2) { + if (o1 != null && o2 != null) { + return o1.getSession_name().compareTo(o2.getSession_name()); + } else if (o1 != null) + return 1; + else + return -1; + } + +} Index: lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/web/ExportServlet.java =================================================================== diff -u -r046d789cf4472c7f0a8b38702ebef2e243efb157 -rf42f15541a35619341928f8846612a4655996f99 --- lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/web/ExportServlet.java (.../ExportServlet.java) (revision 046d789cf4472c7f0a8b38702ebef2e243efb157) +++ lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/web/ExportServlet.java (.../ExportServlet.java) (revision f42f15541a35619341928f8846612a4655996f99) @@ -37,6 +37,7 @@ import org.lamsfoundation.lams.tool.qa.QaQueUsr; import org.lamsfoundation.lams.tool.qa.QaSession; import org.lamsfoundation.lams.tool.qa.dto.GeneralLearnerFlowDTO; +import org.lamsfoundation.lams.tool.qa.dto.ReflectionDTO; import org.lamsfoundation.lams.tool.qa.service.IQaService; import org.lamsfoundation.lams.tool.qa.service.QaServiceProxy; import org.lamsfoundation.lams.tool.qa.util.QaApplicationException; @@ -135,8 +136,10 @@ qaMonitoringAction .refreshSummaryData(request, content, qaService, content.isUsernameVisible(), true, toolSessionID .toString(), userID.toString(), generalLearnerFlowDTO, false, toolSessionID.toString()); - qaMonitoringAction.prepareReflectionData(request, content, qaService, userID.toString(), true, - toolSessionID.toString()); + + List reflectionDTOs = qaService.getReflectList(content, userID.toString()); + request.setAttribute(QaAppConstants.REFLECTIONS_CONTAINER_DTO, reflectionDTOs); + request.getSession().setAttribute(QaAppConstants.REFLECTIONS_CONTAINER_DTO, reflectionDTOs); } generalLearnerFlowDTO = (GeneralLearnerFlowDTO) request.getAttribute(GENERAL_LEARNER_FLOW_DTO); @@ -173,7 +176,9 @@ request.getSession().setAttribute(GENERAL_LEARNER_FLOW_DTO, generalLearnerFlowDTO); request.getSession().setAttribute(PORTFOLIO_EXPORT_MODE, "teacher"); - qaMonitoringAction.prepareReflectionData(request, content, qaService, null, true, "All"); + List reflectionDTOs = qaService.getReflectList(content, userID.toString()); + request.setAttribute(QaAppConstants.REFLECTIONS_CONTAINER_DTO, reflectionDTOs); + request.getSession().setAttribute(QaAppConstants.REFLECTIONS_CONTAINER_DTO, reflectionDTOs); request.setAttribute("currentMonitoredToolSession", "All"); Index: lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/web/MonitoringUtil.java =================================================================== diff -u -r629b2631320321b57015e15be850e7c6b747225f -rf42f15541a35619341928f8846612a4655996f99 --- lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/web/MonitoringUtil.java (.../MonitoringUtil.java) (revision 629b2631320321b57015e15be850e7c6b747225f) +++ lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/web/MonitoringUtil.java (.../MonitoringUtil.java) (revision f42f15541a35619341928f8846612a4655996f99) @@ -29,8 +29,10 @@ import java.util.LinkedList; import java.util.List; import java.util.Map; +import java.util.Set; import java.util.TimeZone; import java.util.TreeMap; +import java.util.TreeSet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpSession; @@ -49,6 +51,7 @@ import org.lamsfoundation.lams.tool.qa.dto.QaMonitoredUserDTO; import org.lamsfoundation.lams.tool.qa.dto.QaStatsDTO; import org.lamsfoundation.lams.tool.qa.service.IQaService; +import org.lamsfoundation.lams.tool.qa.util.QaSessionComparator; import org.lamsfoundation.lams.tool.qa.util.QaStringComparator; import org.lamsfoundation.lams.tool.qa.util.QaUtils; import org.lamsfoundation.lams.usermanagement.dto.UserDTO; @@ -390,25 +393,25 @@ } } - public static List buildGroupBasedSessionData(HttpServletRequest request, QaContent qaContent, IQaService qaService) { - List listQuestions = qaService.getAllQuestionEntries(qaContent.getUid()); + public static List buildGroupBasedSessionData(HttpServletRequest request, QaContent qaContent, IQaService qaService) { + List listQuestions = qaService.getAllQuestionEntries(qaContent.getUid()); - List listAllGroupsContainerDTO = new LinkedList(); + List listAllGroupsContainerDTO = new LinkedList(); - Iterator iteratorSession = qaContent.getQaSessions().iterator(); - while (iteratorSession.hasNext()) { - QaSession qaSession = (QaSession) iteratorSession.next(); - String currentSessionId = qaSession.getQaSessionId().toString(); + Set sessions = new TreeSet(new QaSessionComparator()); + sessions.addAll(qaContent.getQaSessions()); + for (QaSession session : sessions) { + String currentSessionId = session.getQaSessionId().toString(); - String currentSessionName = qaSession.getSession_name(); + String currentSessionName = session.getSession_name(); QaAllGroupsDTO qaAllGroupsDTO = new QaAllGroupsDTO(); - List listMonitoredAnswersContainerDTO = new LinkedList(); + List listMonitoredAnswersContainerDTO = new LinkedList(); - if (qaSession != null) { - Iterator itListQuestions = listQuestions.iterator(); + if (session != null) { + Iterator itListQuestions = listQuestions.iterator(); while (itListQuestions.hasNext()) { - QaQueContent qaQuestion = (QaQueContent) itListQuestions.next(); + QaQueContent qaQuestion = itListQuestions.next(); if (qaQuestion != null) { QaMonitoredAnswersDTO qaMonitoredAnswersDTO = new QaMonitoredAnswersDTO(); Index: lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/web/QaMonitoringAction.java =================================================================== diff -u -r629b2631320321b57015e15be850e7c6b747225f -rf42f15541a35619341928f8846612a4655996f99 --- lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/web/QaMonitoringAction.java (.../QaMonitoringAction.java) (revision 629b2631320321b57015e15be850e7c6b747225f) +++ lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/web/QaMonitoringAction.java (.../QaMonitoringAction.java) (revision f42f15541a35619341928f8846612a4655996f99) @@ -103,6 +103,7 @@ import java.util.Map; import java.util.Set; import java.util.TimeZone; +import java.util.TreeSet; import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; @@ -134,6 +135,7 @@ import org.lamsfoundation.lams.tool.qa.dto.ReflectionDTO; import org.lamsfoundation.lams.tool.qa.service.IQaService; import org.lamsfoundation.lams.tool.qa.service.QaServiceProxy; +import org.lamsfoundation.lams.tool.qa.util.QaSessionComparator; import org.lamsfoundation.lams.tool.qa.util.QaUtils; import org.lamsfoundation.lams.tool.qa.web.form.QaAuthoringForm; import org.lamsfoundation.lams.tool.qa.web.form.QaMonitoringForm; @@ -208,7 +210,8 @@ } request.setAttribute(QaAppConstants.EDIT_ACTIVITY_DTO, editActivityDTO); - prepareReflectionData(request, qaContent, qaService, null, false, "All"); + List reflectionDTOs = qaService.getReflectList(qaContent, null); + request.setAttribute(QaAppConstants.REFLECTIONS_CONTAINER_DTO, reflectionDTOs); prepareEditActivityScreenData(request, qaContent); @@ -305,7 +308,8 @@ generalMonitoringDTO.setEditResponse(new Boolean(false).toString()); - prepareReflectionData(request, qaContent, qaService, null, false, "All"); + List reflectionDTOs = qaService.getReflectList(qaContent, null); + request.setAttribute(QaAppConstants.REFLECTIONS_CONTAINER_DTO, reflectionDTOs); prepareEditActivityScreenData(request, qaContent); @@ -436,7 +440,8 @@ request.setAttribute(QaAppConstants.QA_GENERAL_MONITORING_DTO, generalMonitoringDTO); - prepareReflectionData(request, qaContent, qaService, null, false, "All"); + List reflectionDTOs = qaService.getReflectList(qaContent, null); + request.setAttribute(QaAppConstants.REFLECTIONS_CONTAINER_DTO, reflectionDTOs); prepareEditActivityScreenData(request, qaContent); @@ -526,7 +531,8 @@ } request.setAttribute(QaAppConstants.EDIT_ACTIVITY_DTO, editActivityDTO); - prepareReflectionData(request, qaContent, qaService, null, false, "All"); + List reflectionDTOs = qaService.getReflectList(qaContent, null); + request.setAttribute(QaAppConstants.REFLECTIONS_CONTAINER_DTO, reflectionDTOs); prepareEditActivityScreenData(request, qaContent); @@ -595,7 +601,8 @@ prepareEditActivityScreenData(request, qaContent); - prepareReflectionData(request, qaContent, qaService, null, false, "All"); + List reflectionDTOs = qaService.getReflectList(qaContent, null); + request.setAttribute(QaAppConstants.REFLECTIONS_CONTAINER_DTO, reflectionDTOs); if (qaService.isStudentActivityOccurredGlobal(qaContent)) { generalMonitoringDTO.setUserExceptionNoToolSessions(new Boolean(false).toString()); @@ -717,9 +724,9 @@ GeneralLearnerFlowDTO generalLearnerFlowDTO = LearningUtil.buildGeneralLearnerFlowDTO(qaContent); + List reflectionDTOs = qaService.getReflectList(qaContent, null); + request.setAttribute(QaAppConstants.REFLECTIONS_CONTAINER_DTO, reflectionDTOs); - prepareReflectionData(request, qaContent, qaService, null, false, currentMonitoredToolSession); - prepareEditActivityScreenData(request, qaContent); EditActivityDTO editActivityDTO = new EditActivityDTO(); @@ -814,7 +821,8 @@ refreshSummaryData(request, qaContent, qaService, true, false, null, null, generalLearnerFlowDTO, true, currentMonitoredToolSession); - prepareReflectionData(request, qaContent, qaService, null, false, currentMonitoredToolSession); + List reflectionDTOs = qaService.getReflectList(qaContent, null); + request.setAttribute(QaAppConstants.REFLECTIONS_CONTAINER_DTO, reflectionDTOs); prepareEditActivityScreenData(request, qaContent); @@ -896,7 +904,8 @@ refreshSummaryData(request, qaContent, qaService, true, false, null, null, generalLearnerFlowDTO, true, currentMonitoredToolSession); - prepareReflectionData(request, qaContent, qaService, null, false, currentMonitoredToolSession); + List reflectionDTOs = qaService.getReflectList(qaContent, null); + request.setAttribute(QaAppConstants.REFLECTIONS_CONTAINER_DTO, reflectionDTOs); prepareEditActivityScreenData(request, qaContent); @@ -1002,7 +1011,8 @@ refreshSummaryData(request, qaContent, qaService, true, false, null, null, generalLearnerFlowDTO, false, currentMonitoredToolSession); - prepareReflectionData(request, qaContent, qaService, null, false, currentMonitoredToolSession); + List reflectionDTOs = qaService.getReflectList(qaContent, null); + request.setAttribute(QaAppConstants.REFLECTIONS_CONTAINER_DTO, reflectionDTOs); prepareEditActivityScreenData(request, qaContent); @@ -1090,7 +1100,8 @@ refreshSummaryData(request, qaContent, qaService, true, false, null, null, generalLearnerFlowDTO, false, currentMonitoredToolSession); - prepareReflectionData(request, qaContent, qaService, null, false, currentMonitoredToolSession); + List reflectionDTOs = qaService.getReflectList(qaContent, null); + request.setAttribute(QaAppConstants.REFLECTIONS_CONTAINER_DTO, reflectionDTOs); prepareEditActivityScreenData(request, qaContent); @@ -1178,7 +1189,8 @@ refreshSummaryData(request, qaContent, qaService, true, false, null, null, generalLearnerFlowDTO, false, currentMonitoredToolSession); - prepareReflectionData(request, qaContent, qaService, null, false, currentMonitoredToolSession); + List reflectionDTOs = qaService.getReflectList(qaContent, null); + request.setAttribute(QaAppConstants.REFLECTIONS_CONTAINER_DTO, reflectionDTOs); prepareEditActivityScreenData(request, qaContent); @@ -1370,7 +1382,8 @@ request.setAttribute(QaAppConstants.GENERAL_LEARNER_FLOW_DTO, generalLearnerFlowDTO); } - prepareReflectionData(request, qaContent, qaService, null, false, currentMonitoredToolSession); + List reflectionDTOs = qaService.getReflectList(qaContent, null); + request.setAttribute(QaAppConstants.REFLECTIONS_CONTAINER_DTO, reflectionDTOs); prepareEditActivityScreenData(request, qaContent); @@ -1427,7 +1440,8 @@ generalMonitoringDTO.setCountSessionComplete(new Integer(countSessionComplete).toString()); - prepareReflectionData(request, qaContent, qaService, null, false, "All"); + List reflectionDTOs = qaService.getReflectList(qaContent, null); + request.setAttribute(QaAppConstants.REFLECTIONS_CONTAINER_DTO, reflectionDTOs); prepareEditActivityScreenData(request, qaContent); @@ -1520,7 +1534,8 @@ request.setAttribute(QaAppConstants.CURRENT_MONITORED_TOOL_SESSION, currentMonitoredToolSession); - prepareReflectionData(request, qaContent, qaService, null, false, currentMonitoredToolSession); + List reflectionDTOs = qaService.getReflectList(qaContent, null); + request.setAttribute(QaAppConstants.REFLECTIONS_CONTAINER_DTO, reflectionDTOs); prepareEditActivityScreenData(request, qaContent); @@ -1600,10 +1615,9 @@ request.setAttribute(QaAppConstants.SELECTION_CASE, new Long(1)); } - + List reflectionDTOs = qaService.getReflectList(qaContent, null); + request.setAttribute(QaAppConstants.REFLECTIONS_CONTAINER_DTO, reflectionDTOs); - prepareReflectionData(request, qaContent, qaService, null, false, currentMonitoredToolSession); - prepareEditActivityScreenData(request, qaContent); EditActivityDTO editActivityDTO = new EditActivityDTO(); @@ -1687,7 +1701,8 @@ refreshSummaryData(request, qaContent, qaService, true, false, null, null, generalLearnerFlowDTO, false, currentMonitoredToolSession); - prepareReflectionData(request, qaContent, qaService, null, false, currentMonitoredToolSession); + List reflectionDTOs = qaService.getReflectList(qaContent, null); + request.setAttribute(QaAppConstants.REFLECTIONS_CONTAINER_DTO, reflectionDTOs); prepareEditActivityScreenData(request, qaContent); @@ -1766,7 +1781,8 @@ refreshSummaryData(request, qaContent, qaService, true, false, null, null, generalLearnerFlowDTO, false, currentMonitoredToolSession); - prepareReflectionData(request, qaContent, qaService, null, false, currentMonitoredToolSession); + List reflectionDTOs = qaService.getReflectList(qaContent, null); + request.setAttribute(QaAppConstants.REFLECTIONS_CONTAINER_DTO, reflectionDTOs); prepareEditActivityScreenData(request, qaContent); @@ -2021,7 +2037,8 @@ request.setAttribute(QaAppConstants.QA_GENERAL_MONITORING_DTO, qaGeneralMonitoringDTO); - prepareReflectionData(request, qaContent, qaService, null, false, "All"); + List reflectionDTOs = qaService.getReflectList(qaContent, null); + request.setAttribute(QaAppConstants.REFLECTIONS_CONTAINER_DTO, reflectionDTOs); /* find out if there are any reflection entries, from here */ boolean notebookEntriesExist = MonitoringUtil.notebookEntriesExist(qaService, qaContent); @@ -2225,7 +2242,8 @@ request.setAttribute(QaAppConstants.QA_GENERAL_MONITORING_DTO, qaGeneralMonitoringDTO); - prepareReflectionData(request, qaContent, qaService, null, false, "All"); + List reflectionDTOs = qaService.getReflectList(qaContent, null); + request.setAttribute(QaAppConstants.REFLECTIONS_CONTAINER_DTO, reflectionDTOs); /* find out if there are any reflection entries, from here */ boolean notebookEntriesExist = MonitoringUtil.notebookEntriesExist(qaService, qaContent); @@ -2380,7 +2398,8 @@ request.setAttribute(QaAppConstants.QA_GENERAL_MONITORING_DTO, qaGeneralMonitoringDTO); - prepareReflectionData(request, qaContent, qaService, null, false, "All"); + List reflectionDTOs = qaService.getReflectList(qaContent, null); + request.setAttribute(QaAppConstants.REFLECTIONS_CONTAINER_DTO, reflectionDTOs); /* find out if there are any reflection entries, from here */ boolean notebookEntriesExist = MonitoringUtil.notebookEntriesExist(qaService, qaContent); @@ -2474,7 +2493,8 @@ request.setAttribute(QaAppConstants.QA_GENERAL_MONITORING_DTO, qaGeneralMonitoringDTO); - prepareReflectionData(request, qaContent, qaService, null, false, "All"); + List reflectionDTOs = qaService.getReflectList(qaContent, null); + request.setAttribute(QaAppConstants.REFLECTIONS_CONTAINER_DTO, reflectionDTOs); /* find out if there are any reflection entries, from here */ boolean notebookEntriesExist = MonitoringUtil.notebookEntriesExist(qaService, qaContent); @@ -2597,7 +2617,8 @@ request.setAttribute(QaAppConstants.QA_GENERAL_MONITORING_DTO, qaGeneralMonitoringDTO); - prepareReflectionData(request, qaContent, qaService, null, false, "All"); + List reflectionDTOs = qaService.getReflectList(qaContent, null); + request.setAttribute(QaAppConstants.REFLECTIONS_CONTAINER_DTO, reflectionDTOs); /* find out if there are any reflection entries, from here */ boolean notebookEntriesExist = MonitoringUtil.notebookEntriesExist(qaService, qaContent); @@ -2748,7 +2769,8 @@ request.setAttribute(QaAppConstants.QA_GENERAL_MONITORING_DTO, qaGeneralMonitoringDTO); - prepareReflectionData(request, qaContent, qaService, null, false, "All"); + List reflectionDTOs = qaService.getReflectList(qaContent, null); + request.setAttribute(QaAppConstants.REFLECTIONS_CONTAINER_DTO, reflectionDTOs); /* find out if there are any reflection entries, from here */ boolean notebookEntriesExist = MonitoringUtil.notebookEntriesExist(qaService, qaContent); @@ -2882,7 +2904,8 @@ request.setAttribute(QaAppConstants.QA_GENERAL_MONITORING_DTO, qaGeneralMonitoringDTO); - prepareReflectionData(request, qaContent, qaService, null, false, "All"); + List reflectionDTOs = qaService.getReflectList(qaContent, null); + request.setAttribute(QaAppConstants.REFLECTIONS_CONTAINER_DTO, reflectionDTOs); /* find out if there are any reflection entries, from here */ boolean notebookEntriesExist = MonitoringUtil.notebookEntriesExist(qaService, qaContent); @@ -3018,7 +3041,8 @@ request.setAttribute(QaAppConstants.QA_GENERAL_MONITORING_DTO, qaGeneralMonitoringDTO); - prepareReflectionData(request, qaContent, qaService, null, false, "All"); + List reflectionDTOs = qaService.getReflectList(qaContent, null); + request.setAttribute(QaAppConstants.REFLECTIONS_CONTAINER_DTO, reflectionDTOs); /* find out if there are any reflection entries, from here */ boolean notebookEntriesExist = MonitoringUtil.notebookEntriesExist(qaService, qaContent); @@ -3071,91 +3095,8 @@ qaService.saveOrUpdateQa(content); return null; - } - - - public void prepareReflectionData(HttpServletRequest request, QaContent qaContent, IQaService qaService, - String userID, boolean exportMode, String currentSessionId) { - - List reflectionsContainerDTO = getReflectionList(qaContent, userID, qaService); - request.setAttribute(QaAppConstants.REFLECTIONS_CONTAINER_DTO, reflectionsContainerDTO); - - if (exportMode) { - request.getSession().setAttribute(QaAppConstants.REFLECTIONS_CONTAINER_DTO, reflectionsContainerDTO); - } } - /** - * returns reflection data for all sessions - * - * getReflectionList - * - * @param qaContent - * @param userID - * @param qaService - * @return - */ - public List getReflectionList(QaContent qaContent, String userID, IQaService qaService) { - List reflectionsContainerDTO = new LinkedList(); - if (userID == null) { - //all users mode - for (Iterator sessionIter = qaContent.getQaSessions().iterator(); sessionIter.hasNext();) { - QaSession qaSession = (QaSession) sessionIter.next(); - - for (Iterator userIter = qaSession.getQaQueUsers().iterator(); userIter.hasNext();) { - QaQueUsr user = (QaQueUsr) userIter.next(); - - NotebookEntry notebookEntry = qaService.getEntry(qaSession.getQaSessionId(), - CoreNotebookConstants.NOTEBOOK_TOOL, QaAppConstants.MY_SIGNATURE, new Integer(user - .getQueUsrId().toString())); - - - - if (notebookEntry != null) { - ReflectionDTO reflectionDTO = new ReflectionDTO(); - reflectionDTO.setUserId(user.getQueUsrId().toString()); - reflectionDTO.setSessionId(qaSession.getQaSessionId().toString()); - reflectionDTO.setUserName(user.getFullname()); - reflectionDTO.setReflectionUid(notebookEntry.getUid().toString()); - String notebookEntryPresentable = QaUtils.replaceNewLines(notebookEntry.getEntry()); - reflectionDTO.setEntry(notebookEntryPresentable); - reflectionsContainerDTO.add(reflectionDTO); - } - } - } - } else { - //single user mode - for (Iterator sessionIter = qaContent.getQaSessions().iterator(); sessionIter.hasNext();) { - QaSession qaSession = (QaSession) sessionIter.next(); - - for (Iterator userIter = qaSession.getQaQueUsers().iterator(); userIter.hasNext();) { - QaQueUsr user = (QaQueUsr) userIter.next(); - - if (user.getQueUsrId().toString().equals(userID)) { - NotebookEntry notebookEntry = qaService.getEntry(qaSession.getQaSessionId(), - CoreNotebookConstants.NOTEBOOK_TOOL, QaAppConstants.MY_SIGNATURE, new Integer(user - .getQueUsrId().toString())); - - - - if (notebookEntry != null) { - ReflectionDTO reflectionDTO = new ReflectionDTO(); - reflectionDTO.setUserId(user.getQueUsrId().toString()); - reflectionDTO.setSessionId(qaSession.getQaSessionId().toString()); - reflectionDTO.setUserName(user.getFullname()); - reflectionDTO.setReflectionUid(notebookEntry.getUid().toString()); - String notebookEntryPresentable = QaUtils.replaceNewLines(notebookEntry.getEntry()); - reflectionDTO.setEntry(notebookEntryPresentable); - reflectionsContainerDTO.add(reflectionDTO); - } - } - } - } - } - - return reflectionsContainerDTO; - } - private IQaService getQAService() { return QaServiceProxy.getQaService(getServlet().getServletContext()); } Index: lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/web/QaMonitoringStarterAction.java =================================================================== diff -u -r629b2631320321b57015e15be850e7c6b747225f -rf42f15541a35619341928f8846612a4655996f99 --- lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/web/QaMonitoringStarterAction.java (.../QaMonitoringStarterAction.java) (revision 629b2631320321b57015e15be850e7c6b747225f) +++ lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/web/QaMonitoringStarterAction.java (.../QaMonitoringStarterAction.java) (revision f42f15541a35619341928f8846612a4655996f99) @@ -53,6 +53,7 @@ import org.lamsfoundation.lams.tool.qa.dto.GeneralLearnerFlowDTO; import org.lamsfoundation.lams.tool.qa.dto.GeneralMonitoringDTO; import org.lamsfoundation.lams.tool.qa.dto.QaQuestionDTO; +import org.lamsfoundation.lams.tool.qa.dto.ReflectionDTO; import org.lamsfoundation.lams.tool.qa.service.IQaService; import org.lamsfoundation.lams.tool.qa.service.QaServiceProxy; import org.lamsfoundation.lams.tool.qa.util.QaApplicationException; @@ -138,10 +139,9 @@ } request.setAttribute(EDIT_ACTIVITY_DTO, editActivityDTO); - qaMonitoringAction.prepareReflectionData(request, qaContent, qaService, null, false, "All"); - + List reflectionDTOs = qaService.getReflectList(qaContent, null); + request.setAttribute(QaAppConstants.REFLECTIONS_CONTAINER_DTO, reflectionDTOs); - request.setAttribute(QA_GENERAL_MONITORING_DTO, generalMonitoringDTO); /*for Edit Activity screen, BasicTab-ViewOnly*/