Property description
The while stream repeatedly executes its subStream until either a fixed number of repetitions is reached or no new objects are added to the working set during a cycle. Use this to propagate changes through object hierarchies of unknown depth.
The maximum number of iterations is 100. The subStream cannot contain another while step.
Minimal JSON
{
"key": "",
"type": "while",
"subStream": []
}The following example propagates a flag up the object hierarchy, selecting each parent and excluding objects of a specific type via a logical formula, repeating until no new parents are found:
{
"key": "propagate_up",
"type": "while",
"subStream": [
{
"key": "select_parent",
"type": "selectParent",
"keepCurrent": true
},
{
"key": "filter",
"type": "logicalFormula",
"operator": "and",
"clauses": [
{
"type": "objectTypeFilter",
"objectTypeKeys": ["packageKey#object_type"],
"operand": "notIn"
}
]
}
]
}Nested properties
| Property | Description | Values | Mandatory |
|---|---|---|---|
key | Unique key of the stream. | string | Yes |
type | while | string | Yes |
subStream | List of stream steps to execute in each iteration. Cannot contain another while step. | array | Yes |
repeats | Number of times the substream executes. If not specified, the substream repeats until no new objects are added to the working set, up to a maximum of 100 iterations. Must be a positive number between 1 and 100. | integer | No |