File tree Expand file tree Collapse file tree 1 file changed +3
-2
lines changed
mcp/src/main/java/io/modelcontextprotocol/spec Expand file tree Collapse file tree 1 file changed +3
-2
lines changed Original file line number Diff line number Diff line change @@ -225,18 +225,19 @@ private String generateRequestId() {
225
225
public <T > Mono <T > sendRequest (String method , Object requestParams , TypeReference <T > typeRef ) {
226
226
String requestId = this .generateRequestId ();
227
227
228
- return Mono .<McpSchema .JSONRPCResponse >create (sink -> {
228
+ return Mono .deferContextual ( ctx -> Mono . <McpSchema .JSONRPCResponse >create (sink -> {
229
229
this .pendingResponses .put (requestId , sink );
230
230
McpSchema .JSONRPCRequest jsonrpcRequest = new McpSchema .JSONRPCRequest (McpSchema .JSONRPC_VERSION , method ,
231
231
requestId , requestParams );
232
232
this .transport .sendMessage (jsonrpcRequest )
233
+ .contextWrite (ctx )
233
234
// TODO: It's most efficient to create a dedicated Subscriber here
234
235
.subscribe (v -> {
235
236
}, error -> {
236
237
this .pendingResponses .remove (requestId );
237
238
sink .error (error );
238
239
});
239
- }).timeout (this .requestTimeout ).handle ((jsonRpcResponse , sink ) -> {
240
+ })) .timeout (this .requestTimeout ).handle ((jsonRpcResponse , sink ) -> {
240
241
if (jsonRpcResponse .error () != null ) {
241
242
sink .error (new McpError (jsonRpcResponse .error ()));
242
243
}
You can’t perform that action at this time.
0 commit comments