[jboss-cvs] JBossAS SVN: r82630 - projects/webbeans-ri-int/trunk/microcontainer/src/main/java/org/jboss/webbeans/integration/microcontainer/deployer/metadata.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Tue Jan 6 08:06:09 EST 2009
Author: alesj
Date: 2009-01-06 08:06:08 -0500 (Tue, 06 Jan 2009)
New Revision: 82630
Modified:
projects/webbeans-ri-int/trunk/microcontainer/src/main/java/org/jboss/webbeans/integration/microcontainer/deployer/metadata/PostJBossAppMetadataDeployer.java
projects/webbeans-ri-int/trunk/microcontainer/src/main/java/org/jboss/webbeans/integration/microcontainer/deployer/metadata/PostWebMetadataDeployer.java
projects/webbeans-ri-int/trunk/microcontainer/src/main/java/org/jboss/webbeans/integration/microcontainer/deployer/metadata/WebBeansAwareMetadataDeployer.java
Log:
Enable servlet listener for any wb deployment.
Modified: projects/webbeans-ri-int/trunk/microcontainer/src/main/java/org/jboss/webbeans/integration/microcontainer/deployer/metadata/PostJBossAppMetadataDeployer.java
===================================================================
--- projects/webbeans-ri-int/trunk/microcontainer/src/main/java/org/jboss/webbeans/integration/microcontainer/deployer/metadata/PostJBossAppMetadataDeployer.java 2009-01-06 13:05:34 UTC (rev 82629)
+++ projects/webbeans-ri-int/trunk/microcontainer/src/main/java/org/jboss/webbeans/integration/microcontainer/deployer/metadata/PostJBossAppMetadataDeployer.java 2009-01-06 13:06:08 UTC (rev 82630)
@@ -21,9 +21,6 @@
*/
package org.jboss.webbeans.integration.microcontainer.deployer.metadata;
-import java.util.Collection;
-import java.util.List;
-
import org.jboss.deployers.structure.spi.DeploymentUnit;
import org.jboss.deployers.vfs.spi.structure.VFSDeploymentUnit;
import org.jboss.metadata.ear.jboss.JBossAppMetaData;
@@ -42,7 +39,6 @@
public PostJBossAppMetadataDeployer()
{
super(JBossAppMetaData.class);
- setParentFirst(false); // after all (sub)-deployments have been checked for wb files
addInput(JBossWebBeansMetaData.WEB_BEANS_FILES);
setOptionalWebBeansXml(true);
}
@@ -55,34 +51,9 @@
@Override
protected boolean isIsolated(VFSDeploymentUnit unit, VirtualFile wbXml)
{
- return (super.isIsolated(unit, wbXml) && (wbXml != null || checkHierarchy(unit)));
+ return (super.isIsolated(unit, wbXml) && (wbXml != null || checkForWebBeansFiles(unit)));
}
- /**
- * Check deployment hierarchy for web-beans.xml files.
- *
- * @param unit the deployment unit
- * @return true if web-beans.xml files exist, false otherwise
- */
- protected boolean checkHierarchy(DeploymentUnit unit)
- {
- Collection files = unit.getAttachment(JBossWebBeansMetaData.WEB_BEANS_FILES, Collection.class);
- if (files != null && files.isEmpty() == false)
- return true;
-
- List<DeploymentUnit> children = unit.getChildren();
- if (children != null && children.isEmpty() == false)
- {
- for (DeploymentUnit child : children)
- {
- boolean result = checkHierarchy(child);
- if (result)
- return true;
- }
- }
- return false;
- }
-
protected String getJMXName(JBossAppMetaData metaData, DeploymentUnit unit)
{
String name = metaData.getJmxName();
Modified: projects/webbeans-ri-int/trunk/microcontainer/src/main/java/org/jboss/webbeans/integration/microcontainer/deployer/metadata/PostWebMetadataDeployer.java
===================================================================
--- projects/webbeans-ri-int/trunk/microcontainer/src/main/java/org/jboss/webbeans/integration/microcontainer/deployer/metadata/PostWebMetadataDeployer.java 2009-01-06 13:05:34 UTC (rev 82629)
+++ projects/webbeans-ri-int/trunk/microcontainer/src/main/java/org/jboss/webbeans/integration/microcontainer/deployer/metadata/PostWebMetadataDeployer.java 2009-01-06 13:06:08 UTC (rev 82630)
@@ -29,6 +29,7 @@
import org.jboss.metadata.web.jboss.JBossWebMetaData;
import org.jboss.metadata.web.spec.ListenerMetaData;
import org.jboss.virtual.VirtualFile;
+import org.jboss.webbeans.integration.microcontainer.deployer.ext.JBossWebBeansMetaData;
/**
* Post web.xml webbeans deployer.
@@ -42,6 +43,8 @@
public PostWebMetadataDeployer()
{
super(JBossWebMetaData.class);
+ addInput(JBossWebBeansMetaData.WEB_BEANS_FILES);
+ setOptionalWebBeansXml(true);
// create wbl listener
WBL = new ListenerMetaData();
WBL.setListenerClass("org.jboss.webbeans.servlet.WebBeansListener");
@@ -49,12 +52,15 @@
protected void internalDeploy(VFSDeploymentUnit unit, JBossWebMetaData deployment, VirtualFile wbXml) throws DeploymentException
{
- List<ListenerMetaData> listeners = deployment.getListeners();
- if (listeners == null)
+ if (wbXml != null || checkForWebBeansFiles(unit.getTopLevel()))
{
- listeners = new ArrayList<ListenerMetaData>();
- deployment.setListeners(listeners);
+ List<ListenerMetaData> listeners = deployment.getListeners();
+ if (listeners == null)
+ {
+ listeners = new ArrayList<ListenerMetaData>();
+ deployment.setListeners(listeners);
+ }
+ listeners.add(WBL);
}
- listeners.add(WBL);
}
}
\ No newline at end of file
Modified: projects/webbeans-ri-int/trunk/microcontainer/src/main/java/org/jboss/webbeans/integration/microcontainer/deployer/metadata/WebBeansAwareMetadataDeployer.java
===================================================================
--- projects/webbeans-ri-int/trunk/microcontainer/src/main/java/org/jboss/webbeans/integration/microcontainer/deployer/metadata/WebBeansAwareMetadataDeployer.java 2009-01-06 13:05:34 UTC (rev 82629)
+++ projects/webbeans-ri-int/trunk/microcontainer/src/main/java/org/jboss/webbeans/integration/microcontainer/deployer/metadata/WebBeansAwareMetadataDeployer.java 2009-01-06 13:06:08 UTC (rev 82630)
@@ -21,11 +21,16 @@
*/
package org.jboss.webbeans.integration.microcontainer.deployer.metadata;
+import java.util.Collection;
+import java.util.List;
+
import org.jboss.deployers.spi.DeploymentException;
import org.jboss.deployers.spi.deployer.DeploymentStages;
import org.jboss.deployers.vfs.spi.deployer.AbstractSimpleVFSRealDeployer;
import org.jboss.deployers.vfs.spi.structure.VFSDeploymentUnit;
+import org.jboss.deployers.structure.spi.DeploymentUnit;
import org.jboss.virtual.VirtualFile;
+import org.jboss.webbeans.integration.microcontainer.deployer.ext.JBossWebBeansMetaData;
/**
* WebBeans aware metadata deployer.
@@ -53,7 +58,33 @@
internalDeploy(unit, deployment, wbXml);
}
+
/**
+ * Check deployment hierarchy for web-beans.xml files.
+ *
+ * @param unit the deployment unit
+ * @return true if web-beans.xml files exist, false otherwise
+ */
+ protected boolean checkForWebBeansFiles(DeploymentUnit unit)
+ {
+ Collection files = unit.getAttachment(JBossWebBeansMetaData.WEB_BEANS_FILES, Collection.class);
+ if (files != null && files.isEmpty() == false)
+ return true;
+
+ List<DeploymentUnit> children = unit.getChildren();
+ if (children != null && children.isEmpty() == false)
+ {
+ for (DeploymentUnit child : children)
+ {
+ boolean result = checkForWebBeansFiles(child);
+ if (result)
+ return true;
+ }
+ }
+ return false;
+ }
+
+ /**
* Deploy.
*
* @param unit the deployment unit
More information about the jboss-cvs-commits
mailing list