[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