EjbJar.java

00001 
00027 package org.objectweb.jonas_ejb.deployment.xml;
00028 
00029 import java.util.ArrayList;
00030 import java.util.StringTokenizer;
00031 
00032 import org.objectweb.jonas_lib.deployment.xml.AbsDescriptionElement;
00033 import org.objectweb.jonas_lib.deployment.xml.DescriptionGroupXml;
00034 import org.objectweb.jonas_lib.deployment.xml.TopLevelElement;
00035 
00042 public class EjbJar extends AbsDescriptionElement
00043     implements TopLevelElement, DescriptionGroupXml {
00044 
00045 
00049     private static final int VERSION_INDEX = 3;
00050 
00054     private EnterpriseBeans enterpriseBeans = null;
00055 
00059     private Relationships relationships = null;
00060 
00064     private AssemblyDescriptor assemblyDescriptor = null;
00065 
00069     private String ejbClientJar = null;
00070 
00074     private String publicId = null;
00075 
00081     private String version = null;
00082 
00086     public EjbJar() {
00087         super();
00088     }
00089 
00094     public String getPublicId() {
00095         return publicId;
00096     }
00097 
00102     public void  setPublicId(String pid) {
00103         publicId = pid;
00104     }
00105 
00106 
00111     public String getVersion() {
00112         if (version != null) {
00113             return version;
00114         }
00115         if (publicId == null) {
00116             // No DOCTYPE  and No version attribute in ejb-jar element
00117             version = "2.1";
00118         } else {
00119             ArrayList al = new ArrayList();
00120             // Version must be set via the PublicId of the DOCTYPE
00121             StringTokenizer st = new StringTokenizer(publicId , "//");
00122             while (st.hasMoreTokens()) {
00123                 al.add(st.nextToken().trim());
00124             }
00125             String spec = (String) al.get(2);
00126             al.clear();
00127             st = new StringTokenizer(spec , " ");
00128             while (st.hasMoreTokens()) {
00129                 al.add(st.nextToken().trim());
00130             }
00131             version = (String) al.get(VERSION_INDEX);
00132         }
00133         return version;
00134 
00135     }
00136 
00142     public void  setVersion(String ver) {
00143         version = ver;
00144     }
00145 
00150     public EnterpriseBeans getEnterpriseBeans() {
00151         return enterpriseBeans;
00152     }
00153 
00158     public void setEnterpriseBeans(EnterpriseBeans enterpriseBeans) {
00159         this.enterpriseBeans = enterpriseBeans;
00160     }
00161 
00166     public Relationships getRelationships() {
00167         return relationships;
00168     }
00169 
00174     public void setRelationships(Relationships relationships) {
00175         this.relationships = relationships;
00176     }
00177 
00182     public AssemblyDescriptor getAssemblyDescriptor() {
00183         return assemblyDescriptor;
00184     }
00185 
00190     public void setAssemblyDescriptor(AssemblyDescriptor assemblyDescriptor) {
00191         this.assemblyDescriptor = assemblyDescriptor;
00192     }
00193 
00198     public String getEjbClientJar() {
00199         return ejbClientJar;
00200     }
00201 
00206     public void setEjbClientJar(String ejbClientJar) {
00207         this.ejbClientJar = ejbClientJar;
00208     }
00209 
00215     public String toXML(int indent) {
00216         StringBuffer sb = new StringBuffer();
00217         sb.append(indent(indent));
00218         sb.append("<ejb-jar>\n");
00219 
00220         indent += 2;
00221 
00222         // description
00223         sb.append(xmlElement(getDescription(), "description", indent));
00224         // display-name
00225         sb.append(xmlElement(getDisplayName(), "display-name", indent));
00226         // small-icon
00227         sb.append(xmlElement(getIcon().getSmallIcon(), "small-icon", indent));
00228         // large-icon
00229         sb.append(xmlElement(getIcon().getLargeIcon(), "large-icon", indent));
00230         // enterprise-beans
00231         if (enterpriseBeans != null) {
00232             sb.append(enterpriseBeans.toXML(indent));
00233         }
00234         // relationships
00235         if (relationships != null) {
00236             sb.append(relationships.toXML(indent));
00237         }
00238         // assembly-descriptor
00239         if (assemblyDescriptor != null) {
00240             sb.append(assemblyDescriptor.toXML(indent));
00241         }
00242         // ejb-client-jar
00243         sb.append(xmlElement(ejbClientJar, "ejb-client-jar", indent));
00244         indent -= 2;
00245         sb.append(indent(indent));
00246         sb.append("</ejb-jar>\n");
00247 
00248         return sb.toString();
00249     }
00250 }

Generated on Tue Feb 15 15:05:13 2005 for JOnAS by  doxygen 1.3.9.1