public interface Loader
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.
Modifier and Type | Method and Description |
---|---|
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.
|
void |
backgroundProcess()
Execute a periodic task, such as reloading, etc.
|
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.
|
void backgroundProcess()
java.lang.ClassLoader getClassLoader()
Container getContainer()
void setContainer(Container container)
container
- The associated Containerboolean getDelegate()
void setDelegate(boolean delegate)
delegate
- The new flagjava.lang.String getInfo()
<description>/<version>
.boolean getReloadable()
void setReloadable(boolean reloadable)
reloadable
- The new reloadable flagvoid addPropertyChangeListener(java.beans.PropertyChangeListener listener)
listener
- The listener to addvoid addRepository(java.lang.String repository)
repository
- Repository to be addedjava.lang.String[] findRepositories()
boolean modified()
void removePropertyChangeListener(java.beans.PropertyChangeListener listener)
listener
- The listener to removeCopyright © 2000-2015 Apache Software Foundation. All Rights Reserved.