[jboss-cvs] JBossAS SVN: r102659 - projects/scanning/trunk/plugins/src/main/java/org/jboss/scanning/hibernate.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Fri Mar 19 22:31:40 EDT 2010


Author: alesj
Date: 2010-03-19 22:31:40 -0400 (Fri, 19 Mar 2010)
New Revision: 102659

Modified:
   projects/scanning/trunk/plugins/src/main/java/org/jboss/scanning/hibernate/ScannerImpl.java
Log:
Add additions.

Modified: projects/scanning/trunk/plugins/src/main/java/org/jboss/scanning/hibernate/ScannerImpl.java
===================================================================
--- projects/scanning/trunk/plugins/src/main/java/org/jboss/scanning/hibernate/ScannerImpl.java	2010-03-20 01:44:41 UTC (rev 102658)
+++ projects/scanning/trunk/plugins/src/main/java/org/jboss/scanning/hibernate/ScannerImpl.java	2010-03-20 02:31:40 UTC (rev 102659)
@@ -24,6 +24,7 @@
 
 import java.io.File;
 import java.io.IOException;
+import java.io.InputStream;
 import java.lang.annotation.Annotation;
 import java.net.URISyntaxException;
 import java.net.URL;
@@ -96,8 +97,61 @@
       }
    }
 
+   Package loadPackage(String pckg)
+   {
+      return loadClass(pckg + "/package-info").getPackage();
+   }
+
+   void addPackage(URL url, String pckg)
+   {
+      Set<Package> pckgs = packages.get(url);
+      if (pckgs == null)
+      {
+         pckgs = new HashSet<Package>();
+         packages.put(url, pckgs);
+      }
+      pckgs.add(loadPackage(pckg));
+   }
+
+   void addClass(URL url, Class<? extends Annotation> annotation, String clazz)
+   {
+      Map<Class<? extends Annotation>, Set<String>> map = classes.get(url);
+      if (map == null)
+      {
+         map = new HashMap<Class<? extends Annotation>, Set<String>>();
+         classes.put(url, map);
+      }
+      Set<String> cls = map.get(annotation);
+      if (cls == null)
+      {
+         cls = new HashSet<String>();
+         map.put(annotation, cls);
+      }
+      cls.add(clazz);
+   }
+
+   void addFile(URL url, String pattern, String name, InputStream is)
+   {
+      Map<String, Set<NamedInputStream>> map = files.get(url);
+      if (map == null)
+      {
+         map = new HashMap<String, Set<NamedInputStream>>();
+         files.put(url, map);
+      }
+      Set<NamedInputStream> nims = map.get(pattern);
+      if (nims == null)
+      {
+         nims = new HashSet<NamedInputStream>();
+         map.put(pattern, nims);
+      }
+      nims.add(new NamedInputStream(name, is));
+   }
+
    public void merge(ScannerImpl subHandle)
    {
+      packages.putAll(subHandle.getPackages());
+      classes.putAll(subHandle.getClasses());
+      files.putAll(subHandle.getFiles());
    }
 
    public Set<Package> getPackagesInJar(URL jartoScan, Set<Class<? extends Annotation>> annotationsToLookFor)
@@ -124,7 +178,7 @@
                module.getExcludedExport());
          for (String path : pckgs)
          {
-            Package pck = loadClass(path + "/package-info").getPackage();
+            Package pck = loadPackage(path);
             p.add(pck);
          }
 
@@ -250,7 +304,7 @@
 
    public Set<NamedInputStream> getFilesInClasspath(URL jartoScan, Set<String> filePatterns)
    {
-      throw new AssertionFailure("Not implemented");
+      throw new RuntimeException("Not yet implemented");
    }
 
    public String getUnqualifiedJarName(URL jarUrl)
@@ -275,4 +329,19 @@
    {
       this.cacheNewResults = cacheNewResults;
    }
+
+   Map<URL, Set<Package>> getPackages()
+   {
+      return packages;
+   }
+
+   Map<URL, Map<Class<? extends Annotation>, Set<String>>> getClasses()
+   {
+      return classes;
+   }
+
+   Map<URL, Map<String, Set<NamedInputStream>>> getFiles()
+   {
+      return files;
+   }
 }




More information about the jboss-cvs-commits mailing list