1 16 package org.apache.cocoon.components.treeprocessor; 17 18 import org.apache.avalon.framework.configuration.Configuration; 19 import org.apache.avalon.framework.configuration.ConfigurationException; 20 import org.apache.avalon.framework.thread.ThreadSafe; 21 22 28 29 public class ContainerNodeBuilder extends AbstractParentProcessingNodeBuilder implements ThreadSafe { 30 31 32 protected boolean hasParameters() { 33 return false; 34 } 35 36 public ProcessingNode buildNode(Configuration config) throws Exception { 37 38 ContainerNode node = new ContainerNode(); 39 setupNode(node, config); 40 41 return node; 42 } 43 44 protected void setupNode(ContainerNode node, Configuration config)throws Exception { 45 46 this.treeBuilder.setupNode(node, config); 47 48 ProcessingNode[] children = buildChildNodes(config); 49 if (children.length == 0) { 50 String msg = "There must be at least one child at " + config.getLocation(); 51 throw new ConfigurationException(msg); 52 } 53 54 node.setChildren(children); 55 } 56 } 57 | Popular Tags |