eclipsesource / eclipsesource/model-compare

Improve extension-server communication

Open
#17 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
TypeScript
Stars
4
Forks
4
PR merge metrics
No merged PRs in 30d

Description

Currently the communication is implemented with custom strings that are parsed by the extension. This should be improved.
List of things that could be improved:

- [ ] Custom class of JSONTreeNode/TreeNodeCollection/JSONCompareResponse/... We definitely should create POJOs based on the EObjects and use an Gson or something similar to serialize objects where necessary instead of using a custom ObjectManager concept.

- [ ] In general we need some documentation as it is not obvious what every field is supposed to do. There is UUID, reference UUID, match, graphical IDs, reference Graphical IDs, connections, etc.

- [ ] Server-Client communication is done through I/O, i.e., System.out read by the client. Partially these are json objects but some information is encoded differently, e.g., the merges are just a concatenated string of type, target, and direction which are manually encoded and decoded. Using a standardized protocol such as JsonRPC would be nicer and simplify communication as Theia already has support for JsonRPC (e.g., forwarding from backend to server etc).

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.