[jboss-cvs] JBossAS SVN: r63734 - in trunk/tomcat: src/main/org/jboss/web/tomcat/service and 3 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Thu Jun 28 13:26:26 EDT 2007


Author: adrian at jboss.org
Date: 2007-06-28 13:26:25 -0400 (Thu, 28 Jun 2007)
New Revision: 63734

Modified:
   trunk/tomcat/.classpath
   trunk/tomcat/src/main/org/jboss/web/tomcat/service/TomcatInjectionContainer.java
   trunk/tomcat/src/main/org/jboss/web/tomcat/service/WarEjbResolver.java
   trunk/tomcat/src/main/org/jboss/web/tomcat/service/deployers/TomcatDeployer.java
   trunk/tomcat/src/main/org/jboss/web/tomcat/service/deployers/TomcatDeployment.java
   trunk/tomcat/src/main/org/jboss/web/tomcat/service/deployers/TomcatDeployment2.java
   trunk/tomcat/src/main/org/jboss/web/tomcat/service/deployers/WarClassLoaderDeployer.java
   trunk/tomcat/src/resources/jboss-structure.xml
   trunk/tomcat/src/resources/war-deployers-all-beans.xml
   trunk/tomcat/src/resources/war-deployers-beans.xml
   trunk/tomcat/src/tests/org/jboss/test/deployers/WebAppParsingDeployerTestCase.java
Log:
Deployers reloaded

Modified: trunk/tomcat/.classpath
===================================================================
--- trunk/tomcat/.classpath	2007-06-28 17:25:57 UTC (rev 63733)
+++ trunk/tomcat/.classpath	2007-06-28 17:26:25 UTC (rev 63734)
@@ -37,7 +37,6 @@
 	<classpathentry kind="lib" path="/thirdparty/jboss/web/lib/jsp-api.jar"/>
 	<classpathentry kind="lib" path="/thirdparty/jboss/web/lib/servlet-api.jar"/>
 	<classpathentry combineaccessrules="false" kind="src" path="/system-jmx"/>
-	<classpathentry kind="lib" path="/thirdparty/jboss/microcontainer/lib/jboss-deployers.jar"/>
 	<classpathentry kind="lib" path="/thirdparty/jboss/microcontainer/lib/jboss-container.jar"/>
 	<classpathentry kind="lib" path="/thirdparty/jboss/test/lib/jboss-test.jar"/>
 	<classpathentry kind="lib" path="/thirdparty/junit/lib/junit.jar"/>
@@ -49,5 +48,12 @@
 	<classpathentry kind="lib" path="/thirdparty/jboss/jboss-javaee/lib/jboss-javaee.jar" sourcepath="/thirdparty/jboss/jboss-javaee/lib/jboss-javaee-sources.jar"/>
 	<classpathentry kind="lib" path="/thirdparty/jboss/jboss-jaspi-api/lib/jboss-jaspi-api.jar" sourcepath="/thirdparty/jboss/jboss-jaspi-api/lib/jboss-jaspi-api-sources.jar"/>
 	<classpathentry kind="lib" path="/thirdparty/jboss/jbossws-spi/lib/jbossws-spi.jar"/>
