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

ConnectionMapping annotation for handling of RSocket connection-level frames #23177

Closed
rstoyanchev opened this issue Jun 21, 2019 · 0 comments
Closed
Assignees
Labels
in: messaging Issues in messaging modules (jms, messaging) type: enhancement A general enhancement
Milestone

Comments

@rstoyanchev
Copy link
Contributor

rstoyanchev commented Jun 21, 2019

The ConnectionSetupPayload at the start of on an RSocket connection is currently handled with a @MessageMapping method like any subsequent stream on the same connection. The client then must include a route in the metadata of the SETUP frame, or else the ConnectionSetupPayload would have to be handled with an empty mapping, which is not ideal and could also catch subsequent streams without a route. One could use a wildcard mapping but that makes it even more likely to match subsequent streams on the connection, likely not intentionally.

Furthermore, the handling of ConnectionSetupPayload is optional, so if there is no matching handler, no error is raised, unlike subsequent streams on the same connection for which an error is raised if there is no matching handler.

We should introduce a ConnectionMapping annotation for use with RSocket handlers that would be used to process connection-level frames, the initial SETUP and subsequent METADATA_PUSH. That would separate clearly the handling of four stream request types from connection-level events.

@rstoyanchev rstoyanchev added in: messaging Issues in messaging modules (jms, messaging) type: enhancement A general enhancement labels Jun 21, 2019
@rstoyanchev rstoyanchev added this to the 5.2 RC1 milestone Jun 21, 2019
@rstoyanchev rstoyanchev self-assigned this Jun 21, 2019
@rstoyanchev rstoyanchev changed the title ConnectionMapping annotation for server side handling of new RSocket connections ConnectionMapping annotation for handling of RSocket connection-level frames Jul 8, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
in: messaging Issues in messaging modules (jms, messaging) type: enhancement A general enhancement
Projects
None yet
Development

No branches or pull requests

1 participant