Update of /var/cvs/contributions/CMSContainer_Portlets/portlets-newsletter/src/java/com/finalist/newsletter/util In directory james.mmbase.org:/tmp/cvs-serv2264/portlets-newsletter/src/java/com/finalist/newsletter/util
Modified Files: POConvertUtils.java NewsletterUtil.java Log Message: CMSC-703 change tag to term See also: http://cvs.mmbase.org/viewcvs/contributions/CMSContainer_Portlets/portlets-newsletter/src/java/com/finalist/newsletter/util See also: http://www.mmbase.org/jira/browse/CMSC-703 Index: POConvertUtils.java =================================================================== RCS file: /var/cvs/contributions/CMSContainer_Portlets/portlets-newsletter/src/java/com/finalist/newsletter/util/POConvertUtils.java,v retrieving revision 1.5 retrieving revision 1.6 diff -u -b -r1.5 -r1.6 --- POConvertUtils.java 23 Apr 2008 09:05:54 -0000 1.5 +++ POConvertUtils.java 29 Apr 2008 01:37:04 -0000 1.6 @@ -1,34 +1,14 @@ package com.finalist.newsletter.util; -import com.finalist.cmsc.services.community.person.Person; -import com.finalist.newsletter.domain.Subscription; -import com.finalist.newsletter.services.CommunityModuleAdapter; import org.apache.commons.beanutils.BeanUtils; import org.mmbase.bridge.Node; import org.mmbase.util.logging.Logger; import org.mmbase.util.logging.Logging; import java.lang.reflect.Method; -import java.util.ArrayList; -import java.util.List; public class POConvertUtils<T> { private static Logger log = Logging.getLoggerInstance(POConvertUtils.class.getName()); - public static List<Subscription> convertSubscriptions(List<Node> nodes) { - List<Subscription> subscriptions = new ArrayList<Subscription>(); - for (Node node : nodes) { - subscriptions.add(convertSubscription(node)); - } - return subscriptions; - } - - public static Subscription convertSubscription(Node node) { - Subscription subscription = new Subscription(); -// Person subscripber = CommunityModuleAdapter.; -// subscription.setSubscriber(subscripber); - return subscription; - } - public void convert(T target, Node node) { Index: NewsletterUtil.java =================================================================== RCS file: /var/cvs/contributions/CMSContainer_Portlets/portlets-newsletter/src/java/com/finalist/newsletter/util/NewsletterUtil.java,v retrieving revision 1.16 retrieving revision 1.17 diff -u -b -r1.16 -r1.17 --- NewsletterUtil.java 28 Apr 2008 12:39:44 -0000 1.16 +++ NewsletterUtil.java 29 Apr 2008 01:37:04 -0000 1.17 @@ -1,9 +1,6 @@ package com.finalist.newsletter.util; -import java.util.ArrayList; -import java.util.List; -import java.util.SortedSet; -import java.util.TreeSet; +import java.util.*; import net.sf.mmapps.commons.beans.MMBaseNodeMapper; import net.sf.mmapps.modules.cloudprovider.CloudProviderFactory; @@ -25,6 +22,8 @@ import com.finalist.cmsc.beans.om.ContentElement; import com.finalist.newsletter.cao.impl.NewsletterSubscriptionCAOImpl; +import com.finalist.newsletter.domain.Term; +import com.finalist.portlets.newsletter.NewsletterContentPortlet; public abstract class NewsletterUtil { private static Log log = LogFactory @@ -125,7 +124,8 @@ String themeType = themeNode.getNodeManager().getName(); if (themeType.equals("newslettertheme")) { managerName = "newsletter"; - } else { + } + else { managerName = "newsletterpublication"; } Node newsletterNode = SearchUtil.findRelatedNode(themeNode, managerName, "newslettertheme"); @@ -210,35 +210,33 @@ return (null); } - public static List<ContentElement> getArticlesByNewsletter(int newsletterNumber,int offset,int elementsPerPage,String orderBy,String direction) { + public static List<ContentElement> getArticlesByNewsletter(int newsletterNumber, int offset, int elementsPerPage, String orderBy, String direction) { if (newsletterNumber > 0) { List<ContentElement> articles = new ArrayList<ContentElement>(); Cloud cloud = CloudProviderFactory.getCloudProvider().getCloud(); Node newsletterNode = cloud.getNode(newsletterNumber); - NodeManager tagNodeManager = cloud.getNodeManager("tag"); - NodeList tags = newsletterNode.getRelatedNodes(tagNodeManager); + NodeManager termNodeManager = cloud.getNodeManager("term"); + NodeList terms = newsletterNode.getRelatedNodes(termNodeManager); NodeManager articleNodeManager = cloud.getNodeManager("article"); - Node tag = null; - SortedSet<Integer> sort= new TreeSet<Integer>(); - for (int i = 0 ; i < tags.size(); i++) { - tag = tags.getNode(i); - sort.add(new Integer(tag.getNumber())); + Node term = null; + SortedSet<Integer> sort = new TreeSet<Integer>(); + for (int i = 0; i < terms.size(); i++) { + term = terms.getNode(i); + sort.add(new Integer(term.getNumber())); } - if(sort.size() == 0) { + if (sort.size() == 0) { return (null); } NodeQuery query = cloud.createNodeQuery(); Step parameterStep = query.addStep(articleNodeManager); query.setNodeStep(parameterStep); - query.addRelationStep(tagNodeManager, - null, null); - SearchUtil.addInConstraint(query, tagNodeManager - .getField("number"), sort); + query.addRelationStep(termNodeManager, null, null); + SearchUtil.addInConstraint(query, termNodeManager.getField("number"), sort); Queries.addSortOrders(query, orderBy, direction); query.setOffset(offset); query.setMaxNumber(elementsPerPage); - NodeList articleList =query.getList(); + NodeList articleList = query.getList(); if (articleList != null) { for (int i = 0; i < articleList.size(); i++) { Node articleNode = articleList.getNode(i); @@ -257,27 +255,25 @@ Cloud cloud = CloudProviderFactory.getCloudProvider().getCloud(); Node newsletterNode = cloud.getNode(newsletterNumber); - NodeManager tagNodeManager = cloud.getNodeManager("tag"); - NodeList tags = newsletterNode.getRelatedNodes(tagNodeManager); + NodeManager termNodeManager = cloud.getNodeManager("term"); + NodeList terms = newsletterNode.getRelatedNodes(termNodeManager); NodeManager articleNodeManager = cloud.getNodeManager("article"); - Node tag = null; - SortedSet<Integer> sort= new TreeSet<Integer>(); - for (int i = 0 ; i < tags.size(); i++) { - tag = tags.getNode(i); - sort.add(new Integer(tag.getNumber())); + Node term = null; + SortedSet<Integer> sort = new TreeSet<Integer>(); + for (int i = 0; i < terms.size(); i++) { + term = terms.getNode(i); + sort.add(new Integer(term.getNumber())); } - if(sort.size() == 0) { + if (sort.size() == 0) { return (0); } NodeQuery query = cloud.createNodeQuery(); Step parameterStep = query.addStep(articleNodeManager); query.setNodeStep(parameterStep); - query.addRelationStep(tagNodeManager, - null, null); - SearchUtil.addInConstraint(query, tagNodeManager - .getField("number"), sort); + query.addRelationStep(termNodeManager, null, null); + SearchUtil.addInConstraint(query, termNodeManager.getField("number"), sort); -// NodeQuery query = Queries.createRelatedNodesQuery(tag,articleNodeManager,null,null); +// NodeQuery query = Queries.createRelatedNodesQuery(term,articleNodeManager,null,null); return Queries.count(query); } return (0); @@ -386,4 +382,25 @@ } } } + + public static String getTermURL(String url, Set<Term> terms, int publicationId) { + if (null != terms) { + log.debug("get publication " + publicationId + " with " + terms.size() + " terms"); + Cloud cloud = CloudProviderFactory.getCloudProvider().getCloud(); + Node publicationNode = cloud.getNode(publicationId); + + List<Node> relatedportlets = publicationNode.getRelatedNodes("portlet"); + + for (Node portlet : relatedportlets) { + List<Node> portletdefNodes = portlet.getRelatedNodes("portletdefinition"); + String portletDefinition = portletdefNodes.get(0).getStringValue("definition"); + if (portletDefinition.equals(NewsletterContentPortlet.DEFINITION)) { +// todo: add real logic + } + } + } + return url; + } + + } \ No newline at end of file _______________________________________________ Cvs mailing list Cvs@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/cvs