public static IDisposable OnNotification( this IJsonRpcHandlerRegistry registry, string method, Action handler) { return(registry.AddHandler(method, _ => new DelegatingNotificationHandler(_.GetRequiredService <ISerializer>(), handler))); }
public static IDisposable OnRequest <T, TResponse>( this IJsonRpcHandlerRegistry registry, string method, Func <T, Task <TResponse> > handler) { return(registry.AddHandler(method, _ => new DelegatingRequestHandler <T, TResponse>(_.GetRequiredService <ISerializer>(), (x, ct) => handler(x)))); }
public static IDisposable OnRequest <T>( this IJsonRpcHandlerRegistry registry, string method, Func <T, CancellationToken, Task> handler) { return(registry.AddHandler(method, _ => new DelegatingRequestHandler <T>(_.GetRequiredService <ISerializer>(), handler))); }
public static IDisposable OnCancelRequest(this IJsonRpcHandlerRegistry registry, Func <CancelParams, CancellationToken, Task <Unit> > handler) { return(registry.AddHandlers(new DelegatingHandler(handler))); }