[jboss-cvs] JBossAS SVN: r104023 - in projects/scanning/trunk: testsuite/src/test/java/org/jboss/test/scanning/indexer/test and 1 other directory.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Thu Apr 15 16:05:49 EDT 2010


Author: alesj
Date: 2010-04-15 16:05:48 -0400 (Thu, 15 Apr 2010)
New Revision: 104023

Modified:
   projects/scanning/trunk/scanning-spi/src/main/java/org/jboss/scanning/spi/helpers/ScanningPluginWrapper.java
   projects/scanning/trunk/testsuite/src/test/java/org/jboss/test/scanning/indexer/test/IndexerRuntimeTestCase.java
Log:
More tests and fixed wrapper recursion.

Modified: projects/scanning/trunk/scanning-spi/src/main/java/org/jboss/scanning/spi/helpers/ScanningPluginWrapper.java
===================================================================
--- projects/scanning/trunk/scanning-spi/src/main/java/org/jboss/scanning/spi/helpers/ScanningPluginWrapper.java	2010-04-15 19:35:50 UTC (rev 104022)
+++ projects/scanning/trunk/scanning-spi/src/main/java/org/jboss/scanning/spi/helpers/ScanningPluginWrapper.java	2010-04-15 20:05:48 UTC (rev 104023)
@@ -39,7 +39,7 @@
 public class ScanningPluginWrapper<T extends ScanningHandle, U> implements ScanningPlugin<T, U>
 {
    private ScanningPlugin<T, U> delegate;
-   private List<URL> excudedUrls = CollectionsFactory.createLazyList();
+   private List<String> excudedPaths = CollectionsFactory.createLazyList();
 
    public ScanningPluginWrapper(ScanningPlugin<T, U> delegate)
    {
@@ -48,7 +48,7 @@
 
    void addURL(URL url)
    {
-      excudedUrls.add(url);
+      excudedPaths.add(url.getPath());
    }
 
    public T createHandle()
@@ -78,20 +78,14 @@
 
    public ResourceFilter getRecurseFilter()
    {
-      return delegate.getRecurseFilter();
+      if (excudedPaths.isEmpty())
+         return delegate.getRecurseFilter();
+      else
+         return new ExcludedPathsFilter();
    }
 
    public boolean accepts(ResourceContext resource)
    {
-      URL url = resource.getUrl();
-      String urlString = url.toString();
-      for (URL exceluded : excudedUrls)
-      {
-         String path = exceluded.getPath();
-         if (urlString.contains(path))
-            return false;
-      }
-
       return delegate.accepts(resource);
    }
 
@@ -104,4 +98,19 @@
    {
       delegate.visit(resource);
    }
+
+   private class ExcludedPathsFilter implements ResourceFilter
+   {
+      public boolean accepts(ResourceContext resource)
+      {
+         URL url = resource.getUrl();
+         String urlString = url.toString();
+         for (String exceluded : excudedPaths)
+         {
+            if (urlString.contains(exceluded))
+               return false;
+         }
+         return delegate.accepts(resource);
+      }
+   }
 }
\ No newline at end of file

Modified: projects/scanning/trunk/testsuite/src/test/java/org/jboss/test/scanning/indexer/test/IndexerRuntimeTestCase.java
===================================================================
--- projects/scanning/trunk/testsuite/src/test/java/org/jboss/test/scanning/indexer/test/IndexerRuntimeTestCase.java	2010-04-15 19:35:50 UTC (rev 104022)
+++ projects/scanning/trunk/testsuite/src/test/java/org/jboss/test/scanning/indexer/test/IndexerRuntimeTestCase.java	2010-04-15 20:05:48 UTC (rev 104023)
@@ -23,7 +23,9 @@
 package org.jboss.test.scanning.indexer.test;
 
 import javax.persistence.Entity;
+import javax.persistence.PrePersist;
 
+import java.lang.reflect.Method;
 import java.net.URL;
 import java.util.Set;
 
@@ -69,6 +71,11 @@
       testUsage("defaultpar", false);
    }
 
+   public void testMergeUsage() throws Exception
+   {
+      testUsage("pre-defaultpar", false);
+   }
+
    public void testPreIndexedUsage() throws Exception
    {
       testUsage("pre-defaultpar", true);
@@ -98,6 +105,17 @@
          // annotations
          Set<Element<Entity,Class<?>>> classes = repository.classIsAnnotatedWith(Entity.class);
          assertFalse(classes.isEmpty());
+         for (Element<Entity, Class<?>> elt : classes)
+         {
+            Class<?> clazz = elt.getOwner();
+            assertSame(clazz, elt.getAnnotatedElement());
+         }
+         Set<Element<PrePersist, Method>> methods = repository.classHasMethodAnnotatedWith(PrePersist.class);
+         assertFalse(methods.isEmpty());
+         for (Element<PrePersist, Method> elt : methods)
+         {
+            assertNotNull(elt.getOwner());
+         }
       }
       finally
       {




More information about the jboss-cvs-commits mailing list