+	<classpathentry kind="lib" path="/thirdparty/jboss/microcontainer/lib/jboss-deployers-core-spi.jar" sourcepath="/thirdparty/jboss/microcontainer/lib/jboss-deployers-core-spi-sources.jar"/>
+	<classpathentry kind="lib" path="/thirdparty/jboss/microcontainer/lib/jboss-deployers-client-spi.jar" sourcepath="/thirdparty/jboss/microcontainer/lib/jboss-deployers-core-spi-sources.jar"/>
+	<classpathentry kind="lib" path="/thirdparty/jboss/microcontainer/lib/jboss-deployers-structure-spi.jar" sourcepath="/thirdparty/jboss/microcontainer/lib/jboss-deployers-structure-spi-sources.jar"/>
+	<classpathentry kind="lib" path="/thirdparty/jboss/microcontainer/lib/jboss-deployers-spi.jar" sourcepath="/thirdparty/jboss/microcontainer/lib/jboss-deployers-spi-sources.jar"/>
+	<classpathentry kind="lib" path="/thirdparty/jboss/microcontainer/lib/jboss-deployers-impl.jar" sourcepath="/thirdparty/jboss/microcontainer/lib/jboss-deployers-impl-sources.jar"/>
+	<classpathentry kind="lib" path="/thirdparty/jboss/microcontainer/lib/jboss-deployers-vfs-spi.jar" sourcepath="/thirdparty/jboss/microcontainer/lib/jboss-deployers-vfs-spi-sources.jar"/>
+	<classpathentry kind="lib" path="/thirdparty/jboss/microcontainer/lib/jboss-deployers-vfs.jar" sourcepath="/thirdparty/jboss/microcontainer/lib/jboss-deployers-vfs-sources.jar"/>
 	<classpathentry kind="output" path="output/eclipse-classes"/>
 </classpath>

Modified: trunk/tomcat/src/main/org/jboss/web/tomcat/service/TomcatInjectionContainer.java
===================================================================
--- trunk/tomcat/src/main/org/jboss/web/tomcat/service/TomcatInjectionContainer.java	2007-06-28 17:25:57 UTC (rev 63733)
+++ trunk/tomcat/src/main/org/jboss/web/tomcat/service/TomcatInjectionContainer.java	2007-06-28 17:26:25 UTC (rev 63734)
@@ -43,8 +43,8 @@
 import javax.naming.NamingException;
 
 import org.apache.AnnotationProcessor;
-import org.jboss.deployers.spi.deployer.DeploymentUnit;
-import org.jboss.deployers.spi.deployment.MainDeployer;
+import org.jboss.deployers.structure.spi.main.MainDeployerStructure;
+import org.jboss.deployers.vfs.spi.structure.VFSDeploymentUnit;
 import org.jboss.ejb3.Container;
 import org.jboss.ejb3.DependencyPolicy;
 import org.jboss.ejb3.DeploymentScope;
@@ -80,6 +80,7 @@
  * Comment
  *
  * @author <a href="mailto:bill at jboss.org">Bill Burke</a>
+ * @author adrian at jboss.org
  * @version $Revision: 1.17 $
  */
 public class TomcatInjectionContainer implements InjectionContainer, AnnotationProcessor
@@ -132,12 +133,12 @@
    protected WarEjbResolver ejbResolver;
    protected DependencyPolicy dependencyPolicy = new JmxDependencyPolicy();
    protected Collection<InjectionHandler> handlers;
-   protected DeploymentUnit unit;
+   protected VFSDeploymentUnit unit;
    protected ClassLoader webLoader;
    protected WebApplication appInfo;
    protected WebDD webDD;
 
