[jboss-svn-commits] JBoss Common SVN: r3935 - in shrinkwrap/trunk/impl-base/src/main/java/org/jboss/shrinkwrap/impl/base: container and 1 other directory.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Wed Jan 20 13:32:37 EST 2010
Author: ALRubinger
Date: 2010-01-20 13:32:37 -0500 (Wed, 20 Jan 2010)
New Revision: 3935
Modified:
shrinkwrap/trunk/impl-base/src/main/java/org/jboss/shrinkwrap/impl/base/URLPackageScanner.java
shrinkwrap/trunk/impl-base/src/main/java/org/jboss/shrinkwrap/impl/base/container/ContainerBase.java
Log:
[SHRINKWRAP-90] Apply patch from lightguard_jp (Jason Porter) to perform assertions instead of throwing NPE
Modified: shrinkwrap/trunk/impl-base/src/main/java/org/jboss/shrinkwrap/impl/base/URLPackageScanner.java
===================================================================
--- shrinkwrap/trunk/impl-base/src/main/java/org/jboss/shrinkwrap/impl/base/URLPackageScanner.java 2010-01-19 21:10:36 UTC (rev 3934)
+++ shrinkwrap/trunk/impl-base/src/main/java/org/jboss/shrinkwrap/impl/base/URLPackageScanner.java 2010-01-20 18:32:37 UTC (rev 3935)
@@ -56,18 +56,26 @@
private final Set<Class<?>> classes = new HashSet<Class<?>>();
- public URLPackageScanner(Package pkg, boolean addRecursively, ClassLoader classLoader)
+ /**
+ * Factory method to create an instance of URLPackageScanner.
+ * @param pkg Package that will be scanned
+ * @param addRecursively flag to add child packages
+ * @param classLoader class loader that will have classes added
+ * @return new instance of URLPackageScanner
+ */
+ public static URLPackageScanner newInstance(Package pkg, boolean addRecursively, ClassLoader classLoader)
{
- this(pkg.getName(), addRecursively, classLoader);
+ Validate.notNull(pkg, "Pkg must be specified");
+ Validate.notNull(pkg.getName(), "Pkg must have a name");
+ Validate.notNull(addRecursively, "AddRecursively must be specified");
+ Validate.notNull(classLoader, "ClassLoader must be specified");
+
+ return new URLPackageScanner(pkg, addRecursively, classLoader);
}
- public URLPackageScanner(String packageName, boolean addRecursively, ClassLoader classLoader)
+ private URLPackageScanner(Package pkg, boolean addRecursively, ClassLoader classLoader)
{
- Validate.notNull(packageName, "PackageName must be specified");
- Validate.notNull(addRecursively, "AddRecursively must be specified");
- Validate.notNull(classLoader, "ClassLoader must be specified");
-
- this.packageName = packageName;
+ this.packageName = pkg.getName();
this.packageNamePath = packageName.replace(".", "/");
this.addRecursively = addRecursively;
this.classLoader = classLoader;
@@ -172,4 +180,4 @@
scanPackage();
return classes;
}
-}
\ No newline at end of file
+}
Modified: shrinkwrap/trunk/impl-base/src/main/java/org/jboss/shrinkwrap/impl/base/container/ContainerBase.java
===================================================================
--- shrinkwrap/trunk/impl-base/src/main/java/org/jboss/shrinkwrap/impl/base/container/ContainerBase.java 2010-01-19 21:10:36 UTC (rev 3934)
+++ shrinkwrap/trunk/impl-base/src/main/java/org/jboss/shrinkwrap/impl/base/container/ContainerBase.java 2010-01-20 18:32:37 UTC (rev 3935)
@@ -744,7 +744,7 @@
for(Package pack : packages)
{
- URLPackageScanner scanner = new URLPackageScanner(
+ URLPackageScanner scanner = URLPackageScanner.newInstance(
pack, recursive, SecurityActions.getThreadContextClassLoader());
Set<Class<?>> classes = scanner.getClasses();
for(Class<?> clazz : classes)
More information about the jboss-svn-commits
mailing list