Index: lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/persistence/ForumDao.java =================================================================== RCS file: /usr/local/cvsroot/lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/persistence/ForumDao.java,v diff -u -r1.2 -r1.3 --- lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/persistence/ForumDao.java 11 Oct 2005 07:22:57 -0000 1.2 +++ lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/persistence/ForumDao.java 12 Oct 2005 00:03:51 -0000 1.3 @@ -20,11 +20,15 @@ public Forum getById(Long forumId) { return (Forum) getHibernateTemplate().get(Forum.class,forumId); } - + /** + * NOTE: before call this method, must be sure delete all messages in this forum. + * Example code like this: + *
+	 * messageDao.deleteForumMessage(forum.getUuid());
+	 * 
+ * @param forum + */ public void delete(Forum forum) { - //TODO: delete this forum message -// this.getHibernateTemplate(). -// this.getSession().createQuery() this.getHibernateTemplate().delete(forum); } Index: lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/persistence/MessageDao.java =================================================================== RCS file: /usr/local/cvsroot/lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/persistence/MessageDao.java,v diff -u -r1.2 -r1.3 --- lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/persistence/MessageDao.java 11 Oct 2005 07:22:57 -0000 1.2 +++ lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/persistence/MessageDao.java 12 Oct 2005 00:03:51 -0000 1.3 @@ -34,4 +34,14 @@ return this.getHibernateTemplate().findByNamedQuery(name, forumId); } + /** + * Delete all messages in special forum. + * @param forumUuid + * The forum UUID which messages will be deleted in this method. + */ + public void deleteForumMessage(Long forumUuid) { + List list = findByNamedQuery("allMessagesByForum",forumUuid); + this.getHibernateTemplate().deleteAll(list); + } + } Index: lams_tool_forum/test/java/org/lamsfoundation/lams/tool/forum/persistence/MessageTest.java =================================================================== RCS file: /usr/local/cvsroot/lams_tool_forum/test/java/org/lamsfoundation/lams/tool/forum/persistence/Attic/MessageTest.java,v diff -u -r1.3 -r1.4 --- lams_tool_forum/test/java/org/lamsfoundation/lams/tool/forum/persistence/MessageTest.java 11 Oct 2005 07:22:57 -0000 1.3 +++ lams_tool_forum/test/java/org/lamsfoundation/lams/tool/forum/persistence/MessageTest.java 12 Oct 2005 00:03:51 -0000 1.4 @@ -110,10 +110,12 @@ //delete + messageDao.delete(reloaded); + messageDao.deleteForumMessage(forum.getUuid()); dao.delete(forum); -// assertNull("message object not deleted", messageDao.getById(message.getUuid())); -// assertNull("reply message object not deleted", messageDao.getById(message2.getUuid())); + assertNull("message object not deleted", messageDao.getById(message.getUuid())); + assertNull("reply message object not deleted", messageDao.getById(message2.getUuid())); } protected void tearDown() throws Exception {