Ein wirklicher Austausch eines bereits versendeten Druckauftrages im Sinne des Austauschs der physikalischen Datei beim Empfänger ist prinzipiell nicht möglich.
Stattdessen wird eine Job-Kopie mit einer neuen ID und einer zusätzlichen Referenz auf den auszutauschenden Job angelegt.
Der schematische Ablauf stellt sich dann in etwa so dar:
Den bestehenden Klassen:
wurden jeweils zwei optionale Felder:
hinzugefügt. Diese Änderungen sind auch in der Service-Definition swagger.json aufgeführt:
Grundsätzlich sollte die Einführung einiger neuer optionaler Felder keine Auwirkungen auf eine bestehende Anwendung haben.
Die Deserialisierung aus dem Json-Format in die Klassen / Objekte der jeweiligen Programmiersprache ignoriert diese Felder in der Regel einfach.
Um allerdings den geänderten Workflow abzubilden, müssen die clientseitig generierten Klassen / Objekte aber entsprechend erweitert werden.
Ein Beispiel für zwei über Referenz-IDs verbundene Jobs könnte in etwa so aussehen:
Die erweiterten Model-Klassen führen entsprechend zu geänderten Rückgaben der folgenden Endpunkte: