Index: lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/persistence/ForumDao.java =================================================================== diff -u -raaca44f485c3bacc6c866f7df28c0511061473d6 -r69b42721943dd9b418ac624d16b7f239dc12ed99 --- lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/persistence/ForumDao.java (.../ForumDao.java) (revision aaca44f485c3bacc6c866f7df28c0511061473d6) +++ lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/persistence/ForumDao.java (.../ForumDao.java) (revision 69b42721943dd9b418ac624d16b7f239dc12ed99) @@ -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
===================================================================
diff -u -raaca44f485c3bacc6c866f7df28c0511061473d6 -r69b42721943dd9b418ac624d16b7f239dc12ed99
--- lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/persistence/MessageDao.java (.../MessageDao.java) (revision aaca44f485c3bacc6c866f7df28c0511061473d6)
+++ lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/persistence/MessageDao.java (.../MessageDao.java) (revision 69b42721943dd9b418ac624d16b7f239dc12ed99)
@@ -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
===================================================================
diff -u -raaca44f485c3bacc6c866f7df28c0511061473d6 -r69b42721943dd9b418ac624d16b7f239dc12ed99
--- lams_tool_forum/test/java/org/lamsfoundation/lams/tool/forum/persistence/MessageTest.java (.../MessageTest.java) (revision aaca44f485c3bacc6c866f7df28c0511061473d6)
+++ lams_tool_forum/test/java/org/lamsfoundation/lams/tool/forum/persistence/MessageTest.java (.../MessageTest.java) (revision 69b42721943dd9b418ac624d16b7f239dc12ed99)
@@ -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 {