Framework Provisions
Dependent Properties
The target
property has a number of dependent
properties. A Property
is also a PropertyChangeListener
whose implementation is set via a delegate using the method setPropertyChangeListenerDelegate(
. When a target property value changes, it fires itw own delegate and the delegates of its dependent properties in turn. This provide enough opportunity to place controller code either in one place at the delegate of the target property or have it distributed over delegates of dependent properties. In the latter case, the target property name (which is UID) should be used to identify the event source.PropertyChangeListener
)
Console and GUI Properties
GUI properties let the user interact with job properties by changing the default values. User-friendly controls are provided to aid in this process. However, every GUI property is a wrapper around one or more console properties. Moreover, multiple GUI properties may work together to modify a set of console properties. Eventually, the user interaction leads to a set of console properties that runs the job. That set of console properties will also run the job from a console. The GUI helps in creating these console properties in a consistent manner. This relieves the user from being familiear with the underlying libraries and framework conventions. The framework provides support for communication between GUI and Console properties. The key areas are discussed below.
Silent Properties
Silent properties do not have any corresponding GUI part but are essential for the console properties. As such, their default value is not edited. Thus they are included in
ComboProperty
.getConsoleProps()
but skipped in ComboProperty
.getGUIProps()
. Use cases include 1) supplying the builder delegate classes 2) dummy values for some builders. Method ComboProperty.addSilentProperty(String key, String value)
can be used to add ey and values for the silent property.