[jboss-cvs] JBossAS SVN: r62045 - trunk/server/src/main/org/jboss/ejb/deployers.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Tue Apr 3 12:21:35 EDT 2007
Author: scott.stark at jboss.org
Date: 2007-04-03 12:21:35 -0400 (Tue, 03 Apr 2007)
New Revision: 62045
Modified:
trunk/server/src/main/org/jboss/ejb/deployers/EjbDeployer.java
Log:
Add dependencies on the invoker services in use
Modified: trunk/server/src/main/org/jboss/ejb/deployers/EjbDeployer.java
===================================================================
--- trunk/server/src/main/org/jboss/ejb/deployers/EjbDeployer.java 2007-04-03 16:12:18 UTC (rev 62044)
+++ trunk/server/src/main/org/jboss/ejb/deployers/EjbDeployer.java 2007-04-03 16:21:35 UTC (rev 62045)
@@ -22,6 +22,8 @@
package org.jboss.ejb.deployers;
import java.util.ArrayList;
+import java.util.HashSet;
+import java.util.Iterator;
import java.util.List;
import java.util.Set;
@@ -34,6 +36,9 @@
import org.jboss.deployment.security.JaccPolicyUtil;
import org.jboss.ejb.EjbModule;
import org.jboss.metadata.ApplicationMetaData;
+import org.jboss.metadata.BeanMetaData;
+import org.jboss.metadata.ConfigurationMetaData;
+import org.jboss.metadata.InvokerProxyBindingMetaData;
import org.jboss.system.metadata.ServiceAttributeMetaData;
import org.jboss.system.metadata.ServiceConstructorMetaData;
import org.jboss.system.metadata.ServiceDependencyMetaData;
@@ -194,6 +199,27 @@
tms.setIDependOn(timerServiceName);
dependencies.add(tms);
}
+ // Add dependencies on the invoker services in use
+ Iterator beans = deployment.getEnterpriseBeans();
+ HashSet<String> configNames = new HashSet<String>();
+ while( beans.hasNext() )
+ {
+ BeanMetaData bmd = (BeanMetaData) beans.next();
+ configNames.add(bmd.getConfigurationName());
+ }
+
+ for(String name : configNames)
+ {
+ ConfigurationMetaData cmd = deployment.getConfigurationMetaDataByName(name);
+ String[] invokers = cmd.getInvokers();
+ for(String iname : invokers)
+ {
+ ServiceDependencyMetaData invoker = new ServiceDependencyMetaData();
+ InvokerProxyBindingMetaData imd = deployment.getInvokerProxyBindingMetaDataByName(iname);
+ invoker.setIDependOn(imd.getInvokerMBean());
+ dependencies.add(invoker);
+ }
+ }
// Add any declared dependencies
/* TODO: this is too coarse as bean to bean depends are being pulled up to the module level
and an ejb module cannot depend on the beans it creates. The ejb deployer needs to
More information about the jboss-cvs-commits
mailing list