How to write a workflow with modifiers?
Jira Legacy | ||||||||
---|---|---|---|---|---|---|---|---|
|
...
Construct | Modifier | Domain | Description | Default | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Workflow |
| |||||||||
Limit | -1..n | The maximum number of workflow instances of the same model waiting at any given time (they are pre-created instances existing in the buffer) | 10 | |||||||
Live | -1..n | The maximum number of workflow instances of the same model allowed to run (in parallel) at the same time. (For example, a workflow receives inputs of X value and Y value and calculates X+Y=Z. When the first X and Y values are received, a workflow instance starts the process of calculation. While the calculation is taking 1 second to complete, a new set of X and Y values are received before the current instance is completed. Therefore a new workflow instance will start calculating X+Y from the new values. These two instances are running in parallel | 10 | |||||||
Timeout | -1..n | The period of time of inactivity after which a workflow instance is considered dead and removed from the buffer. Both XSD time period format and plain number of milliseconds are allowed. Timeout = "-1" means the workflow will never time out. | PT1M | |||||||
Task |
| |||||||||
While | true, false | Logical expression for repeatable tasks (only true/false is currently supported) (if false use variable not streams) | false | |||||||
| ||||||||||
Invoke |
| Invoke | More examples needded here | |||||||
SkipIf (skip-if) | true, false | A logical expression to skip the invoke execution (mutually exclusive with OnlyIf) - the output will be nullNull | ||||||||
OnlyIf (only-if) | true, false | A logical expression to execute invoke conditionally (mutually exclusive with SkipIf) | ||||||||
Delay | Duration | Synonym for of DelayBefore (mutually exclusive with DelayUntil, Timeout) | ||||||||
DelayBefore | Duration | Invoke execution delay interval (delay before invoke starts executing) - Mutually exclusive with Timeout and DelayUntil | ||||||||
DelayAfter | Duration | Time to wait after invoke is completed for before the next invoke in the same task to startstarts | ||||||||
DelayUntil | DateTime | Absolute invoke execution time (Mutually exclusive with DelayBefore and Timeout) | ||||||||
Get | URI | |||||||||
Post | URI | |||||||||
Put | URI | |||||||||
Delete | URI | |||||||||
WaitFor | A logical expression of possibly multiple outputs/events | Timeout | Duration | Invoke type dependent hint. Different invoke types may interpret it differently (Mutually exclusive with Delay and DelayUntil) - only relevant if handler understands it, maybe not be in use currently (synonym of delay), use delay insteadThe output(s)/event(s) that will allow the Invoke to continue. Until the WaitFor is met, the Invoke will be suspended | ||||||
Unless | Name of the Output from another task | Delay termination output/event. | Usually used with timeout/delaydelay. The output/event will terminate the delay and start the Invoke. This can be an event or the output from another task. |