The event available for creating event handlers associated with operations
is described below. Review the API
documentation for operation events for more information.
The Execute Operation event is fired whenever an operation execution is requested.
- Conditional logicHost Integrator can internally handle alternative
outcomes of operations. In order to perform conditional navigation, entities
must be defined at each conditional branch point. As an alternative, an event
handler could perform midstream adjustments in the list of commands to issue.
This could decrease the number of entities required to navigate a host application.
- Terminal validationIn some cases, data can be entered from
different sources that may be difficult to validate as a whole. As the first
step in an operation, an event handler can validate the state of the terminal
to detect potential errors before the underlying data causes corruption in
the host data source.
- Automated error recoveryFor known error situations, an event
handler can resolve the error cases in order to reach the desired destination.
For example, some data combinations could cause a keyboard lock that can be
resolved by simply pressing a terminal key.
- Custom error reportingGiven a set of possible error conditions,
an event handler can generate a specific error message that may be more helpful
to a client application than automatically generated error messages.
- Custom synchronizationHost Integrator provides a variety of
means for deciding when a host has finished updating a terminal screen. However,
there are occasions when the synchronization really involves branching logic
based on inputs. The event handler is the only mechanism that supports this
form of terminal-model validation.
The Execute Operation event is required to leave the terminal on a screen recognized
as a valid outcome of the operation. Upon return, the operation iteratively
checks for arrival at a valid destination a valid location is found, an invalid
location is found, or the operation times out.
The default callback for an operation executes the command list, destination
processing, and post-condition logic as defined by the model.
callback processes primary, alternate, and error destinations, waiting for one
of them to be found. This continues until the event times out, the callback-specified
wait interval expires, or a destination is recognized.
Host Integrator does not process terminal input while the event handler is
executing logic. The host data is processed into the terminal only during callbacks
to Host Integrator. At the points where the operation needs to wait for the
host to "catch up," inserting wait events or other callbacks is necessary.