See: Description
| Interface | Description |
|---|---|
| Modifiable |
This interface is used by the Monitor section so that we can test if a
resource is modified by an external source.
|
| Monitor |
The Monitor is used to actively check a set of resources to see if they have
changed.
|
| Monitorable |
Describes an object which can be monitored.
|
| Class | Description |
|---|---|
| ActiveMonitor |
The ActiveMonitor is used to actively check a set of resources to see if they have
changed.
|
| DirectoryResource |
This is a Resource that monitors a directory.
|
| FileResource |
Managed File based Resource.
|
| MonitorableURLSource |
This adds the
Monitorable interface to the URLSource. |
| MonitorUtil |
A class that contains a few utility methods for working
creating resource sets from Avalons configuration objects.
|
| PassiveMonitor |
The PassiveMonitor is used to passively check a set of resources to see if they have
changed.
|
| Resource |
Managed Resource.
|
| ResourceOutputStream |
Managed Stream.
|
| ResourceWriter |
Managed Writer.
|
| SourceResource | |
| StreamResource |
Managed Stream based Resource.
|
The org.apache.avalon.excalibur.monitor package contains interfaces and classes
for resource monitoring. The design is sufficiently modular to allow for different implementations of the
monitoring strategies, and resource types. A FileResource is included for your convenience.
In order to receive notification that a resource has been modified, you must implement the
java.beans.PropertyChangeListener interface. You will be notified with a
java.beans.PropertyChangeEvent where the property name is "last-modified".
Because the PropertyChangeEvent works with Objects, you must recast the Object returned
into a java.lang.Long object. From there you can derive the previously modified
time as well as the current modified time.