[jboss-cvs] JBossAS SVN: r68630 - trunk/server/src/main/org/jboss/ejb/deployers.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Fri Jan 4 10:49:50 EST 2008
Author: scott.stark at jboss.org
Date: 2008-01-04 10:49:50 -0500 (Fri, 04 Jan 2008)
New Revision: 68630
Modified:
trunk/server/src/main/org/jboss/ejb/deployers/MergedJBossMetaDataDeployer.java
Log:
Begin incorporating top level JBossAppMetaData settings
Modified: trunk/server/src/main/org/jboss/ejb/deployers/MergedJBossMetaDataDeployer.java
===================================================================
--- trunk/server/src/main/org/jboss/ejb/deployers/MergedJBossMetaDataDeployer.java 2008-01-04 14:44:51 UTC (rev 68629)
+++ trunk/server/src/main/org/jboss/ejb/deployers/MergedJBossMetaDataDeployer.java 2008-01-04 15:49:50 UTC (rev 68630)
@@ -26,6 +26,7 @@
import org.jboss.deployers.spi.deployer.helpers.AbstractDeployer;
import org.jboss.deployers.structure.spi.DeploymentUnit;
import org.jboss.deployment.AnnotationMetaDataDeployer;
+import org.jboss.metadata.ear.jboss.JBossAppMetaData;
import org.jboss.metadata.ejb.jboss.JBossMetaData;
import org.jboss.metadata.ejb.spec.AnnotationMergedView;
import org.jboss.metadata.ejb.spec.EjbJar30MetaData;
@@ -33,7 +34,9 @@
import org.jboss.metadata.ejb.spec.EjbJarMetaData;
/**
- * A deployer that
+ * A deployer that merges annotation metadata, xml metadata, and jboss metadata
+ * into a merged JBossMetaData. It also incorporates ear level overrides from
+ * the top level JBossAppMetaData attachment.
*
* @author Scott.Stark at jboss.org
* @author adrian at jboss.org
@@ -86,6 +89,19 @@
// Create a merged view
JBossMetaData mergedMetaData = new JBossMetaData();
mergedMetaData.merge(metaData, specMetaData);
+ // Incorporate any ear level overrides
+ DeploymentUnit topUnit = unit.getTopLevel();
+ if(topUnit != null && topUnit.getAttachment(JBossAppMetaData.class) != null)
+ {
+ JBossAppMetaData earMetaData = topUnit.getAttachment(JBossAppMetaData.class);
+ // Security domain
+ String securityDomain = earMetaData.getSecurityDomain();
+ if(mergedMetaData.getSecurityDomain() == null)
+ mergedMetaData.setSecurityDomain(securityDomain);
+ // TODO: Security roles
+ }
+
+ // Output the merged JBossMetaData
unit.getTransientManagedObjects().addAttachment(JBossMetaData.class, mergedMetaData);
}
More information about the jboss-cvs-commits
mailing list