Workflow Engine
The workflow engine has four subsystems (see Figure 1):
- Execution control—Instantiates, parameterizes, and executes workflows. Also, it provides a way to access the active workflows to check their status or to cancel them.
- Library manager—Has all the knowledge about the workflow library. It encapsulates input-output operations for other blocks. Workflows can be deployed through JAR files or the SDX directory.
- Persistence control—Manages the state of active workflows to prevent them from losing information after they are started.
- Directory client—Contains information about LDAP servers and schema. (For more information, see SDX Integration Guide, Chapter 3, Overview of LDAP Integration.) The directory client listens to a port specified in the configuration file and receives messages sent by SDX components such as the object state manager (OSM).
On receiving a message, the directory client asks execution control for information about the run-time attributes required for that particular workflow and retrieves their values from the SDX directory. After the directory client retrieves all values, it passes them to execution control. On completion of the workflow, the directory client reports a result.
![]()
Workflow Execution
This section outlines workflow execution.
How a Workflow Is Started
Either Workflow Manager or object state manager (OSM) requests that a workflow be loaded. Execution control loads uses the name of the workflow as a key to load the workflow from the library manager.
Event (Notification)
The directory client requests execution control to execute a workflow with a given name and run-time attributes in response to a request from an SDX component. Then the control instantiates the workflow and gives it a unique ID. Finally, the control sets all run-time attributes and starts the workflow (see Figure 2).
![]()
You input all run-time attributes shown in a screen and then execute the workflow. The results are not forwarded to the SDX directory or any SDX component. Execution control returns a result to Workflow Manager only.