Update of
/var/cvs/contributions/CMSContainer_Modules/rssfeed/src/java/com/finalist/cmsc/rssfeed
In directory
james.mmbase.org:/tmp/cvs-serv2341/rssfeed/src/java/com/finalist/cmsc/rssfeed
Modified Files:
RssFeedNavigationRenderer.java
Log Message:
CMSC-1039 - RSS Feed did not use the 'max days age' field for expiry of items
See also:
http://cvs.mmbase.org/viewcvs/contributions/CMSContainer_Modules/rssfeed/src/java/com/finalist/cmsc/rssfeed
See also: http://www.mmbase.org/jira/browse/CMSC-1039
Index: RssFeedNavigationRenderer.java
===================================================================
RCS file:
/var/cvs/contributions/CMSContainer_Modules/rssfeed/src/java/com/finalist/cmsc/rssfeed/RssFeedNavigationRenderer.java,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -b -r1.10 -r1.11
--- RssFeedNavigationRenderer.java 25 Jul 2008 15:54:54 -0000 1.10
+++ RssFeedNavigationRenderer.java 27 Aug 2008 13:34:24 -0000 1.11
@@ -1,7 +1,6 @@
package com.finalist.cmsc.rssfeed;
import java.io.IOException;
-import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.*;
@@ -14,6 +13,7 @@
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.mmbase.bridge.*;
+import org.mmbase.bridge.util.SearchUtil;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
@@ -66,6 +66,8 @@
List<String> contentTypesList = rssFeed.getContenttypes();
int contentChannelNumber = rssFeed.getContentChannel();
+ int maxAgeInDays = rssFeed.getMax_age_in_days();
+
boolean useLifecycle = true;
int maxNumber = rssFeed.getMaximum();
if (maxNumber <= 0) {
@@ -81,6 +83,10 @@
NodeQuery query =
RepositoryUtil.createLinkedContentQuery(contentChannel, contentTypesList,
ContentElementUtil.PUBLISHDATE_FIELD, "down", useLifecycle,
null, 0, maxNumber, -1, -1, -1);
+ //Add constraint: max age in days
+ if (maxAgeInDays > 0) {
+ SearchUtil.addDayConstraint(query,
cloud.getNodeManager(RepositoryUtil.CONTENTELEMENT),
ContentElementUtil.PUBLISHDATE_FIELD, "-" + maxAgeInDays);
+ }
NodeList results = query.getNodeManager().getList(query);
for (NodeIterator ni = results.nodeIterator(); ni.hasNext();) {
Node resultNode = ni.nextNode();
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs