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

Websockets #1

Closed

Conversation

TheManWhoStaresAtCode
Copy link

add some integration tests and test helpers for the websocket functionality.

also include a new producer that does not require an external service (kafka or nats) to be up and running

Zöller, Andreas added 5 commits July 24, 2024 11:11
* in order to allow sending websocket messages also when a REST request is performed we have to change the code from annotation based to using the respective message template directly

* introduce a test utility class to provide a nice API for the tests and encapsulate the client and session in a common place.
* this is very helpful in case you are not interested in the event producer but rather in the websocket part of the application

* only use this implementation if none of the other producers are created i.e. neither the kafka nor the nats profile is active
* implement a AuthorizationManager that checks if the tenant of the topic matches the tenant stored in the TenantContext. Use this authorization manager to check any subscription request.

* all other permissions are set such that the POC works. More thoughts are required before this code can be used in an production like environment.

* we still need to check, if CSRF is required in our usecase. If so we need to adjust the code here to showcase how this can be achieved. Currently, it is disabled for websockets as well as Http requests.
* Finish cleanup of RestController:
** cleanup imports
** remove unused parameter
@goafabric goafabric closed this Oct 27, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants