1 6 7 package org.jfox.deployment.web; 8 9 import java.util.ArrayList ; 10 import java.util.Iterator ; 11 import java.util.List ; 12 13 import org.jfox.ejb.meta.Descriptor; 14 import org.jfox.ejb.meta.EJBDescriptionException; 15 import org.jfox.ejb.meta.EJBReferenceDescriptor; 16 import org.jfox.ejb.meta.EnvEntryDescriptor; 17 import org.jfox.ejb.meta.ResourceEnvRefDescriptor; 18 import org.jfox.ejb.meta.ResourceRefDescriptor; 19 import org.jfox.ioc.util.XMLUtils; 20 import org.w3c.dom.Element ; 21 import org.w3c.dom.Node ; 22 23 29 30 public class WebDescriptor extends Descriptor { 31 private NestedWebModule webModule; 32 33 private List envEntries = new ArrayList (); 34 private List ejbReferences = new ArrayList (); 35 private List resourceReferences = new ArrayList (); 36 private List resourceEnvReferences = new ArrayList (); 37 38 public WebDescriptor(NestedWebModule webModule) { 39 this.webModule = webModule; 40 } 41 42 public void processXML(Node node) throws EJBDescriptionException { 43 Iterator iterator = XMLUtils.getElementsByTagName((Element ) node, "resource-ref"); 45 while(iterator.hasNext()) { 46 Element resRefDescriptor = (Element ) iterator.next(); 47 ResourceRefDescriptor resRef = new ResourceRefDescriptor(); 48 resRef.processXML(resRefDescriptor); 49 resourceReferences.add(resRef); 50 } 51 52 iterator = XMLUtils.getElementsByTagName((Element ) node, "resource-env-ref"); 53 while(iterator.hasNext()) { 54 Element resourceEnvRefDescriptor = (Element ) iterator.next(); 55 ResourceEnvRefDescriptor resourceEnvRef = new ResourceEnvRefDescriptor(); 56 resourceEnvRef.processXML(resourceEnvRefDescriptor); 57 resourceEnvReferences.add(resourceEnvRef); 58 } 59 60 61 iterator = XMLUtils.getElementsByTagName((Element ) node, "env-entry"); 63 while(iterator.hasNext()) { 64 Element envEntry = (Element ) iterator.next(); 65 EnvEntryDescriptor envEntryDescriptor = new EnvEntryDescriptor(); 66 envEntryDescriptor.processXML(envEntry); 67 envEntries.add(envEntryDescriptor); 68 } 69 70 iterator = XMLUtils.getElementsByTagName((Element ) node, "ejb-ref"); 72 while(iterator.hasNext()) { 73 Element ejbRef = (Element ) iterator.next(); 74 EJBReferenceDescriptor ejbRefDescriptor = new EJBReferenceDescriptor(); 75 ejbRefDescriptor.processXML(ejbRef); 76 ejbReferences.add(ejbRefDescriptor); 77 } 78 79 } 80 81 public NestedWebModule getWebModule() { 82 return webModule; 83 } 84 85 public EnvEntryDescriptor[] getEnvEntries() { 86 return (EnvEntryDescriptor[]) envEntries.toArray(new EnvEntryDescriptor[envEntries.size()]); 87 } 88 89 public EJBReferenceDescriptor[] getEjbReferences() { 90 return (EJBReferenceDescriptor[]) ejbReferences.toArray(new EJBReferenceDescriptor[ejbReferences.size()]); 91 } 92 93 public ResourceRefDescriptor[] getResourceReferences() { 94 return (ResourceRefDescriptor[]) resourceReferences.toArray(new ResourceRefDescriptor[resourceReferences.size()]); 95 } 96 97 public ResourceEnvRefDescriptor[] getResourceEnvReferences() { 98 return (ResourceEnvRefDescriptor[]) resourceEnvReferences.toArray(new ResourceEnvRefDescriptor[resourceEnvReferences.size()]); 99 } 100 101 102 public static void main(String [] args) { 103 104 } 105 } 106 107 | Popular Tags |