[jboss-cvs] JBossAS SVN: r101761 - in projects/jboss-jca/trunk: fungal/src/main/java/org/jboss/jca/fungal/util and 1 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Wed Mar 3 04:12:49 EST 2010
Author: jesper.pedersen
Date: 2010-03-03 04:12:48 -0500 (Wed, 03 Mar 2010)
New Revision: 101761
Modified:
projects/jboss-jca/trunk/deployers/src/main/java/org/jboss/jca/deployers/fungal/RADeployer.java
projects/jboss-jca/trunk/deployers/src/main/java/org/jboss/jca/deployers/fungal/RADeployment.java
projects/jboss-jca/trunk/fungal/src/main/java/org/jboss/jca/fungal/util/FileUtil.java
projects/jboss-jca/trunk/web/src/main/java/org/jboss/jca/web/WARDeployer.java
projects/jboss-jca/trunk/web/src/main/java/org/jboss/jca/web/WARDeployment.java
Log:
Close files and delete temporary directories
Modified: projects/jboss-jca/trunk/deployers/src/main/java/org/jboss/jca/deployers/fungal/RADeployer.java
===================================================================
--- projects/jboss-jca/trunk/deployers/src/main/java/org/jboss/jca/deployers/fungal/RADeployer.java 2010-03-03 08:14:54 UTC (rev 101760)
+++ projects/jboss-jca/trunk/deployers/src/main/java/org/jboss/jca/deployers/fungal/RADeployer.java 2010-03-03 09:12:48 UTC (rev 101761)
@@ -284,11 +284,12 @@
throw new IOException("Archive " + url.toExternalForm() + " doesnt exists");
File root = null;
+ File destination = null;
if (f.isFile())
{
FileUtil fileUtil = new FileUtil();
- File destination = new File(SecurityActions.getSystemProperty("jboss.jca.home"), "/tmp/");
+ destination = new File(SecurityActions.getSystemProperty("jboss.jca.home"), "/tmp/");
root = fileUtil.extract(f, destination);
}
else
@@ -566,7 +567,7 @@
log.info("Deployed: " + url.toExternalForm());
- return new RADeployment(url, resourceAdapter, jndiNames, cl);
+ return new RADeployment(url, resourceAdapter, jndiNames, destination, cl);
}
catch (DeployException de)
{
Modified: projects/jboss-jca/trunk/deployers/src/main/java/org/jboss/jca/deployers/fungal/RADeployment.java
===================================================================
--- projects/jboss-jca/trunk/deployers/src/main/java/org/jboss/jca/deployers/fungal/RADeployment.java 2010-03-03 08:14:54 UTC (rev 101760)
+++ projects/jboss-jca/trunk/deployers/src/main/java/org/jboss/jca/deployers/fungal/RADeployment.java 2010-03-03 09:12:48 UTC (rev 101761)
@@ -23,9 +23,11 @@
package org.jboss.jca.deployers.fungal;
import org.jboss.jca.fungal.deployers.Deployment;
+import org.jboss.jca.fungal.util.FileUtil;
import java.io.Closeable;
import java.io.IOException;
+import java.io.File;
import java.net.URL;
import java.util.List;
@@ -54,6 +56,9 @@
/** JNDI names for connection factories */
private List<String> jndiNames;
+ /** The temporary directory */
+ private File tmpDirectory;
+
/** The classloader */
private ClassLoader cl;
@@ -62,13 +67,15 @@
* @param deployment The deployment
* @param ra The resource adapter instance if present
* @param jndiNames The JNDI names for connection factories
+ * @param tmpDirectory The temporary directory
* @param cl The classloader for the deployment
*/
- public RADeployment(URL deployment, ResourceAdapter ra, List<String> jndiNames, ClassLoader cl)
+ public RADeployment(URL deployment, ResourceAdapter ra, List<String> jndiNames, File tmpDirectory, ClassLoader cl)
{
this.deployment = deployment;
this.ra = ra;
this.jndiNames = jndiNames;
+ this.tmpDirectory = tmpDirectory;
this.cl = cl;
}
@@ -160,6 +167,19 @@
}
}
+ if (tmpDirectory != null && tmpDirectory.exists())
+ {
+ try
+ {
+ FileUtil fu = new FileUtil();
+ fu.recursiveDelete(tmpDirectory);
+ }
+ catch (IOException ioe)
+ {
+ // Ignore
+ }
+ }
+
log.info("Undeployed: " + deployment.toExternalForm());
}
}
Modified: projects/jboss-jca/trunk/fungal/src/main/java/org/jboss/jca/fungal/util/FileUtil.java
===================================================================
--- projects/jboss-jca/trunk/fungal/src/main/java/org/jboss/jca/fungal/util/FileUtil.java 2010-03-03 08:14:54 UTC (rev 101760)
+++ projects/jboss-jca/trunk/fungal/src/main/java/org/jboss/jca/fungal/util/FileUtil.java 2010-03-03 09:12:48 UTC (rev 101761)
@@ -261,6 +261,8 @@
}
}
+ jar.close();
+
return target;
}
Modified: projects/jboss-jca/trunk/web/src/main/java/org/jboss/jca/web/WARDeployer.java
===================================================================
--- projects/jboss-jca/trunk/web/src/main/java/org/jboss/jca/web/WARDeployer.java 2010-03-03 08:14:54 UTC (rev 101760)
+++ projects/jboss-jca/trunk/web/src/main/java/org/jboss/jca/web/WARDeployer.java 2010-03-03 09:12:48 UTC (rev 101761)
@@ -159,7 +159,7 @@
log.info("Deployed: " + url.toExternalForm());
- return new WARDeployment(url, webapp, parent);
+ return new WARDeployment(url, webapp, tmpDeployment, parent);
}
catch (Exception e)
{
Modified: projects/jboss-jca/trunk/web/src/main/java/org/jboss/jca/web/WARDeployment.java
===================================================================
--- projects/jboss-jca/trunk/web/src/main/java/org/jboss/jca/web/WARDeployment.java 2010-03-03 08:14:54 UTC (rev 101760)
+++ projects/jboss-jca/trunk/web/src/main/java/org/jboss/jca/web/WARDeployment.java 2010-03-03 09:12:48 UTC (rev 101761)
@@ -23,8 +23,10 @@
package org.jboss.jca.web;
import org.jboss.jca.fungal.deployers.Deployment;
+import org.jboss.jca.fungal.util.FileUtil;
import java.io.Closeable;
+import java.io.File;
import java.io.IOException;
import java.net.URL;
@@ -46,6 +48,9 @@
/** The handler */
private Handler handler;
+ /** The temporary directory */
+ private File tmpDirectory;
+
/** The classloader */
private ClassLoader cl;
@@ -53,12 +58,14 @@
* Constructor
* @param archive The archive
* @param handler The handler
+ * @param tmpDirectory The temporary directory
* @param cl The classloader for the deployment
*/
- public WARDeployment(URL archive, Handler handler, ClassLoader cl)
+ public WARDeployment(URL archive, Handler handler, File tmpDirectory, ClassLoader cl)
{
this.archive = archive;
this.handler = handler;
+ this.tmpDirectory = tmpDirectory;
this.cl = cl;
}
@@ -87,6 +94,21 @@
{
log.debug("Undeploying: " + archive.toExternalForm());
+ if (handler != null)
+ {
+ try
+ {
+ handler.stop();
+ }
+ catch (Exception e)
+ {
+ // Ignore
+ }
+
+ handler.destroy();
+ handler = null;
+ }
+
if (cl != null && cl instanceof Closeable)
{
try
@@ -99,6 +121,19 @@
}
}
+ if (tmpDirectory != null && tmpDirectory.exists())
+ {
+ try
+ {
+ FileUtil fu = new FileUtil();
+ fu.recursiveDelete(tmpDirectory);
+ }
+ catch (IOException ioe)
+ {
+ // Ignore
+ }
+ }
+
log.info("Undeployed: " + archive.toExternalForm());
}
}
More information about the jboss-cvs-commits
mailing list