# Package com.smartgwt.client.util.workflow

- Interface Summary
  Interface | Description
  --- | ---
  Process.ProcessCallback |

- Class Summary
  Class | Description
  --- | ---
  DecisionGateway | Chooses a next element in a `Process` by evaluating a series of criteria against the `Process.state` and choosing the element associated with the criteria that matched, or a `defaultElement` if none of the criteria match.
  Process | A instance of Process represents a stateful process executing a series of Tasks, which may be: user interactions calls to DataSources (hence: any database or web service) arbitrary code other Processes A Process is stateful in the sense that it maintains `state` across the different tasks that are executed.
  ProcessElement | A ProcessElement is an abstract superclass for elements involved in a `Process`, such as a `Task` or `XORGateway`.
  ProcessSequence | An Array of `ProcessElement`s involved in a `Process`.
  ScriptTask | Task that executes arbitrary code, either synchronous or asynchronous.
  ServiceTask | A ServiceTask is an element of a `Process` which calls a DataSource operation, optionally using part of the `process state` as inputs or storing outputs in the process state.
  StateTask | StateTask can either copy fields of `Process.state` to other fields, or apply hardcoded values to `Process.state` via `value`.
  Task | A Task is an abstract superclass for `Process` and for all Task types that can be involved in a Process, such as a `ServiceTask`.
  UserTask | A task that involves showing a user interface to the end user allowing the user to view and input data and press a button (or do some other UI gesture) to complete the task.
  XORGateway | Chooses one or another next process element based on AdvancedCriteria applied to `Process.state`.