[jboss-svn-commits] JBL Code SVN: r7032 - labs/jbossforums/trunk/forums/src/main/org/jboss/portlet/forums/impl
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Mon Oct 23 15:03:29 EDT 2006
Author: unibrew
Date: 2006-10-23 15:03:27 -0400 (Mon, 23 Oct 2006)
New Revision: 7032
Modified:
labs/jbossforums/trunk/forums/src/main/org/jboss/portlet/forums/impl/ForumImpl.java
labs/jbossforums/trunk/forums/src/main/org/jboss/portlet/forums/impl/ForumsModuleImpl.java
labs/jbossforums/trunk/forums/src/main/org/jboss/portlet/forums/impl/PollImpl.java
labs/jbossforums/trunk/forums/src/main/org/jboss/portlet/forums/impl/TopicImpl.java
Log:
[JBFORUMS-135] Porting LastPost improvement to trunk branch.
Modified: labs/jbossforums/trunk/forums/src/main/org/jboss/portlet/forums/impl/ForumImpl.java
===================================================================
--- labs/jbossforums/trunk/forums/src/main/org/jboss/portlet/forums/impl/ForumImpl.java 2006-10-23 18:14:21 UTC (rev 7031)
+++ labs/jbossforums/trunk/forums/src/main/org/jboss/portlet/forums/impl/ForumImpl.java 2006-10-23 19:03:27 UTC (rev 7032)
@@ -16,6 +16,14 @@
import java.util.ArrayList;
import java.util.Iterator;
+import javax.naming.InitialContext;
+import javax.naming.NamingException;
+
+import org.hibernate.Query;
+
+import org.hibernate.Session;
+
+import org.jboss.portlet.forums.ForumsModule;
import org.jboss.portlet.forums.model.Category;
import org.jboss.portlet.forums.model.Forum;
import org.jboss.portlet.forums.model.Post;
@@ -57,7 +65,18 @@
private Collection watch;
//private int type;
private List watches;
+ private static ForumsModule fm;
+
+ private static void initializeForumsModule () {
+ try {
+ fm = (ForumsModule)new InitialContext().lookup("java:portal/ForumsModule");
+ } catch (NamingException e) {
+ e.printStackTrace();
+ }
+ }
+
+
/**
* @hibernate.many-to-one column="jbp_category_id"
* class="org.jboss.portlet.forums.impl.CategoryImpl"
@@ -119,13 +138,22 @@
*/
public Post getLastPost()
{
- Post post = null;
- for (Iterator i = getTopics().iterator(); i.hasNext();)
- {
- post = ((Topic)i.next()).getLastPost();
- }
- return post;
- //return lastPost;
+ if (fm==null) {
+ initializeForumsModule();
+ }
+ Session session = fm.getHibernate().getSessionFactory().getCurrentSession();
+ Query query =
+ session.createQuery("from PostImpl as p where p.topic.forum.id = :forumId order by p.createDate desc");
+ query.setInteger("forumId", getId().intValue());
+ query.setFirstResult(0);
+ query.setMaxResults(1);
+ Post lastPost = (Post)query.uniqueResult();
+ Post post = null;
+ for (Iterator i = getTopics().iterator(); i.hasNext();)
+ {
+ post = ((Topic)i.next()).getLastPost();
+ }
+ return lastPost;
}
/**
Modified: labs/jbossforums/trunk/forums/src/main/org/jboss/portlet/forums/impl/ForumsModuleImpl.java
===================================================================
--- labs/jbossforums/trunk/forums/src/main/org/jboss/portlet/forums/impl/ForumsModuleImpl.java 2006-10-23 18:14:21 UTC (rev 7031)
+++ labs/jbossforums/trunk/forums/src/main/org/jboss/portlet/forums/impl/ForumsModuleImpl.java 2006-10-23 19:03:27 UTC (rev 7032)
@@ -49,6 +49,7 @@
/**
* @author <a href="mailto:theute at jboss.org">Thomas Heute </a>
* @author <a href="mailto:boleslaw.dawidowicz at jboss.com">Boleslaw Dawidowicz</a>
+ * @author <a href="mailto:ryszard.kozmik at jboss.com">Ryszard Kozmik</a>
* @version $Revision: 3217 $
* @jmx.mbean
* @jboss.xmbean
Modified: labs/jbossforums/trunk/forums/src/main/org/jboss/portlet/forums/impl/PollImpl.java
===================================================================
--- labs/jbossforums/trunk/forums/src/main/org/jboss/portlet/forums/impl/PollImpl.java 2006-10-23 18:14:21 UTC (rev 7031)
+++ labs/jbossforums/trunk/forums/src/main/org/jboss/portlet/forums/impl/PollImpl.java 2006-10-23 19:03:27 UTC (rev 7032)
@@ -153,6 +153,7 @@
this.voted = voted;
}
+ //TODO: Can be optimized
public int getVotesSum()
{
int sum = 0;
Modified: labs/jbossforums/trunk/forums/src/main/org/jboss/portlet/forums/impl/TopicImpl.java
===================================================================
--- labs/jbossforums/trunk/forums/src/main/org/jboss/portlet/forums/impl/TopicImpl.java 2006-10-23 18:14:21 UTC (rev 7031)
+++ labs/jbossforums/trunk/forums/src/main/org/jboss/portlet/forums/impl/TopicImpl.java 2006-10-23 19:03:27 UTC (rev 7032)
@@ -201,6 +201,7 @@
//this.replies = replies;
}
+ //TODO: Can be optimized
/**
* _ at _hibernate.many-to-one
* _column_="jbp_first_post_id"
More information about the jboss-svn-commits
mailing list