rocketraman
05/16/2022, 10:13 PMOleg Yukhnevich
05/17/2022, 7:43 AMrocketraman
05/17/2022, 1:01 PMOleg Yukhnevich
05/17/2022, 1:19 PMI would see defining the RPCs as Kotlin interfacesThat was on my plan at some time, but no free time to work on it in near future You can look at multiplatform chat sample (https://github.com/rsocket/rsocket-kotlin/tree/master/samples/chat) that uses such pattern, but handwritten (api- https://github.com/rsocket/rsocket-kotlin/blob/master/samples/chat/api/src/commonMain/kotlin/MessageApi.kt, client - https://github.com/rsocket/rsocket-kotlin/blob/master/samples/chat/client/src/commonMain/kotlin/MessageApiClient.kt, server - https://github.com/rsocket/rsocket-kotlin/blob/master/samples/chat/server/src/commonMain/kotlin/MessageApi.kt) back-pressure is implemented - by default (with no strategy) it will request by 64 elements with requesting next 64 elements when 16 elements will be left to be consumed (so to make it more smooth), but also can be customized - https://github.com/rsocket/rsocket-kotlin#reactive-streams-semantics
Oleg Yukhnevich
05/17/2022, 1:23 PMrocketraman
05/17/2022, 1:55 PMt will be very cool if you will create an issue in repository with expectations, of what will you want from such RPC: features, how customisable it should be, etcI will think about it a bit and try to write something up.
Oleg Yukhnevich
05/17/2022, 1:58 PMOleg Yukhnevich
06/08/2022, 4:34 PMrocketraman
06/08/2022, 4:35 PMOleg Yukhnevich
06/08/2022, 4:36 PMrocketraman
06/08/2022, 4:38 PMrocketraman
06/08/2022, 4:40 PMOleg Yukhnevich
06/08/2022, 4:42 PMrocketraman
06/08/2022, 4:45 PMimplementation of it for responder, and as every side has both connection side has requester/responder - server->client requests will be automagically available)Not sure what you mean here. Say, I have an RPC interface with some methods. In the current code, it is assumed that the client calls these method, and the server implements them. How would some code on the server call an RPC method that the client implements?
Oleg Yukhnevich
06/08/2022, 5:11 PMOleg Yukhnevich
06/08/2022, 5:12 PMrocketraman
06/08/2022, 5:17 PM