[jboss-cvs] JBossAS SVN: r58179 - trunk/server/src/main/org/jboss/ejb/deployers
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Tue Nov 7 08:18:18 EST 2006
Author: alex.loubyansky at jboss.com
Date: 2006-11-07 08:18:17 -0500 (Tue, 07 Nov 2006)
New Revision: 58179
Modified:
trunk/server/src/main/org/jboss/ejb/deployers/EjbDeployer.java
Log:
create the EjbModule
Modified: trunk/server/src/main/org/jboss/ejb/deployers/EjbDeployer.java
===================================================================
--- trunk/server/src/main/org/jboss/ejb/deployers/EjbDeployer.java 2006-11-07 13:10:54 UTC (rev 58178)
+++ trunk/server/src/main/org/jboss/ejb/deployers/EjbDeployer.java 2006-11-07 13:18:17 UTC (rev 58179)
@@ -101,8 +101,49 @@
public void deploy(DeploymentUnit unit, ApplicationMetaData deployment)
throws DeploymentException
{
- // TODO Auto-generated method stub
-
+ // TODO: use BeanVerifier to validate the metadata in the DDs
+
+ ServiceMetaData ejbModule = new ServiceMetaData();
+ ejbModule.setCode(EjbModule.class.getName());
+
+ String moduleName = deployment.getJmxName();
+ if( moduleName == null )
+ {
+ String unitShortName = unit.getName();
+ if (unitShortName.endsWith("/"))
+ {
+ unitShortName = unitShortName.substring(0, unitShortName.length() - 1);
+ }
+ else
+ {
+ unitShortName = unitShortName.substring(unitShortName.lastIndexOf("/") + 1);
+ }
+
+ moduleName = EjbModule.BASE_EJB_MODULE_NAME + ",module=" + unitShortName;
+ }
+
+ // Build an escaped JMX name including deployment shortname
+ ObjectName moduleObjectName = null;
+ try
+ {
+ moduleObjectName = ObjectNameConverter.convert(moduleName);
+ }
+ catch(MalformedObjectNameException e)
+ {
+ throw new DeploymentException("Failed to create EJB module " + unit.getName() +
+ ": malformed EjbModule name " + moduleName, e);
+ }
+
+ ejbModule.setObjectName(moduleObjectName);
+
+ ServiceConstructorMetaData ctor = new ServiceConstructorMetaData();
+ ctor.setSignature(
+ new String[]{DeploymentUnit.class.getName(), ApplicationMetaData.class.getName()}
+ );
+ ctor.setParameters(new Object[]{unit, deployment});
+ ejbModule.setConstructor(ctor);
+
+ unit.addAttachment(ServiceMetaData.class, ejbModule);
}
@Override
More information about the jboss-cvs-commits
mailing list