Create an RFC for integrating CAL-web into BalticLSC #41
Labels
complexity: medium
P2
Medium priority
scope: BalticLSC integration
Issues related to integrating with the BalticLSC system
thesis-required
Issue must be closed to complete the thesis
Milestone
Let's create a proposal for how to integrate CAL-web into BalticLSC.
Roughly:
On the Development Shelf page, there will be a new button next to Edit Diagram. Clicking this button will
Ask the BalticLSC backend for the model structure of that diagram.
The model structure should include:
DeclaredDataPin
s of the diagramUnitCall
sComputationUnitRelease
s (could be the same shape as in the toolbox)DataFlow
s betweenDataPin
sSend it to the CAL-web backend.
CAL-web backend will:
At this point, the BalticLSC frontend can show the Sirius Web frontend.
Sirius Web frontend will allow editing only that project. There will be no buttons to go to "Projects" page.
The BalticLSC frontend must pass the authentiation token to the Sirius Web frontend, so it can fetch the contents of the user's toolbox.
Sirius Web frontend must be notified when the authentication token is refreshed.
The user modifies the diagram.
They have access to their toolbox, similarly to the existing BalticLSC diagram editor.
They get validation messages using Sirius Web validations (see the model validation project for more information).
Once the user is done with editing the diagram, they can click "Save".
This instructs one of the frontends (either BalticLSC or Sirius Web - to be decided) to send the serialized model structure to the BalticLSC frontend. It will persist the model in the BalticLSC database.
When the user leaves the Sirius Web frontend, it sends a request to Sirius Web backend to remove the project.
This way the database is not pollutted with leftover models.
Opening the same model again will start the process from point 1. There is no caching of models to avoid having to synchronize both backends.
It would be great to draw it as a sequence diagram.
The integration itself will most likely be out of scope of the thesis.
Includes
The text was updated successfully, but these errors were encountered: