From: Bill D. <bde...@jb...> - 2006-01-25 23:42:21
|
User: bdecoste Date: 06/01/25 18:42:16 Modified: src/main/org/jboss/ejb3/dd EjbJarDDObjectFactory.java SessionEnterpriseBean.java Added: src/main/org/jboss/ejb3/dd InitMethod.java Log: 3.0 schema validity Revision Changes Path 1.39 +30 -10 jboss-ejb3/src/main/org/jboss/ejb3/dd/EjbJarDDObjectFactory.java (In the diff below, changes in quantity of whitespace are not shown.) Index: EjbJarDDObjectFactory.java =================================================================== RCS file: /cvsroot/jboss/jboss-ejb3/src/main/org/jboss/ejb3/dd/EjbJarDDObjectFactory.java,v retrieving revision 1.38 retrieving revision 1.39 diff -u -b -r1.38 -r1.39 --- EjbJarDDObjectFactory.java 16 Jan 2006 06:11:13 -0000 1.38 +++ EjbJarDDObjectFactory.java 25 Jan 2006 23:42:16 -0000 1.39 @@ -32,7 +32,7 @@ * chuncks from unmarshaller and assembles them into an EjbJarDD instance. * * @author <a href="mailto:bde...@jb...">William DeCoste</a> - * @version <tt>$Revision: 1.38 $</tt> + * @version <tt>$Revision: 1.39 $</tt> */ public class EjbJarDDObjectFactory implements ObjectModelFactory { @@ -402,7 +402,13 @@ else if (localName.equals("remove-method")) { RemoveMethod method = new RemoveMethod(); - parent.getRemoveMethods().add(method); + parent.addRemoveMethod(method); + child = method; + } + else if (localName.equals("init-method")) + { + InitMethod method = new InitMethod(); + parent.addInitMethod(method); child = method; } @@ -470,6 +476,24 @@ } /** + * Called when parsing of a new element started. + */ + public Object newChild(InitMethod parent, + UnmarshallingContext navigator, String namespaceURI, String localName, + Attributes attrs) + { + Object child = null; + + if (localName.equals("bean-method")) + { + parent.setBeanMethod(new Method()); + child = parent.getBeanMethod(); + } + + return child; + } + + /** * Called when a child element with simple content is read for DD. */ public void setValue(RemoveMethod dd, UnmarshallingContext navigator, @@ -640,10 +664,6 @@ { child = new Inject(); } -// else if (localName.equals("callback")) -// { -// child = new Callback(); -// } else if (localName.equals("exclude-list")) { child = new ExcludeList(); @@ -652,10 +672,6 @@ { child = new ApplicationExceptionList(); } - else if (localName.equals("init-list")) - { - child = new InitList(); - } else if (localName.equals("interceptor-binding")) { child = new InterceptorBinding(); @@ -1848,6 +1864,10 @@ { method.addMethodParam(value); } + else if (localName.equals("lifecycle-callback-method")) + { + method.setMethodName(value); + } } /** 1.14 +17 -1 jboss-ejb3/src/main/org/jboss/ejb3/dd/SessionEnterpriseBean.java (In the diff below, changes in quantity of whitespace are not shown.) Index: SessionEnterpriseBean.java =================================================================== RCS file: /cvsroot/jboss/jboss-ejb3/src/main/org/jboss/ejb3/dd/SessionEnterpriseBean.java,v retrieving revision 1.13 retrieving revision 1.14 diff -u -b -r1.13 -r1.14 --- SessionEnterpriseBean.java 16 Jan 2006 06:11:13 -0000 1.13 +++ SessionEnterpriseBean.java 25 Jan 2006 23:42:16 -0000 1.14 @@ -30,7 +30,7 @@ * the 1.4 schema * * @author <a href="mailto:bde...@jb...">William DeCoste</a> - * @version <tt>$Revision: 1.13 $</tt> + * @version <tt>$Revision: 1.14 $</tt> */ public class SessionEnterpriseBean extends EnterpriseBean { @@ -49,12 +49,28 @@ private Method preDestroy; private Method prePassivate; private List<RemoveMethod> removeMethods = new ArrayList<RemoveMethod>(); + private List<InitMethod> initMethods = new ArrayList<InitMethod>(); public List<RemoveMethod> getRemoveMethods() { return removeMethods; } + public void addRemoveMethod(RemoveMethod method) + { + removeMethods.add(method); + } + + public List<InitMethod> getInitMethods() + { + return initMethods; + } + + public void addInitMethod(InitMethod method) + { + initMethods.add(method); + } + public boolean isStateless() { return sessionType.equals(STATELESS); 1.1 date: 2006/01/25 23:42:16; author: bdecoste; state: Exp;jboss-ejb3/src/main/org/jboss/ejb3/dd/InitMethod.java Index: InitMethod.java =================================================================== /* * JBoss, Home of Professional Open Source * Copyright 2005, JBoss Inc., and individual contributors as indicated * by the @authors tag. See the copyright.txt in the distribution for a * full listing of individual contributors. * * This is free software; you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License as * published by the Free Software Foundation; either version 2.1 of * the License, or (at your option) any later version. * * This software is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this software; if not, write to the Free * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA * 02110-1301 USA, or see the FSF site: http://www.fsf.org. */ package org.jboss.ejb3.dd; /** * Represents an <init-method> element of the ejb-jar.xml deployment descriptor * for the 1.4 schema * * @author <a href="mailto:bde...@jb...">William DeCoste</a> * @version <tt>$Revision: 1.1 $</tt> */ public class InitMethod { private Method beanMethod; private Method createMethod; public Method getBeanMethod() { return beanMethod; } public void setBeanMethod(Method beanMethod) { this.beanMethod = beanMethod; } public Method getCreateMethod() { return createMethod; } public void setCreateMethod(Method createMethod) { this.createMethod = createMethod; } public String toString() { StringBuffer sb = new StringBuffer(100); sb.append("["); sb.append("method=").append(beanMethod); sb.append("]"); return sb.toString(); } } |