APT Design Issues: Plug-in Tools

How would a new tool be added to this infrastructure?

Java Tools

The new tool would have to implement the tool interface. It would need to register with the APT environment, unless running stand-alone. Registering will give it access to the APT Data Model that other tools are using. If the new tool needs for a DataObject to have a property or perform an operation that is not part of the Data Model, there are two options. The Data Model can be updated to add the new functionality. Or the DataObject in question could be subclassed to provide the additional functionality. Observatory specific functionality should be implemented in this way, allowing the Data Model to remain as generic as possible. One method of doing this is to include interfaces in the data model for most of the base objects which include the majority of operations and properties of those objects.

Legacy systems

A tool interface must still be implemented in Java and the tool registered with the Environment. The properties and operations to be implemented by the system still need to be added to the Data Model as above. The tool object can act as a wrapper to exec a process to run the system if it is not going to include live connections to objects in the system. However, if a live connection is desired, a CORBA proxy object must be created for the tool and for all data objects that are to use the system to implement some functionality.

(Last updated 02/11/2000 by Rob Douglas)