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