Loader (Catalina Internal API Documentation)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
A Loader represents a Java ClassLoader implementation that can be used by a Container to load class files (within a repository associated with the Loader) that are designed to be reloaded upon request, as well as a mechanism to detect whether changes have occurred in the underlying repository.
In order for a Loader
implementation to successfully operate
with a Context
implementation that implements reloading, it
must obey the following constraints:
Lifecycle
so that the Context can indicate
that a new class loader is required.
start()
method must unconditionally create a new
ClassLoader
implementation.
stop()
method must throw away its reference to the
ClassLoader
previously utilized, so that the class loader,
all classes loaded by it, and all objects of those classes, can be
garbage collected.
stop()
to be followed by a call to
start()
on the same Loader
instance.
Context.reload()
method on the owning Context
when a change to one or more of the class files loaded by this class
loader is detected.
Method Summary | |
void |
addPropertyChangeListener(java.beans.PropertyChangeListener listener)
Add a property change listener to this component. |
void |
addRepository(java.lang.String repository)
Add a new repository to the set of repositories for this class loader. |
java.lang.String[] |
findRepositories()
Return the set of repositories defined for this class loader. |
java.lang.ClassLoader |
getClassLoader()
Return the Java class loader to be used by this Container. |
Container |
getContainer()
Return the Container with which this Loader has been associated. |
boolean |
getDelegate()
Return the "follow standard delegation model" flag used to configure our ClassLoader. |
java.lang.String |
getInfo()
Return descriptive information about this Loader implementation and the corresponding version number, in the format <description>/<version> . |
boolean |
getReloadable()
Return the reloadable flag for this Loader. |
boolean |
modified()
Has the internal repository associated with this Loader been modified, such that the loaded classes should be reloaded? |
void |
removePropertyChangeListener(java.beans.PropertyChangeListener listener)
Remove a property change listener from this component. |
void |
setContainer(Container container)
Set the Container with which this Loader has been associated. |
void |
setDelegate(boolean delegate)
Set the "follow standard delegation model" flag used to configure our ClassLoader. |
void |
setReloadable(boolean reloadable)
Set the reloadable flag for this Loader. |
Method Detail |
public java.lang.ClassLoader getClassLoader()
public Container getContainer()
public void setContainer(Container container)
container
- The associated Containerpublic boolean getDelegate()
public void setDelegate(boolean delegate)
delegate
- The new flagpublic java.lang.String getInfo()
<description>/<version>
.
public boolean getReloadable()
public void setReloadable(boolean reloadable)
reloadable
- The new reloadable flagpublic void addPropertyChangeListener(java.beans.PropertyChangeListener listener)
listener
- The listener to addpublic void addRepository(java.lang.String repository)
repository
- Repository to be addedpublic java.lang.String[] findRepositories()
public boolean modified()
public void removePropertyChangeListener(java.beans.PropertyChangeListener listener)
listener
- The listener to remove
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |