1 16 package com.jdon.container.config; 17 18 import java.util.Iterator ; 19 import java.util.List ; 20 import java.util.Map ; 21 22 import org.jdom.Element; 23 24 import com.jdon.controller.config.XmlParser; 25 import com.jdon.util.Debug; 26 27 31 public class ContainerComponentsXmlLoader extends XmlParser { 32 public final static String module = ContainerComponentsXmlLoader.class.getName(); 33 34 public void parse(Element root, Map mps) throws Exception { 35 List components = root.getChildren("component"); 36 Debug.logVerbose("[JdonFramework] found component size:" + components.size(), module); 37 Iterator iter = components.iterator(); 38 39 ComponentMetaDef componentMetaDef; 40 41 while (iter.hasNext()) { 42 Element component = (Element) iter.next(); 43 String name = component.getAttributeValue("name"); 44 String className = component.getAttributeValue("class"); 45 List mappings = component.getChildren("constructor"); 46 String [] constructors = null; 47 if ((mappings != null) && (mappings.size() != 0)) { 48 constructors = new String [mappings.size()]; 49 int j = 0; 50 Iterator i = mappings.iterator(); 51 while (i.hasNext()) { 52 Element constructor = (Element) i.next(); 53 String value = constructor.getAttributeValue("value"); 54 Debug.logVerbose("[JdonFramework] component constructor=" + value, module); 55 constructors[j] = value; 56 j++; 57 } 58 } 59 60 if (constructors != null) 61 componentMetaDef = new ComponentMetaDef(name, className, constructors); 62 else 63 componentMetaDef = new ComponentMetaDef(name, className); 64 65 mps.put(name, componentMetaDef); 66 } 67 } 68 69 70 71 72 73 } 74 | Popular Tags |