WAPI[*] is the API offered by the enactment service for use by client applications, invoked applications, and administration and monitoring applications. WfMC’s lengthy specification (171 pages), which is mostly a catalog of API functions, is devoid of examples. Specifications are provided in three languages: C, CORBA IDL, and COM Automation. The section on C emphasizes the API’s functional breakdown, whereas the IDL and COM chapters provide an object-oriented view. The object-oriented view, depicted in the UML class diagram in Figure 7-5, can help you visualize the overall structure of WAPI.
The main class,
ClientConnection, representing the main
capabilities of WAPI, uses classes
WorkItem, each of which inherits from
WorkflowObject. A process
definition has one or more process instances, which in turn has one or
more activities instances, which can have a work item. The
ToolAgent class creates an
InvokedApplication class to perform the
processing of a particular application invocation.
The main functional components can be broken down into the following categories: connection, process control, activity control, worklist, administration, and application invocation.
The connection category allows an application to connect to and disconnect from a workflow ...