public class URLPackageScanner
extends java.lang.Object
URLClassLoader
Modifier and Type | Class and Description |
---|---|
static interface |
URLPackageScanner.Callback
Callback interface for found classes.
|
Modifier and Type | Field and Description |
---|---|
private boolean |
addRecursively |
private URLPackageScanner.Callback |
callback |
private java.lang.ClassLoader |
classLoader |
private static java.util.logging.Logger |
log |
private static java.lang.String |
NAME_EMPTY_PACKAGE
Name of the empty package
|
private java.lang.String |
packageName |
private java.lang.String |
packageNamePath |
Modifier | Constructor and Description |
---|---|
private |
URLPackageScanner(java.lang.String packageName,
boolean addRecursively,
java.lang.ClassLoader classLoader,
URLPackageScanner.Callback callback) |
Modifier and Type | Method and Description |
---|---|
private void |
foundClass(java.lang.String className) |
private void |
handle(java.io.File file,
java.lang.String packageName) |
private void |
handle(java.util.Set<java.lang.String> paths) |
private void |
handleArchiveByFile(java.io.File file) |
private java.util.List<java.net.URL> |
loadResources(java.lang.String name) |
static URLPackageScanner |
newInstance(boolean addRecursively,
java.lang.ClassLoader classLoader,
URLPackageScanner.Callback callback)
Factory method to create an instance of URLPackageScanner in the default package
|
static URLPackageScanner |
newInstance(boolean addRecursively,
java.lang.ClassLoader classLoader,
URLPackageScanner.Callback callback,
java.lang.String packageName)
Factory method to create an instance of URLPackageScanner.
|
void |
scanPackage() |
private static final java.util.logging.Logger log
private static final java.lang.String NAME_EMPTY_PACKAGE
private final java.lang.String packageName
private final java.lang.String packageNamePath
private final boolean addRecursively
private final java.lang.ClassLoader classLoader
private URLPackageScanner.Callback callback
private URLPackageScanner(java.lang.String packageName, boolean addRecursively, java.lang.ClassLoader classLoader, URLPackageScanner.Callback callback)
public static URLPackageScanner newInstance(boolean addRecursively, java.lang.ClassLoader classLoader, URLPackageScanner.Callback callback, java.lang.String packageName)
addRecursively
- flag to add child packagesclassLoader
- class loader that will have classes addedpkg
- Package that will be scannedpublic static URLPackageScanner newInstance(boolean addRecursively, java.lang.ClassLoader classLoader, URLPackageScanner.Callback callback)
pkg
- Package that will be scannedaddRecursively
- flag to add child packagesclassLoader
- class loader that will have classes addedpublic void scanPackage()
private void handleArchiveByFile(java.io.File file) throws java.io.IOException, java.lang.ClassNotFoundException
java.io.IOException
java.lang.ClassNotFoundException
private void handle(java.util.Set<java.lang.String> paths) throws java.io.IOException, java.lang.ClassNotFoundException
java.io.IOException
java.lang.ClassNotFoundException
private void handle(java.io.File file, java.lang.String packageName) throws java.lang.ClassNotFoundException
java.lang.ClassNotFoundException
private void foundClass(java.lang.String className)
private java.util.List<java.net.URL> loadResources(java.lang.String name) throws java.io.IOException
java.io.IOException