From: Adrian B. <adr...@jb...> - 2006-03-20 09:49:38
|
User: adrian Date: 06/03/20 04:49:35 Modified: src/main/org/jboss/kernel/plugins/deployment/xml BeanSchemaBinding20.java Log: Allow a GenericBeanFactory to have install/uninstall Revision Changes Path 1.14 +35 -1 microkernel/src/main/org/jboss/kernel/plugins/deployment/xml/BeanSchemaBinding20.java (In the diff below, changes in quantity of whitespace are not shown.) Index: BeanSchemaBinding20.java =================================================================== RCS file: /cvsroot/jboss/microkernel/src/main/org/jboss/kernel/plugins/deployment/xml/BeanSchemaBinding20.java,v retrieving revision 1.13 retrieving revision 1.14 diff -u -b -r1.13 -r1.14 --- BeanSchemaBinding20.java 13 Feb 2006 11:10:04 -0000 1.13 +++ BeanSchemaBinding20.java 20 Mar 2006 09:49:35 -0000 1.14 @@ -71,7 +71,7 @@ * * @author <a href="mailto:al...@jb...">Alexey Loubyansky</a> * @author <a href="mailto:ad...@jb...">Adrian Brock</a> - * @version $Revision: 1.13 $ + * @version $Revision: 1.14 $ */ public class BeanSchemaBinding20 { @@ -836,6 +836,23 @@ } }); + // beanfactory has a list of installs + beanFactoryType.pushInterceptor(installQName, new DefaultElementInterceptor() + { + public void add(Object parent, Object child, QName name) + { + GenericBeanFactoryMetaData bean = (GenericBeanFactoryMetaData) parent; + AbstractInstallMetaData install = (AbstractInstallMetaData) child; + List installs = bean.getInstalls(); + if (installs == null) + { + installs = new ArrayList(); + bean.setInstalls(installs); + } + installs.add(install); + } + }); + // bean has a list of uninstalls beanType.pushInterceptor(uninstallQName, new DefaultElementInterceptor() { @@ -853,6 +870,23 @@ } }); + // beanfactory has a list of uninstalls + beanFactoryType.pushInterceptor(uninstallQName, new DefaultElementInterceptor() + { + public void add(Object parent, Object child, QName name) + { + GenericBeanFactoryMetaData bean = (GenericBeanFactoryMetaData) parent; + AbstractInstallMetaData uninstall = (AbstractInstallMetaData) child; + List uninstalls = bean.getUninstalls(); + if (uninstalls == null) + { + uninstalls = new ArrayList(); + bean.setUninstalls(uninstalls); + } + uninstalls.add(uninstall); + } + }); + // install binding TypeBinding installType = schemaBinding.getType(installTypeQName); installType.setHandler(new DefaultElementHandler() |