You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lenya.apache.org by an...@apache.org on 2005/04/13 10:30:55 UTC
svn commit: r161165 -
lenya/branches/BRANCH_1_2_X/src/java/org/apache/lenya/cms/cocoon/generation/SiteTreeGenerator.java
Author: andreas
Date: Wed Apr 13 01:30:52 2005
New Revision: 161165
URL: http://svn.apache.org/viewcvs?view=rev&rev=161165
Log:
[minor change] removed TODO hint, added some javadocs
Modified:
lenya/branches/BRANCH_1_2_X/src/java/org/apache/lenya/cms/cocoon/generation/SiteTreeGenerator.java
Modified: lenya/branches/BRANCH_1_2_X/src/java/org/apache/lenya/cms/cocoon/generation/SiteTreeGenerator.java
URL: http://svn.apache.org/viewcvs/lenya/branches/BRANCH_1_2_X/src/java/org/apache/lenya/cms/cocoon/generation/SiteTreeGenerator.java?view=diff&r1=161164&r2=161165
==============================================================================
--- lenya/branches/BRANCH_1_2_X/src/java/org/apache/lenya/cms/cocoon/generation/SiteTreeGenerator.java (original)
+++ lenya/branches/BRANCH_1_2_X/src/java/org/apache/lenya/cms/cocoon/generation/SiteTreeGenerator.java Wed Apr 13 01:30:52 2005
@@ -45,20 +45,24 @@
import org.xml.sax.helpers.AttributesImpl;
import org.xml.sax.helpers.NamespaceSupport;
-public class SiteTreeGenerator extends ServiceableGenerator
- implements Parameterizable, CacheableProcessingComponent
-{
+/**
+ * Site tree generator.
+ *
+ * @version $Id:$
+ */
+public class SiteTreeGenerator extends ServiceableGenerator implements Parameterizable,
+ CacheableProcessingComponent {
private static Logger log = Logger.getLogger(SiteTreeGenerator.class);
-
+
protected final static String I18N_PX = "i18n";
protected final static String I18N_NS = "http://apache.org/cocoon/i18n/2.1";
-
+
protected final static String CDATA = "CDATA";
-
+
protected final static String SITE_ELEMENT = "site";
protected final static String NODE_ELEMENT = "node";
protected final static String LABEL_ELEMENT = "label";
-
+
protected final static String LABEL_ATTRIBUTE = "label";
protected final static String ATTR_ATTRIBUTE = "attr";
protected final static String Q_ATTR_ATTRIBUTE = I18N_PX + ":" + ATTR_ATTRIBUTE;
@@ -69,26 +73,31 @@
protected final static String VISIBLEINNAV_ATTRIBUTE = "visibleinnav";
protected final static String SUFFIX_ATTRIBUTE = "suffix";
- // TODO: is this correct re xml namespace?
protected final static String Q_LANG_ATTRIBUTE = "xml:lang";
-
+
+ /**
+ * The area of the site tree.
+ */
public final static String AREA_PARAMETER = "area";
private final AttributesImpl atts = new AttributesImpl();
-
+
SiteTree sitetree = null;
String area = null;
-
+
/**
* No parameters implemented.
* @see org.apache.avalon.framework.parameters.Parameterizable#parameterize(org.apache.avalon.framework.parameters.Parameters)
*/
public void parameterize(Parameters parameters) throws ParameterException {
}
-
+
+ /**
+ * @see org.apache.cocoon.sitemap.SitemapModelComponent#setup(org.apache.cocoon.environment.SourceResolver,
+ * java.util.Map, java.lang.String, org.apache.avalon.framework.parameters.Parameters)
+ */
public void setup(SourceResolver resolver, Map objectModel, String src, Parameters par)
- throws ProcessingException, SAXException, IOException
- {
+ throws ProcessingException, SAXException, IOException {
log.debug("setup");
try {
Publication publication = PublicationFactory.getPublication(objectModel);
@@ -102,7 +111,7 @@
throw new ProcessingException("Unable to get sitetree.", e);
}
}
-
+
/**
* @see org.apache.cocoon.generation.Generator#generate()
*/
@@ -130,13 +139,13 @@
this.contentHandler.startElement(SiteTree.NAMESPACE_URI, SITE_ELEMENT, SITE_ELEMENT, atts);
SiteTreeNode[] topNodes = tree.getTopNodes();
- for (int i=0; i<topNodes.length; i++) {
+ for (int i = 0; i < topNodes.length; i++) {
generateNodes(topNodes[i]);
}
this.contentHandler.endElement(SiteTree.NAMESPACE_URI, SITE_ELEMENT, SITE_ELEMENT);
}
-
+
private void generateNodes(SiteTreeNode node) throws SAXException {
atts.clear();
atts.addAttribute("", ID_ATTRIBUTE, ID_ATTRIBUTE, CDATA, node.getId());
@@ -144,31 +153,35 @@
atts.addAttribute("", HREF_ATTRIBUTE, HREF_ATTRIBUTE, CDATA, node.getHref());
if (node.getSuffix() != null)
atts.addAttribute("", SUFFIX_ATTRIBUTE, SUFFIX_ATTRIBUTE, CDATA, node.getSuffix());
- atts.addAttribute("", LINK_ATTRIBUTE, LINK_ATTRIBUTE, CDATA, Boolean.toString(node.hasLink()));
- atts.addAttribute("", VISIBLEINNAV_ATTRIBUTE, VISIBLEINNAV_ATTRIBUTE, CDATA, Boolean.toString(node.visibleInNav()));
+ atts.addAttribute("", LINK_ATTRIBUTE, LINK_ATTRIBUTE, CDATA, Boolean.toString(node
+ .hasLink()));
+ atts.addAttribute("", VISIBLEINNAV_ATTRIBUTE, VISIBLEINNAV_ATTRIBUTE, CDATA, Boolean
+ .toString(node.visibleInNav()));
this.contentHandler.startElement(SiteTree.NAMESPACE_URI, NODE_ELEMENT, NODE_ELEMENT, atts);
-
+
Label[] labels = node.getLabels();
- for (int i=0; i<labels.length; i++)
+ for (int i = 0; i < labels.length; i++)
generateLabels(labels[i]);
SiteTreeNode[] children = node.getChildren();
- for (int i=0; i<children.length; i++)
+ for (int i = 0; i < children.length; i++)
generateNodes(children[i]);
-
+
this.contentHandler.endElement(SiteTree.NAMESPACE_URI, NODE_ELEMENT, NODE_ELEMENT);
}
-
+
private void generateLabels(Label label) throws SAXException {
atts.clear();
- atts.addAttribute(NamespaceSupport.XMLNS, LANG_ATTRIBUTE, Q_LANG_ATTRIBUTE, CDATA, label.getLanguage());
+ atts.addAttribute(NamespaceSupport.XMLNS, LANG_ATTRIBUTE, Q_LANG_ATTRIBUTE, CDATA, label
+ .getLanguage());
- this.contentHandler.startElement(SiteTree.NAMESPACE_URI, LABEL_ELEMENT, LABEL_ELEMENT, atts);
+ this.contentHandler
+ .startElement(SiteTree.NAMESPACE_URI, LABEL_ELEMENT, LABEL_ELEMENT, atts);
char[] labelA = label.getLabel().toCharArray();
this.contentHandler.characters(labelA, 0, labelA.length);
this.contentHandler.endElement(SiteTree.NAMESPACE_URI, LABEL_ELEMENT, LABEL_ELEMENT);
}
-
+
/**
* Recycle the generator
*/
@@ -194,7 +207,7 @@
if (!(sitetree instanceof LastModified)) {
return null;
} else {
- return new TimeStampValidity(((LastModified)sitetree).getLastModified());
+ return new TimeStampValidity(((LastModified) sitetree).getLastModified());
}
}
-}
+}
\ No newline at end of file
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@lenya.apache.org
For additional commands, e-mail: commits-help@lenya.apache.org