You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@roller.apache.org by sn...@apache.org on 2006/05/31 12:34:03 UTC

svn commit: r410494 [2/2] - in /incubator/roller/branches/roller_3.0: ./ src/org/apache/roller/business/hibernate/ src/org/apache/roller/business/search/operations/ src/org/apache/roller/model/ src/org/apache/roller/pojos/ src/org/apache/roller/ui/admi...

Modified: incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/velocity/SitePageModel.java
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/velocity/SitePageModel.java?rev=410494&r1=410493&r2=410494&view=diff
==============================================================================
--- incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/velocity/SitePageModel.java (original)
+++ incubator/roller/branches/roller_3.0/src/org/apache/roller/ui/rendering/velocity/SitePageModel.java Wed May 31 03:34:01 2006
@@ -17,13 +17,35 @@
  */
 package org.apache.roller.ui.rendering.velocity;
 
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.apache.roller.model.RefererManager;
+import org.apache.roller.model.Roller;
+import org.apache.roller.model.RollerFactory;
+import org.apache.roller.model.UserManager;
+import org.apache.roller.model.WeblogManager;
+import org.apache.roller.pojos.CommentData;
+import org.apache.roller.pojos.UserData;
+import org.apache.roller.pojos.WeblogEntryData;
+import org.apache.roller.pojos.WebsiteData;
+import org.apache.roller.pojos.wrapper.CommentDataWrapper;
+import org.apache.roller.pojos.wrapper.UserDataWrapper;
+import org.apache.roller.pojos.wrapper.WeblogEntryDataWrapper;
+import org.apache.roller.pojos.wrapper.WebsiteDataWrapper;
 
 /**
- *
+ * Page model that provides access to site-wide users, weblogs and entries for
+ * display on a frontpage weblog.
  */
 public class SitePageModel {
+    protected static Log log = 
+            LogFactory.getFactory().getInstance(SitePageModel.class);
     
     /**
      * Get most collection of Website objects,
@@ -31,42 +53,70 @@
      * @param offset   Offset into results (for paging)
      * @param len      Max number of results to return
      */
-    public List getWeblogs(int offset, int len) {
-        return null;
+    public List getWeblogs(int offset, int length) {
+        List results = new ArrayList();
+        try {            
+            Roller roller = RollerFactory.getRoller();
+            UserManager umgr = roller.getUserManager();
+            List weblogs = umgr.getWebsites(null, Boolean.TRUE, Boolean.TRUE, offset, length);
+            for (Iterator it = weblogs.iterator(); it.hasNext();) {
+                WebsiteData website = (WebsiteData) it.next();
+                results.add(WebsiteDataWrapper.wrap(website));
+            }
+        } catch (Exception e) {
+            log.error("ERROR: fetching weblog list", e);
+        }
+        return results;
     }
     
     /**
-     * Get most collection of most commented Website objects,
+     * Get most collection of most commented websites, as StatCount objects,
      * in descending order by number of comments.
      * @param sinceDays Only consider weblogs updated in the last sinceDays
      * @param offset   Offset into results (for paging)
-     * @param len      Max number of results to return
+     * @param length   Max number of results to return
      */
-    public List getCommentedWeblogs(int sinceDays ,int offset, int len) {
-        return null;
+    public List getCommentedWeblogs(int sinceDays , int offset, int length) {
+        List results = new ArrayList();
+        try {            
+            Roller roller = RollerFactory.getRoller();
+            UserManager umgr = roller.getUserManager();
+            results = umgr.getMostCommentedWebsites(Integer.MAX_VALUE, offset, length);
+        } catch (Exception e) {
+            log.error("ERROR: fetching commented weblog list", e);
+        }
+        return results;
     }
     
     /**
-     * Get most recent WeblogEntry objects across all weblogs,
-     * in reverse chrono order by pubTime.
+     * Get most commented weblog entries across all weblogs, as StatCount 
+     * objects, in descending order by number of comments.
+     * @param sinceDays Only consider weblogs updated in the last sinceDays
      * @param cats     To limit results to list of category names
      * @param offset   Offset into results (for paging)
      * @param len      Max number of results to return
      */
-    public List getWeblogEntries(List cats, int offset, int len) {
-        return null;
+    public List getCommentedWeblogEntries(List cats, int sinceDays, int offset, int length) {
+        List results = new ArrayList();
+        try {            
+            Roller roller = RollerFactory.getRoller();
+            WeblogManager wmgr = roller.getWeblogManager();
+            results = wmgr.getMostCommentedWeblogEntries(null, Integer.MAX_VALUE, offset, length);
+        } catch (Exception e) {
+            log.error("ERROR: fetching commented weblog entries list", e);
+        }
+        return results;
     }
     
     /**
-     * Get most commented WeblogEntry objects across all weblogs,
-     * in descending order by number of comments.
-     * @param sinceDays Only consider weblogs updated in the last sinceDays
-     * @param cats     To limit results to list of category names
+     * Get most recent WeblogEntry objects across all weblogs,
+     * in reverse chrono order by pubTime.
+     * @param cat      To limit results to a specific category
      * @param offset   Offset into results (for paging)
-     * @param len      Max number of results to return
+     * @param length   Max number of results to return
      */
-    public List getCommentedWeblogEntries(List cats, int sinceDays, int offset, int len) {
-        return null;
+    public List getWeblogEntries(String cat, int offset, int length) {
+        return getUserWeblogEntries(null, cat, offset, length);
     }
     
     /**
@@ -76,8 +126,24 @@
      * @param offset     Offset into results (for paging)
      * @param len        Max number of results to return
      */
-    public List getUserWeblogEntries(String username, int offset, int len) {
-        return null;
+    public List getUserWeblogEntries(String username, String cat, int offset, int length) {
+        List results = new ArrayList();
+        if (cat.equals(PageModel.VELOCITY_NULL)) cat = null;
+        try {            
+            Roller roller = RollerFactory.getRoller();
+            WeblogManager wmgr = roller.getWeblogManager();
+            UserManager umgr = roller.getUserManager();
+            UserData user = umgr.getUserByUsername(username);
+            List entries = wmgr.getWeblogEntries( 
+                null, user, null, new Date(), cat, WeblogEntryData.PUBLISHED, "pubTime", offset, length);
+            for (Iterator it = entries.iterator(); it.hasNext();) {
+                WeblogEntryData entry = (WeblogEntryData) it.next();
+                results.add(WeblogEntryDataWrapper.wrap(entry));
+            }
+        } catch (Exception e) {
+            log.error("ERROR: fetching weblog list", e);
+        }
+        return results;
     }
     
     /**
@@ -86,8 +152,22 @@
      * @param offset   Offset into results (for paging)
      * @param len      Max number of results to return
      */
-    public List getComments(int offset, int len) {
-        return null;
+    public List getComments(int offset, int length) {
+        List results = new ArrayList();
+        try {            
+            Roller roller = RollerFactory.getRoller();
+            WeblogManager wmgr = roller.getWeblogManager();
+            List entries = wmgr.getComments(
+                null, null, null, null, new Date(), 
+                Boolean.FALSE, Boolean.TRUE, Boolean.FALSE, true, offset, length);
+            for (Iterator it = entries.iterator(); it.hasNext();) {
+                CommentData comment = (CommentData) it.next();
+                results.add(CommentDataWrapper.wrap(comment));
+            }
+        } catch (Exception e) {
+            log.error("ERROR: fetching comment list", e);
+        }
+        return results;
     }
     
     /**
@@ -95,8 +175,20 @@
      * @param offset   Offset into results (for paging)
      * @param len      Max number of results to return
      */
-    public List getUsers(int offset, int len) {
-        return null;
+    public List getUsers(int offset, int length) {
+        List results = new ArrayList();
+        try {            
+            Roller roller = RollerFactory.getRoller();
+            UserManager umgr = roller.getUserManager();
+            List users = umgr.getUsers(offset, length);
+            for (Iterator it = users.iterator(); it.hasNext();) {
+                UserData user = (UserData) it.next();
+                results.add(UserDataWrapper.wrap(user));
+            }
+        } catch (Exception e) {
+            log.error("ERROR: fetching weblog list", e);
+        }
+        return results;
     }
     
     /**
@@ -105,15 +197,45 @@
      * @param offset   Offset into results (for paging)
      * @param len      Max number of results to return
      */
-    public List getHotBlogs(int sinceDays, int offset, int len) {
-        return null;
+    public List getHotWeblogs(int sinceDays, int offset, int length) {
+        List results = new ArrayList();
+        try {            
+            Roller roller = RollerFactory.getRoller();
+            RefererManager rmgr = roller.getRefererManager();
+            results = rmgr.getHotWeblogs(sinceDays, offset, length);
+        } catch (Exception e) {
+            log.error("ERROR: fetching hot weblog list", e);
+        }
+        return results;
     }
     
     /** Get User object by username */
-    //public UserDataWrapper getUser(String username) {}
+    public UserDataWrapper getUser(String username) {
+        UserDataWrapper wrappedUser = null;
+        try {            
+            Roller roller = RollerFactory.getRoller();
+            UserManager umgr = roller.getUserManager();
+            UserData user = umgr.getUserByUsername(username, Boolean.TRUE);
+            wrappedUser = UserDataWrapper.wrap(user);
+        } catch (Exception e) {
+            log.error("ERROR: fetching users by letter", e);
+        }
+        return wrappedUser;
+    }
     
     /** Get Website object by handle */
-    //public WebsiteDataWrapper getWeblog(String handle) {}
+    public WebsiteDataWrapper getWeblog(String handle) {
+        WebsiteDataWrapper wrappedWebsite = null;
+        try {            
+            Roller roller = RollerFactory.getRoller();
+            UserManager umgr = roller.getUserManager();
+            WebsiteData website = umgr.getWebsiteByHandle(handle);
+            wrappedWebsite = WebsiteDataWrapper.wrap(website);
+        } catch (Exception e) {
+            log.error("ERROR: fetching users by letter", e);
+        }
+        return wrappedWebsite;
+    }
     
     /**
      * Get map with 26 entries, one for each letter A-Z and
@@ -121,12 +243,32 @@
      * names start with each letter.
      */
     public Map getUsernameLetterMap() {
-        return null;
+        Map results = new HashMap();
+        try {            
+            Roller roller = RollerFactory.getRoller();
+            UserManager umgr = roller.getUserManager();
+            results = umgr.getUsernameLetterMap();
+        } catch (Exception e) {
+            log.error("ERROR: fetching username letter map", e);
+        }
+        return results;
     }
     
     /** Get collection of users whose names begin with specified letter */
-    public List getUsersByLetter(char letter) {
-        return null;
+    public List getUsersByLetter(char letter, int offset, int length) {
+        List results = new ArrayList();
+        try {            
+            Roller roller = RollerFactory.getRoller();
+            UserManager umgr = roller.getUserManager();
+            List users = umgr.getUsersByLetter(letter, offset, length);
+            for (Iterator it = users.iterator(); it.hasNext();) {
+                UserData user = (UserData) it.next();
+                results.add(UserDataWrapper.wrap(user));
+            }
+        } catch (Exception e) {
+            log.error("ERROR: fetching users by letter", e);
+        }
+        return results;
     }
     
     /**
@@ -135,12 +277,32 @@
      * names start with each letter.
      */
     public Map getWeblogHandleLetterMap() {
-        return null;
+        Map results = new HashMap();
+        try {            
+            Roller roller = RollerFactory.getRoller();
+            UserManager umgr = roller.getUserManager();
+            results = umgr.getWeblogHandleLetterMap();
+        } catch (Exception e) {
+            log.error("ERROR: fetching weblog handle letter map", e);
+        }
+        return results;
     }
     
     /** Get collection of weblogs whose handles begin with specified letter */
-    public List getWeblogsByLetter(char letter) {
-        return null;
+    public List getWeblogsByLetter(char letter, int offset, int length) {
+        List results = new ArrayList();
+        try {            
+            Roller roller = RollerFactory.getRoller();
+            UserManager umgr = roller.getUserManager();
+            List weblogs = umgr.getWeblogsByLetter(letter, offset, length);
+            for (Iterator it = weblogs.iterator(); it.hasNext();) {
+                WebsiteData website = (WebsiteData) it.next();
+                results.add(WebsiteDataWrapper.wrap(website));
+            }
+        } catch (Exception e) {
+            log.error("ERROR: fetching weblogs by letter", e);
+        }
+        return results;
     }
 }
 

Modified: incubator/roller/branches/roller_3.0/src/org/apache/roller/util/cache/FuturePostingsInvalidationJob.java
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_3.0/src/org/apache/roller/util/cache/FuturePostingsInvalidationJob.java?rev=410494&r1=410493&r2=410494&view=diff
==============================================================================
--- incubator/roller/branches/roller_3.0/src/org/apache/roller/util/cache/FuturePostingsInvalidationJob.java (original)
+++ incubator/roller/branches/roller_3.0/src/org/apache/roller/util/cache/FuturePostingsInvalidationJob.java Wed May 31 03:34:01 2006
@@ -95,8 +95,8 @@
             mLogger.debug("looking up entries between "+start+" and "+end);
             
             // get all published entries between start and end date
-            expiringEntries = mgr.getWeblogEntries(null, start, end, null, 
-                    null, WeblogEntryData.PUBLISHED, null);
+            expiringEntries = mgr.getWeblogEntries(null, null, start, end, null, 
+                    null, WeblogEntryData.PUBLISHED, 0, Integer.MAX_VALUE);
             
             this.nextExpirations = expiringEntries;
             

Modified: incubator/roller/branches/roller_3.0/src/org/apache/roller/webservices/adminapi/RollerMemberHandler.java
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_3.0/src/org/apache/roller/webservices/adminapi/RollerMemberHandler.java?rev=410494&r1=410493&r2=410494&view=diff
==============================================================================
--- incubator/roller/branches/roller_3.0/src/org/apache/roller/webservices/adminapi/RollerMemberHandler.java (original)
+++ incubator/roller/branches/roller_3.0/src/org/apache/roller/webservices/adminapi/RollerMemberHandler.java Wed May 31 03:34:01 2006
@@ -140,7 +140,7 @@
     private EntrySet getCollection() throws HandlerException {
         // get all permissions: for all users, for all websites
         try {
-            List users = getRoller().getUserManager().getUsers();
+            List users = getRoller().getUserManager().getUsers(0, Integer.MAX_VALUE);
             List perms = new ArrayList();
             for (Iterator i = users.iterator(); i.hasNext(); ) {
                 UserData user = (UserData)i.next();

Modified: incubator/roller/branches/roller_3.0/src/org/apache/roller/webservices/adminapi/RollerUserHandler.java
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_3.0/src/org/apache/roller/webservices/adminapi/RollerUserHandler.java?rev=410494&r1=410493&r2=410494&view=diff
==============================================================================
--- incubator/roller/branches/roller_3.0/src/org/apache/roller/webservices/adminapi/RollerUserHandler.java (original)
+++ incubator/roller/branches/roller_3.0/src/org/apache/roller/webservices/adminapi/RollerUserHandler.java Wed May 31 03:34:01 2006
@@ -88,7 +88,7 @@
     
     private EntrySet getCollection() throws HandlerException {
         try {
-            List users = getRoller().getUserManager().getUsers();
+            List users = getRoller().getUserManager().getUsers(0, Integer.MAX_VALUE);
             if (users == null) {
                 users = java.util.Collections.EMPTY_LIST;
             }

Modified: incubator/roller/branches/roller_3.0/src/org/apache/roller/webservices/adminapi/RollerWeblogHandler.java
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_3.0/src/org/apache/roller/webservices/adminapi/RollerWeblogHandler.java?rev=410494&r1=410493&r2=410494&view=diff
==============================================================================
--- incubator/roller/branches/roller_3.0/src/org/apache/roller/webservices/adminapi/RollerWeblogHandler.java (original)
+++ incubator/roller/branches/roller_3.0/src/org/apache/roller/webservices/adminapi/RollerWeblogHandler.java Wed May 31 03:34:01 2006
@@ -102,7 +102,7 @@
     
     private EntrySet getCollection() throws HandlerException {
         try {
-            List users = getRoller().getUserManager().getUsers();
+            List users = getRoller().getUserManager().getUsers(0, Integer.MAX_VALUE);
             if (users == null) {
                 users = Collections.EMPTY_LIST;
             }

Modified: incubator/roller/branches/roller_3.0/src/org/apache/roller/webservices/atomprotocol/RollerAtomHandler.java
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_3.0/src/org/apache/roller/webservices/atomprotocol/RollerAtomHandler.java?rev=410494&r1=410493&r2=410494&view=diff
==============================================================================
--- incubator/roller/branches/roller_3.0/src/org/apache/roller/webservices/atomprotocol/RollerAtomHandler.java (original)
+++ incubator/roller/branches/roller_3.0/src/org/apache/roller/webservices/atomprotocol/RollerAtomHandler.java Wed May 31 03:34:01 2006
@@ -203,6 +203,7 @@
         if (canView(website)) {
             entries = mRoller.getWeblogManager().getWeblogEntries(
                     website,           // website
+                    null,
                     null,              // startDate
                     null,              // endDate
                     null,              // catName

Modified: incubator/roller/branches/roller_3.0/src/org/apache/roller/webservices/xmlrpc/BloggerAPIHandler.java
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_3.0/src/org/apache/roller/webservices/xmlrpc/BloggerAPIHandler.java?rev=410494&r1=410493&r2=410494&view=diff
==============================================================================
--- incubator/roller/branches/roller_3.0/src/org/apache/roller/webservices/xmlrpc/BloggerAPIHandler.java (original)
+++ incubator/roller/branches/roller_3.0/src/org/apache/roller/webservices/xmlrpc/BloggerAPIHandler.java Wed May 31 03:34:01 2006
@@ -469,12 +469,11 @@
             WeblogManager weblogMgr = roller.getWeblogManager();
             if (website != null) {
                 Map entries = weblogMgr.getWeblogEntryObjectMap(
-                        website,                // userName
+                        website,                // website
                         null,                   // startDate
                         new Date(),             // endDate
                         null,                   // catName
-                        null,      // status
-                        new Integer(numposts)); // maxEntries
+                        null);
                 
                 Iterator iter = entries.values().iterator();
                 while (iter.hasNext()) {

Modified: incubator/roller/branches/roller_3.0/src/org/apache/roller/webservices/xmlrpc/MetaWeblogAPIHandler.java
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_3.0/src/org/apache/roller/webservices/xmlrpc/MetaWeblogAPIHandler.java?rev=410494&r1=410493&r2=410494&view=diff
==============================================================================
--- incubator/roller/branches/roller_3.0/src/org/apache/roller/webservices/xmlrpc/MetaWeblogAPIHandler.java (original)
+++ incubator/roller/branches/roller_3.0/src/org/apache/roller/webservices/xmlrpc/MetaWeblogAPIHandler.java Wed May 31 03:34:01 2006
@@ -414,12 +414,13 @@
             if (website != null) {
                 List entries = weblogMgr.getWeblogEntries(
                     website,           // website
+                    null, 
                     null,              // startDate
                     null,              // endDate
                     null,              // catName
                     null,              // status
                     "updateTime",      // sortby
-                    new Integer(numposts));  // maxEntries
+                    0, numposts);  
                 
                 Iterator iter = entries.iterator();
                 while (iter.hasNext()) {

Modified: incubator/roller/branches/roller_3.0/tests/org/apache/roller/business/WeblogEntryTest.java
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_3.0/tests/org/apache/roller/business/WeblogEntryTest.java?rev=410494&r1=410493&r2=410494&view=diff
==============================================================================
--- incubator/roller/branches/roller_3.0/tests/org/apache/roller/business/WeblogEntryTest.java (original)
+++ incubator/roller/branches/roller_3.0/tests/org/apache/roller/business/WeblogEntryTest.java Wed May 31 03:34:01 2006
@@ -183,7 +183,7 @@
         
         // get all entries for weblog
         entries = null;
-        entries = mgr.getWeblogEntries(testWeblog, null, null, null, null, null, null);
+        entries = mgr.getWeblogEntries(testWeblog, null, null, null, null, null, null, null);
         assertNotNull(entries);
         assertEquals(3, entries.size());
         assertEquals(entry3, entries.get(0));
@@ -196,26 +196,26 @@
         
         // get all published entries only
         entries = null;
-        entries = mgr.getWeblogEntries(testWeblog, null, null, null, WeblogEntryData.PUBLISHED, null, null);
+        entries = mgr.getWeblogEntries(testWeblog, null, null, null, null, WeblogEntryData.PUBLISHED, null, null);
         assertNotNull(entries);
         assertEquals(2, entries.size());
         
         // get all entries in date range
         entries = null;
-        entries = mgr.getWeblogEntries(testWeblog, entry2.getPubTime(), entry2.getPubTime(), null, null, null, null);
+        entries = mgr.getWeblogEntries(testWeblog, null, entry2.getPubTime(), entry2.getPubTime(), null, null, null, null);
         assertNotNull(entries);
         assertEquals(1, entries.size());
         assertEquals(entry2, entries.get(0));
         
         // get all entries, limited to maxSize
         entries = null;
-        entries = mgr.getWeblogEntries(testWeblog, null, null, null, null, null, new Integer(2));
+        entries = mgr.getWeblogEntries(testWeblog, null, null, null, null, null, null, new Integer(2));
         assertNotNull(entries);
         assertEquals(2, entries.size());
         
         // get all entries in category
         entries = null;
-        entries = mgr.getWeblogEntries(testWeblog, null, null, testWeblog.getDefaultCategory().getName(), null, null, null);
+        entries = mgr.getWeblogEntries(testWeblog, null, null, null, testWeblog.getDefaultCategory().getName(), null, null, null);
         assertNotNull(entries);
         assertEquals(3, entries.size());
         

Modified: incubator/roller/branches/roller_3.0/tests/org/apache/roller/ui/rendering/velocity/ExportRssTest.java
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_3.0/tests/org/apache/roller/ui/rendering/velocity/ExportRssTest.java?rev=410494&r1=410493&r2=410494&view=diff
==============================================================================
--- incubator/roller/branches/roller_3.0/tests/org/apache/roller/ui/rendering/velocity/ExportRssTest.java (original)
+++ incubator/roller/branches/roller_3.0/tests/org/apache/roller/ui/rendering/velocity/ExportRssTest.java Wed May 31 03:34:01 2006
@@ -55,7 +55,7 @@
         
         List entries = getRoller().getWeblogManager().getWeblogEntries(
                         null,               // userName
-                        null,               // startDate
+null,                         null,               // startDate
                         new Date(),         // endDate
                         null,               // catName
                         null,               // status

Modified: incubator/roller/branches/roller_3.0/web/WEB-INF/classes/ApplicationResources.properties
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_3.0/web/WEB-INF/classes/ApplicationResources.properties?rev=410494&r1=410493&r2=410494&view=diff
==============================================================================
--- incubator/roller/branches/roller_3.0/web/WEB-INF/classes/ApplicationResources.properties (original)
+++ incubator/roller/branches/roller_3.0/web/WEB-INF/classes/ApplicationResources.properties Wed May 31 03:34:01 2006
@@ -1067,7 +1067,8 @@
 # ------------------------------------------------------------------ Statistics
 
 statCount.weblogCommentCountType=Weblog comment count
-statCount.weblogEntryCcommentCountType=Weblog entry comment count
+statCount.weblogEntryCommentCountType=Weblog entry comment count
+statCount.weblogDayHits=Today's hit count
 
 # ------------------------------------------------------------------ Tabbed Menu