[jboss-cvs] JBossAS SVN: r106434 - in projects/snowdrop/branches/1_0: deployers and 17 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Mon Jul 5 16:31:03 EDT 2010


Author: marius.bogoevici
Date: 2010-07-05 16:31:02 -0400 (Mon, 05 Jul 2010)
New Revision: 106434

Added:
   projects/snowdrop/branches/1_0/deployers/src/main/java/org/jboss/spring/deployers/SpringContextDescriptor.java
   projects/snowdrop/branches/1_0/deployers/src/test/
   projects/snowdrop/branches/1_0/deployers/src/test/java/
   projects/snowdrop/branches/1_0/deployers/src/test/java/org/
   projects/snowdrop/branches/1_0/deployers/src/test/java/org/jboss/
   projects/snowdrop/branches/1_0/deployers/src/test/java/org/jboss/test/
   projects/snowdrop/branches/1_0/deployers/src/test/java/org/jboss/test/deployers/
   projects/snowdrop/branches/1_0/deployers/src/test/java/org/jboss/test/deployers/test/
   projects/snowdrop/branches/1_0/deployers/src/test/java/org/jboss/test/deployers/test/MockContext.java
   projects/snowdrop/branches/1_0/deployers/src/test/java/org/jboss/test/deployers/test/MockInitialContextFactory.java
   projects/snowdrop/branches/1_0/deployers/src/test/java/org/jboss/test/deployers/test/SimpleBean.java
   projects/snowdrop/branches/1_0/deployers/src/test/java/org/jboss/test/deployers/test/SnowdropDeployersTest.java
   projects/snowdrop/branches/1_0/deployers/src/test/resources/
   projects/snowdrop/branches/1_0/deployers/src/test/resources/org/
   projects/snowdrop/branches/1_0/deployers/src/test/resources/org/jboss/
   projects/snowdrop/branches/1_0/deployers/src/test/resources/org/jboss/test/
   projects/snowdrop/branches/1_0/deployers/src/test/resources/org/jboss/test/deployers/
   projects/snowdrop/branches/1_0/deployers/src/test/resources/org/jboss/test/deployers/test/
   projects/snowdrop/branches/1_0/deployers/src/test/resources/org/jboss/test/deployers/test/SnowdropDeployersTest.xml
   projects/snowdrop/branches/1_0/deployers/src/test/resources/org/jboss/test/deployers/test/multiplefiles/
   projects/snowdrop/branches/1_0/deployers/src/test/resources/org/jboss/test/deployers/test/multiplefiles/META-INF/
   projects/snowdrop/branches/1_0/deployers/src/test/resources/org/jboss/test/deployers/test/multiplefiles/META-INF/jboss-1-spring.xml
   projects/snowdrop/branches/1_0/deployers/src/test/resources/org/jboss/test/deployers/test/multiplefiles/META-INF/jboss-2-spring.xml
Modified:
   projects/snowdrop/branches/1_0/deployers/pom.xml
   projects/snowdrop/branches/1_0/deployers/src/main/java/org/jboss/spring/deployers/AbstractSpringMetaDataDeployer.java
   projects/snowdrop/branches/1_0/deployers/src/main/java/org/jboss/spring/deployers/ApplicationContextDeployer.java
   projects/snowdrop/branches/1_0/deployers/src/main/java/org/jboss/spring/deployers/BeanFactoryDeployer.java
   projects/snowdrop/branches/1_0/deployers/src/main/java/org/jboss/spring/deployers/SpringMetaData.java
   projects/snowdrop/branches/1_0/deployers/src/main/java/org/jboss/spring/deployers/SpringParserDeployer.java
   projects/snowdrop/branches/1_0/pom.xml
Log:
SNOWDROP-13/partial + unit tests


Modified: projects/snowdrop/branches/1_0/deployers/pom.xml
===================================================================
--- projects/snowdrop/branches/1_0/deployers/pom.xml	2010-07-05 19:27:38 UTC (rev 106433)
+++ projects/snowdrop/branches/1_0/deployers/pom.xml	2010-07-05 20:31:02 UTC (rev 106434)
@@ -30,6 +30,29 @@
       <scope>provided</scope>
     </dependency>
     <dependency>
