inputObject
The input object is the top-level container for the Spiral input stream — it is one (or more) of the command objects below. Each command wraps a scheduleObject or another referenced object.
{ "add": ["scheduleObject"], "update": ["scheduleObject"], "coerce": ["scheduleObject"], "delete": ["scheduleObject"], "define": ["defineObject"], "set": ["setObject"], "pause": "pauseObject", "comment": ["string"], "check": ["scheduleObject"], "refute": ["scheduleObject"], "tag": "integer", "include": "includeObject"}Commands
Section titled “Commands”- add — add the following scheduleObject into Spiral.
- update — update the following scheduleObject within Spiral.
- coerce — update a scheduleObject, but where the update includes an assignment to a position in a plan, Spiral is coerced into using that solution for a limited time (set in the stop parameters). Typically used for manual override: the generated plan and its consequences can be displayed briefly before Spiral returns the stops to their optimised position.
- delete — remove the following scheduleObject from Spiral. Only the object’s
idneed be supplied. - define — establish reference data — a defineObject. Submit all definitions before the schedule objects that reference them.
- set — configure properties affecting the current Spiral run — a setObject.
- pause — pause processing until the condition in a pauseObject is reached. Used when constructing test cases; it has no production purpose.
- comment — a documentation string for test scripts; ignored by Spiral.
- check — assert that the scheduleObject’s properties internally match any explicitly referenced
values (test success criteria). For example
{"check":{"project":{"id":1,"stops":{"rid":null}}}}checks that project1is not assigned to any resource. - refute — assert that the scheduleObject’s properties do not match referenced values. For example
{"refute":{"project":{"id":1,"stops":{"rid":null}}}}checks that project1is assigned to a resource. - tag — an integer used to synchronise between Spiral and the host.
- include — switch the input source via an includeObject (e.g. to load parameter files and licence keys), then resume the current input stream.