MetaProperties for Generic Programs and Generic Beans
Introduction
Different ControlDeviceClass and ClassVersions have different properties.
The MetaProperty class is an attempt to describe the important properties of
each class in a uniform way.
This information can be used by generic programs to decide what to do with
a device of a class that is not known directly by the program.
Initially, the metaproperties will cover the GM classes.
Soon, the FESA classes should be added, and finally,
it would be very useful to implement
metaproperties for SL classes, provided we can group the families in a
reasonable number of more or less homogeneous classes.
Data input with Oracle Forms
The attributes for metaproperties are filled in by the application section with
webform application CONSOLE.
The data are stored in Oracle table
ABC.METAPROPERTIES
The metaproperty records for a controldevice class are identified by a
choice of standard metaproperty names which
indicate the nature and purpose of the property.
They are of following form:
- STAT-MC and STAT-MA: Main Status Control and corresponding Status Acquisition
- STAT-C and STAT-A: Status Control and corresponding Status Acquisition
- VAL-MC and VAL-MA: Main Value Control and corresponding Value Acquisition
- VAL-C and VAL-A: Value Control and corresponding Value Acquisition
- AUX: Auxiliary Value Setting/Acquisition
The MetaProperty attributes can be class data or instance data.
MetaProperty Class Attribute Literals
The data is the same for all instances of the class, irrespective of the class version.
The data are entered in the form as literal strings or numbers.
MetaProperty Instance Attribute References
The value of the metaproperty attribute depends on the ControlDevice instance
or on the class version. The data are entered as references to the place where
the instance data can be found:
- *FieldReference: the attribute is a *reference to a GM or FESA field
where the actual value is stored.
- #PropertyReference: the attribute is a #reference to a GM or FESA
property#item. This should only be used if the value can be changed
in operation or when the value can depend on the cycle type.
Note that the list of attributes is not yet completely settled, but we must at
least keep the useful information in the previous directory service for the
GM devices. These GM metadata have been converted to the new format. The old
GM metadata can now evolve independently as long as they are needed for DBRT
and the old directory service.
Data acquisition with the Java Directory Service
Metaproperty information can be obtained though Directory Service classes.
See the API Javadoc for detailed information.
ControlDeviceClass
Here we can get the MetaProperty object arrays for doing tasks such as:
KNOB, KNOB2, DISPLAY, ALARMS ...
MetaProperty
Here we can get some general data plus the identifiers of the device
properties we have to set or acquire.
DeviceProperty
For obtaining the detailed attributes for a property of a device instance.