+      <groupId>org.jboss.deployers</groupId>
+      <artifactId>jboss-deployers-vfs</artifactId>
+      <exclusions>
+        <exclusion>
+          <groupId>jboss</groupId>
+          <artifactId>jboss-vfs</artifactId>
+        </exclusion>
+      </exclusions>
+      <type>test-jar</type>
+      <scope>test</scope>
+    </dependency>
+    <dependency>
+      <groupId>org.jboss.deployers</groupId>
+      <artifactId>jboss-deployers-vfs</artifactId>
+      <exclusions>
+        <exclusion>
+          <groupId>jboss</groupId>
+          <artifactId>jboss-vfs</artifactId>
+        </exclusion>
+      </exclusions>
+      <scope>test</scope>
+    </dependency>
+    <dependency>
       <groupId>apache-xerces</groupId>
       <artifactId>xml-apis</artifactId>
     </dependency>
@@ -83,6 +106,10 @@
       <artifactId>spring-core</artifactId>
       <optional>true</optional>
     </dependency>
+      <dependency>
+        <groupId>org.jboss</groupId>
+        <artifactId>jboss-test</artifactId>
+      </dependency>
   </dependencies>
   
 </project>

Modified: projects/snowdrop/branches/1_0/deployers/src/main/java/org/jboss/spring/deployers/AbstractSpringMetaDataDeployer.java
===================================================================
--- projects/snowdrop/branches/1_0/deployers/src/main/java/org/jboss/spring/deployers/AbstractSpringMetaDataDeployer.java	2010-07-05 19:27:38 UTC (rev 106433)
+++ projects/snowdrop/branches/1_0/deployers/src/main/java/org/jboss/spring/deployers/AbstractSpringMetaDataDeployer.java	2010-07-05 20:31:02 UTC (rev 106434)
@@ -68,13 +68,16 @@
          ClassLoader old = Thread.currentThread().getContextClassLoader();
          try
          {
-            Thread.currentThread().setContextClassLoader(classLoader);
-            T beanFactory = doCreate(springMetaData);
-            String name = ((Nameable) beanFactory).getName();
-            springMetaData.setName(name);
-            bind(beanFactory, name);
-            if (log.isTraceEnabled())
-               log.trace("Bean factory [" + name + "] binded to local JNDI.");
+            for (SpringContextDescriptor springContextDescriptor: springMetaData.getSpringContextDescriptors())
+            {
+               Thread.currentThread().setContextClassLoader(classLoader);
+               T beanFactory = doCreate(springContextDescriptor);
+               String name = ((Nameable) beanFactory).getName();
+               springContextDescriptor.setName(name);
+               bind(beanFactory, name);
+               if (log.isTraceEnabled())
+                  log.trace("Bean factory [" + name + "] binded to local JNDI.");
+            }
          }
          finally
          {
@@ -88,27 +91,30 @@
        * @param metaData the spring meta data
        * @return new bean factory instance
        */
-      protected abstract T doCreate(SpringMetaData metaData);
+      protected abstract T doCreate(SpringContextDescriptor metaData);
 
       public void undeploy(DeploymentUnit unit, SpringMetaData springMetaData)
       {
-         String name = springMetaData.getName();
-         try
+         for (SpringContextDescriptor springContextDescriptor: springMetaData.getSpringContextDescriptors())
          {
-            T beanFactory = lookup(name);
-            if (beanFactory != null)
+            String name = springContextDescriptor.getName();
+            try
             {
-               doClose(beanFactory);
-               unbind(name);
+               T beanFactory = lookup(name);
+               if (beanFactory != null)
+               {
+                  doClose(beanFactory);
+                  unbind(name);
+                  if (log.isTraceEnabled())
+                     log.trace("Bean factory [" + name + "] unbinded from local JNDI.");
+               }
+            }
+            catch (Exception e)
+            {
                if (log.isTraceEnabled())
-                  log.trace("Bean factory [" + name + "] unbinded from local JNDI.");
+                  log.trace("Exception finding BeanFactory instance named " + name, e);
             }
          }
-         catch (Exception e)
-         {
-            if (log.isTraceEnabled())
-               log.trace("Exception finding BeanFactory instance named " + name, e);
-         }
       }
 
       /**

Modified: projects/snowdrop/branches/1_0/deployers/src/main/java/org/jboss/spring/deployers/ApplicationContextDeployer.java
===================================================================
--- projects/snowdrop/branches/1_0/deployers/src/main/java/org/jboss/spring/deployers/ApplicationContextDeployer.java	2010-07-05 19:27:38 UTC (rev 106433)
+++ projects/snowdrop/branches/1_0/deployers/src/main/java/org/jboss/spring/deployers/ApplicationContextDeployer.java	2010-07-05 20:31:02 UTC (rev 106434)
@@ -36,9 +36,9 @@
    {
       return new SpringDeploymentVisitor()
       {
-         protected ConfigurableApplicationContext doCreate(SpringMetaData metaData)
+         protected ConfigurableApplicationContext doCreate(SpringContextDescriptor springContextDescriptor)
          {
-            return new NamedXmlApplicationContext(metaData.getDefaultName(), metaData.getResource());
+            return new NamedXmlApplicationContext(springContextDescriptor.getDefaultName(), springContextDescriptor.getResource());
          }
 
          protected void doClose(ConfigurableApplicationContext beanFactory)

Modified: projects/snowdrop/branches/1_0/deployers/src/main/java/org/jboss/spring/deployers/BeanFactoryDeployer.java
===================================================================
--- projects/snowdrop/branches/1_0/deployers/src/main/java/org/jboss/spring/deployers/BeanFactoryDeployer.java	2010-07-05 19:27:38 UTC (rev 106433)
+++ projects/snowdrop/branches/1_0/deployers/src/main/java/org/jboss/spring/deployers/BeanFactoryDeployer.java	2010-07-05 20:31:02 UTC (rev 106434)
@@ -36,9 +36,9 @@
    {
       return new SpringDeploymentVisitor()
       {
-         protected ConfigurableBeanFactory doCreate(SpringMetaData metaData)
+         protected ConfigurableBeanFactory doCreate(SpringContextDescriptor springContextDescriptor)
          {
-            return new NamedXmlBeanFactory(metaData.getDefaultName(), metaData.getResource());
+            return new NamedXmlBeanFactory(springContextDescriptor.getDefaultName(), springContextDescriptor.getResource());
          }
 
          protected void doClose(ConfigurableBeanFactory beanFactory)

Added: projects/snowdrop/branches/1_0/deployers/src/main/java/org/jboss/spring/deployers/SpringContextDescriptor.java
===================================================================
--- projects/snowdrop/branches/1_0/deployers/src/main/java/org/jboss/spring/deployers/SpringContextDescriptor.java	                        (rev 0)
+++ projects/snowdrop/branches/1_0/deployers/src/main/java/org/jboss/spring/deployers/SpringContextDescriptor.java	2010-07-05 20:31:02 UTC (rev 106434)
@@ -0,0 +1,70 @@
+package org.jboss.spring.deployers;
+
+import java.io.Serializable;
+import java.net.URL;
+
+import org.springframework.core.io.Resource;
+import org.springframework.core.io.UrlResource;
+
+/**
+ * @author Marius Bogoevici
+ */
+public class SpringContextDescriptor implements Serializable
+{
+    private static final long serialVersionUID = 8989753488155849440L;
+
+   private URL fileURL;
+   private String defaultName;
+   private String name;
+   private transient Resource resource;
+
+   public SpringContextDescriptor()
+   {
+   }
+
+   public SpringContextDescriptor(URL fileURL, String defaultName)
+   {
+      this.fileURL = fileURL;
+      this.defaultName = defaultName;
+   }
+
+   public URL getFileURL()
+   {
+      return fileURL;
+   }
+
+   public void setFileURL(URL fileURL)
+   {
+      this.fileURL = fileURL;
+   }
+
+   public String getDefaultName()
+   {
+      return defaultName;
+   }
+
+   public String getName()
+   {
+      return name != null ? name : defaultName;
+   }
+
+   public void setName(String name)
+   {
+      this.name = name;
+   }
+
+   public Resource getResource()
+   {
+      if (resource == null)
+         resource = new UrlResource(fileURL);
+      return resource;
+   }
+
+   public String toString()
+   {
+      StringBuilder builder = new StringBuilder();
+      builder.append("fileURL=").append(fileURL);
+      builder.append(", defaultName=").append(defaultName);
+      return builder.toString();
+   }
+}

Modified: projects/snowdrop/branches/1_0/deployers/src/main/java/org/jboss/spring/deployers/SpringMetaData.java
===================================================================
--- projects/snowdrop/branches/1_0/deployers/src/main/java/org/jboss/spring/deployers/SpringMetaData.java	2010-07-05 19:27:38 UTC (rev 106433)
+++ projects/snowdrop/branches/1_0/deployers/src/main/java/org/jboss/spring/deployers/SpringMetaData.java	2010-07-05 20:31:02 UTC (rev 106434)
@@ -22,11 +22,9 @@
 package org.jboss.spring.deployers;
 
 import java.io.Serializable;
-import java.net.URL;
+import java.util.Collections;
+import java.util.List;
 
-import org.springframework.core.io.Resource;
-import org.springframework.core.io.UrlResource;
-
 /**
  * Spring meta data.
  * 
@@ -36,58 +34,15 @@
 {
    private static final long serialVersionUID = 8989753488155849440L;
 
-   private URL fileURL;
-   private String defaultName;
-   private String name;
-   private transient Resource resource;
+   private List<SpringContextDescriptor> springContextDescriptors;
 
-   public SpringMetaData()
+   public SpringMetaData(List<SpringContextDescriptor> springContextDescriptors)
    {
+      this.springContextDescriptors = springContextDescriptors;
    }
 
-   public SpringMetaData(URL fileURL, String defaultName)
+   public List<SpringContextDescriptor> getSpringContextDescriptors()
    {
-      this.fileURL = fileURL;
-      this.defaultName = defaultName;
+      return Collections.unmodifiableList(springContextDescriptors);
    }
-
-   public URL getFileURL()
-   {
-      return fileURL;
-   }
-
-   public void setFileURL(URL fileURL)
-   {
-      this.fileURL = fileURL;
-   }
-
-   public String getDefaultName()
-   {
-      return defaultName;
-   }
-
-   public String getName()
-   {
-      return name != null ? name : defaultName;
-   }
-
-   public void setName(String name)
-   {
-      this.name = name;
-   }
-
-   public Resource getResource()
-   {
-      if (resource == null)
-         resource = new UrlResource(fileURL);
-      return resource;
-   }
-
-   public String toString()
-   {
-      StringBuilder builder = new StringBuilder();
-      builder.append("fileURL=").append(fileURL);
-      builder.append(", defaultName=").append(defaultName);
-      return builder.toString();
-   }
 }

Modified: projects/snowdrop/branches/1_0/deployers/src/main/java/org/jboss/spring/deployers/SpringParserDeployer.java
===================================================================
--- projects/snowdrop/branches/1_0/deployers/src/main/java/org/jboss/spring/deployers/SpringParserDeployer.java	2010-07-05 19:27:38 UTC (rev 106433)
+++ projects/snowdrop/branches/1_0/deployers/src/main/java/org/jboss/spring/deployers/SpringParserDeployer.java	2010-07-05 20:31:02 UTC (rev 106434)
@@ -21,6 +21,12 @@
  */
 package org.jboss.spring.deployers;
 
+import java.net.MalformedURLException;
+import java.net.URISyntaxException;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+
 import org.jboss.deployers.vfs.spi.deployer.AbstractVFSParsingDeployer;
 import org.jboss.deployers.vfs.spi.structure.VFSDeploymentUnit;
 import org.jboss.virtual.VirtualFile;
@@ -56,10 +62,10 @@
    /**
     * Should we use deployment unit's name as default.
     * e.g. using string before .jar|spring|... as the name
-    *
+    * <p/>
     * Previous versions used string before .spring as the name,
     * setting this to true results in this legacy behaviour.
-    *
+    * <p/>
     * Current default is string before -spring.xml.
     *
     * @param useLegacyDefaultName the flag
@@ -103,6 +109,28 @@
       else
          defaultName = getDefaultName(file);
 
-      return new SpringMetaData(file.toURL(), defaultName);
+      return new SpringMetaData(Collections.singletonList(createSpringContextDescriptor(file, defaultName)));
    }
+
+   private SpringContextDescriptor createSpringContextDescriptor(VirtualFile file, String defaultName)
+         throws MalformedURLException, URISyntaxException
+   {
+      return new SpringContextDescriptor(file.toURL(), defaultName);
+   }
+
+   @Override
+   protected SpringMetaData handleMultipleFiles(VFSDeploymentUnit unit, SpringMetaData root, List<VirtualFile> files) throws Exception
+   {
+      List<SpringContextDescriptor> descriptors = new ArrayList<SpringContextDescriptor>();
+      for (VirtualFile virtualFile : files)
+      {
+         String defaultName;
+         if (isUseLegacyDefaultName())
+            throw new IllegalStateException("Cannot use the legacy default name for multiple Spring configuration files");
+         else
+            defaultName = getDefaultName(virtualFile);
+         descriptors.add(new SpringContextDescriptor(virtualFile.toURL(), defaultName));
+      }
+      return new SpringMetaData(descriptors);
+   }
 }

Added: projects/snowdrop/branches/1_0/deployers/src/test/java/org/jboss/test/deployers/test/MockContext.java
===================================================================
--- projects/snowdrop/branches/1_0/deployers/src/test/java/org/jboss/test/deployers/test/MockContext.java	                        (rev 0)
+++ projects/snowdrop/branches/1_0/deployers/src/test/java/org/jboss/test/deployers/test/MockContext.java	2010-07-05 20:31:02 UTC (rev 106434)
@@ -0,0 +1,199 @@
+package org.jboss.test.deployers.test;
+
+import java.util.HashMap;
+import java.util.Hashtable;
+import java.util.Map;
+
+import javax.naming.Binding;
+import javax.naming.Context;
+import javax.naming.Name;
+import javax.naming.NameAlreadyBoundException;
+import javax.naming.NameClassPair;
+import javax.naming.NameNotFoundException;
+import javax.naming.NameParser;
+import javax.naming.NamingEnumeration;
+import javax.naming.NamingException;
+import javax.naming.Reference;
+
+import org.jboss.util.naming.NonSerializableFactory;
+
+/**
+ * @author Marius Bogoevici
+ */
+class MockContext implements Context
+{
+   private static Map<String, Object> registered = new HashMap<String, Object>();
+
+   private static Hashtable<Object, Object> environment = new Hashtable<Object, Object>();
+
+   public Object addToEnvironment(String propName, Object propVal) throws NamingException
+   {
+      environment.put(propName, propVal);
+      return null;
+   }
+
+   public Object lookup(Name name) throws NamingException
+   {
+      throw new UnsupportedOperationException();
+   }
+
+   public Object lookup(String name) throws NamingException
+   {
+      Object entry = registered.get(name);
+      if (entry instanceof Reference)
+      {
+         return NonSerializableFactory.lookup(name);
+      }
+      if (entry == null)
+         throw new NameNotFoundException();
+      return entry;
+   }
+
+   public void bind(Name name, Object obj) throws NamingException
+   {
+      throw new UnsupportedOperationException();
+   }
+
+   public void bind(String name, Object obj) throws NamingException
+   {
+      Object entry = registered.get(name);
+      if (entry == null)
+         throw new NameAlreadyBoundException();
+      if (obj instanceof Reference)
+      {
+         ((Reference)obj).get("nns");   
+      }
+      registered.put(name, obj);
+   }
+
+   public void rebind(Name name, Object obj) throws NamingException
+   {
+      throw new UnsupportedOperationException();
+   }
+
+   public void rebind(String name, Object obj) throws NamingException
+   {
+      registered.put(name, obj);
+   }
+
+   public void unbind(Name name) throws NamingException
+   {
+      throw new UnsupportedOperationException();
+   }
+
+   public void unbind(String name) throws NamingException
+   {
+      registered.remove(name);
+   }
+
+   public void rename(Name oldName, Name newName) throws NamingException
+   {
+      throw new UnsupportedOperationException();
+   }
+
+   public void rename(String oldName, String newName) throws NamingException
+   {
+      throw new UnsupportedOperationException();
+   }
+
+   public NamingEnumeration<NameClassPair> list(Name name) throws NamingException
+   {
+      throw new UnsupportedOperationException();
+   }
+
+   public NamingEnumeration<NameClassPair> list(String name) throws NamingException
+   {
+      throw new UnsupportedOperationException();
+   }
+
+   public NamingEnumeration<Binding> listBindings(Name name) throws NamingException
+   {
+      throw new UnsupportedOperationException();
+   }
+
+   public NamingEnumeration<Binding> listBindings(String name) throws NamingException
+   {
+      throw new UnsupportedOperationException();
+   }
+
+   public void destroySubcontext(Name name) throws NamingException
+   {
+      throw new UnsupportedOperationException();
+   }
+
+   public void destroySubcontext(String name) throws NamingException
+   {
+      throw new UnsupportedOperationException();
+   }
+
+   public Context createSubcontext(Name name) throws NamingException
+   {
+      throw new UnsupportedOperationException();
+   }
+
+   public Context createSubcontext(String name) throws NamingException
+   {
+      throw new UnsupportedOperationException();
+   }
+
+   public Object lookupLink(Name name) throws NamingException
+   {
+      throw new UnsupportedOperationException();
+   }
+
+   public Object lookupLink(String name) throws NamingException
+   {
+      throw new UnsupportedOperationException();
+   }
+
+   public NameParser getNameParser(Name name) throws NamingException
+   {
+      throw new UnsupportedOperationException();
+   }
+
+   public NameParser getNameParser(String name) throws NamingException
+   {
+      throw new UnsupportedOperationException();
+   }
+
+   public Name composeName(Name name, Name prefix) throws NamingException
+   {
+      throw new UnsupportedOperationException();
+   }
+
+   public String composeName(String name, String prefix) throws NamingException
+   {
+      throw new UnsupportedOperationException();
+   }
+
+   public Object removeFromEnvironment(String propName) throws NamingException
+   {
+      throw new UnsupportedOperationException();
+   }
+
+   public Hashtable<?, ?> getEnvironment() throws NamingException
+   {
+      return environment;
+   }
+
+   public void close() throws NamingException
+   {
+      //To change body of implemented methods use File | Settings | File Templates.
+   }
+
+   public String getNameInNamespace() throws NamingException
+   {
+      throw new UnsupportedOperationException();
+   }
+
+   public static Map<String, Object> getRegistered()
+   {
+      return registered;
+   }
+
+   public static void reset()
+   {
+      environment = new Hashtable<Object, Object>();
+      registered = new HashMap<String, Object>();
+   }
+}

Added: projects/snowdrop/branches/1_0/deployers/src/test/java/org/jboss/test/deployers/test/MockInitialContextFactory.java
===================================================================
--- projects/snowdrop/branches/1_0/deployers/src/test/java/org/jboss/test/deployers/test/MockInitialContextFactory.java	                        (rev 0)
+++ projects/snowdrop/branches/1_0/deployers/src/test/java/org/jboss/test/deployers/test/MockInitialContextFactory.java	2010-07-05 20:31:02 UTC (rev 106434)
@@ -0,0 +1,23 @@
+package org.jboss.test.deployers.test;
+
+import java.util.Hashtable;
+
+import javax.naming.Context;
+import javax.naming.NamingException;
+import javax.naming.spi.InitialContextFactory;
+
+/**
+ * @author Marius Bogoevici
+ */
+public class MockInitialContextFactory implements InitialContextFactory
+{
+   public MockInitialContextFactory()
+   {
+   }
+
+   public Context getInitialContext(Hashtable<?, ?> environment) throws NamingException
+   {
+      return new MockContext();
+   }
+
+}

Added: projects/snowdrop/branches/1_0/deployers/src/test/java/org/jboss/test/deployers/test/SimpleBean.java
===================================================================
--- projects/snowdrop/branches/1_0/deployers/src/test/java/org/jboss/test/deployers/test/SimpleBean.java	                        (rev 0)
+++ projects/snowdrop/branches/1_0/deployers/src/test/java/org/jboss/test/deployers/test/SimpleBean.java	2010-07-05 20:31:02 UTC (rev 106434)
@@ -0,0 +1,8 @@
+package org.jboss.test.deployers.test;
+
+/**
+ * @author Marius Bogoevici
+ */
+public class SimpleBean
+{
+}

Added: projects/snowdrop/branches/1_0/deployers/src/test/java/org/jboss/test/deployers/test/SnowdropDeployersTest.java
===================================================================
--- projects/snowdrop/branches/1_0/deployers/src/test/java/org/jboss/test/deployers/test/SnowdropDeployersTest.java	                        (rev 0)
+++ projects/snowdrop/branches/1_0/deployers/src/test/java/org/jboss/test/deployers/test/SnowdropDeployersTest.java	2010-07-05 20:31:02 UTC (rev 106434)
@@ -0,0 +1,37 @@
+package org.jboss.test.deployers.test;
+
+import junit.framework.Test;
+import org.jboss.deployers.vfs.spi.structure.VFSDeploymentUnit;
+import org.jboss.test.deployers.BootstrapDeployersTest;
+import org.jboss.util.naming.NonSerializableFactory;
+import org.jboss.virtual.AssembledDirectory;
+
+/**
+ * @author Marius Bogoevici
+ */
+public class SnowdropDeployersTest extends BootstrapDeployersTest
+{
+   public SnowdropDeployersTest(String name)
+   {
+      super(name);
+   }
+
+   public static Test suite()
+   {
+      return suite(SnowdropDeployersTest.class);
+   }
+
+   public void testSimpleEar() throws Exception
+   {
+      System.setProperty("java.naming.factory.initial", MockInitialContextFactory.class.getName());
+      AssembledDirectory ear = createAssembledDirectory("multiplefiles-top-level.ear","multiplefiles-top-level.ear");
+      ear.mkdir("META-INF");
+      addPath(ear, "multiplefiles", "META-INF");
+      VFSDeploymentUnit unit = assertDeploy(ear);
+      assertNotNull(NonSerializableFactory.lookup("TestContext1"));
+      assertNotNull(NonSerializableFactory.lookup("TestContext2"));
+      undeploy(unit);
+      assertNull(NonSerializableFactory.lookup("TestContext1"));
+      assertNull(NonSerializableFactory.lookup("TestContext2"));
+   }
+}

Added: projects/snowdrop/branches/1_0/deployers/src/test/resources/org/jboss/test/deployers/test/SnowdropDeployersTest.xml
===================================================================
--- projects/snowdrop/branches/1_0/deployers/src/test/resources/org/jboss/test/deployers/test/SnowdropDeployersTest.xml	                        (rev 0)
+++ projects/snowdrop/branches/1_0/deployers/src/test/resources/org/jboss/test/deployers/test/SnowdropDeployersTest.xml	2010-07-05 20:31:02 UTC (rev 106434)
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+   Spring deployer beans.
+-->
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="SpringParserDeployer" class="org.jboss.spring.deployers.SpringParserDeployer"/>
+
+   <bean name="ApplicationContextDeployer" class="org.jboss.spring.deployers.ApplicationContextDeployer"/>
+
+</deployment>

Added: projects/snowdrop/branches/1_0/deployers/src/test/resources/org/jboss/test/deployers/test/multiplefiles/META-INF/jboss-1-spring.xml
===================================================================
--- projects/snowdrop/branches/1_0/deployers/src/test/resources/org/jboss/test/deployers/test/multiplefiles/META-INF/jboss-1-spring.xml	                        (rev 0)
+++ projects/snowdrop/branches/1_0/deployers/src/test/resources/org/jboss/test/deployers/test/multiplefiles/META-INF/jboss-1-spring.xml	2010-07-05 20:31:02 UTC (rev 106434)
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<beans xmlns="http://www.springframework.org/schema/beans"
+       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
+
+    <description>BeanFactory=(TestContext1)</description>
+    <bean id="simpleBean" class="org.jboss.test.deployers.test.SimpleBean"/>
+</beans>
\ No newline at end of file

Added: projects/snowdrop/branches/1_0/deployers/src/test/resources/org/jboss/test/deployers/test/multiplefiles/META-INF/jboss-2-spring.xml
===================================================================
--- projects/snowdrop/branches/1_0/deployers/src/test/resources/org/jboss/test/deployers/test/multiplefiles/META-INF/jboss-2-spring.xml	                        (rev 0)
+++ projects/snowdrop/branches/1_0/deployers/src/test/resources/org/jboss/test/deployers/test/multiplefiles/META-INF/jboss-2-spring.xml	2010-07-05 20:31:02 UTC (rev 106434)
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<beans xmlns="http://www.springframework.org/schema/beans"
+       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
+
+    <description>BeanFactory=(TestContext2)</description>
+    <bean id="simpleBean" class="org.jboss.test.deployers.test.SimpleBean"/>
+</beans>
\ No newline at end of file

Modified: projects/snowdrop/branches/1_0/pom.xml
===================================================================
--- projects/snowdrop/branches/1_0/pom.xml	2010-07-05 19:27:38 UTC (rev 106433)
+++ projects/snowdrop/branches/1_0/pom.xml	2010-07-05 20:31:02 UTC (rev 106434)
@@ -260,6 +260,13 @@
       </dependency>
       <dependency>
         <groupId>org.jboss.deployers</groupId>
+        <artifactId>jboss-deployers-vfs</artifactId>
+        <version>${version.jboss.deployers}</version>
+        <type>test-jar</type>
+        <scope>test</scope>
+      </dependency>
+      <dependency>
+        <groupId>org.jboss.deployers</groupId>
         <artifactId>jboss-deployers-vfs-spi</artifactId>
         <version>${version.jboss.deployers}</version>
         <scope>provided</scope>



More information about the jboss-cvs-commits mailing list