In the UI tasks should be ordered by priority. This allows reordering of tasks by switching priority and it enables connectors to create additional tasks that should be run before or after the connector.
Tasks created via the UI should always have a priority of (task.id * 100) + 50.
Dependent tasks which should be triggered before the main task should have a priority of (mainTask.id * 100) - 49...1
Dependent tasks which should be triggered after the main task should have a priority of (mainTask.id * 100) + 1...49
Tasks that should always run at the beginning of a process (bootstrap tasks) should have a priority of (task.id * -100) - 1...99
Tasks that should always run at the end of a process (finally tasks) should have a priority of (task.id * 100.000) + 1...99
Based on the rules above the UI can group tasks and should make sure that always the complete task group is reordered. Also tasks with a priority greater than 100.000 should not be included in reordering.
In the UI tasks should be ordered by priority. This allows reordering of tasks by switching priority and it enables connectors to create additional tasks that should be run before or after the connector.
Based on the rules above the UI can group tasks and should make sure that always the complete task group is reordered. Also tasks with a priority greater than 100.000 should not be included in reordering.