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 {