public final class FileTableClassLocator extends BaseClassLocator
FileSetTable
.Modifier and Type | Class and Description |
---|---|
static class |
FileTableClassLocator.Type |
EMPTY_COLLECTION, EMPTY_LOCATOR, EMPTY_STRING_ARRAY
Constructor and Description |
---|
FileTableClassLocator(FileSetTable table,
FileTableClassLocator.Type type) |
Modifier and Type | Method and Description |
---|---|
void |
buildIndex()
Instructs this class locator to start building its index for locating
files.
|
void |
buildIndexInterruptibly()
Instructs this class locator to start building its index for locating
files.
|
void |
getAllClasses(java.util.Collection<java.lang.String> out,
ClassNameFilter filter)
Fetch all of the top-level classes that are known by this locator.
|
void |
getAllClassesInterruptibly(java.util.Collection<java.lang.String> out,
ClassNameFilter filter)
Get all of the top-level classes that are known by this locator.
|
void |
getAllPackages(java.util.Collection<java.lang.String> out,
PackageNameFilter filter)
Fetch all of the full packges that are known by this locator.
|
void |
getAllPackagesInterruptibly(java.util.Collection<java.lang.String> out,
PackageNameFilter filter)
Get all of the full packges that are known by this locator.
|
protected java.util.Collection<java.lang.String> |
getClassesDirectly()
Get the top-level classes that are known directly by this class locator,
not including those known to child locators.
|
void |
getClassesInPackage(java.lang.String packagePrefix,
java.util.Collection<java.lang.String> out)
Fetch the list of top-level classes within the given package, adding them
to the out collection provided.
|
void |
getClassesInPackageInterruptibly(java.lang.String packagePrefix,
java.util.Collection<java.lang.String> out)
Get the list of top-level classes within the package.
|
java.net.URL |
getClassURL(java.lang.String fqClassName)
Fetch the URL for the JavaFile for the given fully-qualified Java class
name.
|
java.net.URL |
getClassURLInterruptibly(java.lang.String fqClassName)
Fetch the URL for the JavaFile for the given fully-qualified Java class
name.
|
void |
getPackages(java.lang.String packagePrefix,
java.util.Collection<java.lang.String> out)
Fetch the list of subpackages within the given package, adding them
to the out collection provided.
|
void |
getPackagesInterruptibly(java.lang.String packagePrefix,
java.util.Collection<java.lang.String> out)
Get the list of subpackages within the given package.
|
protected java.util.Collection<java.net.URL> |
getResourcesDirectly(java.lang.String name)
Get the resources with the given name that are known directly by this
class locator, not including those known to child locators.
|
java.net.URL |
getResourceURL(java.lang.String resourceName)
Fetch the URL for the Java resource file given the resource name.
|
java.net.URL |
getSourceURL(java.lang.String fqClassName)
Fetch the URL for the SourceFile for the given fully-qualified Java
class name.
|
java.net.URL |
getSourceURLInterruptibly(java.lang.String fqClassName)
Fetch the URL for the SourceFile for the given fully-qualified Java
class name.
|
java.net.URL |
getURL(java.lang.String fqClassName)
Fetch the URL for the JavaFile for the given fully-qualified Java class
name.
|
java.net.URL |
getURLInterruptibly(java.lang.String fqClassName)
Fetch the URL for the JavaFile for the given fully-qualified Java class
name.
|
addToCollection, buildFQName, checkInterrupt, ensureValid, getAllClasses, getAllClasses, getAllClassesInterruptibly, getAllClassesInterruptibly, getAllPackages, getAllPackages, getAllPackagesInterruptibly, getAllPackagesInterruptibly, getChildLocators, getClassesByName, getClassesByNameInterruptibly, getClassesByPrefix, getClassesByPrefixInterruptibly, getClassesInPackage, getClassesInPackageInterruptibly, getClasspathTreeNode, getNameCascades, getNameParts, getPackages, getPackagesInterruptibly, getResourceURLs, getSourceLocator, getStringArray, visitClasspathTree, visitClasspathTree, visitJavaTypes, visitJavaTypes, visitResources, visitResources
public FileTableClassLocator(FileSetTable table, FileTableClassLocator.Type type)
public void buildIndex()
JavaClassLocator
public void buildIndexInterruptibly() throws java.lang.InterruptedException
JavaClassLocator2
buildIndexInterruptibly
in interface JavaClassLocator2
buildIndexInterruptibly
in class BaseClassLocator
java.lang.InterruptedException
- if the build is interruptedpublic void getPackages(java.lang.String packagePrefix, java.util.Collection<java.lang.String> out)
BaseClassLocator
getPackages
in class BaseClassLocator
packagePrefix
- the package prefix, i.e., "java.io"out
- the collection to add the packagespublic void getPackagesInterruptibly(java.lang.String packagePrefix, java.util.Collection<java.lang.String> out) throws java.lang.InterruptedException
BaseClassLocator
getPackagesInterruptibly
in class BaseClassLocator
packagePrefix
- the package prefixout
- the collection where packages are addedjava.lang.InterruptedException
- if the operation is interruptedpublic void getClassesInPackage(java.lang.String packagePrefix, java.util.Collection<java.lang.String> out)
BaseClassLocator
getClassesInPackage
in class BaseClassLocator
packagePrefix
- the package prefix, i.e., "java.io"out
- the collection to add the class namespublic void getClassesInPackageInterruptibly(java.lang.String packagePrefix, java.util.Collection<java.lang.String> out) throws java.lang.InterruptedException
BaseClassLocator
getClassesInPackageInterruptibly
in class BaseClassLocator
packagePrefix
- the package prefixout
- the collection where packages are addedjava.lang.InterruptedException
- if the operation is interruptedpublic void getAllClasses(java.util.Collection<java.lang.String> out, ClassNameFilter filter)
BaseClassLocator
getAllClasses
in class BaseClassLocator
out
- the collection to add the fully-qualified class namesfilter
- the class name filter to usepublic void getAllClassesInterruptibly(java.util.Collection<java.lang.String> out, ClassNameFilter filter) throws java.lang.InterruptedException
BaseClassLocator
getAllClassesInterruptibly
in class BaseClassLocator
out
- the collection where fully qualified class names are addedfilter
- the class name filter to usejava.lang.InterruptedException
- if the operation is interruptedprotected java.util.Collection<java.lang.String> getClassesDirectly()
BaseClassLocator
getClassesDirectly
in class BaseClassLocator
protected java.util.Collection<java.net.URL> getResourcesDirectly(java.lang.String name)
BaseClassLocator
getResourcesDirectly
in class BaseClassLocator
name
- the resource namepublic void getAllPackages(java.util.Collection<java.lang.String> out, PackageNameFilter filter)
BaseClassLocator
getAllPackages
in class BaseClassLocator
out
- the collection to add the full package namesfilter
- the package name filter to usepublic void getAllPackagesInterruptibly(java.util.Collection<java.lang.String> out, PackageNameFilter filter) throws java.lang.InterruptedException
BaseClassLocator
getAllPackagesInterruptibly
in class BaseClassLocator
out
- the collection where package names are addedfilter
- the package name filter to usejava.lang.InterruptedException
- if the operation is interruptedpublic java.net.URL getURL(java.lang.String fqClassName)
JavaClassLocator
fqClassName
- the fully-qualified class name in dotted notation,
i.e., java.util.Listpublic java.net.URL getURLInterruptibly(java.lang.String fqClassName) throws java.lang.InterruptedException
JavaClassLocator2
getURLInterruptibly
in interface JavaClassLocator2
getURLInterruptibly
in class BaseClassLocator
fqClassName
- the fully-qualified class name in dotted notation,
i.e., java.util.Listjava.lang.InterruptedException
- if the operation is interruptedpublic java.net.URL getSourceURL(java.lang.String fqClassName)
JavaClassLocator
fqClassName
- the fully-qualified class name in dotted notationpublic java.net.URL getSourceURLInterruptibly(java.lang.String fqClassName) throws java.lang.InterruptedException
JavaClassLocator2
getSourceURLInterruptibly
in interface JavaClassLocator2
getSourceURLInterruptibly
in class BaseClassLocator
fqClassName
- the fully-qualified class name in dotted notationjava.lang.InterruptedException
- if the operation is interruptedpublic java.net.URL getClassURL(java.lang.String fqClassName)
JavaClassLocator
fqClassName
- the fully-qualified class name in dotted notationpublic java.net.URL getClassURLInterruptibly(java.lang.String fqClassName) throws java.lang.InterruptedException
JavaClassLocator2
getClassURLInterruptibly
in interface JavaClassLocator2
getClassURLInterruptibly
in class BaseClassLocator
fqClassName
- the fully-qualified class name in dotted notationjava.lang.InterruptedException
- if the operation is interruptedpublic java.net.URL getResourceURL(java.lang.String resourceName)
JavaResourceLocator
resourceName
- the full name of the resource including any file
extensions