[Jboss-cvs] JBossAS SVN: r56914 - in projects/microcontainer/trunk/deployers/src/main/org/jboss/deployers/plugins/structure: . vfs
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Sat Sep 16 09:14:55 EDT 2006
Author: adrian at jboss.org
Date: 2006-09-16 09:14:51 -0400 (Sat, 16 Sep 2006)
New Revision: 56914
Modified:
projects/microcontainer/trunk/deployers/src/main/org/jboss/deployers/plugins/structure/AbstractDeploymentContext.java
projects/microcontainer/trunk/deployers/src/main/org/jboss/deployers/plugins/structure/vfs/AbstractStructureDeployer.java
projects/microcontainer/trunk/deployers/src/main/org/jboss/deployers/plugins/structure/vfs/CandidateStructureVisitor.java
Log:
We only want to ignore directories in jars when they are not archives.
Modified: projects/microcontainer/trunk/deployers/src/main/org/jboss/deployers/plugins/structure/AbstractDeploymentContext.java
===================================================================
--- projects/microcontainer/trunk/deployers/src/main/org/jboss/deployers/plugins/structure/AbstractDeploymentContext.java 2006-09-16 13:12:22 UTC (rev 56913)
+++ projects/microcontainer/trunk/deployers/src/main/org/jboss/deployers/plugins/structure/AbstractDeploymentContext.java 2006-09-16 13:14:51 UTC (rev 56914)
@@ -408,6 +408,8 @@
if (child == null)
throw new IllegalArgumentException("Null child");
children.add(child);
+ if (log.isTraceEnabled())
+ log.trace("Adding child " + child.getName() + " to " + getName() + " candidate=" + child.isCandidate());
}
public boolean removeChild(DeploymentContext child)
Modified: projects/microcontainer/trunk/deployers/src/main/org/jboss/deployers/plugins/structure/vfs/AbstractStructureDeployer.java
===================================================================
--- projects/microcontainer/trunk/deployers/src/main/org/jboss/deployers/plugins/structure/vfs/AbstractStructureDeployer.java 2006-09-16 13:12:22 UTC (rev 56913)
+++ projects/microcontainer/trunk/deployers/src/main/org/jboss/deployers/plugins/structure/vfs/AbstractStructureDeployer.java 2006-09-16 13:14:51 UTC (rev 56914)
@@ -51,7 +51,7 @@
* Add all children as candidates
*
* @param parent the parent context
- * @param ignoreDirectories whether to ignore directories
+ * @param ignoreDirectories whether to ignore directories that are not archives
* @throws Exception for any error
*/
protected void addAllChildren(DeploymentContext parent, boolean ignoreDirectories) throws Exception
@@ -60,9 +60,7 @@
throw new IllegalArgumentException("Null parent");
VisitorAttributes attributes = VisitorAttributes.DEFAULT;
- if (ignoreDirectories)
- attributes = VisitorAttributes.NO_DIRECTORIES;
- CandidateStructureVisitor visitor = new CandidateStructureVisitor(parent, attributes);
+ CandidateStructureVisitor visitor = new CandidateStructureVisitor(parent, attributes, ignoreDirectories);
VirtualFile root = parent.getRoot();
root.visit(visitor);
Modified: projects/microcontainer/trunk/deployers/src/main/org/jboss/deployers/plugins/structure/vfs/CandidateStructureVisitor.java
===================================================================
--- projects/microcontainer/trunk/deployers/src/main/org/jboss/deployers/plugins/structure/vfs/CandidateStructureVisitor.java 2006-09-16 13:12:22 UTC (rev 56913)
+++ projects/microcontainer/trunk/deployers/src/main/org/jboss/deployers/plugins/structure/vfs/CandidateStructureVisitor.java 2006-09-16 13:14:51 UTC (rev 56914)
@@ -21,8 +21,11 @@
*/
package org.jboss.deployers.plugins.structure.vfs;
+import java.io.IOException;
+
import org.jboss.deployers.plugins.structure.AbstractDeploymentContext;
import org.jboss.deployers.spi.structure.DeploymentContext;
+import org.jboss.logging.Logger;
import org.jboss.virtual.VirtualFile;
import org.jboss.virtual.VisitorAttributes;
import org.jboss.virtual.plugins.vfs.helpers.AbstractVirtualFileVisitor;
@@ -35,11 +38,17 @@
*/
public class CandidateStructureVisitor extends AbstractVirtualFileVisitor
{
+ /** The log */
+ private static final Logger log = Logger.getLogger(CandidateStructureVisitor.class);
+
/** The parent deployment context */
private final DeploymentContext parent;
/** The meta data location */
private final String metaDataPath;
+
+ /** Ignore directories */
+ private boolean ignoreDirectories;
/**
* Create a new CandidateStructureVisitor.
@@ -49,7 +58,7 @@
*/
public CandidateStructureVisitor(DeploymentContext parent)
{
- this(parent, null);
+ this(parent, null, false);
}
/**
@@ -57,9 +66,10 @@
*
* @param parent the parent
* @param attributes the attributes
+ * @param ignoreDirectories whether to ignore directories
* @throws IllegalArgumentException for a null parent
*/
- public CandidateStructureVisitor(DeploymentContext parent, VisitorAttributes attributes)
+ public CandidateStructureVisitor(DeploymentContext parent, VisitorAttributes attributes, boolean ignoreDirectories)
{
super(attributes);
if (parent == null)
@@ -70,6 +80,7 @@
metaDataPath = metaDataLocation.getPathName();
else
metaDataPath = null;
+ this.ignoreDirectories = ignoreDirectories;
}
public void visit(VirtualFile virtualFile)
@@ -90,6 +101,17 @@
// Exclude the meta data location
if (metaDataPath != null && virtualFile.getPathName().startsWith(metaDataPath))
return null;
+
+ try
+ {
+ if (ignoreDirectories && virtualFile.isDirectory() && virtualFile.isArchive() == false)
+ return null;
+ }
+ catch (IOException e)
+ {
+ log.debug("Ignoring " + virtualFile + " reason=" + e);
+ return null;
+ }
return new AbstractDeploymentContext(virtualFile, true, parent);
}
More information about the jboss-cvs-commits
mailing list