Skip to content
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

Support for multiple modules #230

Closed
eneufeld opened this issue Jul 8, 2022 · 0 comments · Fixed by #231
Closed

Support for multiple modules #230

eneufeld opened this issue Jul 8, 2022 · 0 comments · Fixed by #231
Labels
enhancement New feature or request modelserver EMF.cloud Model Server

Comments

@eneufeld
Copy link
Contributor

eneufeld commented Jul 8, 2022

I have a use case where I want to be able multiple modelservers standalone as well as run them as one bis model server.

Currently the modelserver expects to have exactly one module that extends the ModelServerModule.
Also many of the services are singletons. These services cannot be overriden then and need to be unified manually.

I currently see 2 ways of doing it:

  • use private modules which only expose the ModelController using the file extension they support as annotation. This might be problematic for glsp integration where we need to handle multiple resources. Unfortunately a private module cannot add to a multibinding directly. There are workarounds but the elements need to be manually retrieved and pushed into the multibinding.
  • instead of registring codecs in a map using the format, use a provider that also takes the modeluri into account. This probably solves most of the requirements but some special cases would need to be unified manually or also extracted to multibindings.
@eneufeld eneufeld added enhancement New feature or request modelserver EMF.cloud Model Server labels Jul 8, 2022
eneufeld added a commit to eneufeld/emfcloud-modelserver that referenced this issue Jul 8, 2022
Currently Codecs are only registered using the format they support.
This is not enough if different codecs are needed for the same
format but different models.
The new API uses a CodecProvider that can be used with a bazaar pattern
so that the best fitting CodecProvider can be retrieved.

Fix eclipse-emfcloud#230
@ndoschek ndoschek added this to New in EMFCloud via automation Jul 8, 2022
eneufeld added a commit to eneufeld/emfcloud-modelserver that referenced this issue Jul 8, 2022
Currently Codecs are only registered using the format they support.
This is not enough if different codecs are needed for the same
format but different models.
The new API uses a CodecProvider that can be used with a bazaar pattern
so that the best fitting CodecProvider can be retrieved.

Fix eclipse-emfcloud#230
eneufeld added a commit to eneufeld/emfcloud-modelserver that referenced this issue Jul 19, 2022
Currently Codecs are only registered using the format they support.
This is not enough if different codecs are needed for the same
format but different models.
The new API uses a CodecProvider that can be used with a bazaar pattern
so that the best fitting CodecProvider can be retrieved.

Fix eclipse-emfcloud#230
@eneufeld eneufeld moved this from New to Current Sprint in EMFCloud Jul 21, 2022
cdamus pushed a commit that referenced this issue Jul 28, 2022
Currently Codecs are only registered using the format they support.
This is not enough if different codecs are needed for the same
format but different models.
The new API uses a CodecProvider that can be used with a bazaar pattern
so that the best fitting CodecProvider can be retrieved.

Fix #230
EMFCloud automation moved this from Current Sprint to Done Jul 28, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request modelserver EMF.cloud Model Server
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant