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

Add server side support for rejecting actions #606

Open
tortmayr opened this issue Mar 29, 2022 · 1 comment
Open

Add server side support for rejecting actions #606

tortmayr opened this issue Mar 29, 2022 · 1 comment
Labels

Comments

@tortmayr
Copy link
Contributor

Sprotty (and our base protocol) defines a RejectAction which can be sent as a response the a RequestAction to indicate to the receiver that the request has been rejected/canceled. Currently neither GLSP Server implementation does properly support this reject action feature.

@tortmayr
Copy link
Contributor Author

see also #89

tortmayr added a commit to eclipse-glsp/glsp-server that referenced this issue Sep 12, 2023
- Refactor `ModelSubmissionHandler` to support proper handling of the `RequestModelAction`
as real request action 
- Add support for rejecting request actions
Part-of: eclipse-glsp/glsp#1116
Part-of: eclipse-glsp/glsp#606
tortmayr added a commit to eclipse-glsp/glsp-client that referenced this issue Sep 12, 2023
- Refactor diagram loader to properly dispatch the `RequestModelAction` as request action
   - Remove dispatching of temporary empty set model action and instead call `actionDispatcher.initialize()`  earlier which also dispatches an empty set model action under the hood  
- Rework `ModelInitializationConstraint`
   - Remove coupling with `ActionDispatcher` the initialization state is now controlled by the diagram loader
   - Provide `onInitialized` event and a callback function for on-time invocation `onceInitialized`
   - Provide test cases
- Add `dispatchOnceModelInitialized` utility function to action dispatcher
- Ensure that type hints are  requested after the model has been initialized

Part-of: eclipse-glsp/glsp#1116
Part-of: eclipse-glsp/glsp#606
tortmayr added a commit to eclipse-glsp/glsp-client that referenced this issue Sep 13, 2023
- Refactor diagram loader
   - Remove dispatching of temporary empty set model action and instead call `actionDispatcher.initialize()`   earlier which also dispatches an empty set model action under the hood  
   - Add additional `postModelInitalization` hook for startup services that want execute logic after the model is fully initialized
- Rework `ModelInitializationConstraint`
   - Provide `onInitialized` override that allows sync registration of listener callbacks
   - Refactor `setCompleted` method and remove the possiblity to set the initialized state to false.
     Model initialization is a one-time action. Once initialized there should be no way to "uninitialize" the constraint
   - Provide test cases
- Add `dispatchOnceModelInitialized` utility function to action dispatcher
- Ensure that type hints are  requested after the model has been initialized

Part-of: eclipse-glsp/glsp#1116
Part-of: eclipse-glsp/glsp#606
tortmayr added a commit to eclipse-glsp/glsp-server that referenced this issue Sep 14, 2023
- Refactor `ModelSubmissionHandler` to support proper handling of the `RequestModelAction`
as real request action 
- Add support for rejecting request actions
Part-of: eclipse-glsp/glsp#1116
Part-of: eclipse-glsp/glsp#606
tortmayr added a commit to eclipse-glsp/glsp-server that referenced this issue Sep 15, 2023
- Refactor `ModelSubmissionHandler` to support proper handling of the `RequestModelAction`
as real request action 
- Add support for rejecting request actions
Part-of: eclipse-glsp/glsp#1116
Part-of: eclipse-glsp/glsp#606
tortmayr added a commit to eclipse-glsp/glsp-client that referenced this issue Sep 15, 2023
* GLSP-1116 Revise model loading

- Refactor diagram loader
   - Remove dispatching of temporary empty set model action and instead call `actionDispatcher.initialize()`   earlier which also dispatches an empty set model action under the hood  
   - Add additional `postModelInitalization` hook for startup services that want execute logic after the model is fully initialized
- Rework `ModelInitializationConstraint`
   - Provide `onInitialized` override that allows sync registration of listener callbacks
   - Refactor `setCompleted` method and remove the possiblity to set the initialized state to false.
     Model initialization is a one-time action. Once initialized there should be no way to "uninitialize" the constraint
   - Provide test cases
