I've noticed that by now it is only possible to configure a few parameters of RSocket Server (maybe also for RSocketCilent?) via Configuration Properties: address, port, transport type and mapping-path (in case of WebSocket transport).
I've made some experiment on my own and wanted to setup an rsocket server over TCP with SSL and fragmentation. The only way I've found was to:
* create an alternative NettyRSocketServerFactory
in order to add SSL configuration
* and, manually create the NettyRSocketServerFactory
bean in order to register a rSocketServer
customizer
I think that could exists a simpler way to make these customizations:
1. Define injectable strategies that get inject in NettyRSocketServerFactory
for configuring those details
2. or, enhancing configuration properties in order to cover them without requiring tweaking with NettyRSocketServerFactory
3. or, thinking of a Configurer
class that provide some customization points and that is used while bootstrapping the NettyRSocketServerFactory
I'm happy to try implementing the solution you prefer, if it could help (maybe with some help since it's the first time I propose to contribute).
Comment From: bclozel
Sorry for the late reply @conteit In the meantime, it seems that this has been covered with #19399 and #23247.
You should be able to do the following:
spring.rsocket.server.fragment-size=10KB
spring.rsocket.server.transport=tcp
spring.rsocket.server.port=9898
spring.rsocket.server.ssl.enabled=true
spring.rsocket.server.ssl.key-store=classpath:keystore.jks
spring.rsocket.server.ssl.key-store-password=secret
Can you confirm this covers what you needed?
Comment From: conteit
Yes, it does. Can close the issue.
Comment From: bclozel
Thanks!