[jboss-cvs] JBossAS SVN: r105484 - in projects/jboss-deployers/trunk: deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/helpers and 3 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Tue Jun 1 11:17:45 EDT 2010


Author: alesj
Date: 2010-06-01 11:17:43 -0400 (Tue, 01 Jun 2010)
New Revision: 105484

Added:
   projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/helpers/AbstractNameIgnoreMechanism.java
   projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/helpers/DelegateNameIgnoreMechanism.java
   projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/helpers/DummyNameIgnoreMechanism.java
   projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/matchers/LazyPath.java
Modified:
   projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/helpers/AbstractParsingDeployerWithOutput.java
   projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/helpers/CollectionNameIgnoreMechanism.java
   projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/helpers/PatternNameIgnoreMechanism.java
   projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/helpers/TopNameIgnoreMechanism.java
   projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/matchers/NameIgnoreMechanism.java
   projects/jboss-deployers/trunk/deployers-vfs-spi/src/main/java/org/jboss/deployers/vfs/spi/deployer/AbstractVFSParsingDeployer.java
   projects/jboss-deployers/trunk/deployers-vfs/src/test/java/org/jboss/test/deployers/vfs/matchers/support/SingleNIM.java
   projects/jboss-deployers/trunk/pom.xml
Log:
[JBDEPLOY-220]; fix name ignore mechanism.

Added: projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/helpers/AbstractNameIgnoreMechanism.java
===================================================================
--- projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/helpers/AbstractNameIgnoreMechanism.java	                        (rev 0)
+++ projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/helpers/AbstractNameIgnoreMechanism.java	2010-06-01 15:17:43 UTC (rev 105484)
@@ -0,0 +1,39 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.deployers.spi.deployer.helpers;
+
+import org.jboss.deployers.spi.deployer.matchers.LazyPath;
+import org.jboss.deployers.spi.deployer.matchers.NameIgnoreMechanism;
+import org.jboss.deployers.structure.spi.DeploymentUnit;
+
+/**
+ * Abstract NIM.
+ *
+ * @author <a href="mailto:ales.justin at jboss.org">Ales Justin</a>
+ */
+public abstract class AbstractNameIgnoreMechanism implements NameIgnoreMechanism
+{
+   public boolean ignorePath(DeploymentUnit unit, LazyPath path)
+   {
+      return ignorePath(unit, path.buildPath());
+   }
+}
\ No newline at end of file

Modified: projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/helpers/AbstractParsingDeployerWithOutput.java
===================================================================
--- projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/helpers/AbstractParsingDeployerWithOutput.java	2010-06-01 14:46:11 UTC (rev 105483)
+++ projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/helpers/AbstractParsingDeployerWithOutput.java	2010-06-01 15:17:43 UTC (rev 105484)
@@ -57,7 +57,10 @@
 
    /** Should the ManagedObjects be created for the output metadata */
    private boolean buildManagedObject = false;
-   
+
+   /** The name ignore mechanism */
+   private NameIgnoreMechanism nameIgnoreMechanism = DelegateNameIgnoreMechanism.INSTANCE;
+
    /**
     * Create a new AbstractParsingDeployerWithOutput.
     * 
@@ -205,6 +208,21 @@
    }
 
    /**
+    * Get name ignore mechanism.
+    *
+    * @return the name ignore mechanism
+    */
+   public NameIgnoreMechanism getNameIgnoreMechanism()
+   {
+      return nameIgnoreMechanism;
+   }
+
+   public void setNameIgnoreMechanism(NameIgnoreMechanism nameIgnoreMechanism)
+   {
+      this.nameIgnoreMechanism = nameIgnoreMechanism;
+   }
+
+   /**
     * A flag indicating whether createMetaData should execute a parse even if a non-null metadata value exists.
     * 
     * @return false if a parse should be performed only if there is no existing metadata value. True indicates
@@ -379,8 +397,7 @@
     */
    protected boolean ignoreName(DeploymentUnit unit, String name)
    {
-      NameIgnoreMechanism mechanism = unit.getAttachment(NameIgnoreMechanism.class);
-      return mechanism != null && mechanism.ignoreName(unit, name);
+      return nameIgnoreMechanism != null && nameIgnoreMechanism.ignoreName(unit, name);
    }
 
    /**

Modified: projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/helpers/CollectionNameIgnoreMechanism.java
===================================================================
--- projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/helpers/CollectionNameIgnoreMechanism.java	2010-06-01 14:46:11 UTC (rev 105483)
+++ projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/helpers/CollectionNameIgnoreMechanism.java	2010-06-01 15:17:43 UTC (rev 105484)
@@ -23,7 +23,6 @@
 
 import java.util.Collection;
 
-import org.jboss.deployers.spi.deployer.matchers.NameIgnoreMechanism;
 import org.jboss.deployers.structure.spi.DeploymentUnit;
 
 /**
@@ -31,7 +30,7 @@
  *
  * @author <a href="mailto:ales.justin at jboss.org">Ales Justin</a>
  */
