Skip to content

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"
}
  • 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 id need 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 project 1 is 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 project 1 is 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.