Author: rmannibucau
Date: Tue Oct 7 18:22:52 2014
New Revision: 1629942
URL: http://svn.apache.org/r1629942
Log:
better delete strategy for arquillian archives and respect
isSingleDumpByArchiveName
Modified:
tomee/tomee/branches/tomee-1.7.x/arquillian/arquillian-tomee-common/src/main/java/org/apache/openejb/arquillian/common/TomEEContainer.java
tomee/tomee/branches/tomee-1.7.x/arquillian/arquillian-tomee-embedded/src/main/java/org/apache/openejb/arquillian/embedded/EmbeddedTomEEContainer.java
Modified:
tomee/tomee/branches/tomee-1.7.x/arquillian/arquillian-tomee-common/src/main/java/org/apache/openejb/arquillian/common/TomEEContainer.java
URL:
http://svn.apache.org/viewvc/tomee/tomee/branches/tomee-1.7.x/arquillian/arquillian-tomee-common/src/main/java/org/apache/openejb/arquillian/common/TomEEContainer.java?rev=1629942&r1=1629941&r2=1629942&view=diff
==============================================================================
---
tomee/tomee/branches/tomee-1.7.x/arquillian/arquillian-tomee-common/src/main/java/org/apache/openejb/arquillian/common/TomEEContainer.java
(original)
+++
tomee/tomee/branches/tomee-1.7.x/arquillian/arquillian-tomee-common/src/main/java/org/apache/openejb/arquillian/common/TomEEContainer.java
Tue Oct 7 18:22:52 2014
@@ -279,14 +279,14 @@ public abstract class TomEEContainer<Con
}
if (appInfo != null) {
- moduleIds.put(archiveName, new DeployedApp(appInfo.path,
file.getParentFile()));
+ moduleIds.put(archiveName, new DeployedApp(appInfo.path,
file));
Files.deleteOnExit(file); // "i" folder
} else {
LOGGER.severe("appInfo was not found for " +
file.getPath() + ", available are: " + apps());
throw new OpenEJBException("can't get appInfo");
}
} catch (final OpenEJBException re) { // clean up in undeploy
needs it
- moduleIds.put(archiveName, new DeployedApp(file.getPath(),
file.getParentFile()));
+ moduleIds.put(archiveName, new DeployedApp(file.getPath(),
file));
throw re;
}
@@ -353,7 +353,7 @@ public abstract class TomEEContainer<Con
if (file.exists()) {
size = file.length();
}
- finalArchive.as(ZipExporter.class).exportTo(file, true);
+ finalArchive.as(ZipExporter.class).exportTo(file,
configuration.isSingleDumpByArchiveName());
if (size > 0 && size != file.length()) {
LOGGER.warning("\nFile overwritten but size doesn't match: (now) "
+ file.length() + "/(before) " + size + " name="+
file.getName()
@@ -445,13 +445,18 @@ public abstract class TomEEContainer<Con
} finally {
if (deployed != null &&
!configuration.isSingleDumpByArchiveName()) {
LOGGER.info("cleaning " + deployed.file.getAbsolutePath());
- Files.tryTodelete(deployed.file); // "i" folder
+ Files.delete(deployed.file); // "i" folder
final File pathFile = new File(deployed.path);
if (!deployed.path.equals(deployed.file.getAbsolutePath()) &&
pathFile.exists()) {
LOGGER.info("cleaning " + pathFile);
Files.delete(pathFile);
}
+ final File parentFile = deployed.file.getParentFile();
+ final File[] parentChildren = parentFile.listFiles();
+ if (parentChildren == null || parentChildren.length == 0) {
+ Files.delete(deployed.file.getParentFile());
+ }
}
}
}
Modified:
tomee/tomee/branches/tomee-1.7.x/arquillian/arquillian-tomee-embedded/src/main/java/org/apache/openejb/arquillian/embedded/EmbeddedTomEEContainer.java
URL:
http://svn.apache.org/viewvc/tomee/tomee/branches/tomee-1.7.x/arquillian/arquillian-tomee-embedded/src/main/java/org/apache/openejb/arquillian/embedded/EmbeddedTomEEContainer.java?rev=1629942&r1=1629941&r2=1629942&view=diff
==============================================================================
---
tomee/tomee/branches/tomee-1.7.x/arquillian/arquillian-tomee-embedded/src/main/java/org/apache/openejb/arquillian/embedded/EmbeddedTomEEContainer.java
(original)
+++
tomee/tomee/branches/tomee-1.7.x/arquillian/arquillian-tomee-embedded/src/main/java/org/apache/openejb/arquillian/embedded/EmbeddedTomEEContainer.java
Tue Oct 7 18:22:52 2014
@@ -167,12 +167,12 @@ public class EmbeddedTomEEContainer exte
throw new DeploymentException("Unable to undeploy", e);
}
final File file = ARCHIVES.remove(archive);
- final File folder = new File(file.getParentFile(),
file.getName().substring(0, file.getName().length() - 4));
- if (folder.exists()) {
- Files.delete(folder);
- }
- Files.delete(file);
if (!configuration.isSingleDumpByArchiveName()) {
+ final File folder = new File(file.getParentFile(),
file.getName().substring(0, file.getName().length() - 4));
+ if (folder.exists()) {
+ Files.delete(folder);
+ }
+ Files.delete(file);
final File parentFile = file.getParentFile();
final File[] parentChildren = parentFile.listFiles();
if (parentChildren == null || parentChildren.length == 0) {