-   public TomcatInjectionContainer(WebApplication appInfo, DeploymentUnit unit, MainDeployer mainDeployer)
+   public TomcatInjectionContainer(WebApplication appInfo, VFSDeploymentUnit unit, MainDeployerStructure mainDeployer)
    {
       this.unit = unit;
       DeploymentScope deploymentScope = null;
@@ -372,7 +373,7 @@
 
    public VirtualFile getRootFile()
    {
-      return unit.getDeploymentContext().getRoot();
+      return unit.getRoot();
    }
 
    public String getIdentifier()

Modified: trunk/tomcat/src/main/org/jboss/web/tomcat/service/WarEjbResolver.java
===================================================================
--- trunk/tomcat/src/main/org/jboss/web/tomcat/service/WarEjbResolver.java	2007-06-28 17:25:57 UTC (rev 63733)
+++ trunk/tomcat/src/main/org/jboss/web/tomcat/service/WarEjbResolver.java	2007-06-28 17:26:25 UTC (rev 63734)
@@ -22,29 +22,29 @@
 package org.jboss.web.tomcat.service;
 
 import javax.ejb.EJBLocalObject;
-import javax.management.MBeanServer;
 import javax.naming.NameNotFoundException;
 
-import org.jboss.deployers.spi.deployer.DeploymentUnit;
-import org.jboss.deployers.spi.deployment.MainDeployer;
+import org.jboss.deployers.structure.spi.main.MainDeployerStructure;
+import org.jboss.deployers.vfs.spi.structure.VFSDeploymentUnit;
 import org.jboss.ejb.EjbUtil50;
+import org.jboss.ejb3.DeploymentScope;
+import org.jboss.ejb3.EJBContainer;
 import org.jboss.ejb3.enc.DeploymentEjbResolver;
-import org.jboss.ejb3.EJBContainer;
-import org.jboss.ejb3.DeploymentScope;
 
 /**
  * Comment
  *
  * @author <a href="mailto:bill at jboss.org">Bill Burke</a>
+ * @author adrian at jboss.org
  * @version $Revision: 1.17 $
  */
 public class WarEjbResolver extends DeploymentEjbResolver
 {
-   private DeploymentUnit unit;
-   private MainDeployer mainDeployer;
+   private VFSDeploymentUnit unit;
+   private MainDeployerStructure mainDeployer;
 
-   public WarEjbResolver(DeploymentScope deploymentScope, DeploymentUnit unit,
-         MainDeployer mainDeployer)
+   public WarEjbResolver(DeploymentScope deploymentScope, VFSDeploymentUnit unit,
+         MainDeployerStructure mainDeployer)
    {
       super(deploymentScope, unit.getSimpleName());
       this.unit = unit;

Modified: trunk/tomcat/src/main/org/jboss/web/tomcat/service/deployers/TomcatDeployer.java
===================================================================
--- trunk/tomcat/src/main/org/jboss/web/tomcat/service/deployers/TomcatDeployer.java	2007-06-28 17:25:57 UTC (rev 63733)
+++ trunk/tomcat/src/main/org/jboss/web/tomcat/service/deployers/TomcatDeployer.java	2007-06-28 17:26:25 UTC (rev 63734)
@@ -41,7 +41,7 @@
 import org.apache.catalina.Lifecycle;
 import org.apache.catalina.connector.Connector;
 import org.apache.tomcat.util.modeler.Registry;
-import org.jboss.deployers.spi.deployer.DeploymentUnit;
+import org.jboss.deployers.vfs.spi.structure.VFSDeploymentUnit;
 import org.jboss.metadata.WebMetaData;
 import org.jboss.metadata.web.WebMetaDataObjectFactory;
 import org.jboss.mx.util.MBeanServerLocator;
@@ -62,12 +62,13 @@
  * {@link #TomcatDeployment} instances as the web application bean
  * representation.
  * 
- * @see #getDeployment(DeploymentUnit, WebMetaData)
+ * @see #getDeployment(VFSDeploymentUnit, WebMetaData)
  * 
  * @author Scott.Stark at jboss.org
  * @author Costin Manolache
  * @author Wonne.Keysers at realsoftware.be
  * @author Dimitris.Andreadis at jboss.org
+ * @author adrian at jboss.org
  * @version $Revision: 56809 $
  * @see org.jboss.web.deployers.AbstractWarDeployer
  */
@@ -751,7 +752,7 @@
     * @return TomcatDeployment instnace
     */
    @Override
-   public AbstractWarDeployment getDeployment(DeploymentUnit unit, WebMetaData metaData)
+   public AbstractWarDeployment getDeployment(VFSDeploymentUnit unit, WebMetaData metaData)
       throws Exception
    {
       AbstractWarDeployment deployment = (AbstractWarDeployment) deploymentClass.newInstance();

Modified: trunk/tomcat/src/main/org/jboss/web/tomcat/service/deployers/TomcatDeployment.java
===================================================================
--- trunk/tomcat/src/main/org/jboss/web/tomcat/service/deployers/TomcatDeployment.java	2007-06-28 17:25:57 UTC (rev 63733)
+++ trunk/tomcat/src/main/org/jboss/web/tomcat/service/deployers/TomcatDeployment.java	2007-06-28 17:26:25 UTC (rev 63734)
@@ -50,7 +50,7 @@
 import org.apache.catalina.Loader;
 import org.apache.catalina.core.StandardContext;
 import org.apache.tomcat.util.modeler.Registry;
-import org.jboss.deployers.spi.deployer.DeploymentUnit;
+import org.jboss.deployers.vfs.spi.structure.VFSDeploymentUnit;
 import org.jboss.logging.Logger;
 import org.jboss.metadata.WebMetaData;
 import org.jboss.metadata.serviceref.ServiceRefDelegate;
@@ -82,6 +82,7 @@
  * 
  * @author Scott.Stark at jboss.org
  * @author Costin Manolache
+ * @author adrian at jboss.org
  * @version $Revision: 56605 $
  */
 public class TomcatDeployment extends AbstractWarDeployment
@@ -410,7 +411,7 @@
       protected Loader webLoader;
       protected WebApplication webApp;
       protected WebMetaData metaData;
-      protected DeploymentUnit unit;
+      protected VFSDeploymentUnit unit;
 
       public EncListener(ClassLoader loader, Loader webLoader, WebApplication webApp)
       {
@@ -482,7 +483,7 @@
                linkSecurityDomain(securityDomain, envCtx);
 
                // Bind <service-ref> elements
-               UnifiedVirtualFile vfsRoot = new VirtualFileAdaptor(unit.getDeploymentContext().getRoot());
+               UnifiedVirtualFile vfsRoot = new VirtualFileAdaptor(unit.getRoot());
                EnvironmentRefGroup envRefGroup = injectionContainer.getEnvironmentRefGroup();
                for (ServiceRefMetaData sref : metaData.getServiceRefs().values())
                {
@@ -514,7 +515,7 @@
 
    }
 
-   public Loader getWebLoader(DeploymentUnit unit, WebMetaData metaData, ClassLoader loader, URL url)
+   public Loader getWebLoader(VFSDeploymentUnit unit, WebMetaData metaData, ClassLoader loader, URL url)
       throws MalformedURLException
    {
       Loader webLoader = null;

Modified: trunk/tomcat/src/main/org/jboss/web/tomcat/service/deployers/TomcatDeployment2.java
===================================================================
--- trunk/tomcat/src/main/org/jboss/web/tomcat/service/deployers/TomcatDeployment2.java	2007-06-28 17:25:57 UTC (rev 63733)
+++ trunk/tomcat/src/main/org/jboss/web/tomcat/service/deployers/TomcatDeployment2.java	2007-06-28 17:26:25 UTC (rev 63734)
@@ -47,7 +47,7 @@
 
 import org.apache.catalina.Loader;
 import org.apache.tomcat.util.modeler.Registry;
-import org.jboss.deployers.spi.deployer.DeploymentUnit;
+import org.jboss.deployers.vfs.spi.structure.VFSDeploymentUnit;
 import org.jboss.logging.Logger;
 import org.jboss.metadata.WebMetaData;
 import org.jboss.metadata.serviceref.ServiceRefDelegate;
@@ -79,6 +79,7 @@
  * 
  * @author Scott.Stark at jboss.org
  * @author Costin Manolache
+ * @author adrian at jboss.org
  * @version $Revision: 56605 $
  */
 public class TomcatDeployment2 extends AbstractWarDeployment
@@ -143,7 +144,7 @@
 
    protected void performDeployInternal(String hostName, WebApplication webApp, String warUrl) throws Exception
    {
-      DeploymentUnit unit = webApp.getDeploymentUnit();
+      VFSDeploymentUnit unit = webApp.getDeploymentUnit();
       WebMetaData metaData = webApp.getMetaData();
       String ctxPath = metaData.getContextRoot();
       if (ctxPath.equals("/") || ctxPath.equals("/ROOT") || ctxPath.equals(""))
@@ -368,7 +369,7 @@
             linkSecurityDomain(securityDomain, envCtx);
             
             // Bind <service-ref> elements
-            UnifiedVirtualFile vfsRoot = new VirtualFileAdaptor(unit.getDeploymentContext().getRoot());
+            UnifiedVirtualFile vfsRoot = new VirtualFileAdaptor(unit.getRoot());
             EnvironmentRefGroup envRefGroup = injectionContainer.getEnvironmentRefGroup();
             for (ServiceRefMetaData sref : metaData.getServiceRefs().values())
             {
@@ -481,7 +482,7 @@
       log.debug("Initialized: " + webApp + " " + objectName);
    }
 
-   public Loader getWebLoader(DeploymentUnit unit, ClassLoader loader, URL url) throws MalformedURLException
+   public Loader getWebLoader(VFSDeploymentUnit unit, ClassLoader loader, URL url) throws MalformedURLException
    {
       Loader webLoader = null;
 

Modified: trunk/tomcat/src/main/org/jboss/web/tomcat/service/deployers/WarClassLoaderDeployer.java
===================================================================
--- trunk/tomcat/src/main/org/jboss/web/tomcat/service/deployers/WarClassLoaderDeployer.java	2007-06-28 17:25:57 UTC (rev 63733)
+++ trunk/tomcat/src/main/org/jboss/web/tomcat/service/deployers/WarClassLoaderDeployer.java	2007-06-28 17:26:25 UTC (rev 63734)
@@ -21,17 +21,19 @@
  */
 package org.jboss.web.tomcat.service.deployers;
 
-import java.net.MalformedURLException;
 import java.net.URL;
 import java.util.ArrayList;
 import java.util.List;
 
 import org.apache.catalina.Loader;
-import org.jboss.deployers.plugins.deployer.AbstractSimpleDeployer;
 import org.jboss.deployers.spi.DeploymentException;
-import org.jboss.deployers.spi.classloader.ClassLoaderFactory;
-import org.jboss.deployers.spi.deployer.DeploymentUnit;
-import org.jboss.deployers.spi.structure.DeploymentContext;
+import org.jboss.deployers.spi.deployer.DeploymentStages;
+import org.jboss.deployers.spi.deployer.helpers.AbstractDeployer;
+import org.jboss.deployers.structure.spi.ClassLoaderFactory;
+import org.jboss.deployers.structure.spi.DeploymentContext;
+import org.jboss.deployers.structure.spi.DeploymentUnit;
+import org.jboss.deployers.vfs.spi.structure.VFSDeploymentContext;
+import org.jboss.deployers.vfs.spi.structure.VFSDeploymentUnit;
 import org.jboss.metadata.WebMetaData;
 import org.jboss.virtual.VirtualFile;
 import org.jboss.web.tomcat.service.TomcatInjectionContainer;
@@ -44,10 +46,10 @@
  * AbstractClassLoaderDeployer
  * 
  * @author Scott.Stark at jboss.org
+ * @author adrian at jboss.org
  * @version $Revision:$
  */
-public class WarClassLoaderDeployer extends AbstractSimpleDeployer
-   implements ClassLoaderFactory
+public class WarClassLoaderDeployer extends AbstractDeployer implements ClassLoaderFactory
 {
    /** The parent class loader first model flag */
    private boolean java2ClassLoadingCompliance = false;
@@ -55,10 +57,13 @@
    /** Package names that should be ignored for class loading */
    private String[] filteredPackages;
 
+   /**
+    * Create a new WarClassLoaderDeployer.
+    */
    public WarClassLoaderDeployer()
    {
-      // Should be after the default class loading deployer to pickup parent cl
-      super.setRelativeOrder(CLASSLOADER_DEPLOYER - 1);
+      setStage(DeploymentStages.CLASSLOADER);
+      setOutput(ClassLoaderFactory.class);
    }
 
    public boolean isJava2ClassLoadingCompliance()
@@ -89,9 +94,11 @@
    }
 
    
-   @Override
    public void deploy(DeploymentUnit unit) throws DeploymentException
    {
+      if (unit instanceof VFSDeploymentUnit)
+         return;
+      
       WebMetaData metaData = unit.getAttachment(WebMetaData.class);
       if( metaData != null )
       {
@@ -106,7 +113,7 @@
       {
          DeploymentUnit unit = context.getDeploymentUnit();
          WebMetaData metaData = unit.getAttachment(WebMetaData.class);
-         loader = createClassLoader(metaData, context);
+         loader = createClassLoader(metaData, (VFSDeploymentContext) context);
          if( loader != null )
             context.setClassLoader(loader);
       }
@@ -122,11 +129,7 @@
       
    }
 
-   /**
-    * 
-    */
-   protected ClassLoader createClassLoader(WebMetaData metaData, DeploymentContext context)
-         throws Exception
+   protected ClassLoader createClassLoader(WebMetaData metaData, VFSDeploymentContext context) throws Exception
    {
       ClassLoader loader = null;
       if (metaData != null)
@@ -149,12 +152,10 @@
     * @param loader
     * @param metaData
     * @param classpath
-    * @return
-    * @throws MalformedURLException
+    * @return the loader
+    * @throws Exception for any error
     */
-   protected Loader getWebLoader(ClassLoader loader, WebMetaData metaData,
-         List<VirtualFile> classpath)
-         throws Exception
+   protected Loader getWebLoader(ClassLoader loader, WebMetaData metaData,  List<VirtualFile> classpath) throws Exception
    {
       Loader webLoader = null;
       TomcatInjectionContainer injectionContainer = null;

Modified: trunk/tomcat/src/resources/jboss-structure.xml
===================================================================
--- trunk/tomcat/src/resources/jboss-structure.xml	2007-06-28 17:25:57 UTC (rev 63733)
+++ trunk/tomcat/src/resources/jboss-structure.xml	2007-06-28 17:26:25 UTC (rev 63734)
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <structure>
     <context>
-        <path name="jbossweb.deployer" />
+        <path name=""/>
         <metaDataPath name="META-INF" />
         <classpath>
             <path name="" suffixes=".jar" />

Modified: trunk/tomcat/src/resources/war-deployers-all-beans.xml
===================================================================
--- trunk/tomcat/src/resources/war-deployers-all-beans.xml	2007-06-28 17:25:57 UTC (rev 63733)
+++ trunk/tomcat/src/resources/war-deployers-all-beans.xml	2007-06-28 17:26:25 UTC (rev 63734)
@@ -23,34 +23,15 @@
 
    <!-- web.xml parsing deployer -->
    <bean name="WebAppParsingDeployer" class="org.jboss.deployment.WebAppParsingDeployer">
-      <install bean="MainDeployer" method="addDeployer">
-         <parameter><this/></parameter>
-      </install>
-      <uninstall bean="MainDeployer" method="removeDeployer">
-         <parameter><this/></parameter>
-      </uninstall>
       <property name="type">war</property>
       <property name="relativeOrder">2000</property>
    </bean>
    <bean name="JBossWebAppParsingDeployer" class="org.jboss.deployment.JBossWebAppParsingDeployer">
-      <install bean="MainDeployer" method="addDeployer">
-         <parameter><this/></parameter>
-      </install>
-      <uninstall bean="MainDeployer" method="removeDeployer">
-         <parameter><this/></parameter>
-      </uninstall>
       <property name="type">war</property>
       <property name="relativeOrder">2001</property>
    </bean>
    
    <bean name="WarDeployer" class="org.jboss.web.tomcat.service.deployers.TomcatDeployer">
-      <install bean="MainDeployer" method="addDeployer">
-         <parameter><this/></parameter>
-      </install>
-      <uninstall bean="MainDeployer" method="removeDeployer">
-         <parameter><this/></parameter>
-      </uninstall>
-
       <!-- Inject the MainDeployer for resolving cross deployment refs -->
       <property name="mainDeployer"><inject bean="MainDeployer" /></property>
       <property name="type">war</property>

Modified: trunk/tomcat/src/resources/war-deployers-beans.xml
===================================================================
--- trunk/tomcat/src/resources/war-deployers-beans.xml	2007-06-28 17:25:57 UTC (rev 63733)
+++ trunk/tomcat/src/resources/war-deployers-beans.xml	2007-06-28 17:26:25 UTC (rev 63734)
@@ -23,34 +23,16 @@
 
    <!-- web.xml parsing deployer -->
    <bean name="WebAppParsingDeployer" class="org.jboss.deployment.WebAppParsingDeployer">
-      <install bean="MainDeployer" method="addDeployer">
-         <parameter><this/></parameter>
-      </install>
-      <uninstall bean="MainDeployer" method="removeDeployer">
-         <parameter><this/></parameter>
-      </uninstall>
       <property name="type">war</property>
       <property name="relativeOrder">2000</property>
    </bean>
    <bean name="JBossWebAppParsingDeployer" class="org.jboss.deployment.JBossWebAppParsingDeployer">
-      <install bean="MainDeployer" method="addDeployer">
-         <parameter><this/></parameter>
-      </install>
-      <uninstall bean="MainDeployer" method="removeDeployer">
-         <parameter><this/></parameter>
-      </uninstall>
       <property name="type">war</property>
       <property name="relativeOrder">2001</property>
    </bean>
 
    <!-- Allow for war local class loaders: in testing
    <bean name="WarClassLoaderDeployer" class="org.jboss.web.tomcat.service.deployers.WarClassLoaderDeployer">
-      <install bean="MainDeployer" method="addDeployer">
-         <parameter><this/></parameter>
-      </install>
-      <uninstall bean="MainDeployer" method="removeDeployer">
-         <parameter><this/></parameter>
-      </uninstall>
       <!- - CLASSLOADER_DEPLOYER - 1 - ->
       <property name="relativeOrder">3999</property>
       <!- - A flag indicating if the JBoss Loader should be used. This loader
@@ -74,13 +56,6 @@
 
    <!-- The WebMetaData to service mbean deployer -->
    <bean name="WarDeployer" class="org.jboss.web.tomcat.service.deployers.TomcatDeployer">
-      <install bean="MainDeployer" method="addDeployer">
-         <parameter><this/></parameter>
-      </install>
-      <uninstall bean="MainDeployer" method="removeDeployer">
-         <parameter><this/></parameter>
-      </uninstall>
-
       <!-- Inject the MainDeployer for resolving cross deployment refs -->
       <property name="mainDeployer"><inject bean="MainDeployer" /></property>
       <property name="type">war</property>

Modified: trunk/tomcat/src/tests/org/jboss/test/deployers/WebAppParsingDeployerTestCase.java
===================================================================
--- trunk/tomcat/src/tests/org/jboss/test/deployers/WebAppParsingDeployerTestCase.java	2007-06-28 17:25:57 UTC (rev 63733)
+++ trunk/tomcat/src/tests/org/jboss/test/deployers/WebAppParsingDeployerTestCase.java	2007-06-28 17:26:25 UTC (rev 63734)
@@ -6,12 +6,16 @@
 import java.util.List;
 import java.util.Map;
 
-import org.jboss.deployers.plugins.deployer.AbstractDeploymentUnit;
-import org.jboss.deployers.plugins.deployment.MainDeployerImpl;
-import org.jboss.deployers.plugins.structure.AbstractDeploymentContext;
-import org.jboss.deployers.spi.deployer.DeploymentUnit;
-import org.jboss.deployers.spi.structure.DeploymentContext;
-import org.jboss.deployers.spi.structure.StructureDetermined;
+import org.jboss.dependency.plugins.AbstractController;
+import org.jboss.deployers.plugins.deployers.DeployersImpl;
+import org.jboss.deployers.plugins.main.MainDeployerImpl;
+import org.jboss.deployers.structure.spi.DeploymentUnit;
+import org.jboss.deployers.structure.spi.helpers.AbstractDeploymentUnit;
+import org.jboss.deployers.vfs.plugins.structure.AbstractVFSDeploymentContext;
+import org.jboss.deployers.vfs.spi.client.VFSDeployment;
+import org.jboss.deployers.vfs.spi.client.VFSDeploymentFactory;
+import org.jboss.deployment.JBossWebAppParsingDeployer;
+import org.jboss.deployment.WebAppParsingDeployer;
 import org.jboss.metadata.EjbLocalRefMetaData;
 import org.jboss.metadata.EnvEntryMetaData;
 import org.jboss.metadata.WebMetaData;
@@ -19,8 +23,6 @@
 import org.jboss.test.BaseTestCase;
 import org.jboss.virtual.VFS;
 import org.jboss.virtual.VirtualFile;
-import org.jboss.deployment.JBossWebAppParsingDeployer;
-import org.jboss.deployment.WebAppParsingDeployer;
 
 /**
  * This is a test of the org.jboss.deployment.WebAppParsingDeployer and
@@ -30,6 +32,7 @@
  * tests/projects.
  * 
  * @author Scott.Stark at jboss.org
+ * @author adrian at jboss.org
  * @version $Revision:$
  */
 public class WebAppParsingDeployerTestCase extends BaseTestCase
@@ -81,19 +84,19 @@
    public void testWebAppJBossWebApp()
       throws Exception
    {
-      DeploymentUnit unit = createDeploymentUnit("org/jboss/test/deployers");
+      VFSDeployment deployment = createDeployment("org/jboss/test/deployers");
       MainDeployerImpl md = new MainDeployerImpl();
+      DeployersImpl deployers = new DeployersImpl(new AbstractController());
       WebAppParsingDeployer d1 = new WebAppParsingDeployer();
       d1.setWebXmlPath("web24-ex1.xml");
-      md.addDeployer(d1);
+      deployers.addDeployer(d1);
       JBossWebAppParsingDeployer d2 = new JBossWebAppParsingDeployer();
-      md.addDeployer(d2);
+      deployers.addDeployer(d2);
       d2.setWebXmlPath("jboss-web24-ex1.xml");
-      DeploymentContext ctx = unit.getDeploymentContext();
-      ctx.setStructureDetermined(StructureDetermined.PREDETERMINED);
-      md.addDeploymentContext(ctx);
+      md.addDeployment(deployment);
       md.process();
       
+      DeploymentUnit unit = md.getDeploymentUnit(deployment.getName());
       WebMetaData dd = unit.getAttachment(WebMetaData.class);
       assertNotNull("WebMetaData dd", dd);
       validateWebMetaData24Ex1(dd, true);
@@ -174,11 +177,19 @@
    {
       VirtualFile file = getVirtualFile(path);
       log.debug("Resolved path to: "+file);
-      AbstractDeploymentContext context = new AbstractDeploymentContext(file);
+      AbstractVFSDeploymentContext context = new AbstractVFSDeploymentContext(file, "");
       // Use the path as the metadata location
       context.setMetaDataPath("/");
       AbstractDeploymentUnit unit = new AbstractDeploymentUnit(context);
       return unit;
    }
 
+   protected VFSDeployment createDeployment(String path) throws Exception
+   {
+      VirtualFile file = getVirtualFile(path);
+      VFSDeploymentFactory factory = VFSDeploymentFactory.getInstance();
+      VFSDeployment result = factory.createVFSDeployment(file);
+      factory.addContext(result, "/", null);
+      return result;
+   }
 }




More information about the jboss-cvs-commits mailing list