[jboss-cvs] JBossAS SVN: r81484 - in trunk: server/src/etc/conf/default/bootstrap and 2 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Mon Nov 24 06:46:13 EST 2008


Author: alesj
Date: 2008-11-24 06:46:07 -0500 (Mon, 24 Nov 2008)
New Revision: 81484

Modified:
   trunk/component-matrix/pom.xml
   trunk/server/src/etc/conf/default/bootstrap/vfs.xml
   trunk/system-jmx/src/main/org/jboss/deployment/MainDeployer.java
   trunk/system-jmx/src/main/org/jboss/deployment/MainDeployerMBean.java
   trunk/testsuite/src/main/org/jboss/test/jmx/test/UndeployBrokenPackageUnitTestCase.java
Log:
[JBAS-6022, JBAS-5953]; upgrade VFS to 2.0.0.GA, fix UndeployBrokenPackageUnitTestCase test.
TODO on deploy method to use Map instead?

Modified: trunk/component-matrix/pom.xml
===================================================================
--- trunk/component-matrix/pom.xml	2008-11-24 10:55:53 UTC (rev 81483)
+++ trunk/component-matrix/pom.xml	2008-11-24 11:46:07 UTC (rev 81484)
@@ -59,7 +59,7 @@
     <version.org.jboss.ejb3.security.client>1.0.0-Beta2</version.org.jboss.ejb3.security.client>
     <version.org.jboss.jpa>1.0.0-Beta4</version.org.jboss.jpa>
     <version.org.jboss.reflect>2.0.1.GA</version.org.jboss.reflect>
-    <version.org.jboss.vfs>2.0.0.CR5</version.org.jboss.vfs>
+    <version.org.jboss.vfs>2.0.0.GA</version.org.jboss.vfs>
     <version.org.jboss.mdr>2.0.1.GA</version.org.jboss.mdr>
     <version.org.jboss.man>2.0.0.CR5</version.org.jboss.man>
     <version.org.jboss.microcontainer>2.0.0.CR5</version.org.jboss.microcontainer>

Modified: trunk/server/src/etc/conf/default/bootstrap/vfs.xml
===================================================================
--- trunk/server/src/etc/conf/default/bootstrap/vfs.xml	2008-11-24 10:55:53 UTC (rev 81483)
+++ trunk/server/src/etc/conf/default/bootstrap/vfs.xml	2008-11-24 11:46:07 UTC (rev 81484)
@@ -7,19 +7,34 @@
 
   <bean name="VFSCache">
     <constructor factoryClass="org.jboss.virtual.spi.cache.VFSCacheFactory" factoryMethod="getInstance">
-     <!-- Use the TimedVFSCache implementation -->
-     <parameter>org.jboss.virtual.plugins.cache.TimedVFSCache</parameter>
+     <!-- Use the IterableTimedVFSCache implementation -->
+     <parameter>org.jboss.virtual.plugins.cache.IterableTimedVFSCache</parameter>
     </constructor>
     <start ignored="true"/>
   </bean>
 
+  <bean name="VfsNamesExceptionHandler" class="org.jboss.virtual.plugins.context.helpers.NamesExceptionHandler">
+    <constructor>
+      <parameter class="java.lang.String">sqljdbc.jar</parameter>
+    </constructor>
+  </bean>
+
   <bean name="JBossVFSInitializer" class="org.jboss.virtual.plugins.cache.PreInitializeVFSContexts">
     <property name="initializedVFSContexts">
-      <list elementClass="java.net.URL">
-        <value>${jboss.lib.url}</value>
-        <value>${jboss.common.lib.url}</value>
-        <value>${jboss.server.lib.url}</value>                
-      </list>
+      <map keyClass="java.net.URL" valueClass="org.jboss.virtual.spi.ExceptionHandler">
+        <entry>
+          <key>${jboss.lib.url}</key>
+          <value><null/></value>
+        </entry>
+        <entry>
+          <key>${jboss.common.lib.url}</key>
+          <value><inject bean="VfsNamesExceptionHandler"/></value>
+        </entry>
+        <entry>
+          <key>${jboss.server.lib.url}</key>
+          <value><inject bean="VfsNamesExceptionHandler"/></value>
+        </entry>
+      </map>
     </property>
     <property name="holdReference">true</property>
   </bean>

Modified: trunk/system-jmx/src/main/org/jboss/deployment/MainDeployer.java
===================================================================
--- trunk/system-jmx/src/main/org/jboss/deployment/MainDeployer.java	2008-11-24 10:55:53 UTC (rev 81483)
+++ trunk/system-jmx/src/main/org/jboss/deployment/MainDeployer.java	2008-11-24 11:46:07 UTC (rev 81484)
@@ -65,6 +65,7 @@
 import org.jboss.util.file.JarUtils;
 import org.jboss.util.stream.Streams;
 import org.jboss.virtual.VFS;
