In the context of the AEC Delta Mobility research project, two new endpoints have been implemented on the Speckle server:
- StreamGetDelta.js is similar to the existing StreamDiff.js endpoint (in the sense that one can inspect the created, deleted and common objects between two Streams or revisions), but its reponse matches specifically the AEC Delta Specifications. You can call
- StreamApplyDelta.js enables the application of a delta onto an existing Stream. The delta response resulting from
StreamGetDelta- a diffing between Stream A and Stream B - can be "applied" onto Stream A. In other words, the newly created objects (between both Streams) will be added to Stream A, the deleted objects (between both Streams) will be deleted from Stream A, and the common objects (between both Streams) will remain untouched. As a result, Stream A contains the same objects than Stream B (if the delta has been calculated between both Streams, of course). You can call
The picture below serves just here as illustration. There aren't any implementation of these endpoints on any client yet, so stay tuned for further updates.