- Add `dispatchOnceModelInitialized` utility function to action dispatcher
- Ensure that type hints are  requested after the model has been initialized

Part-of: eclipse-glsp/glsp#1116
Part-of: eclipse-glsp/glsp#606

* GLSP-1117: Remove need for explicit definition of client actions

-Extend `initializeClientSession` request to also specific the set of client action kinds. This way the server knows which actions should be sent to the client
-Adapt `GLSPModelSource´ to retrieve the client actions before sending the `initializeClientSession` request
- Add customized `GLSPActionHandlerRegistry` which provides a query method to retrieve all handled action kinds

Part of eclipse-glsp/glsp/issues/1117

* GLSP-1071: Rename ServerStatus/ServerMessage action

Part of eclipse-glsp/glsp#1071
holkerveen pushed a commit to holkerveen/glsp-client that referenced this issue Dec 21, 2024
* GLSP-1116 Revise model loading

- Refactor diagram loader
   - Remove dispatching of temporary empty set model action and instead call `actionDispatcher.initialize()`   earlier which also dispatches an empty set model action under the hood  
   - Add additional `postModelInitalization` hook for startup services that want execute logic after the model is fully initialized
- Rework `ModelInitializationConstraint`
   - Provide `onInitialized` override that allows sync registration of listener callbacks
   - Refactor `setCompleted` method and remove the possiblity to set the initialized state to false.
     Model initialization is a one-time action. Once initialized there should be no way to "uninitialize" the constraint
   - Provide test cases
- Add `dispatchOnceModelInitialized` utility function to action dispatcher
- Ensure that type hints are  requested after the model has been initialized

Part-of: eclipse-glsp/glsp#1116
Part-of: eclipse-glsp/glsp#606

* GLSP-1117: Remove need for explicit definition of client actions

-Extend `initializeClientSession` request to also specific the set of client action kinds. This way the server knows which actions should be sent to the client
-Adapt `GLSPModelSource´ to retrieve the client actions before sending the `initializeClientSession` request
- Add customized `GLSPActionHandlerRegistry` which provides a query method to retrieve all handled action kinds

Part of eclipse-glsp/glsp/issues/1117

* GLSP-1071: Rename ServerStatus/ServerMessage action

Part of eclipse-glsp/glsp#1071
holkerveen pushed a commit to holkerveen/glsp-client that referenced this issue Dec 21, 2024
* GLSP-1116 Revise model loading

- Refactor diagram loader
   - Remove dispatching of temporary empty set model action and instead call `actionDispatcher.initialize()`   earlier which also dispatches an empty set model action under the hood  
   - Add additional `postModelInitalization` hook for startup services that want execute logic after the model is fully initialized
- Rework `ModelInitializationConstraint`
   - Provide `onInitialized` override that allows sync registration of listener callbacks
   - Refactor `setCompleted` method and remove the possiblity to set the initialized state to false.
     Model initialization is a one-time action. Once initialized there should be no way to "uninitialize" the constraint
   - Provide test cases
- Add `dispatchOnceModelInitialized` utility function to action dispatcher
- Ensure that type hints are  requested after the model has been initialized

Part-of: eclipse-glsp/glsp#1116
Part-of: eclipse-glsp/glsp#606

* GLSP-1117: Remove need for explicit definition of client actions

-Extend `initializeClientSession` request to also specific the set of client action kinds. This way the server knows which actions should be sent to the client
-Adapt `GLSPModelSource´ to retrieve the client actions before sending the `initializeClientSession` request
- Add customized `GLSPActionHandlerRegistry` which provides a query method to retrieve all handled action kinds

Part of eclipse-glsp/glsp/issues/1117

* GLSP-1071: Rename ServerStatus/ServerMessage action

Part of eclipse-glsp/glsp#1071
MatthiasHofstaetter pushed a commit to MatthiasHofstaetter/glsp-server that referenced this issue Dec 21, 2024
- Refactor `ModelSubmissionHandler` to support proper handling of the `RequestModelAction`
as real request action 
- Add support for rejecting request actions
Part-of: eclipse-glsp/glsp#1116
Part-of: eclipse-glsp/glsp#606
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant