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

Consider running backend services as JAR products #456

Closed
ndoschek opened this issue Aug 23, 2022 · 0 comments · Fixed by #457
Closed

Consider running backend services as JAR products #456

ndoschek opened this issue Aug 23, 2022 · 0 comments · Fixed by #457
Assignees
Labels
enhancement New feature or request glsp java Pull requests that update Java code modelserver
Projects

Comments

@ndoschek
Copy link
Contributor

Currently, most backend services run as eclipse products via equinox.
Consider building the services as JAR products to simplify dependency management, build and project structures.

@ndoschek ndoschek added enhancement New feature or request glsp modelserver java Pull requests that update Java code labels Aug 23, 2022
@ndoschek ndoschek added this to New in EMFCloud via automation Aug 23, 2022
@ndoschek ndoschek moved this from New to Current Sprint in EMFCloud Aug 23, 2022
ndoschek added a commit that referenced this issue Sep 7, 2022
#455 Update to Model Server V2 and latest GLSP version
- Migrate Model Server to latest version and to V2

#456 Consider running backend services as JAR products
- Run Model Server product as Java application instead of Eclipse product
  - TODO: Package as standalone JAR
ndoschek added a commit that referenced this issue Sep 7, 2022
#455 Update to Model Server V2 and latest GLSP version
- Migrate GLSP Server to latest version 1.1.0
- Reuse EMF server and modelserver glsp integration code and remove obsolete classes

#456 Consider running backend services as JAR products
- Run GLSP Server product as Java application instead of Eclipse product
  - TODO: Package as standalone JAR
ndoschek added a commit that referenced this issue Sep 7, 2022
#456 Consider running backend services as JAR products
- Run Model Server product as Java application instead of Eclipse product
  - Package as standalone JAR
- Run GLSP Server product as Java application instead of Eclipse product
  - Package as standalone JAR
ndoschek added a commit that referenced this issue Sep 7, 2022
- Move example project 'SuperBrewer3000' to client/workspace and adapt all paths accordingly
- Rename frontend folder to client and adapt all paths
- Update client code to Theia 1.27.0 an current versions of glsp, sprotty and emfcloud components
- Update to newer typescript version and adapt code accordingly
- Update theia plugins to newest compatible versions to ensure cpp and java debugging
- Reuse tsconfig, eslint and prettier configs by eclipse-glsp
- Align build scripts, devDependencies and package.json descriptions
- Fix custom file icons alignment
-  #348 Replace run.sh script with ts-node scripts and yarn scripts
  - Create parent package.json that offers the main build scripts build:server and build:client as well as a convenience script that combines those two
  - Move copying of backend products in the build of the repsonsible client package coffee-servers and replace with ts-node script
  - Move all server backend registrations to coffee-servers package
@ndoschek ndoschek moved this from Current Sprint to In progress in EMFCloud Sep 28, 2022
@ndoschek ndoschek self-assigned this Sep 28, 2022
ndoschek added a commit that referenced this issue Nov 4, 2022
…s as JAR products (#457)

* #455 #456 Update to latest versions and run servers as JAR products

#455 Update to Model Server V2 and latest GLSP version
- Migrate Model Server to latest version and to V2

#456 Consider running backend services as JAR products
- Run Model Server product as Java application instead of Eclipse product
  - TODO: Package as standalone JAR

* #455 #456 Update to latest versions and run servers as JAR products

#455 Update to Model Server V2 and latest GLSP version
- Migrate GLSP Server to latest version 1.1.0
- Reuse EMF server and modelserver glsp integration code and remove obsolete classes

#456 Consider running backend services as JAR products
- Run GLSP Server product as Java application instead of Eclipse product
  - TODO: Package as standalone JAR

* #455 #456 Update to latest versions and run servers as JAR products

#456 Consider running backend services as JAR products
- Run Model Server product as Java application instead of Eclipse product
  - Package as standalone JAR
- Run GLSP Server product as Java application instead of Eclipse product
  - Package as standalone JAR

* #455 #456 Update to latest versions

- Move example project 'SuperBrewer3000' to client/workspace and adapt all paths accordingly
- Rename frontend folder to client and adapt all paths
- Update client code to Theia 1.27.0 an current versions of glsp, sprotty and emfcloud components
- Update to newer typescript version and adapt code accordingly
- Update theia plugins to newest compatible versions to ensure cpp and java debugging
- Reuse tsconfig, eslint and prettier configs by eclipse-glsp
- Align build scripts, devDependencies and package.json descriptions
- Fix custom file icons alignment
-  #348 Replace run.sh script with ts-node scripts and yarn scripts
  - Create parent package.json that offers the main build scripts build:server and build:client as well as a convenience script that combines those two
  - Move copying of backend products in the build of the repsonsible client package coffee-servers and replace with ts-node script
  - Move all server backend registrations to coffee-servers package

* #455 Update Getting Started

- Enhance styling and replace outdated Theia variables
- Structure Java and CPP features in detail sections
- Improve link styling, behaviour and add titles

* Fix leftovers

* Fix ESLint warnings and leftovers

* Update coffee model and use ID attributes for EObjects

* Fix Coffee resource handling

- Remove obsolete coffee codec
- Use basic generated coffee resource implementation
- Remove unused CoffeeModelServerClient

* Fix Coffee commands

- Ensure UUIDs are used as id attributes
- Reuse notation element commands from modelserver-glsp-integration

* Cleanup leftover GLSP glitches

* Cleanup id attribute handling and naming

* Add application branding

* Fix debugging of WorkflowAnalyzerServer

- Clean up start up arguments
- Start wf-analyzer server with arguments to be able to connect from client in debug mode (either start:debug oder launch config external servers)

* Fix diagram editor unsubscribe from Model Server

* Align icons in diagram editor and coffee tree editor

- Align icons for workflow elements in 
  - GLSP tool palette
  - GLSP command palette
  - Theia tree editor

* Adapt coffee model

- Rename RAM member type to ramType to avoid possible overlaps with json attributes $type and type

* Align CSS styling

* Re-enable direct task editing via context menu on Tasks

* Adapt coffee model

* Update coffee-tree-editor

- Update tree node factory and assign actual types and ids to the tree nodes for easier navigation and identification of the tree nodes
- Update commands to new ModelServerCommand structure
- Introduce typescript version of the semantic model (coffee-model) and provide type checks for all coffee model elements
- Update add/remove/edit tree elements either via custom commands (e.g. add/removing nodes and flows), otherwise use json patches for editing

Workarounds:
- To use custom commands for editing, a simple adaptation in the model-server-client-v2 needs to be made (see PR eclipse-emfcloud/emfcloud-modelserver-theia#116), currently, we have a custom modelserver client implementation which should be removed once the PR is merged
- The CoffeeMasterTreeWidget overrides the theia-tree-editor one to be able to select nodes via its unique id. If the tree-editor is updated this custom implementation should be removed again.

* Fix build

- Lover node engine requirement to node 14

* Remove workaround for TheiaModelServerClientV2

- Update modelserver-theia dependency
- Remove custom CoffeeModelServerClient

* Update test resources for AnalyzeWorkflowTest

- Update wfconfig and coffee test resources to match current metamodels

* Fix graphical model comparison

* Revert node colors

For clearer colors during comparison

* Update dockerfile to node 14

* Removed validation questions from ModelServerAccess

I will open a follow up for this.

* Removed "no duplicate GLSP Editor" code

Is no longer needed, as we create files with new URIs during the compare

* Update README

* Update CSS styling

- Update colors for weighted flows
- Merge comparison css rules and add rules for arrow heads
- Align CSS colors of workflow analyser with diagram colors

* Fix ControlUnit child creation in tree-editor

- Ensure element creation of nested components for new ControlUnits
- Add workspace specific Theia settings
  - Disable auto-save for example workspace
- Remove node version restriction (also works with node 16)

* Fix diagram node label edit validation

- Fix label edit validation in GLSP diagram
- Revert node version restriction to `>=14 <16`

* Address Eugen's review comments

- Remove unused variables
- Introduce CSS variables for common colors
- Update README

Co-authored-by: Simon Graband <sgraband@eclipsesource.com>
@ndoschek ndoschek moved this from In progress to Done in EMFCloud Nov 4, 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 glsp java Pull requests that update Java code modelserver
Projects
EMFCloud
  
Done
1 participant