Update of
/var/cvs/contributions/CMSContainer_Portlets/portlets-newsletter/src/java/com/finalist/newsletter/builder
In directory
james.mmbase.org:/tmp/cvs-serv11368/portlets-newsletter/src/java/com/finalist/newsletter/builder
Modified Files:
NewsletterNavigationItemManager.java
NewsletterPublicationNavigationItemManager.java
Added Files:
NewsletterNavigationRenderer.java
Log Message:
CMSC-749 build on new MIME mechanism.
See also:
http://cvs.mmbase.org/viewcvs/contributions/CMSContainer_Portlets/portlets-newsletter/src/java/com/finalist/newsletter/builder
See also: http://www.mmbase.org/jira/browse/CMSC-749
NewsletterNavigationRenderer.java is new
Index: NewsletterNavigationItemManager.java
===================================================================
RCS file:
/var/cvs/contributions/CMSContainer_Portlets/portlets-newsletter/src/java/com/finalist/newsletter/builder/NewsletterNavigationItemManager.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- NewsletterNavigationItemManager.java 14 Dec 2007 14:50:58 -0000
1.3
+++ NewsletterNavigationItemManager.java 14 May 2008 03:54:41 -0000
1.4
@@ -1,21 +1,99 @@
package com.finalist.newsletter.builder;
import com.finalist.cmsc.navigation.NavigationTreeItemRenderer;
+import com.finalist.cmsc.navigation.NavigationItemRenderer;
+import com.finalist.cmsc.navigation.PagesUtil;
+import com.finalist.cmsc.navigation.PortletUtil;
import com.finalist.cmsc.portalImpl.PageNavigationItemManager;
+import com.finalist.cmsc.beans.om.NavigationItem;
+import com.finalist.cmsc.beans.om.Page;
import com.finalist.newsletter.tree.NewsletterTreeItemRenderer;
import com.finalist.newsletter.util.NewsletterUtil;
+import com.finalist.newsletter.beans.om.Newsletter;
+import org.mmbase.bridge.*;
+import org.mmbase.util.logging.Logger;
+import org.mmbase.util.logging.Logging;
+import org.apache.commons.beanutils.BeanUtils;
+
+import java.lang.reflect.InvocationTargetException;
+import java.util.List;
+import java.util.Map;
+
+import net.sf.mmapps.commons.beans.MMBaseNodeMapper;
public class NewsletterNavigationItemManager extends PageNavigationItemManager
{
+ private static Logger log =
Logging.getLoggerInstance(NewsletterNavigationItemManager.class.getName());
+ private NavigationItemRenderer renderer = new
NewsletterNavigationRenderer();
private NavigationTreeItemRenderer treeRenderer = new
NewsletterTreeItemRenderer();
+ public Class<? extends NavigationItem> getItemClass() {
+ System.out.println("++++++++++++++++++++++++++++++1");
+ return Newsletter.class;
+ }
+
+ public NavigationItem loadNavigationItem(Integer key, Node node) {
+
+ Newsletter newsletter = MMBaseNodeMapper.copyNode(node,
Newsletter.class);
+
+ RelationList rellist = PortletUtil.getPortletRelations(node);
+ RelationIterator r = rellist.relationIterator();
+ while (r.hasNext()) {
+ Relation relation = r.nextRelation();
+ Node relatedPortletNode = relation.getDestination();
+
+ log.debug("portlet='" + relatedPortletNode.getNumber() + "' :"
+ + relatedPortletNode.getNodeManager().getName());
+ String layoutid = relation.getStringValue(PortletUtil.LAYOUTID_FIELD);
+ newsletter.addPortlet(layoutid, relatedPortletNode.getNumber());
+ }
+
+ loadLayout(node, newsletter);
+ loadStylesheet(node, newsletter);
+ loadPageImages(node, newsletter);
+ return newsletter;
+ }
+
+ private void loadLayout(Node pageNode, Page page) {
+ Node layoutNode = PagesUtil.getLayout(pageNode);
+ if (layoutNode != null) {
+ page.setLayout(layoutNode.getNumber());
+ }
+ else {
+ log.error("NO LAYOUT");
+ }
+ }
+
+ private void loadStylesheet(Node pageNode, Page page) {
+ NodeList styleNode = PagesUtil.getStylesheet(pageNode);
+ if (!styleNode.isEmpty()) {
+ for (NodeIterator iter = styleNode.nodeIterator(); iter.hasNext();) {
+ Node stylesheetNode = iter.nextNode();
+ page.addStylesheet(stylesheetNode.getNumber());
+ }
+ }
+ }
+
+ private void loadPageImages(Node pageNode, Page page) {
+ Map<String, List<Integer>> pageImages =
PagesUtil.getPageImages(pageNode);
+ page.setPageImages(pageImages);
+ }
+
+
+ public NavigationItemRenderer getRenderer() {
+ System.out.println("++++++++++++++++++++++++++++++3");
+ return renderer;
+ }
+
@Override
public String getTreeManager() {
+ System.out.println("+++++++++++++++++++++++++++++ +4");
return NewsletterUtil.NEWSLETTER;
}
@Override
public NavigationTreeItemRenderer getTreeRenderer() {
+ System.out.println("++++++++++++++++++++++++++++++5");
return treeRenderer;
}
Index: NewsletterPublicationNavigationItemManager.java
===================================================================
RCS file:
/var/cvs/contributions/CMSContainer_Portlets/portlets-newsletter/src/java/com/finalist/newsletter/builder/NewsletterPublicationNavigationItemManager.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- NewsletterPublicationNavigationItemManager.java 14 Dec 2007 14:50:58
-0000 1.3
+++ NewsletterPublicationNavigationItemManager.java 14 May 2008 03:54:41
-0000 1.4
@@ -5,7 +5,7 @@
import com.finalist.newsletter.tree.NewsletterPublicationTreeItemRenderer;
import com.finalist.newsletter.util.NewsletterUtil;
-public class NewsletterPublicationNavigationItemManager extends
PageNavigationItemManager {
+public class NewsletterPublicationNavigationItemManager extends
NewsletterNavigationItemManager {
private NavigationTreeItemRenderer treeRenderer = new
NewsletterPublicationTreeItemRenderer();
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs