Index: lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/service/IMonitoringService.java =================================================================== RCS file: /usr/local/cvsroot/lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/service/IMonitoringService.java,v diff -u -r1.15 -r1.16 --- lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/service/IMonitoringService.java 9 Jun 2005 00:15:01 -0000 1.15 +++ lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/service/IMonitoringService.java 10 Jun 2005 05:05:34 -0000 1.16 @@ -32,6 +32,10 @@ /** + * TODO Missing methods + * archiveLesson + * getMonitorURL + * * Interface defines all monitoring services needed by presentation tier. * @author Jacky Fang 2/02/2005 * @author Manpreet Minhas Index: lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/web/MonitoringAction.java =================================================================== RCS file: /usr/local/cvsroot/lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/web/MonitoringAction.java,v diff -u -r1.2 -r1.3 --- lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/web/MonitoringAction.java 18 Apr 2005 07:50:14 -0000 1.2 +++ lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/web/MonitoringAction.java 10 Jun 2005 05:05:39 -0000 1.3 @@ -23,6 +23,7 @@ package org.lamsfoundation.lams.monitoring.web; import java.io.IOException; +import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; @@ -35,6 +36,7 @@ import org.lamsfoundation.lams.monitoring.service.IMonitoringService; import org.lamsfoundation.lams.monitoring.service.MonitoringServiceProxy; +import org.lamsfoundation.lams.tool.service.LamsToolServiceException; import org.lamsfoundation.lams.util.WebUtil; import org.lamsfoundation.lams.web.action.LamsDispatchAction; @@ -57,6 +59,7 @@ * path=".systemError" * handler="org.lamsfoundation.lams.util.CustomStrutsExceptionHandler" * @struts:action-forward name="scheduler" path="/TestScheduler.jsp" + * @struts.action-forward name = "success" path = "/index.jsp" * * ----------------XDoclet Tags-------------------- */ @@ -78,6 +81,37 @@ //--------------------------------------------------------------------- private static final String PARAM_LESSON_ID = "lessonId"; + /** If you want the output given as a jsp, set the request parameter "jspoutput" to + * some value other than an empty string (e.g. 1, true, 0, false, blah). + * If you want it returned as a stream (ie for Flash), do not define this parameter + */ + public static String USE_JSP_OUTPUT = "jspoutput"; + + /** Output the supplied WDDX packet. If the request parameter USE_JSP_OUTPUT + * is set, then it sets the session attribute "parameterName" to the wddx packet string. + * If USE_JSP_OUTPUT is not set, then the packet is written out to the + * request's PrintWriter. + * + * @param mapping action mapping (for the forward to the success jsp) + * @param request needed to check the USE_JSP_OUTPUT parameter + * @param response to write out the wddx packet if not using the jsp + * @param wddxPacket wddxPacket or message to be sent/displayed + * @param parameterName session attribute to set if USE_JSP_OUTPUT is set + * @throws IOException + */ + private ActionForward outputPacket(ActionMapping mapping, HttpServletRequest request, HttpServletResponse response, + String wddxPacket, String parameterName) throws IOException { + String useJSP = WebUtil.readStrParam(request, USE_JSP_OUTPUT, true); + if ( useJSP != null && useJSP.length() >= 0 ) { + request.getSession().setAttribute(parameterName,wddxPacket); + return mapping.findForward("success"); + } else { + PrintWriter writer = response.getWriter(); + writer.println(wddxPacket); + return null; + } + } + //--------------------------------------------------------------------- // Struts Dispatch Method //--------------------------------------------------------------------- @@ -118,5 +152,100 @@ //return mapping.findForward(SCHEDULER); return null; } + + public ActionForward getAllLessons(ActionMapping mapping, + ActionForm form, + HttpServletRequest request, + HttpServletResponse response)throws IOException{ + this.monitoringService = MonitoringServiceProxy.getMonitoringService(getServlet().getServletContext()); + String wddxPacket = monitoringService.getAllLessons(); + return outputPacket(mapping, request, response, wddxPacket, "details"); + } + public ActionForward getLessonDetails(ActionMapping mapping, + ActionForm form, + HttpServletRequest request, + HttpServletResponse response)throws IOException{ + this.monitoringService = MonitoringServiceProxy.getMonitoringService(getServlet().getServletContext()); + Long lessonID = new Long(WebUtil.readLongParam(request,"lessonID")); + String wddxPacket = monitoringService.getLessonDetails(lessonID); + return outputPacket(mapping, request, response, wddxPacket, "details"); + } + public ActionForward getLessonLearners(ActionMapping mapping, + ActionForm form, + HttpServletRequest request, + HttpServletResponse response)throws IOException{ + this.monitoringService = MonitoringServiceProxy.getMonitoringService(getServlet().getServletContext()); + Long lessonID = new Long(WebUtil.readLongParam(request,"lessonID")); + String wddxPacket = monitoringService.getLessonLearners(lessonID); + return outputPacket(mapping, request, response, wddxPacket, "details"); + } + public ActionForward getLearningDesignDetails(ActionMapping mapping, + ActionForm form, + HttpServletRequest request, + HttpServletResponse response)throws IOException{ + this.monitoringService = MonitoringServiceProxy.getMonitoringService(getServlet().getServletContext()); + Long lessonID = new Long(WebUtil.readLongParam(request,"lessonID")); + String wddxPacket = monitoringService.getLearningDesignDetails(lessonID); + return outputPacket(mapping, request, response, wddxPacket, "details"); + } + public ActionForward getAllLearnersProgress(ActionMapping mapping, + ActionForm form, + HttpServletRequest request, + HttpServletResponse response)throws IOException{ + this.monitoringService = MonitoringServiceProxy.getMonitoringService(getServlet().getServletContext()); + Long lessonID = new Long(WebUtil.readLongParam(request,"lessonID")); + String wddxPacket = monitoringService.getAllLearnersProgress(lessonID); + return outputPacket(mapping, request, response, wddxPacket, "details"); + } + public ActionForward getAllContributeActivities(ActionMapping mapping, + ActionForm form, + HttpServletRequest request, + HttpServletResponse response)throws IOException{ + this.monitoringService = MonitoringServiceProxy.getMonitoringService(getServlet().getServletContext()); + Long lessonID = new Long(WebUtil.readLongParam(request,"lessonID")); + String wddxPacket = monitoringService.getAllContributeActivities(lessonID); + return outputPacket(mapping, request, response, wddxPacket, "details"); + } + public ActionForward getLearnerActivityURL(ActionMapping mapping, + ActionForm form, + HttpServletRequest request, + HttpServletResponse response)throws IOException,LamsToolServiceException{ + this.monitoringService = MonitoringServiceProxy.getMonitoringService(getServlet().getServletContext()); + Integer userID = new Integer(WebUtil.readIntParam(request,"userID")); + Long activityID = new Long(WebUtil.readLongParam(request,"activityID")); + String wddxPacket = monitoringService.getLearnerActivityURL(activityID,userID); + return outputPacket(mapping, request, response, wddxPacket, "details"); + } + public ActionForward getActivityContributionURL(ActionMapping mapping, + ActionForm form, + HttpServletRequest request, + HttpServletResponse response)throws IOException{ + this.monitoringService = MonitoringServiceProxy.getMonitoringService(getServlet().getServletContext()); + Long activityID = new Long(WebUtil.readLongParam(request,"activityID")); + String wddxPacket = monitoringService.getActivityContributionURL(activityID); + return outputPacket(mapping, request, response, wddxPacket, "details"); + } + public ActionForward moveLesson(ActionMapping mapping, + ActionForm form, + HttpServletRequest request, + HttpServletResponse response)throws IOException{ + this.monitoringService = MonitoringServiceProxy.getMonitoringService(getServlet().getServletContext()); + Long lessonID = new Long(WebUtil.readLongParam(request,"lessonID")); + Integer userID = new Integer(WebUtil.readIntParam(request,"userID")); + Integer targetWorkspaceFolderID = new Integer(WebUtil.readIntParam(request,"folderID")); + String wddxPacket = monitoringService.moveLesson(lessonID,targetWorkspaceFolderID,userID); + return outputPacket(mapping, request, response, wddxPacket, "details"); + } + public ActionForward renameLesson(ActionMapping mapping, + ActionForm form, + HttpServletRequest request, + HttpServletResponse response)throws IOException{ + this.monitoringService = MonitoringServiceProxy.getMonitoringService(getServlet().getServletContext()); + Long lessonID = new Long(WebUtil.readLongParam(request,"lessonID")); + Integer userID = new Integer(WebUtil.readIntParam(request,"userID")); + String name = WebUtil.readStrParam(request,"name"); + String wddxPacket = monitoringService.renameLesson(lessonID,name,userID); + return outputPacket(mapping, request, response, wddxPacket, "details"); + } } Index: lams_monitoring/web/index.jsp =================================================================== RCS file: /usr/local/cvsroot/lams_monitoring/web/Attic/index.jsp,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lams_monitoring/web/index.jsp 10 Jun 2005 05:05:45 -0000 1.1 @@ -0,0 +1,10 @@ + + +