+import org.jboss.virtual.VFSUtils;
 import org.jboss.virtual.VirtualFile;
 
 /**
@@ -798,6 +799,11 @@
     */
    public void deploy(URL url) throws DeploymentException
    {
+      deploy(url, false, false, false);
+   }
+
+   public void deploy(URL url, boolean noReaper, boolean forceCopy, boolean caseSensitive) throws DeploymentException
+   {
       log.info("deploy, url="+url);
       String deploymentName = contextMap.get(url);
       // if it does not exist create a new deployment
@@ -805,14 +811,16 @@
       {
          try
          {
-/*
-            // disable reaper for old deployments
-            // currently I (alesj) have no idea why this custom enable doesn't work
             VFS vfs = VFS.getVFS(url);
-            VFSUtils.enableNoReaper(vfs);
+            // enable options
+            if (noReaper)
+               VFSUtils.enableNoReaper(vfs);
+            if (forceCopy)
+               VFSUtils.enableCopy(vfs);
+            if (caseSensitive)
+               VFSUtils.enableCaseSensitive(vfs);
+
             VirtualFile file = vfs.getRoot();
-*/
-            VirtualFile file = VFS.getRoot(url);
             VFSDeployment deployment = deploymentFactory.createVFSDeployment(file);
             delegate.addDeployment(deployment);
             deploymentName = deployment.getName();

Modified: trunk/system-jmx/src/main/org/jboss/deployment/MainDeployerMBean.java
===================================================================
--- trunk/system-jmx/src/main/org/jboss/deployment/MainDeployerMBean.java	2008-11-24 10:55:53 UTC (rev 81483)
+++ trunk/system-jmx/src/main/org/jboss/deployment/MainDeployerMBean.java	2008-11-24 11:46:07 UTC (rev 81484)
@@ -196,6 +196,18 @@
    void deploy(URL url) throws DeploymentException;
 
    /**
+    * The <code>deploy</code> method deploys a package identified by a URL
+    *
+    * @param url an <code>URL</code> value
+    * @param noReaper enable no reaper
+    * @param forceCopy enable copy
+    * @param caseSensitive enable case sensitive
+    * @throws DeploymentException for any error
+    */
+   // TODO - use Map?
+   void deploy(URL url, boolean noReaper, boolean forceCopy, boolean caseSensitive) throws DeploymentException;
+
+   /**
     * The <code>deploy</code> method deploys a package represented by a DeploymentInfo object.
     * @param deployment a <code>DeploymentInfo</code> value
     * @exception DeploymentException if an error occurs

Modified: trunk/testsuite/src/main/org/jboss/test/jmx/test/UndeployBrokenPackageUnitTestCase.java
===================================================================
--- trunk/testsuite/src/main/org/jboss/test/jmx/test/UndeployBrokenPackageUnitTestCase.java	2008-11-24 10:55:53 UTC (rev 81483)
+++ trunk/testsuite/src/main/org/jboss/test/jmx/test/UndeployBrokenPackageUnitTestCase.java	2008-11-24 11:46:07 UTC (rev 81484)
@@ -22,6 +22,8 @@
 package org.jboss.test.jmx.test;
 
 import java.io.File;
+import java.net.URL;
+import javax.management.MBeanServerConnection;
 import javax.management.ObjectName;
 import javax.naming.NamingException;
 
@@ -33,9 +35,9 @@
  *
  * @author <a href="mailto:d_jencks at users.sourceforge.net">David Jencks</a>
  * @author Scott.Stark at jboss.org
+ * @author ales.justin at jboss.org
  * @version $Revision$
  */
-
 public class UndeployBrokenPackageUnitTestCase extends JBossTestCase 
 {
    public UndeployBrokenPackageUnitTestCase(String name)
@@ -138,7 +140,7 @@
          getLog().info("Deploying testPackage: " + testPackage);
          try 
          {
-            deploy(testPackage);
+            deployNoReaper(testPackage);
             fail("test package " + testPackage + " deployed successfully with bad descriptor!");
          }
          catch (Exception e)
@@ -146,10 +148,10 @@
             log.info("caught exception as expected", e);
          }
 
-         //assertTrue(thejar.delete()); // TODO - this should work
+         assertTrue(thejar.delete()); // TODO - this should work
          Files.copy(goodjar, thejar);
          getLog().info("Redeploying testPackage: " + testPackage);
-         
+
          redeploy(testPackage);
          Object home = getInitialContext().lookup("EntityA");
          getLog().info("Found EntityA home: " + home);
@@ -205,5 +207,21 @@
       }
    }
 
+   protected void deployNoReaper(String name) throws Exception
+   {
+      undeploy(name);
+      URL url = getDeployURL(name);
+      Object[] args = new Object[]{url, true, false, false};
+      String boolSig = boolean.class.getName();
+      String[] signature = new String[]{URL.class.getName(), boolSig, boolSig, boolSig};
+      invokeMainDeployer("deploy", args, signature, null);
+   }
+
+   protected <T> T invokeMainDeployer(String methodName, Object[] args, String[] sig, Class<T> clazz) throws Exception
+   {
+      MBeanServerConnection server = getServer();
+      Object result = server.invoke(getDeployerName(), methodName, args, sig);
+      return clazz != null ? clazz.cast(result) : null;
+   }
 }// UndeployBrokenPackageUnitTestCase
 




More information about the jboss-cvs-commits mailing list