public class BshClassPath extends java.lang.Object implements ClassPathListener, NameSource
| Modifier and Type | Class and Description |
|---|---|
static class |
BshClassPath.AmbiguousName |
static class |
BshClassPath.ClassSource |
static class |
BshClassPath.DirClassSource |
static class |
BshClassPath.GeneratedClassSource |
static class |
BshClassPath.JarClassSource |
static class |
BshClassPath.JrtClassSource |
NameSource.Listener| Constructor and Description |
|---|
BshClassPath(java.lang.String name) |
BshClassPath(java.lang.String name,
java.net.URL[] urls) |
| Modifier and Type | Method and Description |
|---|---|
void |
add(java.net.URL url) |
void |
add(java.net.URL[] urls) |
void |
addComponent(BshClassPath bcp)
Add the specified BshClassPath as a component of our path.
|
void |
addListener(ClassPathListener l) |
static void |
addMappingFeedback(bsh.classpath.BshClassPath.MappingFeedback mf)
Add a mapping feedback callback class.
|
void |
addNameSourceListener(NameSource.Listener listener)
Implements NameSource
Add a listener who is notified upon changes to names in this space.
|
static java.lang.String |
canonicalizeClassName(java.lang.String name) |
void |
classPathChanged() |
static java.net.URL[] |
expand(java.net.URL[] urls) |
java.lang.String[] |
getAllNames() |
static BshClassPath |
getBootClassPath() |
java.util.Set<java.lang.String> |
getClassesForPackage(java.lang.String pack)
Return the set of class names in the specified package
including all component paths.
|
java.lang.String |
getClassNameByUnqName(java.lang.String name)
Support for super import "*";
Get the full name associated with the unqualified name in this
classpath.
|
BshClassPath.ClassSource |
getClassSource(java.lang.String className)
Return the source of the specified class which may lie in component
path.
|
protected java.util.List<java.net.URL> |
getFullPath()
Get the full path including component paths.
|
java.util.List<NameSource.Listener> |
getNameSourceListeners()
Get the name source listeners list.
|
java.util.Set<java.lang.String> |
getPackagesSet()
Get a list of all of the known packages
|
java.net.URL[] |
getPathComponents()
Get the path components including any component paths.
|
bsh.classpath.BshClassPath.UnqualifiedNameTable |
getUnqNameTable()
Get the unqualified name table.
|
static BshClassPath |
getUserClassPath() |
static java.net.URL[] |
getUserClassPathComponents() |
void |
insureInitialized()
If the claspath map is not initialized, do it now.
|
protected void |
insureInitialized(boolean topPath)
This is the top level classpath component.
|
static boolean |
isArchiveFileName(java.lang.String name) |
static boolean |
isClassFileName(java.lang.String name) |
boolean |
isMapsInitialized()
Whether map is initialized.
|
boolean |
isNameCompletionIncludesUnqNames()
Whether name completion includes unqualified names.
|
static java.util.Collection<java.lang.String> |
removeInnerClassNames(java.util.Collection<java.lang.String> col)
Return a new collection without any inner class names
|
void |
removeListener(ClassPathListener l) |
void |
setClassSource(java.lang.String className,
BshClassPath.ClassSource cs)
Explicitly set a class source.
|
void |
setMapsInitialized(boolean mapsInitialized)
Change whether map is initialized.
|
void |
setNameCompletionIncludesUnqNames(boolean nameCompletionIncludesUnqNames)
Change whether name completion includes unqualified names.
|
void |
setNameSourceListeners(java.util.List<NameSource.Listener> nameSourceListeners)
Change the name source listeners list.
|
void |
setPath(java.net.URL[] urls) |
void |
setUnqNameTable(bsh.classpath.BshClassPath.UnqualifiedNameTable unqNameTable)
Change the unqualified name table.
|
static java.lang.String[] |
splitClassname(java.lang.String classname) |
java.lang.String |
toString() |
public BshClassPath(java.lang.String name)
public BshClassPath(java.lang.String name,
java.net.URL[] urls)
public void setPath(java.net.URL[] urls)
public void addComponent(BshClassPath bcp)
public void add(java.net.URL[] urls)
public void add(java.net.URL url)
throws java.io.IOException
java.io.IOExceptionpublic static java.net.URL[] expand(java.net.URL[] urls)
public java.net.URL[] getPathComponents()
public java.util.Set<java.lang.String> getClassesForPackage(java.lang.String pack)
public BshClassPath.ClassSource getClassSource(java.lang.String className)
public void setClassSource(java.lang.String className,
BshClassPath.ClassSource cs)
public void insureInitialized()
protected void insureInitialized(boolean topPath)
topPath - the start Class Mapping messageprotected java.util.List<java.net.URL> getFullPath()
public java.lang.String getClassNameByUnqName(java.lang.String name)
throws ClassPathException
ClassPathExceptionpublic java.lang.String[] getAllNames()
getAllNames in interface NameSourcepublic void classPathChanged()
classPathChanged in interface ClassPathListenerpublic static boolean isClassFileName(java.lang.String name)
public static boolean isArchiveFileName(java.lang.String name)
public static java.lang.String canonicalizeClassName(java.lang.String name)
public static java.lang.String[] splitClassname(java.lang.String classname)
public static java.util.Collection<java.lang.String> removeInnerClassNames(java.util.Collection<java.lang.String> col)
public static java.net.URL[] getUserClassPathComponents()
throws ClassPathException
ClassPathExceptionpublic java.util.Set<java.lang.String> getPackagesSet()
public void addListener(ClassPathListener l)
public void removeListener(ClassPathListener l)
public static BshClassPath getUserClassPath() throws ClassPathException
ClassPathExceptionpublic static BshClassPath getBootClassPath() throws ClassPathException
ClassPathExceptionpublic java.lang.String toString()
toString in class java.lang.Objectpublic void addNameSourceListener(NameSource.Listener listener)
addNameSourceListener in interface NameSourcepublic static void addMappingFeedback(bsh.classpath.BshClassPath.MappingFeedback mf)
mf - the mapping feedback callback listener.public boolean isMapsInitialized()
public void setMapsInitialized(boolean mapsInitialized)
mapsInitialized - the mapsInitialized to setpublic bsh.classpath.BshClassPath.UnqualifiedNameTable getUnqNameTable()
public void setUnqNameTable(bsh.classpath.BshClassPath.UnqualifiedNameTable unqNameTable)
unqNameTable - the unqNameTable to setpublic boolean isNameCompletionIncludesUnqNames()
public void setNameCompletionIncludesUnqNames(boolean nameCompletionIncludesUnqNames)
nameCompletionIncludesUnqNames - the nameCompletionIncludesUnqNames to setpublic java.util.List<NameSource.Listener> getNameSourceListeners()
List<NameSource.Listener> return the nameSourceListenerspublic void setNameSourceListeners(java.util.List<NameSource.Listener> nameSourceListeners)
nameSourceListeners - the nameSourceListeners to set