private static IAsyncResult ProcessReqeustInternal(HttpContext context, AsyncCallback cb, object extraData) { var task = RpcManager.ProcessAsync(new AspNetServerContext(context)); var waitTask = ToBegin(task, cb, extraData); return(waitTask); }
/// <summary> /// /// </summary> /// <param name="routers"></param> /// <param name="rpcConfig"></param> public static void Initialize(IRouteBuilder routers, RpcConfig rpcConfig) { RpcManager.Initialize(rpcConfig); if (rpcConfig?.Service?.Paths != null) { foreach (var path in rpcConfig.Service.Paths) { routers.MapRoute(path, context => RpcManager.ProcessAsync(new AspNetCoreServerContext(context))); } } }
/// <summary> /// /// </summary> /// <param name="app"></param> /// <param name="rpcConfig"></param> public static void Initialize(IApplicationBuilder app, RpcConfig rpcConfig) { RpcManager.Initialize(rpcConfig); if (rpcConfig?.Service?.Paths == null) { return; } if (app == null) { return; } var routers = new RouteBuilder(app); foreach (var path in rpcConfig.Service.Paths) { routers.MapRoute(path + "{*RpcLiteServicePath}", context => RpcManager.ProcessAsync(new AspNetCoreServerContext(context))); } var routes1 = routers.Build(); app.UseRouter(routes1); }
/// <summary> /// /// </summary> /// <param name="context"></param> public void ProcessRequest(HttpContext context) { RpcManager.ProcessAsync(new AspNetServerContext(context)).Wait(); }