ClassPathListener, NameSourcepublic class BshClassPath extends java.lang.Object implements ClassPathListener, NameSource
| Modifier and Type | Class | Description |
|---|---|---|
static class |
BshClassPath.AmbiguousName |
|
static class |
BshClassPath.ClassSource |
|
static class |
BshClassPath.DirClassSource |
|
static class |
BshClassPath.JarClassSource |
|
static interface |
BshClassPath.MappingFeedback |
NameSource.Listener| Constructor | Description |
|---|---|
BshClassPath(java.lang.String name) |
|
BshClassPath(java.lang.String name,
java.net.URL[] urls) |
| Modifier and Type | Method | 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(BshClassPath.MappingFeedback mf) |
|
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) |
Create a proper class name from a messy thing.
|
void |
classPathChanged() |
|
java.lang.String[] |
getAllNames() |
|
static BshClassPath |
getBootClassPath() |
Get the boot path including the lib/rt.jar if possible.
|
java.util.Set |
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 |
getFullPath() |
Get the full path including component paths.
|
java.util.Set |
getPackagesSet() |
Get a list of all of the known packages
|
java.net.URL[] |
getPathComponents() |
Get the path components including any component paths.
|
static BshClassPath |
getUserClassPath() |
A BshClassPath initialized to the user path
from java.class.path
|
static java.net.URL[] |
getUserClassPathComponents() |
|
void |
insureInitialized() |
If the claspath map is not initialized, do it now.
|
protected void |
insureInitialized(boolean topPath) |
|
static boolean |
isArchiveFileName(java.lang.String name) |
|
static boolean |
isClassFileName(java.lang.String name) |
|
static void |
main(java.lang.String[] args) |
|
static java.util.Collection |
removeInnerClassNames(java.util.Collection col) |
Return a new collection without any inner class names
|
void |
removeListener(ClassPathListener l) |
|
void |
setPath(java.net.URL[] urls) |
|
static java.lang.String[] |
splitClassname(java.lang.String classname) |
Split class name into package and name
|
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 java.net.URL[] getPathComponents()
public java.util.Set getClassesForPackage(java.lang.String pack)
public BshClassPath.ClassSource getClassSource(java.lang.String className)
public void insureInitialized()
protected void insureInitialized(boolean topPath)
topPath - indicates that this is the top level classpath
component and it should send the startClassMapping messageprotected java.util.List 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 removeInnerClassNames(java.util.Collection col)
public static java.net.URL[] getUserClassPathComponents()
throws ClassPathException
ClassPathExceptionpublic java.util.Set getPackagesSet()
public void addListener(ClassPathListener l)
public void removeListener(ClassPathListener l)
public static BshClassPath getUserClassPath() throws ClassPathException
ClassPathExceptionpublic static BshClassPath getBootClassPath() throws ClassPathException
ClassPathExceptionpublic static void main(java.lang.String[] args)
throws java.lang.Exception
java.lang.Exceptionpublic java.lang.String toString()
toString in class java.lang.Objectpublic void addNameSourceListener(NameSource.Listener listener)
addNameSourceListener in interface NameSourcepublic static void addMappingFeedback(BshClassPath.MappingFeedback mf)
? 2000 pat@pat.net :-)