|
||||||||||
| PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES | |||||||||
See:
Description
| Interface Summary | |
|---|---|
| ArtifactFilter | Filter a set of Artifact objects according to some criteria |
| ArtifactFilterListener | |
| InstanceRegistryListener | Implement to be notified of changes to the list of concrete SPI instances maintained by an InstanceRegistry |
| RegistryListener | Implement to listen for cases where an SpiRegistry object is changing, typically due to the runtime deployment of new plugin versions via the Raven repository manager. |
| Class Summary | |
|---|---|
| AbstractArtifactFilter | |
| InstanceRegistry<IType> | Instance registry to sit on top of the SpiRegistry object. |
| LatestVersionFilter | Filters the set of artifacts, removing all but the latest version of each groupId,artifactId pair. |
| LatestVersionFilterTest | |
| Profile | A Profile in this context is a set of Artifacts that are known to work in conjunction with one another. |
| ProfileFactory | A factory class for getting an instance of the Profile of the Taverna components according to the profile xml at the location defined by the system property taverna.profile. |
| ProfileFactoryTest | |
| ProfileTest | |
| SpiRegistry | A typed registry of implementations of a particular Service Provider Interface (SPI). |
| VersionComparatorTest | |
| Exception Summary | |
|---|---|
| InvalidProfileException | Thrown when an attempt is made to construct a Profile from an invalid XML document |
Listeners used to bind to a Repository and provide monitoring of that Repository for implementations of a particular Service Provider Interface (SPI). The untyped SpiRegistry class is created with an interface name (i.e. 'org.my.interface') and scans then monitors the Repository, exposing a list of Class objects corresponding to implementations of that named interface. The strongly typed InstanceRegistry can then be used as a listener on top of the SpiRegistry and will track any changes to the list of available Class objects, creating a single instance of each one and notifying any interested parties that this list has changed.
This package also provides two filtering mechanisms which may be inserted into the SpiRegistry - these allow the list of Artifacts in the Repository to be filtered prior to scanning for SPI implementations, the Profile filter is driven off an XML document specifying a list of Artifacts and the LatestVersionFilter, as the name suggests, removes all but the latest version of any given GroupID / ArtifactID pair.
|
||||||||||
| PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES | |||||||||