Index: lams_tool_chat/src/java/org/lamsfoundation/lams/tool/chat/dao/IChatSessionDAO.java =================================================================== RCS file: /usr/local/cvsroot/lams_tool_chat/src/java/org/lamsfoundation/lams/tool/chat/dao/IChatSessionDAO.java,v diff -u -r1.6 -r1.7 --- lams_tool_chat/src/java/org/lamsfoundation/lams/tool/chat/dao/IChatSessionDAO.java 23 May 2006 04:12:21 -0000 1.6 +++ lams_tool_chat/src/java/org/lamsfoundation/lams/tool/chat/dao/IChatSessionDAO.java 24 Jun 2006 04:53:23 -0000 1.7 @@ -38,4 +38,6 @@ ChatSession getBySessionId(Long toolSessionId); ChatSession getByJabberRoom(String jabberRoom); + + void deleteBySessionID(Long toolSessionID); } Index: lams_tool_chat/src/java/org/lamsfoundation/lams/tool/chat/dao/hibernate/ChatSessionDAO.java =================================================================== RCS file: /usr/local/cvsroot/lams_tool_chat/src/java/org/lamsfoundation/lams/tool/chat/dao/hibernate/ChatSessionDAO.java,v diff -u -r1.6 -r1.7 --- lams_tool_chat/src/java/org/lamsfoundation/lams/tool/chat/dao/hibernate/ChatSessionDAO.java 23 May 2006 04:12:21 -0000 1.6 +++ lams_tool_chat/src/java/org/lamsfoundation/lams/tool/chat/dao/hibernate/ChatSessionDAO.java 24 Jun 2006 04:53:22 -0000 1.7 @@ -27,8 +27,8 @@ import java.util.List; import org.lamsfoundation.lams.dao.hibernate.BaseDAO; -import org.lamsfoundation.lams.tool.chat.model.ChatSession; import org.lamsfoundation.lams.tool.chat.dao.IChatSessionDAO; +import org.lamsfoundation.lams.tool.chat.model.ChatSession; /** * DAO for accessing the ChatSession objects - Hibernate specific code. @@ -37,7 +37,8 @@ public static final String SQL_QUERY_FIND_BY_SESSION_ID = "from " + ChatSession.class.getName() + " where session_id=?"; - public static final String SQL_QUERY_FIND_BY_JABBER_ROOM = "from " + + public static final String SQL_QUERY_FIND_BY_JABBER_ROOM = "from " + ChatSession.class.getName() + " where jabber_room=?"; public void saveOrUpdate(ChatSession session) { @@ -60,4 +61,12 @@ return null; return (ChatSession) list.get(0); } + + public void deleteBySessionID(Long toolSessionID) { + ChatSession session = getBySessionId(toolSessionID); + if(session != null){ + this.getHibernateTemplate().delete(session); + this.getHibernateTemplate().flush(); + } + } } Index: lams_tool_chat/src/java/org/lamsfoundation/lams/tool/chat/service/ChatService.java =================================================================== RCS file: /usr/local/cvsroot/lams_tool_chat/src/java/org/lamsfoundation/lams/tool/chat/service/ChatService.java,v diff -u -r1.23 -r1.24 --- lams_tool_chat/src/java/org/lamsfoundation/lams/tool/chat/service/ChatService.java 23 Jun 2006 06:29:54 -0000 1.23 +++ lams_tool_chat/src/java/org/lamsfoundation/lams/tool/chat/service/ChatService.java 24 Jun 2006 04:53:22 -0000 1.24 @@ -210,8 +210,9 @@ public void removeToolSession(Long toolSessionId) throws DataMissingException, ToolException { - // TODO Auto-generated method stub - + chatSessionDAO.deleteBySessionID(toolSessionId); + //TODO check if cascade worked + // do we need to remove room on jabber server ? } /* ************ Methods from ToolContentManager ************************* */