Index: lams_learning/conf/xdoclet/web-settings.xml
===================================================================
diff -u -r36c2ed010b8a3893b895d781be1a219f2380e62d -rf0f13cd7ba427bab1d37dc3a8a14e290c98245ef
--- lams_learning/conf/xdoclet/web-settings.xml (.../web-settings.xml) (revision 36c2ed010b8a3893b895d781be1a219f2380e62d)
+++ lams_learning/conf/xdoclet/web-settings.xml (.../web-settings.xml) (revision f0f13cd7ba427bab1d37dc3a8a14e290c98245ef)
@@ -27,5 +27,6 @@
contextConfigLocation
/WEB-INF/spring/dataAccessContext.xml /WEB-INF/spring/applicationContext.xml /WEB-INF/spring/learningApplicationContext.xml
+ /WEB-INF/spring/lessonApplicationContext.xml /WEB-INF/spring/toolApplicationContext.xml
Index: lams_learning/lib/cglib/cglib-nodep-2.1-dev.jar
===================================================================
diff -u
Binary files differ
Index: lams_learning/lib/lams/lams.jar
===================================================================
diff -u -r2ca1fa90ed42cdcd0438bad1b8282f39c995d2b1 -rf0f13cd7ba427bab1d37dc3a8a14e290c98245ef
Binary files differ
Index: lams_learning/lib/lams/src/lams-src.zip
===================================================================
diff -u -r61ab8aad9c6a33202b47ca6089e89653b5131b09 -rf0f13cd7ba427bab1d37dc3a8a14e290c98245ef
Binary files differ
Index: lams_learning/src/java/org/lamsfoundation/lams/learning/service/ILearnerService.java
===================================================================
diff -u -r2ca1fa90ed42cdcd0438bad1b8282f39c995d2b1 -rf0f13cd7ba427bab1d37dc3a8a14e290c98245ef
--- lams_learning/src/java/org/lamsfoundation/lams/learning/service/ILearnerService.java (.../ILearnerService.java) (revision 2ca1fa90ed42cdcd0438bad1b8282f39c995d2b1)
+++ lams_learning/src/java/org/lamsfoundation/lams/learning/service/ILearnerService.java (.../ILearnerService.java) (revision f0f13cd7ba427bab1d37dc3a8a14e290c98245ef)
@@ -93,7 +93,7 @@
* @return the bean containing the display data for the Learner
* @throws LearnerServiceException in case of problems.
*/
- public LearnerProgress calculateProgress(Activity completedActivity, User learner, Lesson lesson) throws ProgressException;
+ public LearnerProgress calculateProgress(Activity completedActivity, User learner, Lesson lesson);
/**
Index: lams_learning/src/java/org/lamsfoundation/lams/learning/service/LearnerService.java
===================================================================
diff -u -r2ca1fa90ed42cdcd0438bad1b8282f39c995d2b1 -rf0f13cd7ba427bab1d37dc3a8a14e290c98245ef
--- lams_learning/src/java/org/lamsfoundation/lams/learning/service/LearnerService.java (.../LearnerService.java) (revision 2ca1fa90ed42cdcd0438bad1b8282f39c995d2b1)
+++ lams_learning/src/java/org/lamsfoundation/lams/learning/service/LearnerService.java (.../LearnerService.java) (revision f0f13cd7ba427bab1d37dc3a8a14e290c98245ef)
@@ -60,7 +60,7 @@
private ProgressEngine progressEngine;
private IToolSessionDAO toolSessionDAO;
private ILamsToolService lamsToolService;
- private ActivityMapping activityMappings;
+ private ActivityMapping activityMapping;
//---------------------------------------------------------------------
// Inversion of Control Methods - Constructor injection
//---------------------------------------------------------------------
@@ -105,8 +105,8 @@
this.lamsToolService = lamsToolService;
}
- public void setActivityMappings(ActivityMapping activityMappings) {
- this.activityMappings = activityMappings;
+ public void setActivityMapping(ActivityMapping activityMapping) {
+ this.activityMapping = activityMapping;
}
//---------------------------------------------------------------------
// Service Methods
@@ -129,7 +129,18 @@
/**
- * Joins a User to a new lesson as a learner
+ *
Joins a User to a lesson as a learner. It could either be a new lesson
+ * or a lesson that has been started.
+ *
+ * In terms of new lesson, a new learner progress would be initialized.
+ * Tool session for the next activity will be initialized if necessary.
+ *
+ * In terms of an started lesson, the learner progress will be returned
+ * without calculation. Tool session will be initialized if necessary.
+ * Note that we won't initialize tool session for current activity because
+ * we assume tool session will always initialize before it becomes a
+ * current activity.
-
+
@@ -34,21 +34,21 @@
-
-
+
-
-
+
+
http://localhost:8080/lams_learning/
-
+
Index: lams_learning/test/java/org/lamsfoundation/lams/learning/service/DummyLearnerService.java
===================================================================
diff -u -r2ca1fa90ed42cdcd0438bad1b8282f39c995d2b1 -rf0f13cd7ba427bab1d37dc3a8a14e290c98245ef
--- lams_learning/test/java/org/lamsfoundation/lams/learning/service/DummyLearnerService.java (.../DummyLearnerService.java) (revision 2ca1fa90ed42cdcd0438bad1b8282f39c995d2b1)
+++ lams_learning/test/java/org/lamsfoundation/lams/learning/service/DummyLearnerService.java (.../DummyLearnerService.java) (revision f0f13cd7ba427bab1d37dc3a8a14e290c98245ef)
@@ -70,8 +70,8 @@
this.request = request;
}
- public void setActivityMapping(ActivityMapping actionMappings) {
- this.activityMapping = actionMappings;
+ public void setActivityMapping(ActivityMapping actionMapping) {
+ this.activityMapping = actionMapping;
}
private LearnerProgress getProgress() {
Index: lams_learning/test/java/org/lamsfoundation/lams/learning/web/action/DummyLessonAction.java
===================================================================
diff -u -rcd9dd16d2a3966104ea1b84097d819c2578e9333 -rf0f13cd7ba427bab1d37dc3a8a14e290c98245ef
--- lams_learning/test/java/org/lamsfoundation/lams/learning/web/action/DummyLessonAction.java (.../DummyLessonAction.java) (revision cd9dd16d2a3966104ea1b84097d819c2578e9333)
+++ lams_learning/test/java/org/lamsfoundation/lams/learning/web/action/DummyLessonAction.java (.../DummyLessonAction.java) (revision f0f13cd7ba427bab1d37dc3a8a14e290c98245ef)
@@ -32,7 +32,6 @@
import org.apache.struts.action.ActionMapping;
import org.lamsfoundation.lams.learning.service.ILearnerService;
import org.lamsfoundation.lams.learning.service.LearnerServiceProxy;
-import org.lamsfoundation.lams.learning.service.DummyLearnerService;
import org.lamsfoundation.lams.learning.web.bean.SessionBean;
import org.lamsfoundation.lams.learning.web.form.ActivityForm;
import org.lamsfoundation.lams.usermanagement.User;
@@ -53,6 +52,10 @@
*/
public class DummyLessonAction extends Action {
+
+ private static final Integer TEST_USER_ID = new Integer(1);
+ private static final Long TEST_ACTIVITY_ID = new Long(36);
+
/**
* Gets the session bean from session.
* @return SessionBean for this request, null if no session.
@@ -86,14 +89,14 @@
SessionBean sessionBean = new SessionBean();
IUserManagementService userService = getUserService(this.servlet.getServletContext());
- User user = userService.getUserById(new Integer(1));
+ User user = userService.getUserById(TEST_USER_ID);
sessionBean.setLearner(user);
setSessionBean(sessionBean, request);
- DummyLearnerService learnerService = (DummyLearnerService)LearnerServiceProxy.getLearnerService(this.getServlet().getServletContext());
- learnerService.setRequest(request);
- learnerService.clearProgress();
- activityForm.setActivityId(new Long(1));
+ ILearnerService learnerService = LearnerServiceProxy.getLearnerService(this.getServlet().getServletContext());
+ //learnerService.setRequest(request);
+ //learnerService.clearProgress();
+ activityForm.setActivityId(TEST_ACTIVITY_ID);
ActionForward forward = mapping.findForward("displayLesson");
return forward;
Index: lams_learning/test/java/org/lamsfoundation/lams/learning/web/action/DummyToolAction.java
===================================================================
diff -u -r2ca1fa90ed42cdcd0438bad1b8282f39c995d2b1 -rf0f13cd7ba427bab1d37dc3a8a14e290c98245ef
--- lams_learning/test/java/org/lamsfoundation/lams/learning/web/action/DummyToolAction.java (.../DummyToolAction.java) (revision 2ca1fa90ed42cdcd0438bad1b8282f39c995d2b1)
+++ lams_learning/test/java/org/lamsfoundation/lams/learning/web/action/DummyToolAction.java (.../DummyToolAction.java) (revision f0f13cd7ba427bab1d37dc3a8a14e290c98245ef)
@@ -30,8 +30,9 @@
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.actions.DispatchAction;
+import org.lamsfoundation.lams.learning.service.ILearnerService;
+import org.lamsfoundation.lams.learning.service.LearnerService;
import org.lamsfoundation.lams.learning.service.LearnerServiceProxy;
-import org.lamsfoundation.lams.learning.service.DummyLearnerService;
import org.lamsfoundation.lams.learning.web.form.DummyToolForm;
@@ -78,8 +79,8 @@
}
long toolSessionId = testForm.getToolSessionId().longValue();
- DummyLearnerService learnerService = (DummyLearnerService)LearnerServiceProxy.getLearnerService(this.getServlet().getServletContext());
- learnerService.setRequest(request);
+ ILearnerService learnerService = (LearnerService)LearnerServiceProxy.getLearnerService(this.getServlet().getServletContext());
+ //learnerService.setRequest(request);
String url = learnerService.completeToolSession(toolSessionId, null);
try {
response.sendRedirect(url);
Index: lams_learning/test/java/org/lamsfoundation/lams/tool/service/DummyToolService.java
===================================================================
diff -u -r2ca1fa90ed42cdcd0438bad1b8282f39c995d2b1 -rf0f13cd7ba427bab1d37dc3a8a14e290c98245ef
--- lams_learning/test/java/org/lamsfoundation/lams/tool/service/DummyToolService.java (.../DummyToolService.java) (revision 2ca1fa90ed42cdcd0438bad1b8282f39c995d2b1)
+++ lams_learning/test/java/org/lamsfoundation/lams/tool/service/DummyToolService.java (.../DummyToolService.java) (revision f0f13cd7ba427bab1d37dc3a8a14e290c98245ef)
@@ -73,4 +73,31 @@
return null;
}
+ /**
+ * @see org.lamsfoundation.lams.tool.service.ILamsToolService#getToolSessionByLearner(org.lamsfoundation.lams.usermanagement.User, org.lamsfoundation.lams.learningdesign.Activity)
+ */
+ public ToolSession getToolSessionByLearner(User arg0, Activity arg1) throws LamsToolServiceException
+ {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ /**
+ * @see org.lamsfoundation.lams.tool.service.ILamsToolService#getToolSessionById(java.lang.Long)
+ */
+ public ToolSession getToolSessionById(Long arg0)
+ {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ /**
+ * @see org.lamsfoundation.lams.tool.service.ILamsToolService#updateToolSession(org.lamsfoundation.lams.tool.ToolSession)
+ */
+ public void updateToolSession(ToolSession arg0)
+ {
+ // TODO Auto-generated method stub
+
+ }
+
}
Index: lams_learning/web/WEB-INF/lib/cglib-nodep-2.1-dev.jar
===================================================================
diff -u
Binary files differ
Index: lams_learning/web/WEB-INF/lib/lams.jar
===================================================================
diff -u -r2ca1fa90ed42cdcd0438bad1b8282f39c995d2b1 -rf0f13cd7ba427bab1d37dc3a8a14e290c98245ef
Binary files differ
Index: lams_learning/web/WEB-INF/spring/learningApplicationContext.xml
===================================================================
diff -u -r2ca1fa90ed42cdcd0438bad1b8282f39c995d2b1 -rf0f13cd7ba427bab1d37dc3a8a14e290c98245ef
--- lams_learning/web/WEB-INF/spring/learningApplicationContext.xml (.../learningApplicationContext.xml) (revision 2ca1fa90ed42cdcd0438bad1b8282f39c995d2b1)
+++ lams_learning/web/WEB-INF/spring/learningApplicationContext.xml (.../learningApplicationContext.xml) (revision f0f13cd7ba427bab1d37dc3a8a14e290c98245ef)
@@ -1,50 +1,58 @@
-
+
-
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ PROPAGATION_REQUIRED,ISOLATION_READ_COMMITTED
+ PROPAGATION_REQUIRED,ISOLATION_READ_COMMITTED
+ PROPAGATION_REQUIRES_NEW,ISOLATION_READ_COMMITTED
+
+
+
+
-
+
http://localhost:8080/lams_learning/
-
-
-
+
Index: lams_learning/web/WEB-INF/spring/lessonApplicationContext.xml
===================================================================
diff -u
--- lams_learning/web/WEB-INF/spring/lessonApplicationContext.xml (revision 0)
+++ lams_learning/web/WEB-INF/spring/lessonApplicationContext.xml (revision f0f13cd7ba427bab1d37dc3a8a14e290c98245ef)
@@ -0,0 +1,25 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Index: lams_learning/web/WEB-INF/spring/toolApplicationContext.xml
===================================================================
diff -u
--- lams_learning/web/WEB-INF/spring/toolApplicationContext.xml (revision 0)
+++ lams_learning/web/WEB-INF/spring/toolApplicationContext.xml (revision f0f13cd7ba427bab1d37dc3a8a14e290c98245ef)
@@ -0,0 +1,55 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ PROPAGATION_REQUIRES_NEW,ISOLATION_READ_COMMITTED
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ PROPAGATION_REQUIRED,ISOLATION_READ_COMMITTED
+ PROPAGATION_REQUIRED,ISOLATION_READ_COMMITTED
+ PROPAGATION_REQUIRED,ISOLATION_READ_COMMITTED
+ PROPAGATION_REQUIRED,readOnly
+
+
+
+
+
Index: lams_learning/web/WEB-INF/web.xml
===================================================================
diff -u -r4e049aced5079eff1ff599aa4572624cc0314e59 -rf0f13cd7ba427bab1d37dc3a8a14e290c98245ef
--- lams_learning/web/WEB-INF/web.xml (.../web.xml) (revision 4e049aced5079eff1ff599aa4572624cc0314e59)
+++ lams_learning/web/WEB-INF/web.xml (.../web.xml) (revision f0f13cd7ba427bab1d37dc3a8a14e290c98245ef)
@@ -32,6 +32,7 @@
contextConfigLocation
/WEB-INF/spring/dataAccessContext.xml /WEB-INF/spring/applicationContext.xml /WEB-INF/spring/learningApplicationContext.xml
+ /WEB-INF/spring/lessonApplicationContext.xml /WEB-INF/spring/toolApplicationContext.xml