Fixes https://github.com/spring-projects/spring-boot/issues/18812
To reuse RSocket server auto-configuration in Spring Integration,
introduce an IntegrationAutoConfiguration.IntegrationRSocketConfiguration
based on the ServerRSocketMessageHandler
from Spring Integration which
overrides an RSocketMessagingAutoConfiguration
when SI is present on
classpath.
Configure a ServerRSocketMessageHandler
from SI which is able to handle
SI RSocket channel adapters and @MessageMapping
if configured via
new IntegrationProperties.RSocket.Server.messageMappingEnabled
.
Then add a ServerRSocketConnector
which is based on the provided
ServerRSocketMessageHandler
.
Also auto-configure a ClientRSocketConnector
if
IntegrationProperties.RSocket.Client.port
or
IntegrationProperties.RSocket.Client.uri
configuration properties are
present
Comment From: artembilan
Depends on https://github.com/spring-projects/spring-integration/pull/3097
Comment From: artembilan
The upstream PR in SI has been merged, so this is ready for review and feedback.
While I'm here I have realized that such an integration test I have here with an explicit port for RSocket server could be is not what you would like to see in the auto-configuration module. The sample might be the better place to show the feature and in this new test it would be better to check just bean auto-configured after apply all the conditions.
Let me know how to proceed!
Also: do you need some docs on the matter?
Thanks
Comment From: wilkinsona
Let's look at this for 2.3.0.M2.