-
Notifications
You must be signed in to change notification settings - Fork 52
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Separate metadata from representations #699
Comments
pcdavid
added a commit
that referenced
this issue
Sep 10, 2021
In almost all locations where we used to return a full Representation (or a concrete Diagram), only expose the new RepresentationMetadata type. The only exception is in the subscription, where we actually *need* the full representation's content. This ensures the underlying's representation content (e.g. the nodes/edges/etc. on a diagram) can not be accessed by the frontend except in the specific case where it is needed. This change is purely on the GraphQL Schema level and does not change anything to which Java objects are loaded/manipulated on the backend. It just makes sure that except for the case of refresh events, only the metadata fields can be requested by and returned to the frontend. Bug: #699 Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid
added a commit
that referenced
this issue
Sep 10, 2021
This is static information that has no reason to be on the diagram itself. Bug: #699 Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid
added a commit
that referenced
this issue
Sep 10, 2021
Bug: #699 Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid
added a commit
that referenced
this issue
Sep 10, 2021
Bug: #699 Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid
added a commit
that referenced
this issue
Sep 10, 2021
Bug: #699 Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid
added a commit
that referenced
this issue
Sep 10, 2021
Bug: #699 Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid
added a commit
that referenced
this issue
Sep 10, 2021
… along with it Bug: #699 Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid
added a commit
that referenced
this issue
Sep 10, 2021
Bug: #699 Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid
added a commit
that referenced
this issue
Sep 10, 2021
Bug: #699 Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid
added a commit
that referenced
this issue
Sep 10, 2021
Bug: #699 Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid
added a commit
that referenced
this issue
Sep 10, 2021
Except for passing it around and putting it into the concrete Diagram data structure, it was not used anywhere as all callers have been migrated to use IRepresentationMetadata.getDescriptionId() instead. Bug: #699 Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid
added a commit
that referenced
this issue
Sep 10, 2021
IReprensentationMetadata.kind replaces it. Note that persistent representations (Diagram and Form) still need a kind field for the moment as it is used by IRepresentationDeserializer.canHandle() to determine which deserializer to use for a given JSON content. Bug: #699 Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid
added a commit
that referenced
this issue
Nov 4, 2021
In almost all locations where we used to return a full Representation (or a concrete Diagram), only expose the new RepresentationMetadata type. The only exception is in the subscription, where we actually *need* the full representation's content. This ensures the underlying's representation content (e.g. the nodes/edges/etc. on a diagram) can not be accessed by the frontend except in the specific case where it is needed. This change is purely on the GraphQL Schema level and does not change anything to which Java objects are loaded/manipulated on the backend. It just makes sure that except for the case of refresh events, only the metadata fields can be requested by and returned to the frontend. Bug: #699 Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid
added a commit
that referenced
this issue
Nov 4, 2021
This is static information that has no reason to be on the diagram itself. Bug: #699 Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid
added a commit
that referenced
this issue
Dec 8, 2021
Bug: #699 Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid
added a commit
that referenced
this issue
Dec 16, 2021
Bug: #699 Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
sbegaudeau
added a commit
that referenced
this issue
Feb 6, 2022
Bug: #699 Signed-off-by: Stéphane Bégaudeau <stephane.begaudeau@obeo.fr>
sbegaudeau
added a commit
that referenced
this issue
Feb 6, 2022
Bug: #699 Signed-off-by: Stéphane Bégaudeau <stephane.begaudeau@obeo.fr>
sbegaudeau
added a commit
that referenced
this issue
Feb 6, 2022
Bug: #699 Signed-off-by: Stéphane Bégaudeau <stephane.begaudeau@obeo.fr>
sbegaudeau
added a commit
that referenced
this issue
Feb 6, 2022
Bug: #699 Signed-off-by: Stéphane Bégaudeau <stephane.begaudeau@obeo.fr>
sbegaudeau
added a commit
that referenced
this issue
Feb 7, 2022
Bug: #699 Signed-off-by: Stéphane Bégaudeau <stephane.begaudeau@obeo.fr>
sbegaudeau
added a commit
that referenced
this issue
Feb 7, 2022
Bug: #699 Signed-off-by: Stéphane Bégaudeau <stephane.begaudeau@obeo.fr>
sbegaudeau
added a commit
that referenced
this issue
Feb 7, 2022
Bug: #699 Signed-off-by: Stéphane Bégaudeau <stephane.begaudeau@obeo.fr>
sbegaudeau
added a commit
that referenced
this issue
Feb 7, 2022
Bug: #699 Signed-off-by: Stéphane Bégaudeau <stephane.begaudeau@obeo.fr>
sbegaudeau
added a commit
that referenced
this issue
Feb 7, 2022
Bug: #699 Signed-off-by: Stéphane Bégaudeau <stephane.begaudeau@obeo.fr>
sbegaudeau
added a commit
that referenced
this issue
Feb 7, 2022
Bug: #699 Signed-off-by: Stéphane Bégaudeau <stephane.begaudeau@obeo.fr>
sbegaudeau
added a commit
that referenced
this issue
Feb 7, 2022
Bug: #699 Signed-off-by: Stéphane Bégaudeau <stephane.begaudeau@obeo.fr>
sbegaudeau
added a commit
that referenced
this issue
Feb 7, 2022
Bug: #699 Signed-off-by: Stéphane Bégaudeau <stephane.begaudeau@obeo.fr>
sbegaudeau
added a commit
that referenced
this issue
Feb 7, 2022
Bug: #699 Signed-off-by: Stéphane Bégaudeau <stephane.begaudeau@obeo.fr>
sbegaudeau
added a commit
that referenced
this issue
Apr 25, 2022
Bug: #699 Signed-off-by: Stéphane Bégaudeau <stephane.begaudeau@obeo.fr>
39 tasks
sbegaudeau
added a commit
that referenced
this issue
Apr 26, 2022
Bug: #699 Signed-off-by: Stéphane Bégaudeau <stephane.begaudeau@obeo.fr>
39 tasks
sbegaudeau
added a commit
that referenced
this issue
May 11, 2022
Bug: #699 Signed-off-by: Stéphane Bégaudeau <stephane.begaudeau@obeo.fr>
sbegaudeau
added a commit
that referenced
this issue
May 11, 2022
Bug: #699 Signed-off-by: Stéphane Bégaudeau <stephane.begaudeau@obeo.fr>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Problem
Our GraphQL API provides too many ways to retrieve a representation. All those APIs are unused and not really useful either. Their existence for us to provide the ability to manipulate a complete representation are various parts of our APIs. Providing only the metadata would be more useful.
Solution
We will replace the manipulation of the representations at various places of our API by their metadata only.
Cutting backs
Rabbit holes
No-gos
Test
Doc
UX/UI
Next
The text was updated successfully, but these errors were encountered: