From: <jbo...@li...> - 2005-08-23 20:18:59
|
Author: adamw Date: 2005-08-23 16:18:53 -0400 (Tue, 23 Aug 2005) New Revision: 935 Modified: trunk/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DownloadsDescriptor.java Log: Download buttons Modified: trunk/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DownloadsDescriptor.java =================================================================== --- trunk/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DownloadsDescriptor.java 2005-08-23 20:10:20 UTC (rev 934) +++ trunk/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DownloadsDescriptor.java 2005-08-23 20:18:53 UTC (rev 935) @@ -19,8 +19,11 @@ import org.apache.xerces.parsers.DOMParser; import org.jboss.forge.common.ForgeHelper; import org.jboss.forge.common.projects.XmlInputFactory.XmlNotFoundException; +import org.jboss.forge.common.projects.elements.BindingsHandlerIterSingleKey; import org.jboss.forge.common.projects.elements.ElementDescriptor; import org.jboss.forge.common.projects.elements.ElementsDescriptor; +import org.jboss.forge.common.projects.elements.ExtendedPropertiesMap; +import org.jboss.forge.common.projects.elements.OutsidePropertiesMap; import org.jboss.forge.common.projects.elements.PropertiesHandler; import org.jboss.forge.common.projects.elements.PropertiesHandlerDefault; import org.jboss.forge.common.projects.elements.PropertiesHandlerStack; @@ -182,7 +185,9 @@ filesDesc = new ElementsDescriptor(n, xht, "file", getFilesPropertiesHandler(isf, projectId, downloadPrefix, pathCategoryContext, - separator,componentDir)); + separator,componentDir), + getFilesExtendedPropertiesMap(), + new OutsidePropertiesMap()); } } } @@ -254,6 +259,31 @@ return stack; } + private ExtendedPropertiesMap getFilesExtendedPropertiesMap() { + ExtendedPropertiesMap epm = new ExtendedPropertiesMap(); + epm.addPropertySupport("button", + getButtonPropertiesHandler(), + new BindingsHandlerIterSingleKey("button", "buttons")); + return epm; + } + + private PropertiesHandler getButtonPropertiesHandler() { + return new PropertiesHandler() { + public void fillContextShallow(PropertiesMap properties, DelegateContext context) { + context.put("link", properties.get("id").getFirstValue()); + context.put("name", properties.get("name").getFirstValue()); + } + + public void fillContext(PropertiesMap properties, DelegateContext context) { + + } + + public void processNode(ElementDescriptor thisElement, Node node) { + + } + }; + } + private PropertiesHandler getFilesPropertiesHandler( final XmlInputFactory isf, final String projectId, final String downloadPrefix, final String pathCategoryContext, |