-public class CollectionNameIgnoreMechanism implements NameIgnoreMechanism
+public class CollectionNameIgnoreMechanism extends AbstractNameIgnoreMechanism
 {
    private final Collection<String> ignoredNames;
    private final Collection<String> ignoredPaths;

Copied: projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/helpers/DelegateNameIgnoreMechanism.java (from rev 104761, projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/helpers/TopNameIgnoreMechanism.java)
===================================================================
--- projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/helpers/DelegateNameIgnoreMechanism.java	                        (rev 0)
+++ projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/helpers/DelegateNameIgnoreMechanism.java	2010-06-01 15:17:43 UTC (rev 105484)
@@ -0,0 +1,94 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.deployers.spi.deployer.helpers;
+
+import org.jboss.deployers.spi.deployer.matchers.LazyPath;
+import org.jboss.deployers.spi.deployer.matchers.NameIgnoreMechanism;
+import org.jboss.deployers.structure.spi.DeploymentUnit;
+
+/**
+ * Delegate NIM.
+ *
+ * @author <a href="mailto:ales.justin at jboss.org">Ales Justin</a>
+ */
+public class DelegateNameIgnoreMechanism implements NameIgnoreMechanism
+{
+   public static final NameIgnoreMechanism INSTANCE = new DelegateNameIgnoreMechanism();
+
+   private boolean reportCycle;
+
+   /**
+    * Prepare deployment unit.
+    * e.g. might watch only top.
+    *
+    * @param unit the current deployment unit
+    * @return unit from which we check
+    */
+   protected DeploymentUnit adjustDeploymentUnit(DeploymentUnit unit)
+   {
+      return unit;
+   }
+
+   /**
+    * Get NIM delegate.
+    *
+    * @param unit the current deployment
+    * @return delegate NIM or null if not found or cyclic
+    */
+   protected NameIgnoreMechanism getDelegate(DeploymentUnit unit)
+   {
+      DeploymentUnit adjustedUnit = adjustDeploymentUnit(unit);
+      NameIgnoreMechanism delegate = adjustedUnit.getAttachment(NameIgnoreMechanism.class);
+      if (delegate == this && reportCycle)
+         throw new IllegalArgumentException("Cyclic invocation: " + this);
+
+      return delegate != this ? delegate : null;
+   }
+
+   public boolean ignoreName(DeploymentUnit unit, String name)
+   {
+      NameIgnoreMechanism delegate = getDelegate(unit);
+      return delegate != null && delegate.ignoreName(unit, name);
+   }
+
+   public boolean ignorePath(DeploymentUnit unit, String path)
+   {
+      NameIgnoreMechanism delegate = getDelegate(unit);
+      return delegate != null && delegate.ignorePath(unit, path);
+   }
+
+   public boolean ignorePath(DeploymentUnit unit, LazyPath path)
+   {
+      NameIgnoreMechanism delegate = getDelegate(unit);
+      return delegate != null && delegate.ignorePath(unit, path);
+   }
+
+   /**
+    * Should we report error on cyclic usage.
+    *
+    * @param reportCycle the report error flag
+    */
+   public void setReportCycle(boolean reportCycle)
+   {
+      this.reportCycle = reportCycle;
+   }
+}
\ No newline at end of file

Copied: projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/helpers/DummyNameIgnoreMechanism.java (from rev 104761, projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/helpers/TopNameIgnoreMechanism.java)
===================================================================
--- projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/helpers/DummyNameIgnoreMechanism.java	                        (rev 0)
+++ projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/helpers/DummyNameIgnoreMechanism.java	2010-06-01 15:17:43 UTC (rev 105484)
@@ -0,0 +1,45 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.deployers.spi.deployer.helpers;
+
+import org.jboss.deployers.spi.deployer.matchers.NameIgnoreMechanism;
+import org.jboss.deployers.structure.spi.DeploymentUnit;
+
+/**
+ * Ignore nothing.
+ *
+ * @author <a href="mailto:ales.justin at jboss.org">Ales Justin</a>
+ */
+public class DummyNameIgnoreMechanism extends AbstractNameIgnoreMechanism
+{
+   public static final NameIgnoreMechanism INSTANCE = new DummyNameIgnoreMechanism();
+
+   public boolean ignoreName(DeploymentUnit unit, String name)
+   {
+      return false;
+   }
+
+   public boolean ignorePath(DeploymentUnit unit, String path)
+   {
+      return false;
+   }
+}
\ No newline at end of file

Modified: projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/helpers/PatternNameIgnoreMechanism.java
===================================================================
--- projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/helpers/PatternNameIgnoreMechanism.java	2010-06-01 14:46:11 UTC (rev 105483)
+++ projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/helpers/PatternNameIgnoreMechanism.java	2010-06-01 15:17:43 UTC (rev 105484)
@@ -24,7 +24,6 @@
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 
-import org.jboss.deployers.spi.deployer.matchers.NameIgnoreMechanism;
 import org.jboss.deployers.structure.spi.DeploymentUnit;
 
 /**
@@ -32,7 +31,7 @@
  *
  * @author <a href="mailto:ales.justin at jboss.org">Ales Justin</a>
  */
-public class PatternNameIgnoreMechanism implements NameIgnoreMechanism
+public class PatternNameIgnoreMechanism extends AbstractNameIgnoreMechanism
 {
    private Pattern ignored;
    private boolean match;

Modified: projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/helpers/TopNameIgnoreMechanism.java
===================================================================
--- projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/helpers/TopNameIgnoreMechanism.java	2010-06-01 14:46:11 UTC (rev 105483)
+++ projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/helpers/TopNameIgnoreMechanism.java	2010-06-01 15:17:43 UTC (rev 105484)
@@ -21,7 +21,6 @@
  */
 package org.jboss.deployers.spi.deployer.helpers;
 
-import org.jboss.deployers.spi.deployer.matchers.NameIgnoreMechanism;
 import org.jboss.deployers.structure.spi.DeploymentUnit;
 
 /**
@@ -29,47 +28,11 @@
  *
  * @author <a href="mailto:ales.justin at jboss.org">Ales Justin</a>
  */
-public class TopNameIgnoreMechanism implements NameIgnoreMechanism
+public class TopNameIgnoreMechanism extends DelegateNameIgnoreMechanism
 {
-   private boolean reportCycle;
-
-   /**
-    * Get top NIM.
-    *
-    * @param unit the current deployment
-    * @return top NIM or null if not found / top unit
-    */
-   protected NameIgnoreMechanism getTop(DeploymentUnit unit)
+   @Override
+   protected DeploymentUnit adjustDeploymentUnit(DeploymentUnit unit)
    {
-      if (unit.isTopLevel())
-         if (reportCycle)
-            throw new IllegalArgumentException("Potential cyclic usage: " + unit);
-         else
-            return null;
-
-      DeploymentUnit top = unit.getTopLevel();
-      return top.getAttachment(NameIgnoreMechanism.class);
+      return unit.getTopLevel();
    }
-
-   public boolean ignoreName(DeploymentUnit unit, String name)
-   {
-      NameIgnoreMechanism top = getTop(unit);
-      return top != null && top.ignoreName(unit, name);
-   }
-
-   public boolean ignorePath(DeploymentUnit unit, String path)
-   {
-      NameIgnoreMechanism top = getTop(unit);
-      return top != null && top.ignorePath(unit, path);
-   }
-
-   /**
-    * Should we report error on cyclic usage.
-    *
-    * @param reportCycle the report error flag
-    */
-   public void setReportCycle(boolean reportCycle)
-   {
-      this.reportCycle = reportCycle;
-   }
 }
\ No newline at end of file

Copied: projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/matchers/LazyPath.java (from rev 104761, projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/matchers/NameIgnoreMechanism.java)
===================================================================
--- projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/matchers/LazyPath.java	                        (rev 0)
+++ projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/matchers/LazyPath.java	2010-06-01 15:17:43 UTC (rev 105484)
@@ -0,0 +1,37 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.deployers.spi.deployer.matchers;
+
+/**
+ * Build the path lazily.
+ *
+ * @author <a href="mailto:ales.justin at jboss.org">Ales Justin</a>
+ */
+public interface LazyPath
+{
+   /**
+    * Get the actual path, lazily.
+    *
+    * @return the actual path
+    */
+   String buildPath();
+}
\ No newline at end of file

Modified: projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/matchers/NameIgnoreMechanism.java
===================================================================
--- projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/matchers/NameIgnoreMechanism.java	2010-06-01 14:46:11 UTC (rev 105483)
+++ projects/jboss-deployers/trunk/deployers-spi/src/main/java/org/jboss/deployers/spi/deployer/matchers/NameIgnoreMechanism.java	2010-06-01 15:17:43 UTC (rev 105484)
@@ -47,4 +47,16 @@
     * @return true if we should ignore this path, false otherwise
     */
    boolean ignorePath(DeploymentUnit unit, String path);
+
+   /**
+    * Do we ignore this relative path.
+    * 
+    * Building a path might be expensive, hence the lazy path interface,
+    * as we can mostly short circuit before we actually need the real path.
+    *
+    * @param unit the deployment unit
+    * @param path the lazy path builder
+    * @return true if we should ignore this path, false otherwise
+    */
+   boolean ignorePath(DeploymentUnit unit, LazyPath path);
 }

Modified: projects/jboss-deployers/trunk/deployers-vfs/src/test/java/org/jboss/test/deployers/vfs/matchers/support/SingleNIM.java
===================================================================
--- projects/jboss-deployers/trunk/deployers-vfs/src/test/java/org/jboss/test/deployers/vfs/matchers/support/SingleNIM.java	2010-06-01 14:46:11 UTC (rev 105483)
+++ projects/jboss-deployers/trunk/deployers-vfs/src/test/java/org/jboss/test/deployers/vfs/matchers/support/SingleNIM.java	2010-06-01 15:17:43 UTC (rev 105484)
@@ -22,13 +22,13 @@
 
 package org.jboss.test.deployers.vfs.matchers.support;
 
-import org.jboss.deployers.spi.deployer.matchers.NameIgnoreMechanism;
+import org.jboss.deployers.spi.deployer.helpers.AbstractNameIgnoreMechanism;
 import org.jboss.deployers.structure.spi.DeploymentUnit;
 
 /**
  * @author <a href="mailto:ales.justin at jboss.org">Ales Justin</a>
  */
-public class SingleNIM implements NameIgnoreMechanism
+public class SingleNIM extends AbstractNameIgnoreMechanism
 {
    private String ignore;
 

Modified: projects/jboss-deployers/trunk/deployers-vfs-spi/src/main/java/org/jboss/deployers/vfs/spi/deployer/AbstractVFSParsingDeployer.java
===================================================================
--- projects/jboss-deployers/trunk/deployers-vfs-spi/src/main/java/org/jboss/deployers/vfs/spi/deployer/AbstractVFSParsingDeployer.java	2010-06-01 14:46:11 UTC (rev 105483)
+++ projects/jboss-deployers/trunk/deployers-vfs-spi/src/main/java/org/jboss/deployers/vfs/spi/deployer/AbstractVFSParsingDeployer.java	2010-06-01 15:17:43 UTC (rev 105484)
@@ -27,6 +27,7 @@
 
 import org.jboss.deployers.spi.DeploymentException;
 import org.jboss.deployers.spi.deployer.helpers.AbstractParsingDeployerWithOutput;
+import org.jboss.deployers.spi.deployer.matchers.LazyPath;
 import org.jboss.deployers.spi.deployer.matchers.NameIgnoreMechanism;
 import org.jboss.deployers.spi.structure.MetaDataTypeFilter;
 import org.jboss.deployers.structure.spi.DeploymentUnit;
@@ -211,13 +212,19 @@
     * @param file the file
     * @return true if we should ignore the file, false otherwise
     */
-   protected boolean ignoreFile(VFSDeploymentUnit unit, VirtualFile file)
+   protected boolean ignoreFile(final VFSDeploymentUnit unit, final VirtualFile file)
    {
-      NameIgnoreMechanism mechanism = unit.getAttachment(NameIgnoreMechanism.class);
+      NameIgnoreMechanism mechanism = getNameIgnoreMechanism();
       if (mechanism != null)
       {
-         VirtualFile root = unit.getRoot();
-         String path = file.getPathNameRelativeTo(root);
+         LazyPath path = new LazyPath()
+         {
+            public String buildPath()
+            {
+               VirtualFile root = unit.getRoot();
+               return file.getPathNameRelativeTo(root);
+            }
+         };
          return mechanism.ignorePath(unit, path);
       }
       return false;

Modified: projects/jboss-deployers/trunk/pom.xml
===================================================================
--- projects/jboss-deployers/trunk/pom.xml	2010-06-01 14:46:11 UTC (rev 105483)
+++ projects/jboss-deployers/trunk/pom.xml	2010-06-01 15:17:43 UTC (rev 105484)
@@ -3,7 +3,7 @@
   <parent>
     <groupId>org.jboss</groupId>
     <artifactId>jboss-parent</artifactId>
-    <version>4</version>
+    <version>5</version>
   </parent>
   <groupId>org.jboss.deployers</groupId>
   <artifactId>jboss-deployers-parent</artifactId>
@@ -28,7 +28,7 @@
     <version.jboss.mdr>2.2.0.Alpha3</version.jboss.mdr>
     <version.jboss.kernel>2.2.0.Alpha10</version.jboss.kernel>
     <version.jboss.classloader>2.2.0.Alpha5</version.jboss.classloader>
-    <version.jboss.scanning>1.0.0.Alpha1</version.jboss.scanning>
+    <version.jboss.scanning>1.0.0-SNAPSHOT</version.jboss.scanning>
     <version.jboss.classloading.spi>6.0.0-Alpha8</version.jboss.classloading.spi>
     <version.jboss.common.core>2.2.17.GA</version.jboss.common.core>
     <version.jboss.logging.spi>2.2.0.CR1</version.jboss.logging.spi>




More information about the jboss-cvs-commits mailing list