Index: lams_central/src/java/org/lamsfoundation/lams/authoring/web/LamsAuthoringFinishAction.java =================================================================== RCS file: /usr/local/cvsroot/lams_central/src/java/org/lamsfoundation/lams/authoring/web/LamsAuthoringFinishAction.java,v diff -u -r1.2 -r1.3 --- lams_central/src/java/org/lamsfoundation/lams/authoring/web/LamsAuthoringFinishAction.java 5 Jun 2006 15:41:57 -0000 1.2 +++ lams_central/src/java/org/lamsfoundation/lams/authoring/web/LamsAuthoringFinishAction.java 11 Jul 2006 00:59:23 -0000 1.3 @@ -62,6 +62,7 @@ private static final String ACTION_NAME = "action"; private static final String ACTION_MODE = "mode"; + private static final String CUSTOMISE_SESSION_ID = "customiseSessionID"; private static final String TOOL_SIGNATURE = "signature"; private static final String CONFIRM_ACTION = "confirm"; @@ -78,12 +79,13 @@ HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { String action = request.getParameter(ACTION_NAME); String modeStr = request.getParameter(ACTION_MODE); + String cSessionID = request.getParameter(CUSTOMISE_SESSION_ID); if(StringUtils.equals(ToolAccessMode.AUTHOR.toString(),modeStr)) - clearSession(request.getSession(),ToolAccessMode.AUTHOR); + clearSession(cSessionID,request.getSession(),ToolAccessMode.AUTHOR); if(StringUtils.equals(ToolAccessMode.LEARNER.toString(),modeStr)) - clearSession(request.getSession(),ToolAccessMode.LEARNER); + clearSession(cSessionID,request.getSession(),ToolAccessMode.LEARNER); if(StringUtils.equals(ToolAccessMode.TEACHER.toString(),modeStr)) - clearSession(request.getSession(),ToolAccessMode.TEACHER); + clearSession(cSessionID,request.getSession(),ToolAccessMode.TEACHER); if(StringUtils.equals(action,CONFIRM_ACTION)){ String nextUrl = getLamsUrl() + "authoringConfirm.jsp"; String signature = request.getParameter(TOOL_SIGNATURE); @@ -116,10 +118,11 @@ * All subclass will implements this method and execute clear HttpSession action to * remove obsolete session values. * + * @param customiseSessionID customised session ID. * @param session * @param mode ToolAccessMode to decide which role's session will be clear. */ - abstract public void clearSession(HttpSession session, ToolAccessMode mode); + abstract public void clearSession(String customiseSessionID,HttpSession session, ToolAccessMode mode); private String getLamsUrl(){ String serverURL = Configuration.get(ConfigurationKeys.SERVER_URL); Index: lams_central/web/WEB-INF/tags/AuthoringButton.tag =================================================================== RCS file: /usr/local/cvsroot/lams_central/web/WEB-INF/tags/AuthoringButton.tag,v diff -u -r1.6 -r1.7 --- lams_central/web/WEB-INF/tags/AuthoringButton.tag 21 Jun 2006 04:35:17 -0000 1.6 +++ lams_central/web/WEB-INF/tags/AuthoringButton.tag 11 Jul 2006 00:59:23 -0000 1.7 @@ -45,6 +45,7 @@ <%@ attribute name="saveButtonLabelKey" required="false" rtexprvalue="true" %> <%@ attribute name="cancelConfirmMsgKey" required="false" rtexprvalue="true" %> <%@ attribute name="defineLater" required="false" rtexprvalue="true" %> +<%@ attribute name="customiseSessionID" required="false" rtexprvalue="true" %> <%-- Default value for message key --%> @@ -63,14 +64,14 @@