fix(transport): Add cleanup logic for inbound processing in StdioServerTransport

Resolves #72

Signed-off-by: Christian Tzolov <christian.tzolov@broadcom.com>
This commit is contained in:
Christian Tzolov 2025-01-24 13:08:41 +01:00 • committed by Christian Tzolov
commit 48ab97bf23

View file

@ -118,6 +118,11 @@ public class StdioServerTransport implements ServerMcpTransport {
.flatMap(message -> Mono.just(message) .flatMap(message -> Mono.just(message)
.transform(inboundMessageHandler) .transform(inboundMessageHandler)
.contextWrite(ctx -> ctx.put("observation", "myObservation"))) .contextWrite(ctx -> ctx.put("observation", "myObservation")))
.doOnComplete(() -> {
this.outboundSink.tryEmitComplete();
this.inboundScheduler.dispose();
this.outboundScheduler.dispose();
})
.subscribe(); .subscribe();
} }